.contact-hero{--intro-mesh-background:var(--bg)}.contact-layout{grid-template-columns:minmax(0,.88fr) minmax(460px,1fr);align-items:start;gap:clamp(48px,7vw,112px);padding-block:clamp(68px,8vw,112px);display:grid}.contact-intro-title{max-width:10ch}.contact-intro-lead{margin-top:1.5rem;line-height:1.65}.contact-option{grid-template-columns:24px minmax(0,1fr)}.contact-option-list,.contact-option-list .contact-option+.contact-option{border-top:1px solid color-mix(in srgb, var(--fg) 20%, transparent)}.contact-option h2{margin:0;font-size:1rem;line-height:1.5}.contact-option p{margin-top:.5rem}.contact-option-link{color:var(--primary-strong)}.contact-option-link:hover{color:var(--primary)}.contact-option-link:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.contact-form-shell{min-height:592px}.contact-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft);gap:1.5rem;padding:clamp(24px,4vw,40px);display:grid}.contact-form[hidden]{display:none}.contact-form-title{font-size:clamp(1.65rem,3vw,2.15rem);line-height:1.08}.contact-field textarea{min-height:154px}.contact-field input,.contact-field textarea{border:1px solid color-mix(in srgb, var(--fg) 25%, transparent);color:var(--ink);background:#fff;border-radius:.375rem;width:100%;padding:.75rem}.contact-field input{min-height:3rem}.contact-field textarea{resize:vertical}.contact-field input:hover,.contact-field textarea:hover{border-color:color-mix(in srgb, var(--fg) 40%, transparent)}.contact-field-help,.contact-field-error{font-size:.875rem;line-height:1.4}.contact-field-error{min-height:1.15em}.contact-field input:focus-visible,.contact-field textarea:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 14%, transparent);outline:0}.contact-field [aria-invalid=true]{border-color:#a63e2e}.contact-field [aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px #a63e2e24}.contact-honeypot{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}.contact-form-error{color:#76271d;background:#f9e8e4;border:1px solid #dfb6ad;border-radius:.375rem;padding:.75rem;font-size:.875rem}.contact-form-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:1.5rem;padding-top:1.5rem;display:flex}.contact-submit:disabled{cursor:wait;opacity:.68;transform:none}.contact-success[hidden]{display:none}.contact-success{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft);text-align:center;align-content:center;min-height:592px;padding:clamp(24px,4vw,40px);display:grid}.contact-success-icon{background:var(--primary-soft);border:1px solid color-mix(in srgb, var(--primary) 20%, transparent);color:var(--primary);border-radius:9999px;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;margin:0 auto 1.5rem;display:inline-flex}.contact-success-title{margin:.5rem auto .75rem;font-size:1.875rem}.contact-success>p:not(.eyebrow){margin-inline:auto}.contact-faq{grid-template-columns:minmax(260px,.72fr) minmax(0,1fr);gap:clamp(44px,7vw,104px);padding-block:clamp(72px,9vw,128px);display:grid}.contact-faq-title{max-width:12ch;font-size:clamp(2.1rem,4vw,3.6rem);line-height:1}.contact-faq-summary{color:var(--ink);cursor:pointer;text-wrap:pretty;justify-content:space-between;align-items:center;min-height:4rem;padding:.75rem 2.5rem .75rem 0;font-size:1.125rem;font-weight:700;line-height:1.75rem;display:flex;position:relative}@media (hover:hover){.contact-faq-summary:hover{color:var(--primary-strong)}}.contact-faq-summary:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.contact-faq-list summary::-webkit-details-marker{display:none}.contact-faq-list summary:after{color:var(--primary);content:"+";font-size:1.5rem;font-weight:400;line-height:1;position:absolute;right:4px}.contact-faq-list details[open] summary:after{content:"-"}@media (width<=900px){.contact-layout,.contact-faq{grid-template-columns:1fr;gap:48px}.contact-form-shell{min-height:0}.contact-faq-title{max-width:16ch}}@media (width<=680px){.contact-layout{padding-block:44px 64px}.contact-form,.contact-success{padding:24px 20px}.contact-form-actions{flex-direction:column;align-items:stretch}.contact-success{min-height:480px}.contact-faq{padding-block:64px 76px}}
