.contact-page{max-width:1100px}.contact-hero{max-width:760px;margin:0 auto 2.5rem;text-align:center}.contact-hero h1{margin-bottom:.75rem}.contact-hero>p:last-child{color:var(--color-text-light);font-size:1.08rem}.contact-eyebrow{margin-bottom:.5rem;color:var(--color-primary-dark);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contact-layout{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.5fr);gap:1.5rem;align-items:start}.contact-details,.contact-form-card{border:1px solid var(--color-border);border-radius:1rem;background:var(--color-bg-white);box-shadow:0 12px 35px #0f172a12}.contact-details{display:grid;gap:1.5rem;padding:1.75rem}.contact-details h2,.contact-form-heading h2{margin-bottom:.65rem;font-size:1.45rem}.contact-details p,.contact-form-heading p{color:var(--color-text-light)}.contact-email{display:flex;min-height:64px;gap:.8rem;align-items:center;padding:.9rem;border:1px solid #bbf7d0;border-radius:.75rem;background:#f0fdf4}.contact-email>span{display:grid;min-width:0}.contact-email strong{color:var(--color-secondary)}.contact-email span span{overflow-wrap:anywhere;color:var(--color-primary-dark)}.contact-email:hover{border-color:var(--color-primary);background:#ecfdf5}.contact-email:focus-visible,.contact-form-card button:focus-visible,.contact-form-card a:focus-visible,.contact-details a:focus-visible{outline:3px solid rgba(4,120,87,.28);outline-offset:3px}.contact-privacy-note{display:flex;gap:.75rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.contact-privacy-note svg{flex:0 0 auto;color:var(--color-primary)}.contact-privacy-note p{font-size:.92rem}.contact-form-card{padding:2rem}.contact-form-heading{margin-bottom:1.75rem}.contact-form-heading p{font-size:.95rem}.contact-form-card .form-label{font-weight:650}.contact-form-card .form-input,.contact-form-card .form-textarea{min-height:48px;background:#fff}.contact-form-card .form-textarea{min-height:150px}.contact-label-row{display:flex;gap:1rem;align-items:baseline;justify-content:space-between}.contact-character-count,.contact-field-help{color:var(--color-text-light);font-size:.86rem}.contact-field-help{margin-top:.45rem}.contact-field-invalid{border-color:#b91c1c!important;box-shadow:0 0 0 1px #b91c1c}.contact-field-invalid:focus{box-shadow:0 0 0 3px #b91c1c29}.contact-field-error{display:flex;gap:.45rem;align-items:flex-start;margin-top:.5rem;color:#991b1b;font-size:.9rem;font-weight:600}.contact-field-error svg{flex:0 0 auto;margin-top:.12rem}.contact-submit{display:flex;width:100%;min-height:50px;gap:.55rem;align-items:center;justify-content:center;font-size:1rem}.contact-submit:disabled{cursor:wait;opacity:.68}.contact-feedback-slot{min-height:0}.contact-status{border-radius:.8rem}.contact-status:focus{outline:3px solid rgba(4,120,87,.2);outline-offset:3px}.contact-status h2,.contact-status h3{margin-bottom:.4rem}.contact-status-success{display:grid;justify-items:center;padding:2.5rem 1.5rem;text-align:center;background:#f0fdf4;color:var(--color-primary-dark)}.contact-status-success h2{margin-top:.85rem;font-size:1.5rem}.contact-status-success p{max-width:520px;margin-bottom:1.25rem;color:var(--color-text)}.contact-status-error{display:flex;gap:.75rem;margin-top:1rem;padding:1rem;border:1px solid #fecaca;background:#fff7f7;color:#7f1d1d}.contact-status-error>svg{flex:0 0 auto;margin-top:.1rem}.contact-status-error h3{color:#7f1d1d;font-size:1rem}.contact-status-error p{font-size:.94rem}.contact-status-error a{color:#7f1d1d;font-weight:700;text-decoration:underline;text-underline-offset:.15em}@media (max-width: 760px){.contact-page{padding-top:3rem;padding-bottom:3rem}.contact-hero{margin-bottom:1.75rem;text-align:left}.contact-hero h1{font-size:clamp(2rem,10vw,2.5rem)}.contact-layout{grid-template-columns:1fr}.contact-form-card,.contact-details{padding:1.25rem}}@media (max-width: 420px){.contact-page.container{padding-inline:1rem}.contact-status-error{display:grid}.contact-email{align-items:flex-start}}@media (prefers-reduced-motion: reduce){.contact-email,.contact-form-card button,.contact-form-card a{transition:none}}
