@font-face{font-family:Barlow;src:url('/home/genai-fonts/barlow-condensed-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Barlow;src:url('/home/genai-fonts/barlow-condensed-800.ttf') format('truetype');font-weight:800;font-display:swap}
:root{color-scheme:dark;--pink:#e85258;--coral:#e85258}*{box-sizing:border-box}html{background:#131313;scroll-behavior:smooth;scroll-snap-type:y mandatory}body{margin:0;color:#f7f5f3;font-family:Barlow,Arial,sans-serif;font-weight:600}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--pink);outline-offset:5px}.filter-def{position:absolute}.skip{position:fixed;top:-100px;z-index:200;padding:14px;background:#131313}.skip:focus{top:8px}.progress{position:fixed;z-index:45;top:0;left:0;right:0;height:3px;background:#ffffff12}.progress span{display:block;height:100%;background:linear-gradient(90deg,#e85258,#e85258);transform:scaleX(.25);transform-origin:left;transition:transform .35s}
.nav{position:fixed;z-index:40;top:0;left:0;right:0;height:78px;display:flex;align-items:center;gap:42px;padding:0 4.2vw;border-bottom:1px solid #ffffff26;background:linear-gradient(#08070bb3,#08070b26);backdrop-filter:blur(8px)}.logo{display:flex;width:150px;align-items:center;flex-shrink:0}.logo img{width:100%;height:auto;filter:url(#logo-white)}.links{display:flex;gap:28px;align-items:center;font-size:17px;letter-spacing:.085em}.links a[aria-current]{color:var(--pink)}.nav a:hover{color:var(--pink)}.login{margin-left:auto;padding:11px 18px;border:1px solid #ffffff7a;border-radius:12px;font-size:16px;letter-spacing:.07em;background:#13131340}.login span{margin-left:12px}.rail{position:fixed;z-index:35;left:clamp(16px,3vw,44px);top:50%;display:grid;gap:10px;width:76px;transform:translateY(-50%)}.rail a{position:relative;height:48px;border:1px solid #ffffff45;border-radius:8px;overflow:hidden;opacity:.55;transform:perspective(380px) rotateY(10deg) scale(.94);transition:.25s}.rail img{width:100%;height:100%;object-fit:cover;display:block}.rail span{position:absolute;bottom:3px;right:4px;font-size:11px;text-shadow:0 1px 5px #000;background:#0006;padding:0 3px;border-radius:2px}.rail a:hover,.rail a[aria-current]{opacity:1;transform:scale(1.05);border-color:var(--pink);box-shadow:0 0 0 2px #e8525840}
.scene{position:relative;min-height:650px;height:100svh;display:grid;align-items:center;overflow:hidden;scroll-snap-align:start;isolation:isolate}.scene-media{position:absolute;inset:0;z-index:-3}.scene-media video{display:block;width:100%;height:100%;object-fit:cover}.scene-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#06050ae6 0%,#06050a80 46%,#06050a26 78%),linear-gradient(0deg,#05040880,transparent 55%)}.scene-copy{width:min(850px,calc(100vw - 280px));margin-left:clamp(145px,18vw,280px);padding:90px 0 80px;opacity:.6;transform:translateY(20px);transition:opacity .6s,transform .6s}.scene.active .scene-copy{opacity:1;transform:none}.kicker{color:var(--pink);text-transform:uppercase;letter-spacing:.19em;font-size:15px;margin:0 0 18px}h1,h2{margin:0;font-weight:800}h1,h2{font-size:clamp(58px,7.5vw,120px);line-height:.91;letter-spacing:-.015em}.scene h1 span{font-size:.7em}.deck{max-width:600px;font-size:21px;line-height:1.45;margin:24px 0 0;color:#e6e0e9;letter-spacing:.025em}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.tags span{font-size:12px;text-transform:uppercase;letter-spacing:.13em;padding:8px 12px;border:1px solid #ffffff40;border-radius:99px;backdrop-filter:blur(12px);background:#13131340}.watch{display:inline-flex;align-items:center;gap:12px;margin-top:28px;padding:12px 19px;border:1px solid #ffffff60;border-radius:99px;background:#ffffff18;backdrop-filter:blur(16px);font-size:14px;letter-spacing:.12em;text-transform:uppercase;transition:.2s}.watch i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:12px;font-style:normal;background:var(--coral);color:#171014}.watch:hover{background:#e8525840;border-color:var(--pink);transform:translateY(-2px)}.scene-number{position:absolute;right:4.2vw;bottom:29px;font-size:13px;letter-spacing:.15em}.scroll-note{position:absolute;left:50%;bottom:27px;transform:translateX(-50%);font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:#eee9}.preview-toggle{position:fixed;z-index:36;right:4.2vw;top:99px;padding:8px 13px;border:1px solid #ffffff40;border-radius:99px;background:#13131366;backdrop-filter:blur(8px);font-size:12px;letter-spacing:.09em}
dialog{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:60px 24px 24px;border:0;background:#060509f5;color:#fff}dialog[open]{display:grid;place-items:center}dialog::backdrop{background:#000}.player-shell{width:min(1180px,96vw);position:relative}.player-shell video{display:block;width:100%;max-height:78svh;border:1px solid #ffffff30;border-radius:14px;background:#000}.player-shell>button{position:absolute;right:0;top:-48px;width:38px;height:38px;border:1px solid #ffffff60;border-radius:50%;background:#ffffff15;font-size:26px}.player-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:14px}.player-caption h2{font-size:18px;line-height:1.3;letter-spacing:.08em}.player-caption a{font-size:15px;white-space:nowrap;color:var(--pink)}#playerError{color:var(--pink);font-size:18px}
@media(max-width:800px){html{scroll-snap-type:y proximity}.nav{height:66px;padding:0 18px;gap:18px}.logo{width:120px}.links{display:none}.login{font-size:13px;padding:9px 12px}.login span{display:none}.scene{min-height:600px}.scene-copy{width:auto;margin:0;padding:130px 22px 130px}.kicker{font-size:12px}.scene h1,.scene h2{font-size:clamp(48px,12vw,80px)}.deck{font-size:18px;max-width:440px}.tags{gap:6px;margin-top:18px}.tags span{font-size:10px;padding:7px 9px}.watch{min-height:48px;margin-top:22px;font-size:12px}.scene-shade{background:linear-gradient(0deg,#050408e6,#05040877 65%,#05040866)}.rail{left:50%;top:auto;bottom:calc(12px + env(safe-area-inset-bottom));transform:translateX(-50%);width:auto;display:flex;gap:8px;padding:8px;border:1px solid #ffffff35;border-radius:14px;background:#13131399;backdrop-filter:blur(16px)}.rail a{width:62px;height:42px;transform:none}.scene-number,.scroll-note{display:none}.preview-toggle{top:82px;right:18px;font-size:11px}.player-shell{width:100%}dialog{padding:60px 12px 24px}.player-caption h2{font-size:15px}.player-caption a{font-size:13px}}
@media(max-height:540px) and (orientation:landscape){.scene{min-height:550px}.scene-copy{padding-top:120px;padding-bottom:100px}.scene h1,.scene h2{font-size:55px}.deck{font-size:17px;margin-top:12px}.tags{margin-top:12px}.watch{margin-top:14px}.player-shell video{max-height:64svh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scene-copy,.rail a,.watch,.progress span{transition:none;transform:none}}

/* A scrollable film rail for the expanded collection. */
.progress span{transform:scaleX(.043478)}
.rail{display:flex;flex-direction:column;max-height:calc(100svh - 180px);overflow-y:auto;overflow-x:hidden;padding:6px;box-sizing:content-box;scrollbar-width:thin;scrollbar-color:#e8525866 transparent;overscroll-behavior:contain}
.rail a{flex:0 0 48px;min-height:48px;transform:none}.rail a[aria-current],.rail a:hover{transform:none}
.action-addition h2{font-size:clamp(48px,6.2vw,96px);text-transform:uppercase;max-width:850px}
@media(max-width:800px){.rail{flex-direction:row;max-height:none;max-width:calc(100vw - 40px);overflow-x:auto;overflow-y:hidden;padding:8px;box-sizing:border-box;width:max-content}.rail a{flex:0 0 62px;min-height:42px;height:42px}.action-addition h2{font-size:clamp(40px,10.5vw,64px);line-height:.98}}

.sound-toggle{position:fixed;z-index:36;right:4.2vw;top:99px;padding:10px 15px;border:1px solid #ffffff60;border-radius:99px;background:#13131399;backdrop-filter:blur(8px);font-size:14px;letter-spacing:.08em}.sound-toggle:hover{border-color:var(--pink);background:#e8525833}@media(max-width:800px){.sound-toggle{top:82px;right:18px;font-size:12px;min-height:40px}}
