:root{--bg:#001E21;--bg2:#00292d;--ink:#F2EAD8;--muted:#d6ccb8;--gold:#D9B97A;--line:rgba(242,234,216,.16)}
*{box-sizing:border-box}html{background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Atkinson Hyperlegible Next','Atkinson Hyperlegible',Inter,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-size:17px;line-height:1.7;font-weight:500;-webkit-font-smoothing:antialiased}
a{color:var(--gold);text-underline-offset:3px}a:hover{color:#f0d49a}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.wrap{max-width:780px;margin:0 auto;padding:0 16px}
header.top{border-bottom:1px solid var(--line);background:var(--bg)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;max-width:1100px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-family:Cinzel,serif;letter-spacing:.18em;font-size:17px}
.brand img{width:34px;height:34px}
nav.top a{color:var(--ink);text-decoration:none;font-size:15px;margin-left:16px}nav.top a.cta{border:1px solid var(--gold);color:var(--gold);padding:8px 14px;border-radius:999px}
.crumbs{font-size:14px;color:var(--muted);margin:22px 0 6px}.crumbs a{color:var(--muted)}
.kicker{font-family:Cinzel,serif;letter-spacing:.12em;color:var(--gold);font-size:14px;margin:14px 0 4px}
h1{font-family:Cinzel,serif;font-weight:400;font-size:clamp(28px,6vw,40px);line-height:1.25;margin:0 0 14px;letter-spacing:.01em}
h2{font-family:Cinzel,serif;font-weight:400;font-size:clamp(22px,4.5vw,27px);line-height:1.3;margin:38px 0 10px;color:#fff6e4}
.intro{font-size:19px;color:var(--ink)}
.hero{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px;margin:18px 0 6px;background:var(--bg2)}
ul,ol{padding-left:1.3em}li{margin:.35em 0}
.tip{border:1px solid rgba(217,185,122,.5);background:rgba(217,185,122,.08);border-radius:14px;padding:16px 18px;margin:30px 0}
.tip strong{color:var(--gold)}
.cta-box{background:var(--bg2);border:1px solid var(--line);border-radius:18px;padding:22px;margin:36px 0;text-align:center}
.cta-box p{margin:0 0 14px}
.btn{display:inline-block;min-height:48px;padding:12px 22px;border-radius:999px;font-weight:600;text-decoration:none;margin:6px}
.btn.gold{background:var(--gold);color:#001E21}.btn.ghost{border:1px solid var(--gold);color:var(--gold)}
details{border-top:1px solid var(--line);padding:12px 0}details:last-of-type{border-bottom:1px solid var(--line)}
summary{cursor:pointer;font-weight:600;font-size:17px}details p{margin:8px 0 0;color:var(--muted)}
.related{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0 40px}
.related a{display:block;border:1px solid var(--line);border-radius:14px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.related a span{display:block;color:var(--gold);font-size:13px;letter-spacing:.08em;font-family:Cinzel,serif;margin-bottom:4px}
.note{font-size:15px;color:var(--muted)}
footer{border-top:1px solid var(--line);margin-top:30px;padding:26px 0 40px;font-size:15px;color:var(--muted)}
footer a{color:var(--muted)}footer .wrap{max-width:1100px}
.hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:24px 0 40px}
.hub a{display:block;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);background:var(--bg2)}
.hub img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.hub div{padding:14px 16px}.hub h2{font-size:20px;margin:4px 0 6px}.hub p{margin:0;font-size:15px;color:var(--muted)}
@media (max-width:560px){nav.top a:not(.cta){display:none}}
