:root{
  --bg:#120921;--bg2:#1b0f33;--panel:#221440;--line:#3a2566;
  --ink:#f4eefc;--ink2:#c9bce0;--ink3:#9a8bb8;
  --pink:#ff3f97;--pink2:#ff6fb1;--gold:#ffd166;--orange:#ff8a4c;--teal:#3ee0c8;
  --sunset:linear-gradient(90deg,#ffd166,#ff8a4c 45%,#ff3f97);
  --r:14px;--wrap:1120px;--read:760px;
  --hfont:"Archivo Black",Impact,"Arial Black",sans-serif;
  --bfont:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:76px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.7 var(--bfont);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--pink2);text-underline-offset:3px}
a:hover{color:var(--gold)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;z-index:99;background:var(--gold);color:#000;padding:8px 12px;border-radius:8px}

/* header */
.top{position:sticky;top:0;z-index:20;background:rgba(18,9,33,.86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:20px;height:64px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:20px/1 var(--hfont);letter-spacing:.3px;white-space:nowrap}
.brand b{color:var(--pink);font-weight:400}
.top nav{display:flex;gap:4px;margin-left:auto}
.top nav a{color:var(--ink2);text-decoration:none;font-weight:600;font-size:15px;padding:8px 12px;border-radius:999px}
.top nav a:hover,.top nav a[aria-current]{color:var(--ink);background:var(--panel)}
.menu{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;cursor:pointer;position:relative}
.menu span,.menu span::before,.menu span::after{position:absolute;left:11px;width:22px;height:2px;background:var(--ink);content:"";transition:.2s}
.menu span{top:21px}.menu span::before{top:-7px;left:0}.menu span::after{top:7px;left:0}
.menu[aria-expanded=true] span{background:transparent}
.menu[aria-expanded=true] span::before{top:0;transform:rotate(45deg)}
.menu[aria-expanded=true] span::after{top:0;transform:rotate(-45deg)}
@media (max-width:900px){
  .menu{display:block}
  .top nav{display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;background:var(--bg2);padding:8px 16px 16px;border-bottom:1px solid var(--line)}
  .top nav.open{display:flex}
  .top nav a{padding:12px;font-size:17px}
}

/* hero */
.hero{position:relative;min-height:360px;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,9,33,.15) 0%,rgba(18,9,33,.55) 45%,var(--bg) 100%)}
.hero-in{max-width:var(--wrap);width:100%;margin:0 auto;padding:120px 16px 28px}
.hero h1{font:400 clamp(32px,6vw,58px)/1.05 var(--hfont);margin:0 0 12px;text-shadow:0 4px 30px rgba(0,0,0,.5);max-width:880px}
.lede{font-size:clamp(17px,2.2vw,20px);color:var(--ink);max-width:720px;margin:0 0 10px;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.meta{color:var(--ink2);font-size:14px;margin:0}
.crumb{font-size:14px;margin:0 0 10px;color:var(--ink2)}
.crumb a{color:var(--ink2)}
.hero-home{min-height:min(78vh,640px)}
.hero-home h1{background:var(--sunset);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 4px 24px rgba(0,0,0,.45))}
.count{display:flex;gap:10px;margin:18px 0 6px;flex-wrap:wrap}
.count div{background:rgba(34,20,64,.82);border:1px solid var(--line);border-radius:12px;padding:10px 14px;min-width:78px;text-align:center}
.count b{display:block;font:400 30px/1 var(--hfont);color:var(--gold)}
.count span{font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:var(--ink2)}
.plainhead{max-width:var(--read);margin:40px auto 0;padding:0 16px}
.plainhead h1{font:400 40px/1.1 var(--hfont);margin:0}

/* content */
.content{max-width:var(--read);margin:0 auto;padding:12px 0 40px}
.home .content{max-width:var(--wrap)}
.content h2{font:400 clamp(24px,3.4vw,32px)/1.15 var(--hfont);margin:48px 0 14px;scroll-margin-top:80px}
.content h2::after{content:"";display:block;width:56px;height:4px;border-radius:4px;background:var(--sunset);margin-top:10px}
.content h3{font-size:21px;line-height:1.3;margin:30px 0 8px}
.content p,.content li{color:var(--ink)}
.content ul,.content ol{padding-left:22px}
.content li{margin:6px 0}
.content strong{color:#fff}
figure{margin:26px 0;border-radius:var(--r);overflow:hidden;background:var(--panel);border:1px solid var(--line)}
figure img{width:100%}
figcaption{padding:10px 14px;font-size:14px;color:var(--ink2);line-height:1.5}
.cr{color:var(--ink3);font-size:12px;white-space:nowrap}
.b{display:inline-block;font:700 11px/1 var(--bfont);text-transform:uppercase;letter-spacing:.8px;padding:4px 7px;border-radius:6px;vertical-align:2px;margin-left:4px;white-space:nowrap}
.b-r{background:rgba(62,224,200,.14);color:var(--teal);border:1px solid rgba(62,224,200,.35)}
.b-2{background:rgba(255,209,102,.12);color:var(--gold);border:1px solid rgba(255,209,102,.35)}
.legend{font-size:14px;color:var(--ink2);background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;margin:20px 0}
.toc{background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);padding:16px 20px;margin:20px 0}
.toc b{font-size:13px;text-transform:uppercase;letter-spacing:1.2px;color:var(--ink2)}
.toc ol{margin:8px 0 0;padding-left:20px;columns:2;column-gap:28px}
.toc li{margin:4px 0;break-inside:avoid;font-size:15px}
.toc a{color:var(--ink);text-decoration:none}.toc a:hover{color:var(--pink2)}
@media (max-width:600px){.toc ol{columns:1}}
.note{background:linear-gradient(135deg,rgba(255,63,151,.12),rgba(255,138,76,.08));border:1px solid rgba(255,63,151,.35);border-radius:var(--r);padding:14px 18px;margin:22px 0}
.note p{margin:0}
.tbl{overflow-x:auto;margin:20px 0;border:1px solid var(--line);border-radius:var(--r)}
table{border-collapse:collapse;width:100%;font-size:15px;min-width:460px}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--panel);font-size:13px;text-transform:uppercase;letter-spacing:.8px;color:var(--ink2)}
tr:last-child td{border-bottom:0}
td:first-child{font-weight:600;color:#fff}

/* quick facts */
.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin:22px 0}
.fact{background:var(--bg2);border:1px solid var(--line);border-left:4px solid var(--pink);border-radius:12px;padding:14px 16px}
.fact span{display:block;font:700 12px/1 var(--bfont);text-transform:uppercase;letter-spacing:1.2px;color:var(--pink2);margin-bottom:8px}
.fact b{font-size:17px;line-height:1.35}
.fact a{color:inherit;text-decoration:none}
@media (max-width:600px){
  .facts{grid-template-columns:1fr 1fr;gap:8px}
  .fact{padding:10px 12px;border-left-width:3px}
  .fact span{font-size:10.5px;letter-spacing:.8px;margin-bottom:5px}
  .fact b{font-size:14.5px}
  .hero-home{min-height:560px}
}

/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin:22px 0}
.card{display:flex;flex-direction:column;background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .15s,border-color .15s}
.card:hover{transform:translateY(-3px);border-color:var(--pink);color:var(--ink)}
.card img{aspect-ratio:16/9;object-fit:cover;width:100%}
.card-t{font:400 19px/1.2 var(--hfont);padding:14px 16px 4px}
.card-d{font-size:14px;color:var(--ink2);padding:0 16px 16px;line-height:1.5}

/* youtube */
.yt{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;cursor:pointer;background:#000;margin:24px 0 6px;border:1px solid var(--line)}
.yt img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:opacity .2s}
.yt:hover img{opacity:1}
.yt .play{position:absolute;left:50%;top:50%;width:72px;height:50px;margin:-25px 0 0 -36px;background:var(--pink);border-radius:14px;box-shadow:0 6px 24px rgba(0,0,0,.5)}
.yt .play::after{content:"";position:absolute;left:29px;top:15px;border-style:solid;border-width:10px 0 10px 17px;border-color:transparent transparent transparent #fff}
.yt-t{position:absolute;left:0;right:0;top:0;padding:12px 14px;font-weight:700;background:linear-gradient(180deg,rgba(0,0,0,.75),transparent);font-size:15px}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-src{font-size:13px;color:var(--ink3);margin:0 0 20px}
.ytgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin:20px 0}
.ytgrid .yt{margin:0 0 6px}
.ytgrid .yt-t{font-size:13px;padding:10px 12px}
@media (max-width:640px){.ytgrid{grid-template-columns:1fr}}

/* faq, follow, related */
.faq details{background:var(--bg2);border:1px solid var(--line);border-radius:12px;margin:10px 0;padding:0 16px}
.faq summary{cursor:pointer;font-weight:700;padding:14px 0;list-style:none;position:relative;padding-right:28px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:10px;font-size:24px;color:var(--pink)}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:0 0 14px;color:var(--ink2)}
.follow{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:48px 0 0;padding:18px;border-radius:var(--r);background:linear-gradient(135deg,#2a1150,#3a1240 60%,#4a1a2c);border:1px solid var(--line)}
.follow>div:nth-child(2){flex:1;min-width:220px;font-size:15px;color:var(--ink2)}
.follow b{color:#fff;display:block;font-size:17px}
.follow-btns{display:flex;gap:8px}
.btn{display:inline-block;background:var(--pink);color:#fff;font-weight:700;text-decoration:none;padding:10px 16px;border-radius:999px;font-size:15px}
.btn:hover{background:var(--pink2);color:#fff}
.btn-2{background:transparent;border:1px solid var(--pink2);color:var(--ink)}
.related{margin:36px 0 0}
.related h2{font-size:22px}
.related ul{list-style:none;padding:0;display:grid;gap:8px}
.related li{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:12px 16px}
.related li a{font-weight:700;text-decoration:none}
.related li span{display:block;font-size:14px;color:var(--ink2)}
.foot{border-top:1px solid var(--line);background:#0d0619;color:var(--ink3);font-size:14px;padding:26px 0 40px}
.foot a{color:var(--ink2)}

/* home sections */
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media (max-width:760px){.two{grid-template-columns:1fr}}
.region{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:16px 0}
.region a{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--ink);font-weight:700}
.region a span{display:block;font-weight:400;font-size:13px;color:var(--ink2)}
.region a:hover{border-color:var(--pink)}
