/* Owned by T12/T24c — contact page. */

.fc-contact-head { max-width: 760px; margin: 0 auto; padding: 3rem 1.5rem 1.5rem; text-align: center; }
.fc-contact-head h1 { font-family: Manrope, system-ui, sans-serif; font-size: clamp(2rem, 5vw, 3rem); margin: 0 0 1rem; }
.fc-contact-head .fc-lede { color: var(--fc-muted, #5A5A5F); font-size: 1.125rem; line-height: 1.5; margin: 0; }

/* Quick contact cards row */
.fc-quick-contact { max-width: 1280px; margin: 1rem auto 0; padding: 0 1.5rem; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.fc-qc-card { display:flex; flex-direction:column; align-items:flex-start; gap:.5rem; background:#fff; padding:1.5rem 1.5rem 1.25rem; border-radius:12px; text-decoration:none; box-shadow:0 1px 3px rgba(0,0,0,.06); border-left:4px solid transparent; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.fc-qc-card:hover { transform: translateY(-3px); box-shadow:0 10px 24px rgba(0,0,0,.08); }
.fc-qc-card--call { border-left-color: var(--fc-red, #E30613); color: var(--fc-dark, #0E0E10); }
.fc-qc-card--call:hover { border-left-color: var(--fc-red-hover, #B5050F); }
.fc-qc-card--wa { background: #25D366; color: #fff; border-left-color: #1DA851; }
.fc-qc-card--wa:hover { background: #1DA851; color: #fff; }
.fc-qc-card--mail { border-left-color: var(--fc-yellow, #FFC72C); color: var(--fc-dark, #0E0E10); }
.fc-qc-card__icon { color: inherit; }
.fc-qc-card__label { font-family: Manrope, system-ui, sans-serif; font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; opacity: .75; }
.fc-qc-card__value { font-family: Manrope, system-ui, sans-serif; font-size: 1.125rem; font-weight: 600; }
.fc-qc-card--placeholder .fc-qc-card__value { font-weight: 400; font-size: 1rem; opacity: .8; }
@media (max-width: 800px) { .fc-quick-contact { grid-template-columns: 1fr; } }

/* Form + Address row */
.fc-contact-body { max-width: 1280px; margin: 3rem auto 0; padding: 0 1.5rem; display: grid; grid-template-columns: 1.6fr 1fr; gap: 2.5rem; align-items: start; }
.fc-contact-body__form h2 { font-family: Manrope, system-ui, sans-serif; font-size: 1.5rem; margin: 0 0 1.25rem; }
.fc-contact-body__form .wpcf7-form label { display:block; margin-bottom:1rem; font-weight:500; }
.fc-contact-body__form .wpcf7-form input, .fc-contact-body__form .wpcf7-form textarea { width:100%; padding:.75rem 1rem; border:1px solid #ddd; border-radius:8px; font: inherit; box-sizing:border-box; transition: border-color .15s ease, box-shadow .15s ease; }
.fc-contact-body__form .wpcf7-form input:focus, .fc-contact-body__form .wpcf7-form textarea:focus { outline:0; border-color: var(--fc-red, #E30613); box-shadow: 0 0 0 3px rgba(227,6,19,.15); }
.fc-contact-body__form .wpcf7-form input[type="submit"] { background: var(--fc-red, #E30613); color:#fff; border:0; padding:.85rem 2rem; border-radius:8px; font-weight:600; cursor:pointer; width:auto; transition: background .15s ease; }
.fc-contact-body__form .wpcf7-form input[type="submit"]:hover { background: var(--fc-red-hover, #B5050F); }

.fc-addr-card { background: var(--fc-dark, #0E0E10); color: #fff; padding: 2rem; border-radius: 12px; }
.fc-addr-card__icon { color: var(--fc-yellow, #FFC72C); margin-bottom: 1rem; display: inline-flex; }
.fc-addr-card h3 { font-family: Manrope, system-ui, sans-serif; margin: 0 0 .75rem; font-size: 1.25rem; }
.fc-addr-card p { line-height: 1.55; margin: 0 0 1.5rem; color: #d4d4d6; }
.fc-addr-card .fc-btn--ghost-dark { background: transparent; color: #fff !important; border-color: rgba(255,255,255,.4); }
.fc-addr-card .fc-btn--ghost-dark:hover { background: var(--fc-yellow, #FFC72C); color: var(--fc-dark, #0E0E10) !important; border-color: var(--fc-yellow, #FFC72C); }

@media (max-width: 900px) { .fc-contact-body { grid-template-columns: 1fr; gap: 2rem; } }

/* Map — full width, larger */
.fc-contact-map { max-width: 1280px; margin: 3rem auto; padding: 0 1.5rem 5rem; }
.fc-contact-map__embed { position:relative; width:100%; height:520px; border-radius:12px; overflow:hidden; box-shadow:0 4px 16px rgba(0,0,0,.08); background:var(--fc-surface,#F4F4F5); }
.fc-contact-map__embed iframe { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }
@media (max-width:900px) { .fc-contact-map__embed { height:420px; } }
@media (max-width:600px) { .fc-contact-map__embed { height:340px; } }
@media (prefers-reduced-motion: reduce) { .fc-qc-card:hover { transform: none; } }
