.contact-page [hidden]{display:none!important}

.contact-hero{display:block;background:var(--dark);color:#FBFAF7;--muted:#D5DEDA;--line:rgba(251,250,247,.14)}
.contact-hero h1{font-size:clamp(2.25rem,4vw,3.2rem);line-height:var(--leading-tight);color:#FBFAF7}
.contact-hero__lead{max-width:48rem;margin-top:var(--space-3);font-size:var(--text-lg);line-height:var(--leading-lead);color:#D5DEDA;overflow-wrap:break-word}
.contact-hero__follow{max-width:48rem;margin-top:var(--action-follow);color:#D5DEDA;overflow-wrap:break-word}
.contact-hero__follow a{color:#FBFAF7;text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}

.contact-section-head{margin-bottom:var(--space-5)}
.contact-section-head>p{max-width:52rem;margin-top:var(--space-3);overflow-wrap:break-word}
.contact-channel__copy{display:grid;gap:var(--field-gap)}
.contact-channel__copy p{margin:0;overflow-wrap:break-word}
.contact-channel__heading{display:flex;align-items:center;gap:var(--space-3);min-width:0}
.contact-channel__heading svg{display:block;width:24px;height:24px;color:#10302C}
.contact-channel__heading h3{min-width:0}
.contact-email{font-family:var(--fm);color:#9A5200;text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}
.contact-list{display:grid;gap:var(--field-gap);padding-inline-start:var(--space-4)}
.contact-list li{color:#55605D;overflow-wrap:break-word}

.contact-response{list-style:none;margin:0;padding:0}
.contact-response__row{display:grid;grid-template-columns:2.5rem minmax(7.5rem,11rem) minmax(0,1fr);gap:var(--space-3);align-items:start;padding-block:var(--space-4);border-bottom:1px solid #CBD6E4}
.contact-response__row>*{min-width:0;overflow-wrap:break-word}
.contact-response__number{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--pill);background:var(--white);color:#1F3550;line-height:1}
.contact-response__row h3{font-size:var(--text-card);line-height:var(--leading-heading)}
.contact-response__note{margin-top:var(--space-5)}

.contact-form-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:var(--space-5);align-items:start}
.contact-form-layout>*{min-width:0}
.contact-form{padding:var(--card-pad);border-radius:var(--r-card);background:var(--paper);color:#17201E;--muted:#55605D;--line:#E7E4DD}
.contact-form__identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.contact-form__identity>*{min-width:0}
.contact-fieldset{display:grid;gap:var(--field-gap);min-width:0}
.contact-fieldset legend{float:left;width:100%;padding:0;font-family:var(--fb);font-size:var(--text-sm);line-height:var(--leading-body);font-weight:var(--weight-bold)}
.contact-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:var(--space-2);align-items:stretch;clear:both}
.contact-choice-grid--nodes{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-choice{display:grid;grid-template-columns:1.25rem minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-4);border-radius:var(--r-card);background:var(--fog);color:#1F3550;--muted:#4B5E77;--line:#E3E9F1;cursor:pointer}
.contact-choice>*{min-width:0}
.contact-choice input{appearance:none;-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:.2rem;border:1.5px solid #7C8782;border-radius:var(--pill);background:var(--white);color:#10302C;display:grid;place-items:center}
.contact-choice input::before{content:"";width:.625rem;height:.625rem;border-radius:var(--pill);background:var(--primary);color:#FFFFFF;transform:scale(0)}
.contact-choice input:checked::before{transform:scale(1)}
.contact-choice:has(input:checked){background:var(--cream);color:#10302C;--muted:#55605D;--line:#E7E4DD;box-shadow:inset 0 0 0 2px var(--primary)}
.contact-choice strong{display:block;font-family:var(--fh);font-size:var(--text-base);line-height:var(--leading-heading);overflow-wrap:break-word}
.contact-choice small{display:block;margin-top:var(--field-gap);font-size:var(--text-sm);line-height:var(--leading-body);color:#4B5E77;overflow-wrap:break-word}
.contact-choice:has(input:checked) small{color:#55605D}
.contact-form__actions{margin-top:var(--space-3);justify-content:flex-start}
.contact-status{font-size:var(--text-sm);line-height:var(--leading-body);color:#55605D;overflow-wrap:break-word}
.contact-status[data-state="error"]{color:#5A2A1E}
.contact-status[data-state="success"]{color:#1E3A33}
.contact-preview{display:grid;gap:var(--field-gap)}
.contact-preview label{font-size:var(--text-sm);font-weight:var(--weight-bold)}
.contact-preview textarea{width:100%;padding:var(--space-3);border:1px solid var(--input-line);border-radius:var(--radius-sm);background:var(--white);color:#17201E;font-size:var(--text-sm);line-height:var(--leading-body);resize:vertical;overflow-wrap:anywhere}
.contact-preview p{font-size:var(--text-sm);color:#55605D;overflow-wrap:break-word}
.contact-preparation{display:grid;gap:var(--space-4);padding:var(--card-pad);border-radius:var(--r-card);background:var(--sage);color:#1E3A33;--muted:#47615A;--line:#E2EBE5}
.contact-preparation h3{font-size:var(--text-card);color:#1E3A33}
.contact-preparation__item{display:grid;gap:var(--field-gap)}
.contact-preparation__item strong{font-family:var(--fh);font-size:var(--text-base);line-height:var(--leading-heading)}
.contact-preparation__item p{color:#3C544D;overflow-wrap:break-word}

.contact-closing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.55fr);gap:var(--space-5);align-items:center;padding:var(--card-pad);border-radius:var(--r-band);background:var(--dark);color:#FBFAF7;--muted:#D5DEDA;--line:rgba(251,250,247,.14);text-align:left}
.contact-closing>*{min-width:0}
.contact-closing__copy h2{color:#FBFAF7;font-size:var(--text-section);line-height:var(--leading-tight)}
.contact-closing__copy p{margin-top:var(--space-3);color:#D5DEDA;overflow-wrap:break-word}
.contact-closing__actions{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--action-gap);margin-top:var(--space-3)}
.contact-closing__actions a{width:100%;min-width:0}

@media(max-width:64rem){
.contact-form-layout{grid-template-columns:minmax(0,1fr)}
.contact-closing{grid-template-columns:minmax(0,1fr)}
.contact-closing__actions{align-items:flex-start}
.contact-closing__actions a{width:auto}
}

@media(max-width:42rem){
.contact-form__identity{grid-template-columns:minmax(0,1fr)}
.contact-choice-grid,.contact-choice-grid--nodes{grid-template-columns:minmax(0,1fr)}
.contact-response__row{grid-template-columns:2.25rem minmax(0,1fr)}
.contact-response__row>:nth-child(3){grid-column:2}
.contact-response__number{width:2.25rem;height:2.25rem}
.contact-closing__actions{align-items:stretch}
.contact-closing__actions a{width:100%}
.contact-form__actions{align-items:stretch}
.contact-form__actions button{width:100%}
}
