/* Contact page */
.contact-page .stage-top .grow{flex:1}
.contact-wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px;align-items:center;width:min(1180px,100% - 32px);margin:12px auto 36px}
.person{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center}
.person-photo{width:220px;height:220px;object-fit:cover;border-radius:28px;border:1px solid var(--rule-2);
  box-shadow:0 26px 60px -24px rgba(20,211,189,.5),0 0 0 6px rgba(20,211,189,.06)}
.eyebrow{font:700 .74rem var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin:0 0 8px}
.person h1{font-size:clamp(2rem,3.6vw,3rem);margin:0 0 6px;letter-spacing:-.03em}
.role{color:#c3d1d4;font-size:1.05rem;margin:0 0 14px}
.creds{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:7px;font-size:.95rem;color:#d5e0e2}
.creds li{display:flex;gap:10px;align-items:baseline}
.ci{color:var(--amber);font-size:.7rem}
.topics{display:flex;flex-wrap:wrap;gap:6px}
.topics span{font:600 .78rem var(--font);color:var(--muted);border:1px solid var(--rule-2);border-radius:999px;padding:5px 11px;background:rgba(19,27,31,.6)}
.contact-card{background:rgba(19,27,31,.92);border:1px solid var(--rule);border-radius:18px;padding:26px 24px 20px;box-shadow:var(--shadow)}
.contact-card h2{font-size:1.4rem;margin:0 0 4px}
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px 12px;margin:14px 0 6px}
.cf{display:grid;gap:5px}
.cf.span2{grid-column:1/-1}
.cf label{font-weight:700;font-size:.86rem}
.cf .opt{font-weight:500;color:var(--faint);font-size:.78rem;margin-inline-start:4px}
.cf input,.cf select,.cf textarea{border-radius:10px;padding:11px 12px;font-family:var(--font);font-size:.98rem}
.cf textarea{resize:vertical;min-height:120px}
.cf [aria-invalid=true]{border-color:var(--red)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.contact-card .auth-btn{width:100%}
.c-note{font-size:.8rem;color:var(--faint);margin:12px 0 0}
.sent{text-align:center;display:grid;justify-items:center;gap:6px;padding:40px 24px}
.sent .tick{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-size:2rem;font-weight:800;color:var(--teal-ink);background:var(--teal);box-shadow:0 18px 40px -14px rgba(20,211,189,.7);margin-bottom:8px}
@media (max-width:980px){.contact-wrap{grid-template-columns:1fr}.person{grid-template-columns:1fr;justify-items:center;text-align:center}.creds li{justify-content:center}.topics{justify-content:center}}
@media (max-width:560px){.cgrid{grid-template-columns:1fr}.person-photo{width:170px;height:170px}.contact-card{padding:22px 16px 18px}}
