body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.contact-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:40px;align-items:start;padding-block:12px 28px}
.contact-layout h2{font-size:20px;line-height:1.3;margin:0 0 14px;letter-spacing:-.4px}
.contact-layout p{color:var(--muted);margin:0 0 16px;max-width:62ch}
.contact-layout a{color:var(--pd);text-underline-offset:3px}
.contact-form{padding:28px;background:var(--card);border:1px solid var(--border);border-radius:16px;min-width:0}
.contact-form fieldset{margin:0;padding:0;border:0;min-width:0;display:grid;gap:20px}
.contact-field{display:grid;gap:7px;min-width:0}
.contact-field label{font-weight:650;font-size:15px}
.contact-optional{font-weight:400;color:var(--muted);font-size:13px;margin-inline-start:5px}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-width:0;border:1px solid var(--border);border-radius:9px;background:var(--bg);color:var(--text);font:inherit;padding:11px 12px;line-height:1.5}
.contact-field textarea{min-height:190px;resize:vertical}
.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible,.contact-send:focus-visible{outline:3px solid var(--pd);outline-offset:3px}
.contact-field small{font-size:13px;color:var(--muted);line-height:1.5}
.contact-form fieldset:disabled{opacity:.6}
.contact-form .contact-privacy{font-size:13px;margin:0;color:var(--muted)}
.contact-send{width:100%;min-height:48px;display:inline-flex;justify-content:center;align-items:center;padding:12px 16px;border:1px solid var(--pd);border-radius:9px;background:var(--pd);color:#fff;font:inherit;font-weight:650;cursor:pointer;transition:transform .15s ease,opacity .15s ease}
.contact-send:active:not(:disabled){transform:translateY(1px)}
.contact-send:disabled{cursor:default;opacity:.65}
.contact-status{font-size:14px;line-height:1.6;min-height:24px;margin:14px 0 0!important;overflow-wrap:anywhere}
.contact-status[data-state=error]{color:#9b2828}
.contact-status[data-state=success]{color:var(--pd)}
.contact-notice{padding:14px 16px;border-inline-start:3px solid var(--pd);background:var(--card);margin:0 0 22px;max-width:70ch}
.contact-notice p{margin:0;color:var(--text)}
.contact-aside{padding-block:12px;border-top:1px solid var(--border)}
.contact-aside p{font-size:14px}
.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}
.contact-check{max-width:100%;overflow:hidden;min-height:0}
.contact-updated{font-size:13px;color:var(--muted);margin-top:24px}
@media(max-width:700px){.contact-layout{grid-template-columns:minmax(0,1fr);gap:28px}.contact-form{padding:20px}.contact-field textarea{min-height:170px}.contact-aside{padding-block:18px}}
@media(prefers-color-scheme:dark){.contact-layout a{color:#9de4be}.contact-send{background:#8bd7ac;color:#10261c;border-color:#8bd7ac}.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible,.contact-send:focus-visible{outline-color:#9de4be}.contact-status[data-state=error]{color:#ffb1ac}.contact-status[data-state=success]{color:#9de4be}}
@media(prefers-reduced-motion:reduce){.contact-send{transition:none}}
