/* Contact page only: existing AST palette, type and editorial grid. */
.contact-surface{background:var(--sage);margin-block:28px 64px}
.contact-layout{display:grid;grid-template-columns:.85fr 1fr;gap:12%;padding-block:76px 84px;align-items:start}
.contact-intro h1{font-size:clamp(62px,6.4vw,92px);line-height:1.05;margin-bottom:30px}
.contact-intro .eyebrow{margin-bottom:30px}
.contact-lede{font-size:21px;line-height:1.6;max-width:370px}
.contact-assessment{margin-top:48px;font-size:15px;line-height:1.8}
.contact-assessment .text-link{margin-top:8px}
.contact-form-column{min-width:0;max-width:570px;width:100%}
.contact-required{font-size:13px;color:var(--muted);margin:0 0 23px}
.contact-field{margin-bottom:24px}
.contact-field label{display:block;font-size:16px;margin-bottom:9px}
.contact-field input,.contact-field textarea{display:block;width:100%;max-width:100%;font:inherit;font-size:17px;line-height:1.5;color:var(--ink);background:var(--ivory);border:1px solid #7b8982;border-radius:8px;padding:13px 16px;min-height:52px}
.contact-field textarea{min-height:166px;resize:vertical}
.contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.contact-field [aria-invalid="true"]{border-color:#8a3535}
.contact-field-error{font-size:14px;color:#71302d;margin:8px 0 0}
.contact-note{font-size:14px;line-height:1.6;margin:0 0 12px;max-width:540px}
.contact-note a,#contact-feedback a{text-decoration:underline;text-underline-offset:3px}
#contact-send{margin-top:16px;min-height:48px;cursor:pointer}
#contact-send:disabled{opacity:.65;cursor:wait}
#contact-feedback{margin-top:20px;font-size:15px;line-height:1.6;color:#71302d}
.contact-trap{display:none}
.contact-confirmation h2{font-size:44px;margin-bottom:24px}
.contact-confirmation p:not(.eyebrow){font-size:18px;margin-bottom:30px}
.contact-confirmation:focus{outline:none}
.contact-confirmation[hidden],.contact-field-error[hidden],#contact-feedback[hidden],#contact-form[hidden]{display:none}
@media(max-width:1000px){.contact-layout{gap:7%;padding-block:58px 64px}.contact-lede{font-size:19px}}
@media(max-width:760px){.contact-surface{margin-block:18px 40px}.contact-layout{grid-template-columns:1fr;gap:34px;padding-block:42px 48px}.contact-intro h1{font-size:60px;margin-bottom:22px}.contact-intro .eyebrow{margin-bottom:22px}.contact-lede{font-size:18px;margin-bottom:0}.contact-assessment{margin-top:24px}.contact-form-column{max-width:none}.contact-field{margin-bottom:22px}.contact-field textarea{min-height:150px}.contact-confirmation h2{font-size:38px}}
/* Native form submissions keep a clear confirmation when JavaScript is unavailable. */
.contact-form-column:has(#contact-confirmation:target) #contact-form{display:none}
.contact-confirmation:target[hidden]{display:block}
