.contact-page{background:var(--deep)}.contact-page :focus-visible{outline:2px solid var(--lime);outline-offset:3px}.contact-hero{min-height:100vh;padding:145px 0 100px;position:relative;overflow:hidden}.contact-grid{position:absolute;inset:0;background-image:linear-gradient(rgb(255 255 255/4%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255/4%) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(110deg,#000,transparent 70%)}.contact-layout{position:relative;display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;align-items:start}.contact-context{position:sticky;top:120px}.contact-eyebrow{display:block;color:var(--lime);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin-bottom:30px}.contact-context h1{font-size:clamp(48px,5vw,72px);line-height:1;letter-spacing:-.05em;margin-bottom:30px}.contact-context h1 em{color:var(--lime);font-family:Georgia,serif;font-weight:400}.contact-context>p{color:rgb(255 255 255/67%);font-size:17px;line-height:1.7;max-width:520px}.contact-context ol{list-style:none;padding:0;margin:60px 0 0;border-top:1px solid rgb(255 255 255/16%)}.contact-context li{display:grid;grid-template-columns:45px 1fr;padding:18px 0;border-bottom:1px solid rgb(255 255 255/16%)}.contact-context li b{color:var(--lime);font-size:10px}.contact-panel{background:#fff;color:var(--deep);padding:clamp(28px,4vw,58px);box-shadow:var(--qf-shadow-soft)}.form-heading{border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:32px}.form-heading>span,.contact-success>span{color:#16875b;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.18em}.form-heading h2,.contact-success h2{font-size:clamp(30px,3vw,42px);line-height:1.12;margin:16px 0 10px}.form-heading p{color:var(--muted);font-size:12px;margin:0}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.field{margin-bottom:22px}.field label,.privacy-field label{display:block;font-size:12px;font-weight:700;margin-bottom:9px}.field label small{color:var(--muted);font-weight:400;margin-left:6px}.field input,.field select,.field textarea{width:100%;min-height:48px;border:1px solid #b7bec6;background:#fff;color:var(--deep);padding:12px 13px;font:inherit;border-radius:0}.field textarea{resize:vertical;min-height:145px;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus{border-color:#16875b;outline:2px solid rgb(0 230 138/24%)}.field [aria-invalid=true],.privacy-field [aria-invalid=true]{border-color:#a12622}.field-error{display:block;min-height:17px;color:#a12622;font-size:11px;margin-top:5px}.privacy-field{display:grid;grid-template-columns:22px 1fr;gap:4px 10px;margin:4px 0 25px}.privacy-field input{width:20px;height:20px;margin:0}.privacy-field label{font-weight:400;line-height:1.55;margin:0}.privacy-field a{text-decoration:underline}.privacy-field .field-error{grid-column:2}.contact-submit{border:0;width:100%;min-height:54px;cursor:pointer}.contact-submit:disabled{opacity:.6;cursor:wait}.contact-submit i{font-style:normal}.form-result{min-height:22px;font-size:12px;color:var(--muted);margin-bottom:10px}.form-result.error{color:#a12622}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-success{padding:40px 0}.contact-success p{color:var(--muted);font-size:16px;line-height:1.7;margin:22px 0 36px}.contact-page footer{border-top:1px solid rgb(255 255 255/14%)}
.privacy-notice{margin:2px 0 22px;padding:16px 18px;border-left:3px solid #16875b;background:#f2f7f4;color:#52635b;font-size:11px;line-height:1.65}.privacy-notice strong{color:var(--deep)}.privacy-notice a{text-decoration:underline}
@media(max-width:1100px){.contact-layout{grid-template-columns:1fr;gap:55px}.contact-context{position:static}.contact-context ol{margin-top:35px}.contact-hero{padding-top:125px}.contact-context>p{max-width:680px}.contact-panel{max-width:820px;width:100%;margin-inline:auto}}
@media(max-width:560px){.contact-hero{padding:115px 0 70px}.contact-context h1{font-size:48px}.contact-panel{padding:26px 20px}.field-grid{grid-template-columns:1fr;gap:0}.contact-context li{min-height:55px}.contact-submit{min-height:54px}}
@media(prefers-reduced-motion:reduce){.contact-panel *{scroll-behavior:auto}}
