:root { color-scheme: light; --paper:#f5f3eb; --ink:#18202a; --muted:#4b5360; --gold:#c6a14c; --line:#d8d2c2; }
* { box-sizing: border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.55 system-ui,sans-serif; }
.shell { width:min(1120px,calc(100% - 40px)); margin-inline:auto; }
.top { display:flex; justify-content:space-between; align-items:center; gap:12px; border-bottom:1px solid var(--line); padding-block:24px; }
.top a { font-weight:750; color:inherit; }
.top span, .note { color:var(--muted); font-size:.875rem; }
.layout { display:grid; grid-template-columns:1.1fr 1fr; gap:clamp(24px,6vw,80px); align-items:start; padding-block:clamp(40px,9vw,110px); }
.intro { padding-top:8px; }
.label { font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; font-weight:750; margin:0 0 16px; }
h1 { margin:0; font-size:clamp(2.5rem,5.5vw,4.9rem); line-height:1.03; letter-spacing:-.055em; }
h2 { margin:0 0 24px; font-size:clamp(1.4rem,3vw,2rem); letter-spacing:-.035em; }
.lede { margin:22px 0; font-size:1.2rem; }
ul { padding-left:19px; border-left:3px solid var(--gold); list-style-position:inside; margin:0 0 24px; }
li + li { margin-top:8px; }
.card { background:#fffdf6; border:1px solid var(--line); padding:clamp(18px,4vw,38px); }
label { display:block; font-weight:700; margin:12px 0 5px; }
input, button { width:100%; font:inherit; }
input { border:1px solid #85898e; background:#fff; color:inherit; border-radius:4px; padding:10px 12px; min-height:45px; }
button { background:var(--ink); color:#fff; border:0; border-radius:4px; padding:12px; min-height:48px; font-weight:750; cursor:pointer; }
button span { color:#f3cc72; margin-left:.25em; }
button:disabled { opacity:.65; cursor:default; }
:focus-visible { outline:3px solid #815c0a; outline-offset:3px; }
.status:empty { display:none; }
.status { margin:18px 0 0; }
@media(max-width:760px) { .layout { grid-template-columns:1fr; } }
