.contact-page *{box-sizing:border-box}
.contact-page .container{width:min(1080px,calc(100% - 32px))}
.contact-page .skip-link{position:absolute;top:-100px;left:16px;z-index:100;padding:8px 16px;border-radius:8px;background:var(--accent);color:var(--bg);font-weight:700;text-decoration:none;transition:top .15s}
.contact-page .skip-link:focus{top:16px}
.contact-card{padding:clamp(20px,4vw,36px)!important}
.contact-intro{max-width:68ch;margin-bottom:24px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr);gap:28px;align-items:start;margin-top:24px}
.contact-form{min-width:0;padding:clamp(18px,3vw,28px);border:1px solid var(--border);border-radius:14px;background:var(--panel-2)}
.contact-form fieldset{display:grid;gap:18px;min-width:0;margin:0;padding:0;border:0}
.contact-form fieldset:disabled{opacity:.62}
.contact-field{display:grid;gap:7px;min-width:0}
.contact-field label{margin:0;color:var(--text);font-weight:680}
.contact-optional{margin-inline-start:5px;color:var(--muted);font-size:.8rem;font-weight:400}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-width:0;border:1px solid var(--border);border-radius:10px;background:var(--panel-2);color:var(--text);font:inherit}
.contact-field textarea{min-height:190px;padding:11px 12px;resize:vertical}
.contact-form fieldset:disabled input,.contact-form fieldset:disabled select,.contact-form fieldset:disabled textarea{background:var(--panel);color:var(--muted);-webkit-text-fill-color:var(--muted);cursor:not-allowed;opacity:1}
.contact-form fieldset:disabled .contact-send{border-color:var(--border)!important;background:var(--panel)!important;color:var(--muted)!important;cursor:not-allowed}
.contact-field small,.contact-privacy{color:var(--muted);font-size:.82rem;line-height:1.55}
.contact-send{min-height:48px}
.contact-status{min-height:24px;margin:14px 0 0!important;color:var(--muted);font-size:.9rem;line-height:1.55;overflow-wrap:anywhere}
.contact-status[data-state="error"]{color:var(--danger)}
.contact-status[data-state="success"]{color:var(--ok)}
.contact-notice{margin:0 0 22px;padding:14px 16px;border:1px solid var(--border);border-left:3px solid var(--warning);border-radius:10px;background:rgba(243,201,105,.06)}
.contact-notice p{margin:0;color:var(--text)}
.contact-aside{padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}
.contact-aside h2{font-size:1.12rem}
.contact-aside p,.contact-aside li{font-size:.9rem}
.contact-aside ul{margin:12px 0 0;padding-left:1.2rem}
.contact-aside li+li{margin-top:8px}
.contact-trap{position:absolute;inset-inline-start:-10000px;width:1px;height:1px;overflow:hidden}
.contact-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:760px){.contact-layout{grid-template-columns:minmax(0,1fr)}.contact-form{padding:18px}.contact-field textarea{min-height:170px}}
@media(prefers-reduced-motion:reduce){.contact-send{transition:none}}
