:root{--indigo:#2B2D64;--ink:#191B3F;--orange:#FF7A48;--orange-d:#E86636;--sand:#F5E6C8;--sand-l:#FBF6EA;--grey:#5D5F7E;--line:#E8E8F0}

/* HERO BAND */
.hero-band{position:relative;height:320px;overflow:hidden}
.hero-band img{width:100%;height:100%;object-fit:cover;object-position:center 35%}
.hero-band::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,#2B2D64DD 40%,transparent 100%)}
.hero-band-text{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:0 48px}
.hero-band-text .eyebrow{font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;color:#FF7A48;font-weight:500;margin-bottom:12px}
.hero-band-text h1{font-size:clamp(2rem,5vw,3rem);color:#fff;max-width:22rem}

/* CRUMB */
.crumb{font-size:.82rem;color:var(--grey);padding:20px 0 0}
.crumb a{color:var(--orange)}

/* MAIN GRID */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;padding:52px 0 80px;align-items:start}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr}}

/* LEFT: FORM */
.form-panel h2{font-size:1.55rem;margin-bottom:6px}
.form-panel .sub{color:var(--grey);font-size:.95rem;margin-bottom:28px}
.field{margin-bottom:18px}
.field label{display:block;font-size:.88rem;font-weight:500;margin-bottom:6px;color:var(--ink)}
.field input,.field select,.field textarea{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:13px 16px;font-family:inherit;font-size:.95rem;color:var(--ink);background:#fff;transition:.15s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px #FF7A4822}
.field textarea{min-height:130px;resize:vertical}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:500px){.field-row{grid-template-columns:1fr}}
.submit-btn{width:100%;padding:16px;background:var(--orange);color:#fff;font-weight:700;font-size:1rem;border:none;border-radius:12px;cursor:pointer;font-family:inherit;margin-top:6px;transition:.15s}
.submit-btn:hover{background:var(--orange-d)}
.form-note{font-size:.8rem;color:var(--grey);margin-top:10px;text-align:center}

/* SUCCESS STATE */
.form-success{display:none;background:var(--sand-l);border:2px solid var(--orange);border-radius:16px;padding:32px;text-align:center}
.form-success .check{font-size:2.5rem;margin-bottom:12px}
.form-success h3{font-size:1.2rem;margin-bottom:8px}
.form-success p{color:var(--grey);font-size:.93rem}

/* RIGHT: INFO */
.info-panel h2{font-size:1.55rem;margin-bottom:24px}

/* CONTACT METHOD CARDS */
.contact-methods{display:flex;flex-direction:column;gap:14px;margin-bottom:36px}
.c-card{border:1.5px solid var(--line);border-radius:14px;padding:20px 22px;display:flex;align-items:flex-start;gap:16px;transition:.15s}
.c-card:hover{border-color:var(--orange);box-shadow:0 4px 20px -8px #FF7A4833}
.c-card .icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}
.c-card.wa .icon{background:#E8FFF1;}
.c-card.email .icon{background:#EEF0FF;}
.c-card.office .icon{background:var(--sand-l);}
.c-card-body .label{font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);margin-bottom:3px}
.c-card-body .value{font-size:1.02rem;font-weight:600;color:var(--ink)}
.c-card-body .value a{color:var(--ink)}
.c-card-body .value a:hover{color:var(--orange)}
.c-card-body .note{font-size:.82rem;color:var(--grey);margin-top:3px}

/* TEAM CARDS */
.team-section{margin-bottom:36px}
.team-section h3{font-size:1.1rem;font-weight:700;margin-bottom:14px;color:var(--indigo)}
.team-cards{display:flex;flex-direction:column;gap:12px}
.t-person{background:var(--sand-l);border-radius:14px;padding:18px 20px;display:flex;align-items:center;gap:16px}
.avatar{width:50px;height:50px;border-radius:50%;background:var(--indigo);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;flex-shrink:0}
.person-info .name{font-weight:700;font-size:.98rem}
.person-info .role{font-size:.8rem;color:var(--orange);font-weight:500;margin-bottom:3px}
.person-info a{font-size:.85rem;color:var(--grey)}
.person-info a:hover{color:var(--orange)}

/* MAP */
.map-section{margin-top:0}
.map-section h3{font-size:1.1rem;font-weight:700;margin-bottom:14px;color:var(--indigo)}
.map-embed{border-radius:16px;overflow:hidden;border:1.5px solid var(--line);height:240px;position:relative;background:#E8EAF0}
.map-embed iframe{width:100%;height:100%;border:none;display:block}
.map-link{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-size:.88rem;font-weight:500;color:var(--orange)}
.map-link:hover{color:var(--orange-d)}

/* OFFICE HOURS STRIP */
.hours-strip{background:var(--indigo);color:#fff;padding:48px 0;margin:0}
.hours-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:center}
@media(max-width:700px){.hours-grid{grid-template-columns:1fr}}
.h-block .big{font-size:2rem;font-weight:700;color:var(--orange)}
.h-block .label{font-size:.88rem;color:#C9CBEA;margin-top:4px}

/* WHATSAPP CTA */
.wa-cta{background:var(--sand-l);padding:72px 24px;text-align:center}
.wa-cta h2{font-size:clamp(1.7rem,3.5vw,2.2rem)}
.wa-cta p{color:var(--grey);margin:14px auto 28px;max-width:36rem;font-size:1rem}
.wa-btn{display:inline-flex;align-items:center;gap:12px;background:#25D366;color:#fff;font-weight:700;font-size:1rem;padding:16px 36px;border-radius:12px}
.wa-btn:hover{background:#20BA5A}
.wa-btn svg{width:24px;height:24px;fill:#fff}


.form-success.is-visible{display:block}
@media(max-width:600px){
  .hero-band{height:260px}
  .hero-band-text{padding:0 24px}
}
