.footer:has(.contact-section){padding-top:clamp(28px,4vw,64px)}.contact-section{margin-bottom:64px}.contact-intro{max-width:1040px;margin-bottom:48px}.contact-intro h2{font:400 clamp(38px, 4.4vw, 70px)/1.12 var(--serif);letter-spacing:-.035em;margin:24px 0}.contact-intro>p:last-child{font:400 clamp(21px, 1.8vw, 28px)/1.45 var(--serif);max-width:850px}.contact-form{box-shadow:var(--shadow);background:#ffffffa8;padding:clamp(28px,4vw,56px);position:relative}.contact-required{font:11px/1.6 var(--mono);color:#555;margin-bottom:28px}.contact-form fieldset{border:0;min-width:0;margin:0;padding:0}.contact-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 40px;display:grid}.contact-field{min-width:0}.contact-field label{font:11px/1.6 var(--mono);text-transform:uppercase;letter-spacing:.065em;margin-bottom:12px;display:block}.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-width:0;color:var(--ink);font:16px/1.5 var(--sans);background:0 0;border:0;border-bottom:1px solid #6c6c65;border-radius:0;padding:12px 0}.contact-field input,.contact-field select{min-height:48px}.contact-field input::placeholder{color:#666}.contact-field textarea{resize:vertical;border:1px solid #8b8b83;padding:14px}:is(.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible){outline:2px solid var(--blue);outline-offset:4px}.contact-message{grid-column:1/-1}.contact-send{border:1px solid var(--blue);min-height:48px;color:var(--blue);font:13px/1.5 var(--mono);cursor:pointer;background:#fff9;margin-top:32px;padding:16px 30px}.contact-send:hover{background:var(--blue);color:#fff}.contact-send:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.contact-form fieldset:disabled{opacity:.65}.contact-send:disabled{cursor:wait}.contact-status{font:14px/1.6 var(--mono);margin-top:20px}.contact-status:empty{margin:0}.contact-status[data-kind=error]{color:#9a2820}.contact-status[data-kind=success]{color:#23533a}.contact-honeypot{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:599px){.contact-section{margin-bottom:40px}.contact-intro{margin-bottom:32px}.contact-intro h2{font-size:36px}.contact-form{padding:24px 18px}.contact-fields{grid-template-columns:1fr;gap:26px}.contact-field select{font-size:16px}.contact-status{overflow-wrap:anywhere;font-size:12px}}.footer:has(.contact-section){--texture-opacity:.25}.contact-status{display:block}.contact-form-placeholder{min-height:790px}@media (max-width:599px){.contact-form-placeholder{min-height:1220px}}
