.contact-hero{padding:3.8rem 0 3.2rem;background:#fff}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem;align-items:start}
.contact-intro h1{font-size:clamp(2.35rem,3.8vw,3.8rem)}
.contact-lead{max-width:620px;font-size:1.08rem;color:var(--muted)}
.contact-principles{display:grid;gap:1.5rem;margin-top:1.8rem}
.contact-principles article{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start}
.principle-icon{width:52px;height:52px;border:1px solid rgba(0,155,131,.35);border-radius:50%;display:grid;place-items:center;color:var(--teal);font-size:1.3rem}
.contact-principles h2{font-family:var(--body);font-size:1.05rem;margin-bottom:.25rem;color:var(--teal)}
.contact-principles p{margin:0;color:var(--muted)}

.form-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:2rem;box-shadow:0 10px 30px rgba(17,47,77,.07)}
.form-card h2{font-size:2rem;margin-bottom:.35rem}
.contact-form{margin-top:1.5rem}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field{margin-bottom:1.15rem}
.field label{display:block;font-weight:700;color:var(--navy);margin-bottom:.45rem}
.optional{font-size:.82rem;font-weight:400;color:var(--muted)}
.field input,.field select,.field textarea{width:100%;border:1px solid #cfdcd8;border-radius:8px;padding:.85rem .9rem;background:#fff;color:var(--text)}
.field textarea{resize:vertical;min-height:150px}
.security-note{margin:.55rem 0 0;font-size:.82rem;line-height:1.45;color:var(--muted)}
.submit-button{border:0;cursor:pointer}
.form-status{margin:.8rem 0 0;min-height:1.2rem;font-size:.9rem}

.contact-details{background:var(--soft)}
.details-grid{display:grid;grid-template-columns:.85fr .95fr 1.2fr;gap:1.3rem}
.connect-card,.where-card,.listen-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.6rem}
.connect-item{display:grid;grid-template-columns:auto 1fr;gap:.9rem;padding:1rem 0;border-bottom:1px solid var(--border)}
.connect-item:last-child{border-bottom:0}
.connect-icon{width:38px;height:38px;border:1px solid rgba(0,155,131,.35);border-radius:50%;display:grid;place-items:center;color:var(--teal);font-weight:800}
.connect-item h2{font-family:var(--body);font-size:1rem;margin-bottom:.15rem;color:var(--teal)}
.connect-item p{margin:0;color:var(--muted)}
.where-card h2{font-size:2rem}
.nationwide-line{color:var(--teal);font-weight:800}
.nationwide-graphic{position:relative;min-height:120px;margin-top:1.2rem;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#f9fcfb,#eef6f3)}
.map-line{position:absolute;height:1px;background:rgba(0,155,131,.25);transform-origin:left center}
.ml1{left:12%;top:38%;width:45%;transform:rotate(8deg)}.ml2{left:44%;top:54%;width:38%;transform:rotate(-18deg)}.ml3{left:25%;top:72%;width:50%;transform:rotate(-6deg)}
.map-dot{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--teal)}
.md1{left:12%;top:35%}.md2{left:48%;top:48%}.md3{right:17%;top:29%}.md4{right:23%;bottom:19%}
.listen-card{min-height:310px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(160deg,#254560,#0a2238);color:#fff}
.listen-mark{font:700 4rem/1 var(--heading);color:#41c4ae}
.listen-card blockquote{margin:0;font:700 1.6rem/1.35 var(--heading)}
.listen-card strong{display:block;margin-top:1rem;color:#8fe0d2}

.cta-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:3rem;align-items:center}
.cta-action{text-align:center}.eyebrow.light{color:#7fe1d0}

@media(max-width:980px){
  .contact-grid,.details-grid,.cta-grid{grid-template-columns:1fr}
  .listen-card{min-height:220px}
}
@media(max-width:760px){
  .contact-hero{padding:3.5rem 0}
  .field-row{grid-template-columns:1fr}
  .form-card{padding:1.3rem}
  .cta-action{text-align:left}
}

.listen-card.image-card{position:relative;overflow:hidden;padding:0;background:#0a2238}
.listen-card.image-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.listen-overlay{position:relative;z-index:2;margin-top:auto;padding:1.5rem;background:linear-gradient(to top,rgba(5,23,39,.96),rgba(5,23,39,.78),rgba(5,23,39,.15));width:100%}
