.contact-page .site-header{position:relative}
.contact-shell{max-width:1200px;margin:0 auto;padding:70px 28px 90px}
.contact-intro{max-width:850px;margin-bottom:40px}
.contact-intro h1{font-size:clamp(40px,6vw,74px);line-height:1.03;letter-spacing:-.04em;margin:18px 0}
.contact-intro p{color:#c2c5bf;font-size:18px;line-height:1.65;max-width:710px}
.contact-grid{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:50px;align-items:start}
.contact-aside{border-top:1px solid var(--line);padding-top:26px}
.contact-aside h2{font-family:var(--serif);font-size:30px;margin-bottom:16px}
.contact-aside p{line-height:1.7;color:#c2c5bf;margin-bottom:20px}
.contact-aside a,.contact-privacy a{color:var(--acid);text-decoration:underline;text-underline-offset:4px}
.contact-aside .button{margin-top:12px;text-decoration:none}
.contact-form{background:#151915;border:1px solid #ffffff24;padding:30px}
.contact-form h2{font-family:var(--serif);font-size:32px;line-height:1.2;margin:0 0 12px}
.contact-note{color:#c2c5bf;font-size:14px;line-height:1.65;margin-bottom:20px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.contact-field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;min-width:0}
.contact-fields .contact-field{margin:0}
.contact-fields{margin-bottom:20px}
.contact-field label{font-size:14px;font-weight:650}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-width:0;background:#0a0c0b;border:1px solid #777e74;border-radius:2px;color:#f1eee6;padding:12px 14px;min-height:48px;font:16px/1.5 var(--sans)}
.contact-field textarea{min-height:140px;resize:vertical}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#a7aaa4}
.contact-field [aria-invalid="true"]{border-color:#ff9d95}
.contact-page :focus-visible{outline:3px solid var(--acid);outline-offset:4px}
.contact-optional{border-top:1px solid var(--line);padding-top:16px;margin:0 0 20px}
.contact-optional summary{cursor:pointer;color:#c2c5bf;min-height:44px}
.contact-optional[open] summary{margin-bottom:12px}
.contact-privacy{font-size:13px;color:#c2c5bf;line-height:1.6;margin:20px 0}
.contact-form .button{cursor:pointer}
.contact-form .button:disabled{opacity:.65;cursor:wait;transform:none}
.request-status:empty{display:none}
.request-status{padding:16px;line-height:1.6;border:1px solid #777e74;margin:18px 0 0}
.request-status.success{border-color:#b8d44a;color:#dbeaa9}
.request-status.error{border-color:#ff9d95;color:#ffd3cb}
.contact-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.contact-page [hidden]{display:none!important}
.request-result{background:#0a0c0b;color:#f1eee6;font:18px/1.6 system-ui,sans-serif;margin:0;padding:8vh 24px}
.request-result main{max-width:740px;margin:auto}
.request-result a{color:#b8d44a}
.request-result h1{font:42px/1.2 Georgia,serif}
@media(max-width:720px){.contact-shell{padding:36px 20px 56px}.contact-grid{grid-template-columns:1fr;gap:28px}.contact-form{padding:22px 18px}.contact-fields{grid-template-columns:1fr;gap:16px}.contact-intro h1{font-size:42px}.contact-page .site-header{min-height:78px;height:auto;gap:18px;padding:20px}.contact-page .site-header nav{gap:18px}.contact-page .site-header nav a{display:block;font-size:11px}.contact-page .site-header .brand img{width:66px}.contact-page .footer{gap:24px}.contact-form .button{width:100%}}

.contact-page .skip-link{position:absolute;left:16px;top:-80px;z-index:20;background:#b8d44a;color:#0a0c0b;padding:12px 18px;font-weight:700}.contact-page .skip-link:focus{top:12px}
@media(max-width:720px){.contact-grid .contact-form{order:-1}}
