﻿:root{--watch-bg:#0a0f14;--watch-panel:#151b1f;--watch-text:#dee3ea;--watch-muted:#ddc1b3;--watch-gold:#e9c349;--watch-peach:#ffb68d}
.watch-page{width:min(1280px,100%);margin:auto;background:#0a1115;color:var(--watch-text);padding:0 80px 70px}
.watch-hero{text-align:center;padding:40px 0 64px;background:radial-gradient(ellipse at center,#ffb68d0b,transparent 70%)}
.watch-eyebrow{display:inline-block;padding:5px 16px;background:#1a2225;border-radius:30px;color:var(--watch-gold);font:700 12px/1.5 "Libre Caslon Text",serif;letter-spacing:1.5px}
.watch-page .watch-hero h1{position:static;margin:28px auto;max-width:1000px;color:var(--watch-peach);font:700 clamp(34px,4vw,56px)/1.15 "Libre Caslon Text",serif;letter-spacing:-1px}
.watch-hero p{margin:0;color:var(--watch-muted);font:16px/1.75 ABeeZee,sans-serif}
.watch-hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;margin-top:40px}
.watch-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:14px 22px;border:0;border-radius:4px;font:700 12px/1.5 "Libre Caslon Text",serif;letter-spacing:.5px;text-transform:uppercase;text-decoration:none;cursor:pointer}
.watch-button img{width:20px;height:20px}
.watch-page .primary-action{background:var(--watch-peach);color:#532200}
.watch-hero .primary-action,.coming-soon .primary-action{box-shadow:0 8px 22px #ffb68d26}
.watch-page .secondary-action{background:#222b30;color:var(--watch-gold)}
.watch-page .primary-action:hover{background:#ffc9a9}
.watch-page .secondary-action:hover{background:#2c363c}
.watch-page :is(a,button):focus-visible{outline:2px solid var(--watch-gold);outline-offset:4px}
.latest-release{padding:40px;background:var(--watch-panel);border:1px solid #e9c3490d;border-radius:8px;scroll-margin-top:24px}
.release-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;margin-bottom:40px}
.release-label{display:flex;align-items:center;gap:12px;font-family:"Libre Caslon Text",serif}
.release-label>span{padding:6px 10px;background:#504820;color:var(--watch-gold);text-transform:uppercase;font-size:10px;line-height:1.4;max-width:270px}
.release-label small{font-size:10px;line-height:1.5;color:var(--watch-muted)}
.release-copy h2{margin:12px 0 16px;color:var(--watch-peach);font:700 30px/1.2 "Libre Caslon Text",serif}
.release-copy p{margin:0;color:var(--watch-muted);font:14px/1.65 "Libre Caslon Text",serif}
.release-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0}
.release-facts dt{color:#b9a69a;font:10px/1.5 "Libre Caslon Text",serif;text-transform:uppercase}
.release-facts dd{margin:4px 0 0;font:700 12px/1.5 "Libre Caslon Text",serif;letter-spacing:.5px}
.release-facts .canon-status{color:var(--watch-gold)}
.release-still{position:relative;aspect-ratio:16/9;background:#050b0f;border:8px solid #091015;border-radius:4px;overflow:hidden}
.release-still video{display:block;width:100%;height:100%;object-fit:cover}
.player-title{position:absolute;inset:16px 16px auto;display:flex;justify-content:space-between;gap:16px;pointer-events:none;text-shadow:0 2px 6px #000}
.player-title>span{color:var(--watch-peach);font:700 20px/1.4 "Libre Caslon Text",serif;letter-spacing:1px}
.player-title small{color:var(--watch-gold);font:10px/1.5 "Libre Caslon Text",serif}
.player-title b{margin-left:18px;color:var(--watch-muted);font-weight:400}
.featured-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;border:0;border-radius:10px;background:var(--watch-peach);color:#532200;font-size:28px;cursor:pointer}
.watch-page [hidden]{display:none!important}
.release-still:has(video:not([paused])){isolation:isolate}
.release-still.is-playing .player-title{display:none}
.release-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:36px}
.release-actions .watch-button{font-size:10px;padding-inline:18px;min-height:44px}
.release-share{display:flex;align-items:center;gap:12px;margin-left:auto;color:var(--watch-muted);font-size:10px}
.release-share button{padding:8px 0;background:none;border:0;color:var(--watch-muted);font:10px/1.5 "Libre Caslon Text",serif;text-transform:uppercase;cursor:pointer}
.share-status{flex-basis:100%;color:var(--watch-gold);font-size:12px}
.share-status:empty{display:none}
.visual-archive{padding-top:100px;scroll-margin-top:20px}
.visual-archive>header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px}
.roadmap-eyebrow{color:var(--watch-gold);font:10px/1.6 "Libre Caslon Text",serif;letter-spacing:1px;text-transform:uppercase}
.visual-archive h2{margin:12px 0 0;color:var(--watch-peach);font:700 28px/1.3 "Libre Caslon Text",serif}
.visual-archive>header p{margin:0;color:var(--watch-muted);font:10px/1.5 "Libre Caslon Text",serif;text-align:right}
.archive-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.archive-cards>article{padding:24px;background:#141c21;border:1px solid #ffffff03;border-radius:8px;min-width:0}
.archive-image{position:relative;aspect-ratio:1.8;overflow:hidden;background:#0a1115}
.watch-page .archive-image>img{width:100%;height:100%;object-fit:cover!important}
.preview-badge{position:absolute;left:8px;top:8px;padding:6px 10px;color:var(--watch-gold);background:#091015e6;font:10px/1.5 "Libre Caslon Text",serif}
.preview-duration{position:absolute;bottom:10px;right:10px;color:var(--watch-text);font:11px/1.5 "Libre Caslon Text",serif}
.archive-card-copy>small{display:block;margin-top:18px;color:var(--watch-muted);font:10px/1.6 "Libre Caslon Text",serif}
.archive-card-copy h3{margin:8px 0 12px;color:var(--watch-peach);font:700 21px/1.35 "Libre Caslon Text",serif}
.archive-card-copy>p{margin:0;color:var(--watch-muted);font:14px/1.6 "Libre Caslon Text",serif}
.archive-card-copy footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;padding-top:24px;border-top:1px solid #e9c34912}
.archive-card-copy footer>span{color:var(--watch-gold);font:10px/1.5 "Libre Caslon Text",serif}
.archive-card-copy footer :is(button,a){flex-shrink:0;border:0;padding:0;background:none;color:var(--watch-peach);font:700 11px/1.5 "Libre Caslon Text",serif;text-transform:uppercase;cursor:pointer}
.coming-soon{position:relative;isolation:isolate;text-align:center;min-height:500px;margin-top:100px;padding:100px 0 80px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.archive-door{position:absolute;z-index:-1;width:420px;max-width:70%;height:480px;bottom:0;border:1px solid #e9c3494d;border-radius:50% 50% 0 0}
.archive-door:before{content:"";position:absolute;inset:42px 42px 0;border:1px dashed #e9c34940;border-radius:50% 50% 0 0}
.lock-orbit{display:grid;place-items:center;width:80px;height:80px;margin-bottom:24px;border-radius:12px;background:#222c32;color:var(--watch-gold);font-size:28px}
.coming-soon h2{margin:0 0 20px;color:var(--watch-peach);font:700 40px/1.25 "Libre Caslon Text",serif}
.coming-soon p{margin:0;color:var(--watch-muted);font:16px/1.6 ABeeZee,sans-serif}
.coming-soon .watch-button{margin-top:32px}
.watch-dialog{width:min(960px,calc(100% - 32px));padding:0;border:1px solid #e9c34959;border-radius:10px;background:#091015;color:var(--watch-text)}
.watch-dialog::backdrop{background:#000d}
.watch-dialog header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;border-bottom:1px solid #e9c34929}
.watch-dialog h2{margin:0;font:700 20px/1.5 "Libre Caslon Text",serif;color:var(--watch-peach)}
.watch-dialog header button{width:40px;height:40px;border:0;background:none;color:var(--watch-peach);font-size:28px;cursor:pointer}
.watch-dialog video{display:block;width:100%;max-height:72vh}
.notes-content{padding:28px;color:var(--watch-muted)}
.notes-content h3{color:var(--watch-peach)}
.watch-empty{padding:60px;text-align:center}
@media(max-width:1100px){.watch-page{padding-inline:32px}.release-heading{gap:24px}.release-copy h2{font-size:26px}.release-facts{gap:10px}.release-share{margin-left:0}.latest-release{padding:28px}.archive-card-copy footer{flex-wrap:wrap}}
@media(max-width:800px){.release-heading{grid-template-columns:1fr}.release-facts{max-width:500px}.watch-hero p br{display:none}.visual-archive>header{align-items:flex-start;flex-direction:column;gap:14px}.visual-archive>header p{text-align:left}.archive-cards{gap:20px}.archive-cards>article{padding:16px}.player-title>span{font-size:15px}.player-title small{font-size:8px}.archive-card-copy h3{font-size:20px}}
@media(max-width:600px){.watch-page{padding:0 20px 40px}.watch-hero{padding:40px 0}.watch-page .watch-hero h1{font-size:34px}.watch-hero h1 br{display:none}.watch-hero p{font-size:14px}.watch-hero-actions{margin-top:28px;gap:12px}.watch-hero-actions .watch-button{width:100%}.latest-release{padding:20px}.release-label{flex-direction:column;align-items:flex-start}.release-facts{gap:8px}.release-facts dt{font-size:8px}.release-facts dd{font-size:10px}.release-still{border-width:3px}.featured-play{width:54px;height:54px;border-radius:7px;font-size:20px}.player-title{inset:10px 10px auto}.player-title>span{font-size:11px}.player-title small{display:none}.release-actions{margin-top:22px}.release-actions>.watch-button{width:100%}.release-share{width:100%;justify-content:center}.archive-cards{grid-template-columns:1fr}.visual-archive{padding-top:64px}.visual-archive>header{margin-bottom:28px}.visual-archive h2{font-size:26px}.coming-soon{margin-top:64px;padding:70px 0;min-height:460px}.coming-soon h2{font-size:32px}.coming-soon p{font-size:14px}.coming-soon p br{display:none}.archive-door{max-width:90%;height:100%}.lock-orbit{width:64px;height:64px}}

/* One persistent player with the active season's playlist. */
.watch-player-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start;scroll-margin-top:24px}
.watch-player-main{min-width:0}
.watch-player-main .release-still{border-width:4px}
.season-playlist{min-width:0;background:#0d1419;border:1px solid #e9c34926;border-radius:8px;overflow:hidden}
.season-playlist>header{padding:20px;background:#20282e;border-bottom:1px solid #e9c3491a}
.season-playlist header>span{color:var(--watch-gold);font-size:10px;letter-spacing:1px;text-transform:uppercase}
.season-playlist h3{margin:6px 0;color:var(--watch-peach);font:700 18px/1.4 "Libre Caslon Text",serif}
.season-playlist header p{margin:0;font-size:11px;color:var(--watch-muted)}
.season-playlist ol{list-style:none;margin:0;padding:8px 0;max-height:360px;overflow-y:auto;scrollbar-color:#6e6240 #0d1419;scrollbar-width:thin}
.season-playlist li{margin:0}
.season-playlist li button{display:grid;grid-template-columns:18px 80px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:14px 12px;border:0;border-left:3px solid transparent;background:none;text-align:left;color:var(--watch-text);cursor:pointer}
.season-playlist li button:hover{background:#ffb68d0d}
.season-playlist li button.is-active{background:#ffb68d17;border-left-color:var(--watch-peach)}
.season-playlist li button:disabled{opacity:.5;cursor:default}
.watch-page .season-playlist img{width:80px;height:50px;object-fit:cover!important;border-radius:4px}
.episode-number{font-size:11px;color:var(--watch-gold)}
.playlist-copy{min-width:0}
.playlist-copy strong{display:block;font:700 12px/1.5 ABeeZee,sans-serif;overflow-wrap:anywhere}
.playlist-copy small{display:block;margin-top:6px;font-size:10px;color:var(--watch-muted)}
.playback-status{font-size:12px;line-height:1.6;color:var(--watch-gold);margin:10px 0 0}
.playback-status:empty{display:none}
.episode-navigation{display:flex;flex-direction:column;align-items:flex-end;gap:12px;color:var(--watch-muted);font-size:12px}
.episode-navigation>div{display:flex;gap:10px}
.episode-navigation button{width:40px;height:40px;border:1px solid #e9c34940;border-radius:6px;background:#20282e;color:var(--watch-gold);cursor:pointer}
.episode-navigation button:disabled{opacity:.35;cursor:default}
.season-cards>article{padding:0}
.season-card{display:block;text-align:left;width:100%;height:100%;padding:24px;border:1px solid transparent;border-radius:8px;background:none;color:inherit;cursor:pointer}
.season-card:hover{background:#ffb68d08;border-color:#ffb68d66}
.season-card.is-selected{border-color:#e9c34966}
.season-card-action{color:var(--watch-peach)!important;font-weight:700!important;text-transform:uppercase}
.watch-page .release-heading{grid-template-columns:minmax(0,1fr) auto}
@media(min-width:1200px){.watch-page{width:min(1440px,100%);padding-inline:48px}}
@media(max-width:1000px){.watch-player-layout{grid-template-columns:minmax(0,1fr) 260px;gap:14px}.season-playlist li button{grid-template-columns:14px 64px minmax(0,1fr);gap:8px;padding:12px 8px}.watch-page .season-playlist img{width:64px;height:44px}.season-playlist>header{padding:16px}.season-playlist h3{font-size:16px}}
@media(max-width:800px){.watch-player-layout{grid-template-columns:1fr}.season-playlist ol{max-height:290px}.season-playlist li button{grid-template-columns:24px 96px minmax(0,1fr);padding:12px 16px;gap:12px}.watch-page .season-playlist img{width:96px;height:58px}.watch-page .release-heading{grid-template-columns:1fr;gap:18px}.episode-navigation{flex-direction:row;align-items:center;justify-content:space-between}}
@media(max-width:600px){.season-card{padding:16px}.season-playlist li button{grid-template-columns:18px 72px minmax(0,1fr);gap:8px;padding:12px 10px}.watch-page .season-playlist img{width:72px;height:46px}}
.season-card:disabled{cursor:default}
.season-card.is-coming-soon:hover{background:none;border-color:transparent}
.season-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at center,#e9c34912,transparent 70%),#131c22;padding:24px;text-align:center;color:var(--watch-gold);font:700 clamp(24px,3vw,42px)/1.2 "Libre Caslon Text",serif}
.watch-page .youtube-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover!important}
[data-youtube-host], [data-youtube-host] iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.release-still:has([data-youtube-host]:not([hidden])){min-height:200px}
.season-card{display:flex;flex-direction:column;align-items:stretch}
.season-card .archive-image{width:100%;flex-shrink:0}
.season-card .archive-card-copy{display:flex;flex-direction:column;flex:1}
.season-card .archive-card-copy footer{margin-top:auto;padding-top:24px}
.season-card .archive-card-copy>p{margin-bottom:24px}

