/*
 * The Rescue Stream. A committed dark "cinema" look (single theme, painted explicitly).
 * Palette: midnight ink from the key art's storm sky, warm paper white, logo gold; sky blue for parents & leaders.
 * Type: Fraunces (display, SOFT axis) + Figtree (UI). Both self-hosted, SIL Open Font License.
 */
@font-face{font-family:"Fraunces";src:url(../fonts/fraunces-latin-full-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(../fonts/fraunces-latin-full-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Figtree";src:url(../fonts/figtree-latin-wght-normal.woff2) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}


:root{
  --ink:#0a0f1e;        /* page ground: midnight with a blue bias, from the key art's storm sky */
  --ink-2:#121a2e;      /* surface */
  --ink-3:#1b2540;      /* raised surface */
  --line:#26314f;
  --paper:#f4efe4;      /* warm white text */
  --mist:#a3abc3;       /* muted text */
  --mist-2:#737d99;
  --gold:#f5b83d;       /* logo gold */
  --gold-2:#ffd67a;
  --gold-ink:#2a1c00;
  --sky:#8fd3ff;        /* parents & leaders accent, used sparingly */
  --leaf:#86d69a;
  --radius:14px;
  --display:"Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;
  --ui:"Figtree", "Segoe UI", system-ui, -apple-system, sans-serif;
  --gutter:clamp(16px,4vw,56px);
  color-scheme:dark;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--paper);font:400 16px/1.55 var(--ui);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
img{max-width:100%;height:auto;display:block}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
.wrap{padding-inline:var(--gutter)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- Nav ---------- */
.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:clamp(12px,3vw,36px);padding:14px var(--gutter);background:linear-gradient(to bottom,rgba(10,15,30,.92),rgba(10,15,30,.72));backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);border-bottom:1px solid rgba(38,49,79,.6)}
.brand{display:flex;align-items:baseline;gap:4px;text-decoration:none;flex-shrink:0}
.brand i{font:italic 500 17px/1 var(--display);color:var(--gold-2);font-variation-settings:"SOFT" 100}
.brand b{font:800 23px/1 var(--display);letter-spacing:.04em;color:var(--gold);font-variation-settings:"SOFT" 100,"opsz" 72}
.nav-links{display:flex;gap:clamp(10px,2vw,26px);margin:0;padding:0;list-style:none}
.nav-links a{text-decoration:none;font-weight:600;font-size:15px;color:var(--mist);padding:6px 0;border-bottom:2px solid transparent}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--paper);border-color:var(--gold)}
.nav-tools{margin-left:auto;display:flex;align-items:center;gap:10px}
.icon-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--ink-2);display:grid;place-items:center;cursor:pointer}
.icon-btn:hover{background:var(--ink-3)}
.lang{font-size:12.5px;font-weight:700;letter-spacing:.06em;color:var(--mist);border:1px solid var(--line);border-radius:999px;padding:7px 11px;background:none;cursor:pointer;white-space:nowrap}
.lang span{color:var(--mist-2);font-weight:600}
.give{font-weight:700;font-size:14px;text-decoration:none;padding:9px 16px;border-radius:999px;background:var(--paper);color:var(--ink);white-space:nowrap}
.give:hover{background:var(--gold-2)}
@media (max-width:860px){.nav-links{display:none}.lang{display:none}}
.mobile-tabs{display:none}
@media (max-width:860px){
  .mobile-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:45;background:rgba(10,15,30,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:8px 8px calc(8px + env(safe-area-inset-bottom))}
  .mobile-tabs a{flex:1;text-align:center;text-decoration:none;font-size:11.5px;font-weight:700;color:var(--mist);padding:4px 0;display:grid;gap:3px;justify-items:center}
  .mobile-tabs a[aria-current="page"]{color:var(--gold)}
  body{padding-bottom:72px}
}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:16px;border-radius:12px;padding:14px 22px;border:0;cursor:pointer;text-decoration:none;transition:transform .15s ease,background .15s ease}
.btn:active{transform:scale(.98)}
.btn-play{background:var(--paper);color:var(--ink)}
.btn-play:hover{background:#fff}
.btn-gold{background:var(--gold);color:var(--gold-ink)}
.btn-gold:hover{background:var(--gold-2)}
.btn-ghost{background:rgba(244,239,228,.1);color:var(--paper);border:1px solid rgba(244,239,228,.18)}
.btn-ghost:hover{background:rgba(244,239,228,.18)}
.btn svg{flex-shrink:0}

/* ---------- Home hero ---------- */
.hero{position:relative;isolation:isolate}
.hero-art{position:relative;max-height:78vh;overflow:hidden}
.hero-art img{width:100%;height:auto;aspect-ratio:1920/790;object-fit:cover;object-position:center top}
.hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,15,30,0) 50%,rgba(10,15,30,.6) 78%,var(--ink) 99%),linear-gradient(to right,rgba(10,15,30,.7),rgba(10,15,30,0) 50%)}
.hero-copy{position:relative;margin-top:clamp(-150px,-10vw,-36px);z-index:2;display:grid;gap:18px;max-width:640px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.eyebrow .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(245,184,61,.2)}
.hero-copy h1{margin:0;font:700 clamp(30px,4.6vw,56px)/1.04 var(--display);letter-spacing:-.01em;font-variation-settings:"SOFT" 100,"opsz" 120;text-wrap:balance}
.hero-copy p{margin:0;color:#d6d2cb;font-size:clamp(16px,1.5vw,18.5px);max-width:56ch}
.hero-meta{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--mist);font-size:14px;font-weight:600}
.hero-meta span+span::before{content:"·";margin-right:16px;color:var(--mist-2)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- Rails ---------- */
.section{padding-block:clamp(28px,4vw,48px) 0}
.rail-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}
.rail-head h2{margin:0;font:700 clamp(21px,2.2vw,27px)/1.15 var(--display);font-variation-settings:"SOFT" 100;text-wrap:balance}
.rail-head .sub{display:block;font:500 14.5px/1.4 var(--ui);color:var(--mist);margin-top:4px}
.rail-head a{font-weight:700;font-size:14px;color:var(--gold);text-decoration:none;white-space:nowrap}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(240px,27vw,360px);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--gutter) 18px;margin-inline:calc(var(--gutter) * -1);scrollbar-width:thin;scrollbar-color:var(--line) transparent;overscroll-behavior-x:contain;scroll-padding-inline:var(--gutter)}
.rail>*{scroll-snap-align:start}
.rail.sm{grid-auto-columns:clamp(200px,20vw,270px)}
.rail.packs{grid-auto-columns:clamp(150px,13vw,190px)}

.tile{position:relative;display:block;text-decoration:none;border-radius:var(--radius);overflow:hidden;background:var(--ink-2);transition:transform .25s ease,box-shadow .25s ease}
.tile img{width:100%;aspect-ratio:16/9;object-fit:cover}
.tile:hover,.tile:focus-visible{transform:translateY(-4px) scale(1.02);box-shadow:0 18px 40px -12px rgba(0,0,0,.7),0 0 0 2px var(--gold)}
.tile-info{padding:12px 14px 14px;display:grid;gap:4px}
.tile-info .k{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mist-2)}
.tile-info .t{font-weight:700;font-size:16px;line-height:1.25}
.tile-info .b{font-size:13.5px;color:var(--mist);line-height:1.4}
.badge-free{position:absolute;top:10px;right:10px;background:rgba(10,15,30,.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--leaf);font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 9px;border-radius:999px;display:flex;gap:6px;align-items:center}
.progress{height:4px;background:rgba(244,239,228,.15)}
.progress i{display:block;height:100%;background:var(--gold)}

/* classic tiles (no artwork in prototype) */
.classic{aspect-ratio:16/9;display:grid;align-content:space-between;padding:14px 16px;position:relative;overflow:hidden}
.classic::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 85% 10%,var(--c1),transparent 60%),radial-gradient(90% 90% at 10% 100%,var(--c2),transparent 65%),#16203a;z-index:-1}
.classic .num{font:800 48px/1 var(--display);color:rgba(244,239,228,.22);font-variation-settings:"SOFT" 100}
.classic .ttl{font:700 20px/1.12 var(--display);font-variation-settings:"SOFT" 100;text-wrap:balance}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 9px;border-radius:999px;background:rgba(244,239,228,.12);color:var(--paper);width:max-content}

/* pack cover tiles */
.pack-tile{display:grid;gap:10px;text-decoration:none}
.pack-tile .cover{position:relative;border-radius:10px;overflow:hidden;background:#e9dcc0;box-shadow:0 1px 0 rgba(255,255,255,.08) inset,0 10px 24px -10px rgba(0,0,0,.8);transform-origin:bottom;transition:transform .25s ease}
.pack-tile .cover img{width:100%;aspect-ratio:320/452;object-fit:cover}
.pack-tile:hover .cover{transform:rotate(-1.5deg) translateY(-4px)}
.pack-tile .meta{font-size:13px;color:var(--mist);line-height:1.35}
.pack-tile .meta b{display:block;color:var(--paper);font-size:14.5px}

/* big story strip */
.story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:760px){.story{grid-template-columns:1fr}}
.arc{border-radius:var(--radius);padding:20px;background:var(--ink-2);border:1px solid var(--line);display:grid;gap:10px;align-content:start}
.arc.now{background:linear-gradient(160deg,#2a2210,#171a28 60%);border-color:rgba(245,184,61,.45)}
.arc .s{font-size:12.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mist-2)}
.arc.now .s{color:var(--gold)}
.arc h3{margin:0;font:700 22px/1.15 var(--display);font-variation-settings:"SOFT" 100}
.arc p{margin:0;color:var(--mist);font-size:15px}
.arc .range{font-size:13.5px;font-weight:700;color:var(--paper)}

/* pathway */
.pathway{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(20px,4vw,56px);align-items:center;background:linear-gradient(120deg,#131c33,#0e1426);border:1px solid var(--line);border-radius:22px;padding:clamp(22px,4vw,48px)}
@media (max-width:860px){.pathway{grid-template-columns:1fr}}
.pathway h2{margin:0 0 10px;font:700 clamp(24px,3vw,36px)/1.1 var(--display);font-variation-settings:"SOFT" 100;text-wrap:balance}
.pathway p{margin:0;color:var(--mist);max-width:52ch}
.steps{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}
.steps li{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;background:var(--ink-3);font-weight:700}
.steps li small{display:block;font-weight:500;color:var(--mist);font-size:12.5px}
.steps svg{color:var(--gold)}
.stat-row{display:flex;flex-wrap:wrap;gap:22px;margin-top:18px}
.stat{display:grid}
.stat b{font:800 30px/1 var(--display);color:var(--gold);font-variation-settings:"SOFT" 100;font-variant-numeric:tabular-nums}
.stat span{font-size:13px;color:var(--mist);font-weight:600}

/* signup */
.signup{display:grid;grid-template-columns:1fr auto;gap:18px 32px;align-items:center;padding:clamp(22px,3.5vw,36px);border-radius:22px;background:var(--ink-2);border:1px solid var(--line)}
@media (max-width:860px){.signup{grid-template-columns:1fr}}
.signup h2{margin:0 0 6px;font:700 clamp(21px,2.4vw,28px)/1.15 var(--display);font-variation-settings:"SOFT" 100}
.signup p{margin:0;color:var(--mist)}
.signup form{display:flex;flex-wrap:wrap;gap:10px}
.field{display:grid;gap:4px}
.field label{font-size:12px;font-weight:700;color:var(--mist);letter-spacing:.04em}
.field input,.field select{background:var(--ink);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--paper);font:inherit;min-width:0;width:100%}
.field input:focus,.field select:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:transparent}
.signup .field{flex:1 1 170px}
.signup .btn{align-self:end}
.fineprint{font-size:12.5px;color:var(--mist-2);margin-top:8px}

/* ---------- Episode page ---------- */
.ep-hero{position:relative;overflow:hidden;isolation:isolate;padding-block:clamp(24px,4vw,56px) clamp(28px,4vw,48px)}
.ep-hero .ambient{position:absolute;inset:-60px;z-index:-2;background-size:cover;background-position:center;filter:blur(60px) saturate(1.4) brightness(.55);transform:scale(1.1)}
.ep-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to bottom,rgba(10,15,30,.2),var(--ink) 98%)}
.ep-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(20px,4vw,56px);align-items:center}
@media (max-width:900px){.ep-grid{grid-template-columns:1fr}.ep-grid .poster{order:-1}}
.crumbs{font-size:13.5px;color:var(--mist);font-weight:600;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.crumbs a{text-decoration:none;color:var(--mist)}
.crumbs a:hover{color:var(--paper)}
.ep-grid h1{margin:6px 0 12px;font:700 clamp(32px,5vw,62px)/1.02 var(--display);letter-spacing:-.01em;font-variation-settings:"SOFT" 100,"opsz" 144;text-wrap:balance}
.ep-grid .logline{color:#dcd7cf;font-size:clamp(16px,1.4vw,18px);margin:0 0 18px;max-width:58ch}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 22px;max-width:560px}
@media (max-width:480px){.pair{grid-template-columns:1fr}}
.pair div{border-radius:12px;padding:12px 14px;background:rgba(18,26,46,.75);border:1px solid var(--line)}
.pair dt{font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.pair div:last-child dt{color:var(--sky)}
.pair dd{margin:4px 0 0;font-weight:600;font-size:15px;line-height:1.35}
.poster{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 30px 70px -20px rgba(0,0,0,.85),0 0 0 1px rgba(244,239,228,.08);cursor:pointer;background:none;border:0;padding:0;width:100%}
.poster img{width:100%;aspect-ratio:16/9;object-fit:cover}
.poster .play{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(10,15,30,.15),rgba(10,15,30,.0) 60%)}
.poster .play span{width:78px;height:78px;border-radius:50%;background:rgba(244,239,228,.92);display:grid;place-items:center;color:var(--ink);box-shadow:0 10px 30px rgba(0,0,0,.5);transition:transform .2s ease}
.poster:hover .play span{transform:scale(1.08)}

.subnav{position:sticky;top:69px;z-index:30;background:rgba(10,15,30,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.subnav ul{display:flex;gap:6px;margin:0;padding:8px var(--gutter);list-style:none;overflow-x:auto;scrollbar-width:none}
.subnav a{display:block;white-space:nowrap;text-decoration:none;font-weight:700;font-size:14px;color:var(--mist);padding:8px 14px;border-radius:999px}
.subnav a:hover{color:var(--paper);background:var(--ink-2)}

.ep-body{display:grid;gap:clamp(36px,5vw,64px);padding-block:clamp(28px,4vw,48px)}
.two{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(20px,4vw,56px)}
@media (max-width:900px){.two{grid-template-columns:1fr}}
.h2{margin:0 0 14px;font:700 clamp(23px,2.6vw,32px)/1.12 var(--display);font-variation-settings:"SOFT" 100;text-wrap:balance}
.lead p{margin:0 0 14px;max-width:65ch;color:#dcd7cf}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.chips li{font-size:13px;font-weight:600;padding:6px 11px;border-radius:999px;border:1px solid var(--line);color:var(--mist)}
.label{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mist-2);margin:0 0 10px}

/* resource pack feature */
.pack{display:grid;grid-template-columns:minmax(160px,250px) minmax(0,1fr);gap:clamp(20px,4vw,48px);padding:clamp(20px,3.5vw,40px);border-radius:24px;background:linear-gradient(135deg,#1e1a10 0%,#131a2d 55%);border:1px solid rgba(245,184,61,.35);align-items:start}
@media (max-width:700px){.pack{grid-template-columns:1fr}.pack .cover-lg{max-width:220px}}
.cover-lg{border-radius:12px;overflow:hidden;transform:rotate(-2deg);box-shadow:0 24px 50px -14px rgba(0,0,0,.9);background:#e9dcc0}
.cover-lg img{width:100%;aspect-ratio:320/452;object-fit:cover}
.pack h2{margin:6px 0 8px}
.pack .facts{display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--mist);font-size:14px;font-weight:600;margin:0 0 18px}
.pack .facts span{font-variant-numeric:tabular-nums}
.inside{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:22px 0 0}
.inside div{background:rgba(10,15,30,.55);border:1px solid var(--line);border-radius:12px;padding:14px}
.inside h4{margin:0 0 6px;font-size:14.5px;display:flex;justify-content:space-between;gap:8px}
.inside h4 span{color:var(--gold);font-variant-numeric:tabular-nums}
.inside ul{margin:0;padding-left:18px;color:var(--mist);font-size:13.5px;line-height:1.5}
.great-for{margin-top:18px;font-size:14px;color:var(--mist)}
.great-for b{color:var(--paper)}

/* family talk */
.talk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:760px){.talk{grid-template-columns:1fr}}
.card{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:clamp(18px,2.4vw,26px)}
.card ol,.card ul{margin:0;padding-left:20px;display:grid;gap:8px}
.card li{padding-left:4px}
.card li::marker{color:var(--gold);font-weight:800}
.verse{background:radial-gradient(120% 120% at 100% 0%,rgba(245,184,61,.22),transparent 55%),var(--ink-2);border-color:rgba(245,184,61,.35)}
.verse blockquote{margin:0 0 10px;font:600 clamp(20px,2.2vw,26px)/1.3 var(--display);font-variation-settings:"SOFT" 100;text-wrap:balance}
.verse cite{font-style:normal;font-weight:800;color:var(--gold);letter-spacing:.02em}
.motions{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:16px;padding:0;list-style:none}
.motions li{background:rgba(10,15,30,.6);border-radius:10px;padding:10px 12px;font-size:13.5px;color:var(--mist)}
.motions b{display:block;color:var(--paper);font-size:14px}
.prayer p:not(.label){font:italic 500 18px/1.5 var(--display);margin:0;color:#e6e1d8;font-variation-settings:"SOFT" 100}

.share{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}
@media (max-width:700px){.share{grid-template-columns:1fr}}
.promo{white-space:pre-line;color:#dcd7cf;font-size:15px;margin:0;background:var(--ink);border:1px dashed var(--line);border-radius:12px;padding:14px 16px;max-height:220px;overflow:auto}

.pager{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pager a{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;text-decoration:none;background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:10px;min-width:0}
.pager a:hover{border-color:var(--gold)}
.pager img{border-radius:8px;aspect-ratio:16/9;object-fit:cover;width:100%}
.pager small{display:block;color:var(--mist);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.pager b{font-size:15px;line-height:1.25}
.pager .next{text-align:right;grid-template-columns:1fr 120px}
.pager .next img{order:2}
@media (max-width:620px){.pager{grid-template-columns:1fr}.pager a,.pager .next{grid-template-columns:96px 1fr;text-align:left}.pager .next img{order:0}}

/* ---------- Parents & leaders ---------- */
.page-hero{padding-block:clamp(32px,5vw,64px) clamp(20px,3vw,32px);background:radial-gradient(80% 120% at 90% 0%,rgba(143,211,255,.12),transparent 60%)}
.page-hero h1{margin:8px 0 12px;font:700 clamp(32px,5vw,58px)/1.04 var(--display);font-variation-settings:"SOFT" 100,"opsz" 144;text-wrap:balance;max-width:18ch}
.page-hero p{margin:0;color:#d6d2cb;max-width:60ch;font-size:clamp(16px,1.4vw,18px)}
.eyebrow.sky{color:var(--sky)}.eyebrow.sky .dot{background:var(--sky);box-shadow:0 0 0 4px rgba(143,211,255,.2)}
.how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:820px){.how{grid-template-columns:1fr}}
.how .card h3{margin:8px 0 6px;font:700 20px/1.2 var(--display);font-variation-settings:"SOFT" 100}
.how .card p{margin:0;color:var(--mist);font-size:15px}
.how .step{font:800 13px/1 var(--ui);letter-spacing:.12em;color:var(--sky);text-transform:uppercase}
.settings{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.settings li{padding:10px 14px;border-radius:12px;background:var(--ink-2);border:1px solid var(--line);font-weight:700;font-size:14.5px}
.pack-table{width:100%;border-collapse:collapse;min-width:640px}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px}
.pack-table th,.pack-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:14.5px}
.pack-table th{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mist-2);background:var(--ink-2)}
.pack-table tr:last-child td{border-bottom:0}
.pack-table td.n{font-variant-numeric:tabular-nums;color:var(--mist);width:48px}
.pack-table .ttl{display:flex;align-items:center;gap:12px;font-weight:700;text-decoration:none}
.pack-table .ttl img{width:72px;border-radius:6px;aspect-ratio:16/9;object-fit:cover}
.pack-table td.num{font-variant-numeric:tabular-nums;color:var(--mist);white-space:nowrap}
.dl{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13.5px;padding:8px 12px;border-radius:10px;background:var(--ink-3);border:1px solid var(--line);cursor:pointer;white-space:nowrap}
.dl:hover{border-color:var(--gold);color:var(--gold-2)}

/* about */
.cast{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.cast .card h3{margin:0 0 4px;font:700 19px/1.2 var(--display);font-variation-settings:"SOFT" 100}
.cast .card p{margin:0;color:var(--mist);font-size:14.5px}
.cast .role{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.prose p{max-width:65ch;color:#dcd7cf;margin:0 0 14px}

/* ---------- Footer ---------- */
footer{margin-top:clamp(40px,6vw,80px);border-top:1px solid var(--line);padding-block:32px 40px;color:var(--mist);font-size:14px}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px}
@media (max-width:760px){.foot{grid-template-columns:1fr}}
.foot h4{margin:0 0 10px;color:var(--paper);font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.foot a{text-decoration:none;color:var(--mist)}
.foot a:hover{color:var(--paper)}
.proto-note{margin-top:22px;font-size:12.5px;color:var(--mist-2)}

/* ---------- Overlays ---------- */
.overlay{position:fixed;inset:0;z-index:60;background:rgba(5,8,16,.86);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;padding:16px}
.player{width:min(1100px,100%);border-radius:18px;overflow:hidden;background:#000;box-shadow:0 40px 100px rgba(0,0,0,.8);position:relative}
.player .screen{position:relative;aspect-ratio:16/9;background-size:cover;background-position:center}
.player .screen::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85),rgba(0,0,0,.2) 50%,rgba(0,0,0,.45))}
.player .msg{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(16px,3vw,28px);display:grid;gap:8px}
.player .msg b{font:700 clamp(18px,2.4vw,26px)/1.2 var(--display);font-variation-settings:"SOFT" 100}
.player .msg span{color:#cfd3df;font-size:14.5px;max-width:70ch}
.player .bar{height:5px;border-radius:5px;background:rgba(255,255,255,.2);overflow:hidden;margin-top:8px}
.player .bar i{display:block;height:100%;width:3%;background:var(--gold);animation:load 3s ease-in-out infinite alternate}
@keyframes load{to{width:22%}}
.close{position:absolute;top:12px;right:12px;z-index:3;width:44px;height:44px;border-radius:50%;border:0;background:rgba(10,15,30,.7);cursor:pointer;display:grid;place-items:center}
.search-panel{width:min(760px,100%);align-self:start;margin-top:8vh;background:var(--ink-2);border:1px solid var(--line);border-radius:20px;padding:18px;max-height:80vh;overflow:auto}
.search-panel input{width:100%;font:600 20px var(--ui);padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:var(--ink);color:var(--paper)}
.search-panel input:focus{outline:2px solid var(--gold)}
.search-hints{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.search-hints button{border:1px solid var(--line);background:none;border-radius:999px;padding:6px 12px;font-size:13.5px;font-weight:600;color:var(--mist);cursor:pointer}
.search-hints button:hover{color:var(--paper);border-color:var(--gold)}
.results{display:grid;gap:8px;margin-top:8px}
.results a{display:grid;grid-template-columns:112px 1fr;gap:14px;align-items:center;text-decoration:none;padding:8px;border-radius:12px}
.results a:hover,.results a:focus-visible{background:var(--ink-3)}
.results img{border-radius:8px;aspect-ratio:16/9;object-fit:cover}
.results b{display:block}
.results span{font-size:13.5px;color:var(--mist)}
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:80;background:var(--paper);color:var(--ink);font-weight:700;padding:12px 18px;border-radius:12px;box-shadow:0 14px 40px rgba(0,0,0,.5);max-width:calc(100vw - 32px);font-size:14.5px}
@media (max-width:860px){.toast{bottom:calc(84px + env(safe-area-inset-bottom))}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* ---------- WordPress additions ---------- */
.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--gold);color:var(--gold-ink);padding:10px 16px;border-radius:10px;font-weight:700}
.skip-link:focus{left:16px}
.announce{background:var(--gold);color:var(--gold-ink);font-weight:700;font-size:14px;text-align:center;padding-block:8px}
.announce a{text-decoration:none}
.brand img{max-height:40px;width:auto}
.nav-links li{list-style:none}
.tile-info{display:grid}
.tile>img,.tile .classic-art{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.classic-art{display:grid;align-content:end;gap:4px;padding:14px 16px;background:radial-gradient(120% 90% at 85% 10%,rgba(245,184,61,.3),transparent 60%),radial-gradient(90% 90% at 10% 100%,rgba(92,160,255,.25),transparent 65%),#16203a}
.classic-art .num{font:800 44px/1 var(--display);color:rgba(244,239,228,.22);font-variation-settings:"SOFT" 100}
.classic-art .ttl{font:700 19px/1.12 var(--display);font-variation-settings:"SOFT" 100}
.badge-classic{position:absolute;top:10px;left:10px;background:rgba(10,15,30,.78);color:var(--paper);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 9px;border-radius:999px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.also{margin:14px 0 0;font-size:14px;font-weight:600}
.also a{color:var(--mist);text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.also a:hover{color:var(--paper)}
.btn.is-disabled{opacity:.6;cursor:default}
.eyebrow.muted{color:var(--mist)}.eyebrow.muted .dot{background:var(--mist);box-shadow:0 0 0 4px rgba(163,171,195,.18)}
.label.gold{color:var(--gold)}
.muted-text{color:var(--mist)}
.entry>*{max-width:65ch}
.entry p{margin:0 0 14px;color:#dcd7cf}
.entry a{color:var(--gold-2)}
.entry h2,.entry h3{font-family:var(--display);font-variation-settings:"SOFT" 100;line-height:1.15}
.entry ul,.entry ol{color:#dcd7cf}
.lead-entry p{color:#d6d2cb;font-size:clamp(16px,1.4vw,18px);margin:0}
.page-body{padding-block:8px 24px}
.pack-intro{margin:0 0 18px;color:#dcd7cf;max-width:60ch}
.inside h3{margin:0 0 6px;font-size:14.5px;display:flex;justify-content:space-between;gap:8px;font-family:var(--ui)}
.inside h3 span{color:var(--gold);font-variant-numeric:tabular-nums}
.chips a{text-decoration:none;color:inherit}
.chips li:hover{border-color:var(--gold);color:var(--paper)}
.share-btns{padding-top:44px}
@media (max-width:700px){.share-btns{padding-top:0}}
.foot-h{margin:0 0 10px;color:var(--paper);font:700 13px/1.2 var(--ui);letter-spacing:.1em;text-transform:uppercase}
.foot-blurb{max-width:44ch;margin:12px 0 0}
.copyright{margin-top:22px;font-size:12.5px;color:var(--mist-2)}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.site-footer a{text-decoration:none;color:var(--mist)}
.site-footer a:hover{color:var(--paper)}
a.arc{text-decoration:none;transition:border-color .2s ease,transform .2s ease}
a.arc:hover{border-color:var(--gold);transform:translateY(-2px)}
.search-panel{position:relative}
.search-row{display:flex;gap:10px}
.search-row input{flex:1;min-width:0}
.search-panel .close{top:-14px;right:-10px;background:var(--ink-3)}
.search-hints a{border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:13.5px;font-weight:600;color:var(--mist);text-decoration:none}
.search-hints a:hover{color:var(--paper);border-color:var(--gold)}
.search-inline{display:flex;gap:10px;max-width:560px;margin-top:18px}
.search-inline input{flex:1;min-width:0;background:var(--ink);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--paper);font:inherit}
.page-results{margin:24px 0 0;padding-left:18px}
.player .screen{background:#000;display:grid}
.player .screen iframe,.player .screen video{width:100%;height:100%;border:0;aspect-ratio:16/9;display:block}
.player .screen>div{width:100%}
.player-note{margin:0;padding:12px 16px;background:var(--ink-2);color:var(--mist);font-size:14px}
.player .screen::after{display:none}
/* Sign-up: style common form plugins to match */
.signup-form form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.signup-form p{margin:0;flex:1 1 170px}
.signup-form input[type=text],.signup-form input[type=email],.signup-form select{background:var(--ink);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--paper);font:inherit;width:100%}
.signup-form input[type=submit],.signup-form button[type=submit]{background:var(--gold);color:var(--gold-ink);border:0;border-radius:12px;padding:13px 22px;font:700 16px var(--ui);cursor:pointer}
.signup-form .wpcf7-form-control-wrap{display:block}
.signup-form br{display:none}
.signup-form .wpcf7-response-output{flex-basis:100%;margin:6px 0 0!important;border-radius:10px;color:var(--paper)}
.signup-form .wpcf7-spinner{display:none}
.signup-form fieldset{display:none}
.signup-form .cf-turnstile,.signup-form .wpcf7-turnstile{flex-basis:100%}
.wp-block-image img{border-radius:12px}
.alignwide{max-width:1100px}
.admin-bar .nav{top:32px}.admin-bar .subnav{top:101px}
@media (max-width:782px){.admin-bar .nav{top:46px}.admin-bar .subnav{top:115px}}
@media (max-width:600px){.admin-bar .nav{top:0}.admin-bar .subnav{top:69px}}
.rail-head a.btn{color:var(--gold-ink)}

/* ---------- Release schedule ---------- */
.eyebrow.is-coming{color:var(--gold-2)}
.eyebrow.is-coming .dot{animation:pulse 1.8s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 4px rgba(245,184,61,.25)}50%{box-shadow:0 0 0 9px rgba(245,184,61,0)}}
.tile.is-locked img{filter:saturate(.55) brightness(.62)}
.tile.is-locked .tile-info .b{color:var(--gold-2)}
.badge-date,.badge-new{position:absolute;top:10px;left:10px;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 9px;border-radius:999px}
.badge-date{background:rgba(10,15,30,.82);color:var(--gold-2);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.badge-new{background:var(--gold);color:var(--gold-ink)}
.pack-tile.is-locked .cover img{filter:blur(2px) saturate(.5) brightness(.7)}
.lock-chip{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(10,15,30,.86);color:var(--gold-2);font-weight:800;font-size:12.5px;padding:7px 11px;border-radius:999px;white-space:nowrap}
.lock-note{font-size:13px;font-weight:700;color:var(--gold-2);white-space:nowrap}
.premiere{display:grid;gap:6px;margin:0 0 18px}
.countdown{display:inline-flex;align-items:baseline;gap:8px;font-weight:700;color:var(--paper);font-variant-numeric:tabular-nums}
.countdown .cd-label{color:var(--mist);font-size:14px}
.countdown.big{display:grid;gap:8px}
.countdown.big .cd-label{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.countdown.big .cd-value{display:flex;gap:8px}
.countdown .seg{display:grid;justify-items:center;min-width:64px;padding:10px 8px;border-radius:12px;background:rgba(244,239,228,.08);border:1px solid var(--line)}
.countdown .seg b{font:800 clamp(24px,3vw,32px)/1 var(--display);font-variation-settings:"SOFT" 100}
.countdown .seg small{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mist);margin-top:4px}
.local-time{font-size:13px;color:var(--mist)}
.poster.is-locked img{filter:saturate(.6) brightness(.55)}
.poster-lock{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:6px;text-align:center;padding:16px}
.poster-lock span{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2)}
.poster-lock b{font:700 clamp(22px,3vw,34px)/1.1 var(--display);font-variation-settings:"SOFT" 100;color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.6)}
.pack.is-locked .cover-lg img{filter:blur(3px) saturate(.5) brightness(.75)}
.signup.is-remind{background:linear-gradient(135deg,#2a2210,#141b2f 60%);border-color:rgba(245,184,61,.4)}
.remind-cal{margin:10px 0 0;font-size:14px;font-weight:600}
.remind-cal a{color:var(--gold-2)}
.next-up{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr) minmax(0,240px);gap:clamp(16px,3vw,32px);align-items:center;padding:clamp(16px,2.5vw,24px);border-radius:22px;background:linear-gradient(120deg,#231d0e,#121a2e 55%);border:1px solid rgba(245,184,61,.35)}
.next-poster img{border-radius:12px;aspect-ratio:16/9;object-fit:cover;width:100%;filter:saturate(.7) brightness(.8)}
.next-copy h2{margin:8px 0 14px;font:700 clamp(21px,2.4vw,30px)/1.12 var(--display);font-variation-settings:"SOFT" 100}
.next-copy h2 a{text-decoration:none}
.next-copy .countdown{margin-bottom:16px}
.new-card{position:relative;display:grid;gap:8px;text-decoration:none;font-size:14px}
.new-card img{border-radius:10px;aspect-ratio:16/9;object-fit:cover;width:100%}
.new-card .badge-new{top:8px;left:8px}
@media (max-width:1000px){.next-up{grid-template-columns:minmax(0,220px) minmax(0,1fr)}.new-card{display:none}}
@media (max-width:640px){.next-up{grid-template-columns:1fr}}
/* Sing along list on episode pages */
.song-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}
.song-list a,.song-list .is-locked{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--ink-2);border:1px solid var(--line);text-decoration:none;font-weight:700}
.song-list a:hover{border-color:var(--gold)}
.song-list .is-locked{opacity:.6}
.song-ic{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--ink);flex:none}
.song-list .is-locked .song-ic{background:var(--ink-3);color:var(--mist)}
/* Home: Jukebox band */
.jukebox-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,56px);align-items:center;text-decoration:none;padding:clamp(22px,4vw,48px);border-radius:24px;background:radial-gradient(90% 120% at 100% 0%,rgba(143,120,255,.35),transparent 60%),radial-gradient(90% 120% at 0% 100%,rgba(245,184,61,.25),transparent 60%),#141a31;border:1px solid var(--line);overflow:hidden}
.jukebox-band h2{margin:10px 0 10px;font:700 clamp(24px,3vw,36px)/1.1 var(--display);font-variation-settings:"SOFT" 100;text-wrap:balance}
.jukebox-band p{margin:0 0 20px;color:#d6d2cb;max-width:48ch}
.jukebox-band .eyebrow svg{width:16px;height:16px}
.jb-demo p{margin:0 0 .35em;font:800 clamp(24px,3vw,38px)/1.15 var(--ui);letter-spacing:-.01em;color:rgba(255,255,255,.35);filter:blur(.6px)}
.jb-demo p.past{color:rgba(255,255,255,.25)}
.jb-demo p.far{filter:blur(1.4px);color:rgba(255,255,255,.25)}
.jb-demo p.now{filter:none}
.jb-demo p.now span{color:transparent;background:linear-gradient(90deg,#fff 62%,rgba(255,255,255,.42) 68%);-webkit-background-clip:text;background-clip:text}
@media (max-width:760px){.jukebox-band{grid-template-columns:1fr}}
/* Jukebox page: full-screen player, no footer */
body.is-jukebox{overflow:hidden;padding-bottom:0}
body.is-jukebox .site-footer,body.is-jukebox .mobile-tabs,body.is-jukebox .announce{display:none}
body.is-jukebox main{min-height:0}
.rail-head a.btn-ghost{color:var(--paper)}

/* About: Meet the characters */
.cast{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.character{display:grid;gap:14px;align-content:start;text-align:center;padding:22px 18px}
.portrait{width:clamp(120px,60%,168px);aspect-ratio:1;margin:0 auto;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 30% 25%,rgba(245,184,61,.35),rgba(143,211,255,.18) 60%,var(--ink-3));box-shadow:0 0 0 4px var(--ink-2),0 0 0 6px rgba(245,184,61,.55),0 18px 40px -12px rgba(0,0,0,.7)}
.portrait img{width:100%;height:100%;object-fit:cover}
.portrait.is-empty{display:grid;place-items:center}
.portrait.is-empty span{font:700 44px/1 var(--display);color:var(--gold-2);font-variation-settings:"SOFT" 100}
.character .role{display:block;margin-bottom:2px}

/* ---------- Give: funding chart ---------- */
.fund{padding:clamp(14px,3vw,32px);border-radius:24px;background:var(--ink-2);border:1px solid var(--line)}
.fund-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;margin-bottom:26px}
.fund-top .h2{margin:0}
.fund-total{display:grid;text-align:right}
.fund-total b{font:800 clamp(28px,3.4vw,40px)/1 var(--display);color:var(--gold);font-variation-settings:"SOFT" 100;font-variant-numeric:tabular-nums}
.fund-total span{font-size:14px;color:var(--mist);margin-top:4px}
@media (max-width:640px){.fund-total{text-align:left}}
.fund-track{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:2px;padding:6px 0 4px}
.fund-track::before{content:"";position:absolute;left:12px;right:12px;top:calc(6px + clamp(18px,5.1vw,40px) / 2 - 2px);height:4px;border-radius:4px;background:var(--line)}
.fund-dot{position:relative;display:grid;justify-items:center;gap:6px;background:none;border:0;padding:0;cursor:pointer;flex:1;min-width:0;color:var(--paper)}
.fund-circle{width:clamp(18px,5.1vw,40px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;font:800 clamp(10px,1.4vw,13px)/1 var(--ui);font-variant-numeric:tabular-nums;background:var(--ink);box-shadow:0 0 0 2px var(--ink-2);position:relative}
.fund-circle svg{width:60%;height:60%}
.fund-dot.is-funded .fund-circle{background:var(--gold);color:var(--gold-ink)}
.fund-dot.is-partial .fund-circle{background:conic-gradient(var(--gold) calc(var(--pct) * 1%),#2e3a5c 0);color:var(--paper)}
.fund-dot.is-partial .fund-circle::after{content:"";position:absolute;inset:18%;border-radius:50%;background:var(--ink-2)}
.fund-dot.is-partial .fund-circle{isolation:isolate}
.fund-dot.is-partial .fund-circle::after{z-index:-1}
.fund-dot.is-open .fund-circle{border:2px solid #3a4770;color:var(--mist)}
.fund-num{font-size:clamp(10px,2.6vw,12px);font-weight:700;color:var(--mist);font-variant-numeric:tabular-nums}
.fund-dot.is-funded .fund-num{color:var(--gold-2)}
.fund-dot:hover .fund-circle,.fund-dot:focus-visible .fund-circle{outline:3px solid var(--sky);outline-offset:3px}
.fund-tip{position:absolute;z-index:5;bottom:calc(100% + 6px);transform:translateX(-50%);background:var(--paper);color:var(--ink);font-size:13.5px;font-weight:700;padding:8px 12px;border-radius:10px;white-space:nowrap;box-shadow:0 10px 24px rgba(0,0,0,.4);pointer-events:none;max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis}
.fund-legend{display:flex;flex-wrap:wrap;gap:8px 20px;margin:18px 0 0;padding:0;list-style:none;font-size:13.5px;color:var(--mist)}
.fund-legend li{display:flex;align-items:center;gap:8px}
.fund-legend .key{width:14px;height:14px;border-radius:50%;display:inline-block}
.fund-legend .key.is-funded{background:var(--gold)}
.fund-legend .key.is-partial{background:conic-gradient(var(--gold) 50%,#2e3a5c 0)}
.fund-legend .key.is-open{border:2px solid #3a4770}
.fund-legend .updated{margin-left:auto}
.fund-table{margin-top:16px;font-size:14px}
.fund-table summary{cursor:pointer;color:var(--gold-2);font-weight:700}
.fund-table table{width:100%;border-collapse:collapse;margin-top:10px}
.fund-table th,.fund-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}
.fund-table th{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--mist-2)}
.covered{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.covered li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:14px 16px;border-radius:14px;background:var(--ink-2);border:1px solid var(--line)}
.covered b{font-weight:700}
.covered span{color:var(--mist)}
.give-card .btn{margin-top:6px}
/* ---------- Kings Crew ---------- */
.crown{color:var(--gold)}
.crew-card{text-decoration:none;display:grid;gap:8px;align-content:start;background:linear-gradient(140deg,#2a2210,#151b2e 65%);border-color:rgba(245,184,61,.35)}
.crew-card h3{margin:4px 0 0;font:700 22px/1.2 var(--display);font-variation-settings:"SOFT" 100}
.crew-card p{margin:0}
.crew-link{font-weight:800;color:var(--gold-2)}
.crew-card:hover{border-color:var(--gold)}
.crew-hero{background:radial-gradient(70% 120% at 90% 0%,rgba(245,184,61,.16),transparent 60%)}
.crew-join{max-width:560px}
.crew-form{display:grid;gap:12px;max-width:420px}
.crew-form .btn{justify-self:start}
.hp{position:absolute;left:-9999px}
#crew-login p{margin:0 0 12px;display:grid;gap:4px}
#crew-login label{font-size:12px;font-weight:700;color:var(--mist)}
#crew-login input[type=text],#crew-login input[type=password]{background:var(--ink);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--paper);font:inherit}
#crew-login .login-remember label{display:flex;gap:8px;align-items:center;font-size:14px}
#crew-login input[type=submit]{background:var(--gold);color:var(--gold-ink);border:0;border-radius:12px;padding:13px 22px;font:700 16px var(--ui);cursor:pointer}
.notice-bar{margin:0;padding:14px 18px;border-radius:14px;font-weight:600}
.notice-bar.is-ok{background:rgba(134,214,154,.14);border:1px solid rgba(134,214,154,.4)}
.notice-bar.is-warn{background:rgba(245,184,61,.12);border:1px solid rgba(245,184,61,.4)}
.faq{display:grid;gap:8px;max-width:760px}
.faq details{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:14px 18px}
.faq summary{cursor:pointer;font-weight:700}
.faq p{margin:10px 0 0;color:var(--mist)}
.badge-early{position:absolute;top:10px;left:10px;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 9px;border-radius:999px;background:linear-gradient(90deg,var(--gold),var(--gold-2));color:var(--gold-ink)}
.early-note{margin:14px 0 0;padding:10px 14px;border-radius:12px;background:rgba(245,184,61,.12);border:1px solid rgba(245,184,61,.35);font-size:14px;max-width:56ch}
.crew-hint{margin:14px 0 0;max-width:560px;border-radius:12px;padding:12px 14px;background:rgba(18,26,46,.75);border:1px solid var(--line)}
.crew-hint dt{font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.crew-hint dd{margin:4px 0 0;font-weight:600;font-size:15px;line-height:1.35;color:var(--paper)}
.crew-hint a,.crew-hint .link-btn{color:var(--gold-2);font-weight:700}
/* ---------- Español ---------- */
.es-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,56px);align-items:center}
@media (max-width:860px){.es-grid{grid-template-columns:1fr}.es-art{order:-1}}
.es-art{border-radius:18px;box-shadow:0 30px 70px -20px rgba(0,0,0,.85);width:100%}
.es-back{margin:18px 0 0;font-size:14px}
.es-back a{color:var(--mist)}

a.lang{text-decoration:none;display:inline-flex;align-items:center}
a.lang:hover{color:var(--paper);border-color:var(--gold)}
@media (max-width:480px){.fund-circle{font-size:0}.fund-circle svg{width:70%;height:70%}}

.lang-short{display:none}
@media (max-width:520px){.lang-full{display:none}.lang-short{display:inline}a.lang{padding:7px 10px}}

/* ---------- Account (sign in) ---------- */
.account{position:relative}
.account-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 11px;border-radius:999px;border:1px solid var(--line);background:var(--ink-2);color:var(--paper);font:700 14px/1 var(--ui);cursor:pointer;white-space:nowrap;list-style:none}
.account-btn::-webkit-details-marker{display:none}
.account-btn::marker{content:""}
.account-btn:hover{background:var(--ink-3)}
.account-btn.is-crew{border-color:rgba(245,184,61,.55)}
.account-btn.is-crew svg{color:var(--gold)}
.account-label{max-width:12ch;overflow:hidden;text-overflow:ellipsis}
.account[open] .account-btn{background:var(--ink-3)}
.account-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:50;min-width:260px;max-width:calc(100vw - 32px);background:var(--ink-2);border:1px solid var(--line);border-radius:16px;padding:6px;box-shadow:0 24px 60px -18px rgba(0,0,0,.85);display:grid}
.account-menu a{display:flex;align-items:center;gap:10px;white-space:nowrap;padding:11px 12px;border-radius:10px;text-decoration:none;color:var(--paper);font-weight:600;font-size:15px}
.account-menu a:hover,.account-menu a:focus-visible{background:var(--ink-3)}
.account-menu a svg{color:var(--mist)}
.account-who{margin:0 0 4px;padding:10px 12px 12px;border-bottom:1px solid var(--line);display:grid;gap:2px}
.account-who span{font-size:13px;color:var(--mist)}
.account-btn.is-crew+.account-menu .account-who span{color:var(--gold-2)}
@media (max-width:640px){.account-label{display:none}.account-btn{width:40px;padding:0;justify-content:center}}
.signin-panel{position:relative;width:min(440px,100%);background:var(--ink-2);border:1px solid var(--line);border-radius:22px;padding:clamp(22px,4vw,32px);display:grid;gap:12px;max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 40px 100px rgba(0,0,0,.7)}
.signin-panel h2{margin:0;font:700 30px/1.1 var(--display);font-variation-settings:"SOFT" 100}
.signin-panel .muted-text{margin:0}
.signin-panel .close{background:var(--ink-3)}
.signin-foot{margin:4px 0 0;font-size:14px;color:var(--mist)}
.signin-foot a{color:var(--gold-2)}
.login-form{display:grid;gap:12px}
.login-form .remember{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--mist)}
.login-form .remember input{width:18px;height:18px;accent-color:var(--gold)}
.login-form .btn{justify-content:center}
.login-form .fineprint{margin:0}
.login-form .fineprint a{color:var(--mist)}
.link-btn{background:none;border:0;padding:0;font:inherit;color:var(--gold-2);text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* ---------- News ---------- */
.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:18px}
.post-card{display:grid;align-content:start;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--paper);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.post-card:hover,.post-card:focus-visible{transform:translateY(-3px);border-color:transparent;box-shadow:0 18px 40px -14px rgba(0,0,0,.7),0 0 0 2px var(--gold)}
.post-img{background:var(--ink-3)}
.post-img img{width:100%;aspect-ratio:16/9;object-fit:cover}
.post-info{padding:16px 18px 20px;display:grid;gap:8px;align-content:start}
.post-info .k{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mist-2)}
.post-info .cat{color:var(--gold)}
.post-info .t{margin:0;font:700 21px/1.2 var(--display);font-variation-settings:"SOFT" 100;text-wrap:balance}
.post-info .b{margin:0;color:var(--mist);font-size:15px;line-height:1.5}
.post-info .more{font-weight:700;font-size:15px;color:var(--gold-2);margin-top:4px}
.post-card.is-feature{grid-column:1/-1;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center}
.post-card.is-feature .post-img,.post-card.is-feature .post-img img{height:100%}
.post-card.is-feature .post-info{padding:clamp(20px,3.4vw,40px);gap:12px}
.post-card.is-feature .t{font-size:clamp(25px,3vw,38px);line-height:1.1}
.post-card.is-feature .b{font-size:16.5px}
@media (max-width:760px){.post-card.is-feature{grid-template-columns:1fr}.post-card.is-feature .post-img img{height:auto}}
.filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.filter-chips a{padding:8px 15px;border-radius:999px;border:1px solid var(--line);color:var(--mist);text-decoration:none;font-weight:700;font-size:14px}
.filter-chips a:hover{color:var(--paper);border-color:var(--mist-2)}
.filter-chips a[aria-current="page"]{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.news-pages{margin-top:32px}
.news-pages .nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.news-pages .page-numbers{min-width:42px;height:42px;padding:0 14px;display:inline-grid;place-items:center;border-radius:999px;border:1px solid var(--line);color:var(--paper);text-decoration:none;font-weight:700;font-size:15px}
.news-pages a.page-numbers:hover{background:var(--ink-3)}
.news-pages .page-numbers.current{background:var(--gold);border-color:var(--gold);color:var(--gold-ink)}
.news-pages .page-numbers.dots{border:0}
.empty-news{display:grid;gap:12px;justify-items:start;max-width:640px}
.empty-news p{margin:0}
.post-head,.post-body{max-width:calc(760px + var(--gutter) * 2);margin-inline:auto}
.post-head{padding-block:clamp(28px,5vw,60px) clamp(18px,3vw,28px)}
.post-head h1{margin:6px 0 14px;font:700 clamp(32px,5vw,56px)/1.05 var(--display);letter-spacing:-.01em;font-variation-settings:"SOFT" 100,"opsz" 144;text-wrap:balance}
.post-dek{margin:0 0 16px;color:#d6d2cb;font-size:clamp(17px,1.6vw,20px);line-height:1.5}
.post-meta{margin:0;display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--mist-2);font-weight:700;font-size:14px}
.post-meta span::before{content:"·";margin-right:14px}
.post-hero{margin:0 auto;max-width:calc(1120px + var(--gutter) * 2)}
.post-hero img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:20px;box-shadow:0 30px 70px -24px rgba(0,0,0,.85)}
.post-hero figcaption{margin-top:10px;font-size:13.5px;color:var(--mist-2)}
.post-body{padding-block:clamp(24px,4vw,40px) 8px}
.post-body .entry>*{max-width:none}
.post-body .entry{font-size:18px;line-height:1.7}
.post-body .entry p,.post-body .entry li{color:#dcd7cf}
.post-body .entry p{margin:0 0 20px}
.post-body .entry h2{font-size:clamp(24px,2.6vw,30px);margin:36px 0 12px}
.post-body .entry h3{font-size:22px;margin:28px 0 10px}
.post-body .entry img{border-radius:14px;max-width:100%;height:auto}
.post-body .entry figure{margin:28px 0}
.post-body .entry figcaption{font-size:14px;color:var(--mist-2);margin-top:8px}
.post-body .entry blockquote{margin:28px 0;padding-left:20px;border-left:3px solid var(--gold);font:italic 500 22px/1.45 var(--display);color:var(--paper);font-variation-settings:"SOFT" 100}
.post-body .entry iframe{max-width:100%;border-radius:14px}
.post-share{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.post-share .label{margin-right:auto}
.post-share .btn{padding:10px 16px;font-size:15px}
.ep-body>*{min-width:0}
.table-wrap,.fund-table{position:relative}
.fund-togo{font-size:.62em;font-family:var(--ui);font-weight:800;letter-spacing:.02em;color:var(--gold);white-space:nowrap;margin-left:6px;vertical-align:middle}
.post-body .entry .fund{margin:28px 0}

/* ---------- Credits & legal ---------- */
.credits-block{display:grid;gap:6px}
.credits-block .h2{margin-bottom:8px}
.credits-season{display:grid;gap:14px}
.credits-season .h2{margin:0}
.credits-season>.label{margin:-6px 0 0}
.credits-group{margin:14px 0 4px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.credits-group:first-child{margin-top:0}
.credits-list{margin:0;display:grid;gap:0}
.credits-list div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:16px;padding:9px 0;border-bottom:1px solid rgba(38,49,79,.6)}
.credits-list div:last-child{border-bottom:0}
.credits-list dt{color:var(--mist);font-size:14.5px}
.credits-list dd{margin:0;font-weight:700;font-size:15px}
@media (max-width:520px){.credits-list div{grid-template-columns:1fr;gap:2px}}
.credits-eps{display:grid;gap:8px}
.credits-ep{border:1px solid var(--line);border-radius:14px;background:var(--ink-2)}
.credits-ep summary{display:flex;align-items:center;gap:14px;padding:14px 16px;cursor:pointer;list-style:none;font-weight:700}
.credits-ep summary::-webkit-details-marker{display:none}
.credits-ep .n{font-variant-numeric:tabular-nums;color:var(--mist-2);font-weight:800;min-width:2ch}
.credits-ep .t{flex:1;min-width:0}
.credits-ep .chev{color:var(--mist);transition:transform .2s ease;flex-shrink:0}
.credits-ep[open] .chev{transform:rotate(180deg)}
.credits-ep[open] summary{border-bottom:1px solid var(--line)}
.credits-body{padding:14px 16px 16px}
.credits-body .fineprint a{color:var(--gold-2)}
.foot-legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(38,49,79,.6)}
.foot-legal .copyright{margin:0}
.legal-links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 20px;font-size:13px}
.legal-links a{color:var(--mist);text-decoration:none}
.legal-links a:hover{color:var(--paper)}
.draft-tag{font-size:11px;font-weight:700;color:var(--gold);border:1px solid rgba(245,184,61,.4);border-radius:999px;padding:1px 7px;margin-left:4px}
.account-btn[data-open-signin] svg{color:var(--gold)}
.page-body .entry h2{font-size:clamp(22px,2.4vw,28px);margin:34px 0 10px}
.page-body .entry h3{font-size:19px;margin:24px 0 8px}
.page-body .entry li{margin-bottom:6px}
.page-body .entry .legal-note{padding:12px 16px;border-radius:12px;background:rgba(245,184,61,.12);border:1px solid rgba(245,184,61,.35)}
.text-link{color:var(--gold-2);font-weight:700;text-decoration:none}.text-link:hover{text-decoration:underline}
.post-body .fund-total{text-align:left}
.credits-list{max-width:780px}

/* ---------- Kings Crew on the About page ---------- */
.crew-about{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);align-items:center;padding:clamp(22px,4vw,44px);border-radius:24px;background:linear-gradient(140deg,#2a2210,#151b2e 65%);border:1px solid rgba(245,184,61,.35)}
.crew-about .eyebrow svg{color:var(--gold)}
.crew-about .h2{margin:8px 0 10px}
.crew-about p{margin:0 0 18px;color:#dcd7cf;max-width:60ch}
.crew-about .fineprint{margin:14px 0 0}
.crew-about .fineprint a{color:var(--gold-2);font-weight:700;text-decoration:none}
.crew-perks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.crew-perks li{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:14px;background:rgba(10,15,30,.5);border:1px solid var(--line)}
.crew-perks svg{color:var(--gold);flex-shrink:0;margin-top:2px}
.crew-perks b{display:block;font-size:15.5px}
.crew-perks span{color:var(--mist);font-size:14px;line-height:1.4}
.crew-perks span b{color:var(--paper)}
@media (max-width:860px){.crew-about{grid-template-columns:1fr}}
.btn-crown svg{color:var(--gold-ink)}

/* ---------- Responsive header + menu panel ---------- */
.menu-btn{display:none}
@media (max-width:1180px){.nav .lang-full{display:none}.nav .lang-short{display:inline}.nav a.lang{padding:7px 10px}}
@media (max-width:1040px){.nav .account-label{display:none}.nav .account-btn{width:40px;padding:0;justify-content:center}.nav-links{gap:16px}.nav-links a{font-size:14.5px}.nav{gap:18px}}
@media (max-width:860px){.menu-btn{display:grid}.nav .lang{display:none!important}.nav-tools{gap:8px}}
@media (max-width:400px){.nav{gap:10px}.nav-tools{gap:6px}.brand b{font-size:21px}.brand i{font-size:15px}.nav .give{padding:8px 13px}}
@media (max-width:350px){.nav .give{display:none}}
.overlay.is-drawer{justify-items:end;align-items:stretch;padding:0}
.drawer-panel{width:min(400px,92vw);height:100%;max-height:100%;background:var(--ink-2);border-left:1px solid var(--line);box-shadow:-30px 0 80px rgba(0,0,0,.6);display:flex;flex-direction:column;gap:18px;padding:max(16px,env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;animation:drawerIn .28s cubic-bezier(.2,.8,.2,1)}
@keyframes drawerIn{from{transform:translateX(100%)}to{transform:none}}
.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
.drawer-head h2{margin:0;font:700 24px/1.1 var(--display);font-variation-settings:"SOFT" 100}
.drawer-close{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--ink-3);color:var(--paper);display:grid;place-items:center;cursor:pointer;flex-shrink:0}
.drawer-close:hover{background:var(--line)}
.drawer-links{list-style:none;margin:0;padding:0;display:grid}
.drawer-links a{display:block;padding:14px 4px;font:700 22px/1.2 var(--display);font-variation-settings:"SOFT" 100;text-decoration:none;color:var(--paper);border-bottom:1px solid rgba(38,49,79,.6)}
.drawer-links a:hover{color:var(--gold-2)}
.drawer-links a[aria-current="page"]{color:var(--gold)}
.drawer-extra{display:grid;gap:10px}
.drawer-extra .btn{justify-content:center}
.drawer-small{list-style:none;margin:auto 0 0;padding:0;display:grid;gap:2px}
.drawer-small a,.link-plain{display:flex;align-items:center;gap:8px;padding:8px 4px;color:var(--mist);text-decoration:none;font:600 15px var(--ui);background:none;border:0;cursor:pointer;text-align:left}
.drawer-small a:hover,.link-plain:hover{color:var(--paper)}
@media (prefers-reduced-motion:reduce){.drawer-panel{animation:none}}

/* ---------- Add to calendar panel ---------- */
.cal-body{display:grid;gap:16px}
.cal-what{margin:0;display:grid;gap:4px;padding:14px 16px;border-radius:14px;background:var(--ink-3)}
.cal-what b{font:700 18px/1.25 var(--display);font-variation-settings:"SOFT" 100}
.cal-what span{font-size:14px;color:var(--mist)}
.cal-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cal-opt{display:flex;align-items:center;gap:14px;width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:rgba(10,15,30,.4);color:var(--paper);text-decoration:none;text-align:left;font:inherit;cursor:pointer}
.cal-opt:hover,.cal-opt:focus-visible{border-color:var(--gold);background:var(--ink-3);outline:none}
.cal-ic{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;font:800 18px/1 var(--ui);color:#fff;flex-shrink:0}
.cal-apple{background:#5b6475}.cal-google{background:#2f6fe4}.cal-outlook{background:#1467c8}.cal-office{background:#c9502a}.cal-yahoo{background:#6f38c5}.cal-ics{background:var(--gold);color:var(--gold-ink)}.cal-copy{background:#334155}
.cal-txt{flex:1;min-width:0;display:grid;gap:2px}
.cal-txt b{font-size:16px}
.cal-txt small{font-size:13px;color:var(--mist)}
.cal-go{font-size:26px;line-height:1;color:var(--mist)}
.cal-note{margin:0;font-size:13px;color:var(--mist-2)}

/* ---------- Episodes: season menu ---------- */
.season-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-bottom:18px}
.season-picker{position:relative}
.season-btn{display:inline-flex;align-items:center;gap:10px;padding:10px 14px 10px 18px;border-radius:12px;border:1px solid var(--line);background:var(--ink-2);color:var(--paper);font:700 clamp(22px,2.6vw,28px)/1.1 var(--display);font-variation-settings:"SOFT" 100;cursor:pointer}
.season-btn:hover,.season-btn[aria-expanded="true"]{background:var(--ink-3)}
.season-btn svg{color:var(--gold);transition:transform .2s ease}
.season-btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.season-menu{position:absolute;left:0;top:calc(100% + 8px);z-index:30;width:max-content;min-width:260px;max-width:min(380px,calc(100vw - 32px));list-style:none;margin:0;padding:6px;background:var(--ink-2);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px -18px rgba(0,0,0,.85)}
.season-menu a{display:grid;gap:3px;padding:12px 14px;border-radius:10px;text-decoration:none;color:var(--paper)}
.season-menu a:hover,.season-menu a:focus-visible{background:var(--ink-3);outline:none}
.season-menu b{font-size:17px}
.season-menu span{font-size:13px;color:var(--mist)}
.season-menu [aria-selected="true"] a{background:rgba(245,184,61,.12)}
.season-menu [aria-selected="true"] b::after{content:"✓";color:var(--gold);margin-left:8px}
.season-sub{margin:0;color:var(--mist);font-weight:600;font-size:15px}
.season-desc{margin:0 0 16px;color:#d6d2cb;max-width:70ch}
