/* House of Qasas — night/teal + gold. Mobile first. */
@font-face{font-family:Cinzel;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/cinzel-latin.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500 600;font-display:swap;src:url(/fonts/cormorant-latin.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/cormorant-italic-500-latin.woff2) format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-latin.woff2) format('woff2')}
@font-face{font-family:Amiri;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/amiri-700-arabic.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFC}

:root{--pattern:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Cpolygon%20points%3D%2248.0%2C18.2%2055.1%2C31.0%2069.0%2C27.0%2065.0%2C40.9%2077.8%2C48.0%2065.0%2C55.1%2069.0%2C69.0%2055.1%2C65.0%2048.0%2C77.8%2040.9%2C65.0%2027.0%2C69.0%2031.0%2C55.1%2018.2%2C48.0%2031.0%2C40.9%2027.0%2C27.0%2040.9%2C31.0%22%20stroke%3D%22%23F6DC93%22%20stroke-width%3D%221.2%22%20opacity%3D%220.1%22%20fill%3D%22none%22%2F%3E%3Cpath%20d%3D%22M0%2C48%20L18.240000000000002%2C48%20M77.75999999999999%2C48%20L96%2C48%20M48%2C0%20L48%2C18.240000000000002%20M48%2C77.75999999999999%20L48%2C96%22%20stroke%3D%22%23F6DC93%22%20stroke-width%3D%221.2%22%20opacity%3D%220.1%22%20fill%3D%22none%22%2F%3E%3Crect%20x%3D%22-10.56%22%20y%3D%22-10.56%22%20width%3D%2221.12%22%20height%3D%2221.12%22%20transform%3D%22rotate(45%200%200)%22%20stroke%3D%22%23F6DC93%22%20stroke-width%3D%221.2%22%20opacity%3D%220.1%22%20fill%3D%22none%22%2F%3E%3Crect%20x%3D%2285.44%22%20y%3D%22-10.56%22%20width%3D%2221.12%22%20height%3D%2221.12%22%20transform%3D%22rotate(45%2096%200)%22%20stroke%3D%22%23F6DC93%22%20stroke-width%3D%221.2%22%20opacity%3D%220.1%22%20fill%3D%22none%22%2F%3E%3Crect%20x%3D%22-10.56%22%20y%3D%2285.44%22%20width%3D%2221.12%22%20height%3D%2221.12%22%20transform%3D%22rotate(45%200%2096)%22%20stroke%3D%22%23F6DC93%22%20stroke-width%3D%221.2%22%20opacity%3D%220.1%22%20fill%3D%22none%22%2F%3E%3Crect%20x%3D%2285.44%22%20y%3D%2285.44%22%20width%3D%2221.12%22%20height%3D%2221.12%22%20transform%3D%22rotate(45%2096%2096)%22%20stroke%3D%22%23F6DC93%22%20stroke-width%3D%221.2%22%20opacity%3D%220.1%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E");
  --night:#0A1820;--deep:#0D2A2A;--teal:#123A36;--teal2:#18463F;--gold1:#F6DC93;--gold2:#C8963E;--cream:#F4EAD5;
  --ink:#F4EAD5;--muted:rgba(244,234,213,.72);--faint:rgba(244,234,213,.5);--line:rgba(246,220,147,.16);--line2:rgba(246,220,147,.32);
  --card:rgba(18,58,54,.38);--card2:rgba(13,42,42,.72);
  --gold:linear-gradient(180deg,var(--gold1),var(--gold2));
  --display:Cinzel,'Times New Roman',serif;--serif:'Cormorant Garamond',Georgia,serif;--sans:Inter,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--arabic:Amiri,'Noto Naskh Arabic',serif;
  --r:16px;--wrap:1160px;--g:16px;
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--night);color:var(--ink);font:400 1rem/1.65 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:var(--gold1);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:#fff4cf}
:focus-visible{outline:2px solid var(--gold1);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--g)}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--gold1);color:var(--night);padding:8px 14px;border-radius:8px;font-weight:600}
.skip:focus{left:8px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ar{font-family:var(--arabic);font-weight:700;direction:rtl;unicode-bidi:isolate}
.saw{font-family:var(--arabic);font-weight:700;font-style:normal;font-size:.9em;line-height:0;display:inline-block;vertical-align:-.14em;color:var(--gold1);margin:0 .08em}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:999px;font:600 .95rem/1 var(--sans);letter-spacing:.02em;text-decoration:none;border:1.5px solid transparent;transition:transform .2s,background .2s,color .2s,border-color .2s;cursor:pointer}
.btn svg{flex:none}
.btn-gold{background:var(--gold);color:#1a1405;box-shadow:0 10px 30px -12px rgba(246,220,147,.55)}
.btn-gold:hover{color:#1a1405;transform:translateY(-1px);filter:brightness(1.06)}
.btn-line{border-color:var(--line2);color:var(--cream);background:rgba(10,24,32,.35)}
.btn-line:hover{border-color:var(--gold1);color:var(--gold1)}
.btn-sm{min-height:40px;padding:9px 16px;font-size:.88rem}

/* header */
.hdr{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line)}
.hdr::before{content:"";position:absolute;inset:0;background:rgba(10,24,32,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:-1}
.hdr-in{display:flex;align-items:center;gap:14px;min-height:66px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--cream);margin-right:auto;min-width:0}
.brand svg{width:26px;height:auto;flex:none}
.brand-t{font:600 1.08rem/1 var(--display);letter-spacing:.06em;white-space:nowrap;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.nav{display:none;gap:4px}
.nav a{color:var(--muted);text-decoration:none;font:500 .92rem/1 var(--sans);padding:10px 12px;border-radius:999px}
.nav a:hover,.nav a[aria-current]{color:var(--gold1);background:rgba(246,220,147,.07)}
.hdr .btn-sm{display:none}
.mnav{position:relative}
.mnav summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);color:var(--cream);cursor:pointer}
.mnav summary::-webkit-details-marker{display:none}
.mnav nav{position:absolute;right:0;top:54px;width:min(300px,calc(100vw - 32px));background:var(--deep);border:1px solid var(--line2);border-radius:16px;padding:8px;box-shadow:0 24px 60px -20px #000;display:grid}
.mnav nav a{color:var(--cream);text-decoration:none;padding:14px 14px;border-radius:10px;font-weight:500}
.mnav nav a:hover{background:rgba(246,220,147,.08);color:var(--gold1)}
.mnav nav .btn{margin-top:6px;color:#1a1405}
@media (min-width:880px){.nav{display:flex}.hdr .btn-sm{display:inline-flex}.mnav{display:none}}

/* shared section bits */
.sec{padding:72px 0}
.sec-alt{background:linear-gradient(180deg,rgba(13,42,42,.0),rgba(13,42,42,.55) 18%,rgba(13,42,42,.55) 82%,rgba(13,42,42,0))}
.kicker{display:inline-flex;align-items:center;gap:10px;font:600 .74rem/1.2 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold1)}
.kicker::before{content:"";width:22px;height:1px;background:var(--gold2)}
h1,h2,h3{margin:0;font-weight:600;color:var(--cream)}
h2{font:600 clamp(1.55rem,4.2vw,2.35rem)/1.18 var(--display);letter-spacing:.02em}
.h-gold{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font:italic 500 clamp(1.2rem,2.6vw,1.45rem)/1.45 var(--serif);color:var(--muted);margin:14px 0 0;max-width:62ch}
.sec-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px 24px;margin-bottom:30px}
.sec-head p{margin:10px 0 0;color:var(--muted);max-width:60ch}
.more{display:inline-flex;align-items:center;gap:8px;font-weight:600;text-decoration:none;font-size:.95rem}
.more svg{width:18px;height:18px;transition:transform .2s}.more:hover svg{transform:translateX(3px)}
.divider{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--gold2);margin:0 auto}
.divider::before,.divider::after{content:"";height:1px;width:min(120px,22vw);background:linear-gradient(90deg,transparent,var(--gold2))}
.divider::after{transform:scaleX(-1)}
.divider svg{width:16px;height:16px}

/* hero */
.hero{position:relative;overflow:hidden;isolation:isolate;border-bottom:1px solid var(--line);background:radial-gradient(ellipse 70% 80% at 50% 38%,#164A42 0%,var(--deep) 46%,var(--night) 100%)}
.hero::before{content:"";position:absolute;inset:0;background-image:var(--pattern);background-size:96px;opacity:.9;z-index:-1;-webkit-mask-image:radial-gradient(ellipse 80% 75% at 50% 45%,#000 30%,transparent 80%);mask-image:radial-gradient(ellipse 80% 75% at 50% 45%,#000 30%,transparent 80%)}
.hero-in{text-align:center;padding:56px 0 64px;position:relative}
.hero-emblem{width:92px;margin:0 auto 18px;filter:drop-shadow(0 0 32px rgba(246,220,147,.28))}
.hero .ar{font-size:clamp(1.6rem,4vw,2.1rem);color:var(--gold1);line-height:1.2;margin:0 0 6px}
.hero h1{font:600 clamp(2.4rem,9.5vw,5rem)/1.02 var(--display);letter-spacing:.05em;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.06em}
.hero .lede{margin:14px auto 0;color:var(--cream);opacity:.9}
.hero-sub{max-width:60ch;margin:16px auto 0;color:var(--muted)}
.hero-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
.pill{display:inline-flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;margin-top:26px;padding:9px 18px;border:1px solid var(--line2);border-radius:999px;font:600 .7rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold1);background:rgba(10,24,32,.35)}
.pill i{width:5px;height:5px;border-radius:50%;background:var(--gold1);display:block}
.lantern{position:absolute;top:0;width:64px;display:none;transform-origin:50% 0;animation:sway 7s ease-in-out infinite;opacity:.95;z-index:-1}
.lantern svg{width:100%;height:auto}
.lantern::before{content:"";display:block;width:2px;height:var(--h,120px);margin:0 auto;background:linear-gradient(var(--gold2),rgba(200,150,62,.4))}
.lantern.l1{left:6%;--h:90px}.lantern.l2{left:15%;--h:150px;width:44px;opacity:.7;animation-delay:-2s}.lantern.r1{right:6%;--h:90px;animation-delay:-4s}.lantern.r2{right:15%;--h:150px;width:44px;opacity:.7;animation-delay:-1s}
@keyframes sway{0%,100%{transform:rotate(-1.6deg)}50%{transform:rotate(1.6deg)}}
@media (min-width:1000px){.lantern{display:block}.hero-in{padding:84px 0 92px}.hero-emblem{width:108px}}
@media (prefers-reduced-motion:reduce){.lantern{animation:none}*{scroll-behavior:auto!important}}

/* page hero (inner pages) */
.phero{position:relative;isolation:isolate;border-bottom:1px solid var(--line);background:radial-gradient(ellipse 80% 120% at 50% 0%,#14433C 0%,var(--deep) 45%,var(--night) 100%);overflow:hidden}
.phero::before{content:"";position:absolute;inset:0;background-image:var(--pattern);background-size:96px;z-index:-1;-webkit-mask-image:linear-gradient(#000,transparent 85%);mask-image:linear-gradient(#000,transparent 85%)}
.phero-in{padding:28px 0 46px}
.phero h1{font:600 clamp(2rem,6.5vw,3.4rem)/1.1 var(--display);letter-spacing:.03em;margin-top:14px}
.crumbs{display:flex;flex-wrap:wrap;gap:6px 8px;font-size:.84rem;color:var(--faint);margin:0;padding:0;list-style:none}
.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--gold1)}
.crumbs li+li::before{content:"›";margin-right:8px;color:var(--gold2)}

/* now showing */
.now{display:grid;gap:28px;align-items:center;background:linear-gradient(135deg,rgba(24,70,63,.55),rgba(13,42,42,.4));border:1px solid var(--line2);border-radius:24px;padding:28px 22px;position:relative;overflow:hidden}
.now::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;background:radial-gradient(circle,rgba(246,220,147,.16),transparent 70%)}
.now h2{margin-top:12px}
.now p{color:var(--muted);margin:12px 0 0}
.prog{margin-top:22px}
.prog-bar{height:8px;border-radius:99px;background:rgba(244,234,213,.1);overflow:hidden}
.prog-bar span{display:block;height:100%;border-radius:99px;background:var(--gold);min-width:8px}
.prog-t{display:flex;justify-content:space-between;font-size:.84rem;color:var(--faint);margin-top:8px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.chips li{font:500 .84rem/1 var(--sans);padding:9px 13px;border-radius:999px;border:1px solid var(--line);color:var(--cream);background:rgba(10,24,32,.35)}
.now-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
@media (min-width:900px){.now{grid-template-columns:1.1fr .9fr;padding:44px}}

/* cards */
.grid{display:grid;gap:18px;grid-template-columns:1fr}
@media (min-width:560px){.grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:960px){.grid{grid-template-columns:repeat(3,1fr)}}
.card{display:flex;flex-direction:column;text-decoration:none;color:var(--cream);background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}
.card:hover{transform:translateY(-3px);border-color:var(--line2);box-shadow:0 22px 40px -24px rgba(0,0,0,.9);color:var(--cream)}
.card-thumb{position:relative;aspect-ratio:16/9;background:#0b1d22;overflow:hidden}
.card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.card:hover .card-thumb img{transform:scale(1.04)}
.card-play{position:absolute;right:12px;bottom:12px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(10,24,32,.78);color:var(--gold1);border:1px solid var(--line2)}
.card-thumb.ph{display:grid;place-items:center;align-content:center;gap:6px;background:radial-gradient(circle at 50% 60%,#174a42,var(--deep) 60%,var(--night));}
.card-thumb.ph::before{content:"";position:absolute;inset:0;background-image:var(--pattern);background-size:64px;opacity:.7}
.ph-n{position:relative;font:600 2.6rem/1 var(--display);background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.ph-l{position:relative;font:600 .68rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold1);opacity:.85}
.card-body{display:grid;gap:6px;padding:16px 18px 20px}
.card-k{font:600 .7rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold1)}
.card-t{font:600 1.08rem/1.3 var(--display);letter-spacing:.01em;color:var(--cream)}
.card-s{font-size:.86rem;color:var(--faint)}
.card.soon{background:rgba(13,42,42,.32)}

/* shorts */
.shorts{display:grid;grid-auto-flow:column;grid-auto-columns:44%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
.short{scroll-snap-align:start;text-decoration:none;color:var(--cream);display:grid;gap:10px}
.short-thumb{aspect-ratio:9/16;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#0b1d22}
.short-thumb img{width:100%;height:100%;object-fit:cover}
.short-t{font-size:.86rem;line-height:1.35;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (min-width:960px){.shorts{grid-auto-flow:row;grid-template-columns:repeat(4,1fr);overflow:visible}}

/* promises */
.promises{display:grid;gap:18px}
.promise{padding:26px 22px;border-radius:var(--r);border:1px solid var(--line);background:var(--card)}
.promise .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:var(--gold1);background:rgba(246,220,147,.08);border:1px solid var(--line2);margin-bottom:16px}
.promise h3{font:600 1.15rem/1.3 var(--display)}
.promise p{color:var(--muted);margin:10px 0 0}
@media (min-width:800px){.promises{grid-template-columns:repeat(3,1fr)}}

/* series roadmap */
.road{display:grid;gap:14px;counter-reset:s}
.road-i{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;align-items:start;padding:20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(13,42,42,.3);text-decoration:none;color:var(--cream)}
a.road-i:hover{border-color:var(--line2);color:var(--cream)}
.road-n{grid-row:span 3;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font:600 1.25rem/1 var(--display);color:var(--gold1);border:1px solid var(--line2);background:rgba(246,220,147,.05)}
.road-i.on{border-color:var(--line2);background:linear-gradient(135deg,rgba(24,70,63,.55),rgba(13,42,42,.4))}
.road-i.on .road-n{background:var(--gold);color:#1a1405;border-color:transparent}
.road-s{font:600 .7rem/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold1)}
.road-i h3{font:600 1.15rem/1.3 var(--display)}
.road-i p{margin:2px 0 0;color:var(--muted);font-size:.95rem}
@media (min-width:900px){.road{grid-template-columns:repeat(2,1fr)}.road-i.on{grid-column:1/-1}}

/* faq */
.faq{display:grid;gap:12px;max-width:860px}
.faq details{border:1px solid var(--line);border-radius:14px;background:rgba(13,42,42,.35);transition:border-color .2s}
.faq details[open]{border-color:var(--line2)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:18px 20px;font:600 1.02rem/1.4 var(--sans);color:var(--cream)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line2);color:var(--gold1);font-weight:500;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq .a{padding:0 20px 18px;color:var(--muted)}
.faq .a p{margin:0}

/* cta band */
.band{position:relative;isolation:isolate;overflow:hidden;text-align:center;padding:64px 22px;border-radius:28px;border:1px solid var(--line2);background:radial-gradient(ellipse 70% 120% at 50% 100%,#1B544A,var(--deep) 60%,var(--night))}
.band::before{content:"";position:absolute;inset:0;background-image:var(--pattern);background-size:96px;z-index:-1;-webkit-mask-image:radial-gradient(ellipse at 50% 100%,#000,transparent 70%);mask-image:radial-gradient(ellipse at 50% 100%,#000,transparent 70%)}
.band svg.em{width:54px;margin:0 auto 16px}
.band p{color:var(--muted);max-width:52ch;margin:12px auto 0}
.band .hero-cta{margin-top:24px}

/* episode */
.ep-head{max-width:880px}
.ep-head .dek{font:italic 500 clamp(1.2rem,2.6vw,1.42rem)/1.5 var(--serif);color:var(--muted);margin:14px 0 0}
.ep-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:18px;font-size:.88rem;color:var(--faint)}
.ep-meta span+span::before{content:"·";margin-right:16px;color:var(--gold2)}
.player{position:relative;display:block;aspect-ratio:16/9;border-radius:20px;overflow:hidden;border:1px solid var(--line2);background:#000;box-shadow:0 40px 80px -40px #000;color:var(--cream)}
.player img{width:100%;height:100%;object-fit:cover;transition:transform .6s,opacity .3s}
.player:hover img{transform:scale(1.02);opacity:.92}
.player-btn{position:absolute;inset:0;margin:auto;width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#1a1405;box-shadow:0 0 0 10px rgba(246,220,147,.18),0 20px 40px -10px #000;transition:transform .2s}
.player-btn svg{width:34px;height:34px;margin-left:4px}
.player:hover .player-btn{transform:scale(1.06)}
.player-frame{aspect-ratio:16/9;border-radius:20px;overflow:hidden;border:1px solid var(--line2);background:#000}
.player-frame iframe{width:100%;height:100%;border:0;display:block}
.soonbox{position:relative;isolation:isolate;min-height:260px;border-radius:20px;overflow:hidden;border:1px solid var(--line2);display:grid;place-items:center;text-align:center;padding:24px;background:radial-gradient(circle at 50% 62%,#1B544A,var(--deep) 55%,var(--night))}
@media (min-width:700px){.soonbox{aspect-ratio:16/9}}
.soonbox::before{content:"";position:absolute;inset:0;background-image:var(--pattern);background-size:80px;z-index:-1;opacity:.8}
.soonbox svg.em{width:64px;margin:0 auto 14px}
.soonbox h2{font-size:clamp(1.3rem,3.4vw,1.9rem)}
.soonbox p{color:var(--muted);margin:10px auto 18px;max-width:46ch}
.ep-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.ep-layout{display:grid;gap:40px;margin-top:44px}
@media (min-width:1040px){.ep-layout{grid-template-columns:minmax(0,1fr) 320px;gap:56px}}
.aside{display:grid;gap:18px;align-content:start}
@media (min-width:1040px){.aside{position:sticky;top:90px}}
.box{border:1px solid var(--line);border-radius:var(--r);background:var(--card);padding:22px}
.box h2,.box h3{font:600 1.05rem/1.3 var(--display);letter-spacing:.02em;color:var(--gold1);margin-bottom:12px}
.box p{margin:0;color:var(--muted);font-size:.95rem}
.box p+p{margin-top:10px}
.box ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.box li{position:relative;padding-left:22px;color:var(--muted);font-size:.95rem}
.box li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;transform:rotate(45deg);background:var(--gold2)}
.toc a{color:var(--muted);text-decoration:none}.toc a:hover{color:var(--gold1)}
.quick{border-color:var(--line2);background:linear-gradient(135deg,rgba(24,70,63,.5),rgba(13,42,42,.35))}
.quick p{color:var(--cream);font-size:1.02rem}

.story{font:500 clamp(1.2rem,2.4vw,1.34rem)/1.78 var(--serif);color:var(--cream);max-width:68ch}
.story h2{font:600 clamp(1.3rem,3vw,1.6rem)/1.3 var(--display);color:var(--gold1);margin:2.1em 0 .7em;letter-spacing:.02em}
.story p{margin:0 0 1.05em}
.story > p:first-of-type::first-letter{float:left;font:600 3.6em/.82 var(--display);margin:.06em .1em 0 0;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.story .cite{font:500 .82em/1 var(--sans);letter-spacing:.01em;white-space:normal;color:var(--faint)}
.story .cite a,.src a{color:var(--gold1);text-decoration:none;border-bottom:1px dotted rgba(246,220,147,.5)}
.story .cite a:hover,.src a:hover{border-bottom-style:solid}
.story strong{color:#fff;font-weight:600}
.note{font:400 .92rem/1.6 var(--sans);color:var(--faint);border-left:2px solid var(--gold2);padding:4px 0 4px 16px;margin:28px 0 0;max-width:68ch}
.src{margin-top:44px;padding-top:30px;border-top:1px solid var(--line);max-width:68ch}
.src h2{font:600 1.35rem/1.3 var(--display);margin-bottom:16px}
.src h3{font:600 .74rem/1.2 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold1);margin:20px 0 10px}
.src ul{margin:0;padding:0 0 0 20px;color:var(--muted)}
.src li{margin:6px 0}
.ep-desc{color:var(--muted);max-width:68ch}
.ep-desc p{margin:0 0 1em}
.pn{display:grid;gap:14px;margin-top:8px}
@media (min-width:700px){.pn{grid-template-columns:1fr 1fr}}
.pn a{display:grid;gap:6px;padding:20px 22px;border-radius:var(--r);border:1px solid var(--line);background:rgba(13,42,42,.35);text-decoration:none;color:var(--cream)}
.pn a:hover{border-color:var(--line2);color:var(--cream)}
.pn .k{display:flex;align-items:center;gap:8px;font:600 .7rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold1)}
.pn .k svg{width:16px;height:16px}
.pn .t{font:600 1.05rem/1.35 var(--display)}
.pn .next{text-align:right}.pn .next .k{justify-content:flex-end}
.parts{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.parts a{display:flex;gap:12px;align-items:baseline;text-decoration:none;color:var(--muted);font-size:.95rem}
.parts a:hover{color:var(--gold1)}
.parts .n{flex:none;font:600 .78rem/1 var(--sans);color:var(--gold2);min-width:46px}
.parts [aria-current] {color:var(--cream);font-weight:600}

/* prose pages */
.prose{max-width:760px;color:var(--muted);font-size:1.04rem}
.prose h2{font:600 clamp(1.3rem,3vw,1.7rem)/1.3 var(--display);color:var(--cream);margin:2em 0 .6em}
.prose h3{font:600 1.08rem/1.4 var(--sans);color:var(--cream);margin:1.6em 0 .4em}
.prose p,.prose ul{margin:0 0 1em}
.prose li{margin:.35em 0}
.prose strong{color:var(--cream)}
.prose blockquote{margin:1.4em 0;padding:18px 22px;border-left:2px solid var(--gold2);background:rgba(13,42,42,.4);border-radius:0 12px 12px 0;font:italic 500 1.3rem/1.5 var(--serif);color:var(--cream)}
.prose blockquote cite{display:block;margin-top:8px;font:500 .85rem/1.4 var(--sans);font-style:normal;color:var(--faint)}
.facts{display:grid;gap:12px;margin:24px 0}
@media (min-width:700px){.facts{grid-template-columns:repeat(3,1fr)}}
.fact{border:1px solid var(--line);border-radius:14px;padding:18px;background:rgba(13,42,42,.35)}
.fact b{display:block;font:600 1.5rem/1.1 var(--display);color:var(--gold1)}
.fact span{font-size:.9rem;color:var(--muted)}

/* series page list */
.group{margin-top:48px}
.group:first-child{margin-top:0}
.group-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.group-h h2{font-size:clamp(1.25rem,3vw,1.6rem)}
.group-h span{font-size:.86rem;color:var(--faint)}

/* footer */
.ftr{margin-top:80px;border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(13,42,42,.4),var(--night))}
.ftr-in{display:grid;gap:34px;padding:52px 0 30px}
.ftr-brand{display:flex;gap:14px;align-items:center}
.ftr-brand svg{width:40px;flex:none}
.ftr-brand b{display:block;font:600 1.2rem/1.1 var(--display);letter-spacing:.05em;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.ftr-brand .ar{color:var(--gold1);font-size:1.05rem;display:block;text-align:left;margin-top:4px}
.ftr p{color:var(--faint);font-size:.92rem;margin:14px 0 0;max-width:46ch}
.ftr-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.ftr h2{font:600 .72rem/1.2 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold1);margin-bottom:12px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.ftr ul a{color:var(--muted);text-decoration:none;font-size:.94rem;display:inline-block;padding:5px 0}
.ftr ul a:hover{color:var(--gold1)}
.ftr-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;border-top:1px solid var(--line);padding:20px 0 34px;font-size:.84rem;color:var(--faint)}
@media (min-width:860px){.ftr-in{grid-template-columns:1.3fr 2fr}.ftr-cols{grid-template-columns:repeat(3,1fr)}}

.center{text-align:center}
.mt0{margin-top:0}
.e404{text-align:center;padding:90px 0 40px}
.e404 .big{font:600 clamp(4rem,16vw,8rem)/1 var(--display);background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
