.contact-layout{grid-template-columns:minmax(0,1fr) minmax(240px,.36fr);align-items:start;gap:var(--s8)}
.contact-aside{grid-column:2;grid-row:1;position:sticky;top:120px;min-width:0}
.contact-aside h2{font-size:var(--text-lg)}.contact-aside .email-link{font-size:var(--text-base);overflow-wrap:anywhere}
.contact-aside img{width:100%;border-radius:var(--s3);margin-top:var(--s6);aspect-ratio:4/3;object-fit:cover}
#contact-form p{overflow-wrap:anywhere}
#contact-form{grid-column:1;grid-row:1;min-width:0;padding:clamp(var(--s5),3vw,var(--s8));border:1px solid var(--line);background:var(--surface);border-radius:var(--s4)}
#contact-fields{border:0;margin:0;padding:0;min-width:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.contact-step{padding-block:var(--s6);border-bottom:1px solid var(--line)}
.contact-step h2,#contact-result h2{font-size:var(--text-lg);letter-spacing:-.02em;margin-top:var(--s3)}
.contact-step .eyebrow{margin:0}.contact-preview-badge{font-size:var(--text-sm);color:var(--accent);margin:0}
.contact-solutions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3);margin-block:var(--s5)}
#contact-form .contact-solution{display:flex;flex-direction:row;gap:var(--s3);align-items:center;padding:var(--s4);border:1px solid var(--line);border-radius:var(--s2);margin:0;cursor:pointer;min-height:80px}
.contact-solution:has(:checked){border-color:var(--accent);background:var(--surface2)}
#contact-form input[type=radio],#contact-form input[type=checkbox]{width:18px;height:18px;min-width:18px;min-height:18px;accent-color:var(--accent);padding:0;margin:0}
.contact-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s6);margin-block:var(--s6)}
.contact-question{border:0;margin:0;padding:0;min-width:0}
.contact-question legend{font-size:var(--text-base);font-weight:600;line-height:1.5;margin-bottom:var(--s3);padding:0}
#contact-form .contact-choice{display:flex;flex-direction:row;gap:var(--s3);align-items:flex-start;margin:0;padding-block:var(--s3);font-size:var(--text-sm);cursor:pointer;min-height:44px}
.contact-choice input{margin-top:3px!important}.contact-question input[type=text]{margin-top:var(--s3)}
.contact-actions{display:flex;flex-wrap:wrap;gap:var(--s3)}.contact-send{border:0;padding-bottom:0}
.contact-test-options{margin-block:var(--s5)}.contact-test-options summary{cursor:pointer;color:var(--muted);font-size:var(--text-sm);margin-bottom:var(--s4)}
#contact-form button:disabled{opacity:.65;transform:none}
#contact-status:not(:empty){border:1px solid var(--line);background:var(--surface);padding:var(--s5);margin-top:var(--s6);font-size:var(--text-base);overflow-wrap:anywhere;scroll-margin-block:110px}
#contact-status[data-state=error]{border-color:var(--accent)}
#contact-result{margin-top:var(--s6);padding-top:var(--s6);border-top:1px solid var(--line)}
#contact-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:var(--text-sm);color:var(--muted);background:var(--bg);padding:var(--s5)}
@media(max-width:1000px){.contact-layout{grid-template-columns:1fr}.contact-aside{grid-column:1;grid-row:2;position:static}.contact-aside img{max-width:440px}#contact-form{grid-row:1}}
@media(max-width:600px){.contact-questions,.contact-solutions{grid-template-columns:1fr}.contact-actions{display:grid}.contact-actions button{width:100%}#contact-form .form-row{grid-template-columns:1fr}}
