
:root{--bg:#0F0D0C;--bg2:#1B1816;--ink:#F5EFE0;--mute:#A99F8C;--line:#35302A;--amber:#F6B100;--stripes:linear-gradient(#1B74C9 0 25%,#8B3A9E 25% 50%,#D8232A 50% 75%,#F26B1D 75% 100%);color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:20px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:17px;line-height:1.65;padding-bottom:env(safe-area-inset-bottom,0px)}
a{color:var(--amber);text-underline-offset:3px}
a:focus-visible,summary:focus-visible,.btn:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:6px}
.top{max-width:980px;margin:0 auto;padding:calc(18px + env(safe-area-inset-top,0px)) 16px 18px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.logo{font-family:"Fraunces",Georgia,serif;font-weight:900;font-variation-settings:"SOFT" 100,"WONK" 1;letter-spacing:.03em;font-size:18px;display:inline-flex;align-items:center;color:var(--ink);text-decoration:none}
.logo i{display:inline-block;width:21px;height:15px;border-radius:3px;background:var(--stripes);margin-right:10px}
.top nav{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-size:15px}
.top nav a:not(.btn){color:var(--ink);text-decoration:none;opacity:.85}.top nav a:not(.btn):hover{opacity:1;text-decoration:underline}
.btn{display:inline-block;background:var(--amber);color:#141110;font-weight:700;text-decoration:none;padding:10px 18px;border-radius:12px;box-shadow:0 4px 0 #A56E00}
.btn:active{transform:translateY(2px);box-shadow:0 2px 0 #A56E00}
.doc{max-width:760px;margin:0 auto;padding:16px 16px 48px}
h1,h2{font-family:"Fraunces",Georgia,serif;font-weight:900;font-variation-settings:"SOFT" 100,"WONK" 1;letter-spacing:-.02em;line-height:1.08}
h1{font-size:clamp(34px,7vw,52px);margin:18px 0 10px}
h2{font-size:clamp(22px,4.4vw,28px);margin:38px 0 10px}
.lead{font-size:19px;color:var(--mute);margin:0 0 22px}
.upd{font-size:14px;color:var(--mute);margin:0 0 14px;letter-spacing:.02em}
.note{font-size:14px;background:#2A2410;border:1px solid #5A4A12;border-radius:10px;padding:10px 14px;color:#F3DDA0}
mark.ph{background:#F6B100;color:#141110;padding:0 .25em;border-radius:3px}
ul,ol{padding-left:22px}li{margin:6px 0}
.toc{background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:14px 18px;margin:20px 0 6px}
.toc b{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.toc ol{margin:8px 0 0;columns:2 240px;column-gap:24px}.toc li{margin:4px 0;break-inside:avoid}
.toc a{color:var(--ink);text-decoration:none}.toc a:hover{color:var(--amber);text-decoration:underline}
section{border-top:1px solid var(--line);margin-top:28px}section h2{margin-top:24px}
.faq{display:grid;gap:10px;margin-top:8px}
.faq details{background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:0 18px}
.faq details[open]{border-color:#4A433B}
.faq summary{list-style:none;cursor:pointer;padding:16px 34px 16px 0;font-weight:600;font-size:18px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:12px;font-size:26px;line-height:1;color:var(--amber);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 16px;color:#E6DFCF}
.cta{margin-top:40px;background:var(--bg2);border:1px solid var(--line);border-radius:18px;padding:22px;text-align:center}
.cta h2{margin:0 0 6px}.cta p{color:var(--mute);margin:0 0 16px}
.foot{max-width:980px;margin:0 auto;padding:0 16px 34px;font-size:15px}
.foot .stripes{height:10px;border-radius:3px;background:var(--stripes);margin-bottom:16px}
.foot p{margin:6px 0}.mute{color:var(--mute)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.faq summary::after{transition:none}}
@media print{body{background:#fff;color:#111}.top nav,.cta,.foot .stripes{display:none}a{color:#111}.toc,.faq details{background:#fff;border-color:#ccc}}
