.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:96px;padding-block:160px 96px;align-items:start}
.contact-intro h1{font-size:clamp(40px,4.2vw,58px);max-width:10ch;margin-bottom:24px}
.contact-intro>p{max-width:34ch;color:var(--muted);font-size:18px}
.contact-intro .contact-context{color:var(--orange);font-size:15px;margin-top:32px}
.contact-form{min-width:0}
.contact-form fieldset{border:0;padding:0;margin:0;min-width:0}
.contact-form legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.form-note{font-size:14px;color:var(--muted);margin-bottom:24px}
.contact-field{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;min-width:0}
.contact-field label{font-size:16px;font-weight:500}
.contact-field input,.contact-field textarea{font:inherit;width:100%;min-height:54px;padding:12px 14px;border:1px solid #65606d;border-radius:8px;background:var(--surface);color:var(--text);caret-color:var(--orange);transition:border-color .2s}
.contact-field textarea{resize:vertical;min-height:172px;line-height:1.6}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:var(--muted);opacity:1}
.contact-field input:hover,.contact-field textarea:hover{border-color:#aaa0b6}
.contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-color:var(--orange)}
.contact-field [aria-invalid=true]{border-color:#ffb2ac}
.contact-field small,.contact-privacy{font-size:14px;color:var(--muted);line-height:1.55}
.contact-privacy{margin-top:20px;max-width:56ch}
.contact-privacy a{text-decoration:underline;color:var(--text)}
.contact-privacy a:hover{color:var(--orange)}
.contact-form .button{min-width:190px;box-shadow:none}
.contact-form .button:hover{transform:none;box-shadow:none}
.contact-form .button:disabled{opacity:1;background:#55505c;color:#f5f3ef;cursor:wait}
.contact-error{color:#ffb2ac;margin:0 0 20px;line-height:1.55}
.contact-success{padding-top:4px}
.contact-success h2{font-size:32px;margin-bottom:20px}
.contact-success p{max-width:48ch;color:var(--muted)}
.contact-success a{margin-top:12px}
.contact-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
@media(max-width:1000px){.contact-layout{gap:48px}.contact-intro h1{font-size:44px}}
@media(max-width:700px){.contact-layout{width:calc(100% - 40px);grid-template-columns:1fr;gap:32px;padding-block:128px 56px}.contact-intro h1{font-size:38px;max-width:14ch;margin-bottom:16px}.contact-intro>p{max-width:40ch;font-size:17px}.contact-intro .contact-context{margin-top:20px}.form-note{margin-bottom:20px}.contact-field{margin-bottom:20px}.contact-form .button{width:100%}}
