:root{--night:#0E1424;--paper:#F3F2EE;--gold:#C8A35A;--mute:#62697A;--line:rgba(14,20,36,.13)}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--paper);color:var(--night);font:400 16px/1.6 Archivo,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:3px}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.inner{max-width:720px;margin:0 auto;padding:0 16px}
header,footer{background:var(--night);color:#fff}
header .inner,footer .inner{display:flex;gap:20px;padding-top:18px;padding-bottom:18px}
header a,footer a{text-decoration:none;font-size:14px;opacity:.85}
main{padding-top:48px;padding-bottom:64px}
h1{font-size:clamp(36px,8vw,56px);font-weight:800;letter-spacing:-.03em;line-height:1;margin-bottom:32px}
h2{font-size:18px;font-weight:700;margin:32px 0 8px}
h2 small{font-weight:400;color:var(--mute)}
p,li{margin-bottom:10px;overflow-wrap:anywhere}
ul{padding-left:20px}
.small{font-size:14px;color:var(--mute)}
form{display:grid;gap:14px;margin-top:12px}
label{display:grid;gap:6px;font-size:14px;font-weight:600}
input,textarea{font:inherit;font-weight:400;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:inherit;width:100%}
.hp{position:absolute;left:-9999px}
button{justify-self:start;height:48px;padding:0 26px;border:0;border-radius:999px;background:var(--gold);color:var(--night);font:600 15px Archivo,system-ui,sans-serif;cursor:pointer}
.msg{padding:12px 14px;border-radius:10px}
.ok{background:#e4f2e7}
.err{background:#f7e1e1}
