.contact-page{--navy:var(--accent,#002147);--off-white:var(--bg,#f7f7f5);--nav-h:64px;background:var(--off-white);min-height:100dvh}.contact-inner-page{max-width:640px;padding:calc(var(--nav-h) + 5rem) 2rem 6rem;margin:0 auto}.contact-eyebrow{letter-spacing:.3em;text-transform:uppercase;color:var(--text-muted);margin:0 0 1.25rem;font-size:.75rem;font-weight:700}.contact-title{letter-spacing:-.035em;color:var(--navy);margin:0 0 1rem;font-size:clamp(2.5rem,6vw,3.5rem);font-weight:800;line-height:1.05}.contact-sub{color:var(--text-mid);margin:0 0 3rem;font-size:1.0625rem;line-height:1.6}.contact-form{flex-direction:column;gap:1.75rem;display:flex}.contact-field{flex-direction:column;gap:.5rem;display:flex}.contact-label{letter-spacing:.02em;color:var(--navy);font-size:.8125rem;font-weight:600}.contact-field input,.contact-field textarea{color:var(--navy);background:var(--bg-white);border:1px solid var(--border-med);border-radius:3px;width:100%;padding:.75rem .875rem;font-family:inherit;font-size:1rem;transition:border-color .15s,box-shadow .15s}.contact-field textarea{resize:vertical;line-height:1.6}.contact-field input::placeholder,.contact-field textarea::placeholder{color:var(--text-muted);opacity:1}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:none}.contact-field input:disabled,.contact-field textarea:disabled{background:var(--bg-inset);color:var(--text-muted)}.contact-hint{color:var(--text-muted);font-size:.75rem}.contact-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:3px;margin:0;padding:.75rem .875rem;font-size:.875rem;line-height:1.5}.contact-submit{background:var(--navy);color:var(--on-accent);cursor:pointer;border:none;border-radius:3px;align-self:flex-start;padding:.875rem 2rem;font-family:inherit;font-size:.9375rem;font-weight:600;transition:opacity .2s}.contact-submit:hover:not(:disabled){opacity:.85}.contact-submit:disabled{opacity:.55;cursor:default}.contact-form-sent{background:var(--bg-white);border:1px solid var(--border);border-radius:3px;padding:2.5rem}.contact-form-sent h2{letter-spacing:-.02em;color:var(--navy);margin:0 0 .75rem;font-size:1.375rem;font-weight:700}.contact-form-sent p{color:var(--text-mid);margin:0 0 .75rem;line-height:1.6}.contact-form-sent-note{color:var(--text-muted);font-size:.875rem}.contact-optional{color:var(--text-muted);font-weight:400}.contact-other{border-top:1px solid var(--border);margin-top:4rem;padding-top:2.5rem}.contact-other-title{letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin:0 0 1.5rem;font-size:.75rem;font-weight:700}.contact-other-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.75rem;margin:0;display:grid}.contact-other-list dt{color:var(--navy);margin-bottom:.375rem;font-size:.8125rem;font-weight:600}.contact-other-list dd{color:var(--text-mid);margin:0;font-size:.875rem;line-height:1.6}.contact-other-list a{color:var(--navy);text-decoration:underline}@media (max-width:640px){.contact-inner-page{padding:calc(var(--nav-h) + 3rem) 1.5rem 4rem}.contact-submit{text-align:center;align-self:stretch}}:root.dark .contact-page .contact-error{color:#fca5a5;background:#dc26261f;border-color:#f8717166}
