/* Embedded by Cine de Dos Font Embedder v4 */

/* Embedded by Cine de Dos Font Embedder v4 */








/* Safe font role overrides for the full Cine de Dos font family */
:root{--font-title:"Fino Bold",serif;--font-body:"Nitti Typewriter Corrected","Nitti Typewriter",ui-monospace,monospace;--font-accent:"Charcoal Script",cursive;--font-nitti:"Nitti Typewriter",ui-monospace,monospace;--font-cameo:"Nitti Typewriter Cameo","Nitti Typewriter",ui-monospace,monospace;--font-open:"Nitti Typewriter Open","Nitti Typewriter",ui-monospace,monospace;--font-underlined:"Nitti Typewriter Underlined","Nitti Typewriter",ui-monospace,monospace;--cameo:"Nitti Typewriter Cameo","Nitti Typewriter",ui-monospace,monospace;}
body,body p,input,textarea,select,.body,.copy,.meta,.small,.location,.locations,.hero-locations,.bottom-locations,.schedule-meta,.card-meta,.chapter-meta,.timeline p,.timeline-card p,.teaser-text,.reel-card strong{font-family:"Nitti Typewriter Corrected","Nitti Typewriter",ui-monospace,monospace!important;}
h1,h2,h3,h4,h5,.title,.site-title,.logo,.hero-title,.chapter-title,.poster-title,.timeline-title,.section-title,.number,.chapter-number,.big-title,.episode-card h3{font-family:"Fino Bold",serif!important;}
.accent,.script,.charcoal,.hero-script,.eyebrow-script,.subtitle-script,.handwritten,.tagline-script,.translation,.poster-caption,.subscript,.kicker{font-family:"Charcoal Script",cursive!important;}
.nav-actions a,.menu-toggle,.card-link,.teaser-mini-control,.clean-action,.btn-clean,.button-clean,.menu-list a,.menu-close{font-family:"Nitti Typewriter Cameo","Nitti Typewriter",ui-monospace,monospace!important;}
.episode-no,.card-topline,.timeline-meta,.timeline-meta em,.timeline-meta small,.reel-no,.eyebrow,.chapter-meta,.card-meta,.section-head .lede,.teaser-frame-label{font-family:"Nitti Typewriter Open","Nitti Typewriter",ui-monospace,monospace!important;}
.section-ghost .type,.section-ghost .title,.timeline-runner,.now-runner,.ghost-type,.vertical-type,.runner-left,.runner-right,.runner-inner-left,.runner-inner-right{font-family:"Nitti Typewriter Underlined","Nitti Typewriter",ui-monospace,monospace!important;}
.font-nitti-cameo{font-family:"Nitti Typewriter Cameo","Nitti Typewriter",ui-monospace,monospace!important}.font-nitti-corrected{font-family:"Nitti Typewriter Corrected","Nitti Typewriter",ui-monospace,monospace!important}.font-nitti-open{font-family:"Nitti Typewriter Open","Nitti Typewriter",ui-monospace,monospace!important}.font-nitti-underlined{font-family:"Nitti Typewriter Underlined","Nitti Typewriter",ui-monospace,monospace!important}

/* End Embedded Fonts */

:root{--black:#000;--white:#fff;--soft:rgba(255,255,255,.72);--faint:rgba(255,255,255,.18);--ink:#000;--paper:#fff;--title:"Fino Bold","Bodoni 72",Didot,"Times New Roman",serif;--body:"Nitti Typewriter","Courier New",Courier,monospace;--accent:"Charcoal Script","Brush Script MT","Snell Roundhand",cursive;--mx:50vw;--my:50vh;--scroll:0;--hero-progress:0;--timeline-progress:0%}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:none;background:#000;color:#fff}html::-webkit-scrollbar{width:0;height:0}body{margin:0;background:#000;color:#fff;font-family:var(--body);font-size:21px;line-height:1.68;letter-spacing:.01em;overflow-x:hidden;cursor:none}body::before{content:"";position:fixed;inset:0;z-index:2;pointer-events:none;background:radial-gradient(circle at 18% 12%,rgba(255,255,255,.05),transparent 23%),radial-gradient(circle at 84% 20%,rgba(255,255,255,.035),transparent 22%);mix-blend-mode:screen}a,button{cursor:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0}img,video{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 118px));margin-inline:auto}.skip{position:fixed;top:10px;left:10px;z-index:120;background:#fff;color:#000;padding:.6rem .8rem;transform:translateY(-140%);border:1px solid #000}.skip:focus{transform:translateY(0)}
.spotlight{position:fixed;inset:0;z-index:4;pointer-events:none;background:radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.52) 0,rgba(255,255,255,.25) 92px,rgba(255,255,255,.1) 220px,transparent 420px);mix-blend-mode:screen;opacity:.98}.cursor{position:fixed;left:0;top:0;width:42px;height:42px;border:1px solid rgba(255,255,255,.9);border-radius:999px;z-index:100;pointer-events:none;transform:translate(calc(var(--mx) - 21px),calc(var(--my) - 21px));transition:width .18s ease,height .18s ease,border .18s ease,background .18s ease}.cursor-dot{position:fixed;left:0;top:0;width:4px;height:4px;border-radius:50%;background:#fff;z-index:101;pointer-events:none;transform:translate(calc(var(--mx) - 2px),calc(var(--my) - 2px))}body.is-hovering .cursor{width:74px;height:74px;background:rgba(255,255,255,.08);border-color:#fff;transform:translate(calc(var(--mx) - 37px),calc(var(--my) - 37px))}
.film-edge{position:fixed;top:0;bottom:0;width:28px;z-index:20;pointer-events:none;opacity:.11;background-color:#000;background-image:radial-gradient(circle at 50% 14px,#fff 0 2.1px,transparent 2.55px);background-size:28px 43px;border-inline:1px solid rgba(255,255,255,.18)}.film-edge.left{left:0}.film-edge.right{right:0}.scroll-track{position:fixed;right:13px;top:14vh;width:2px;height:72vh;z-index:60;background:rgba(255,255,255,.12);pointer-events:none}.scroll-track::before,.scroll-track::after{content:"";position:absolute;left:-4px;width:10px;height:1px;background:rgba(255,255,255,.6)}.scroll-track::before{top:0}.scroll-track::after{bottom:0}.scroll-track span{position:absolute;left:-3px;top:0;width:8px;height:62px;background:#fff;border-radius:999px;box-shadow:0 0 24px rgba(255,255,255,.95);transform:translateY(calc((72vh - 62px) * var(--scroll)))}
.site-nav{position:fixed;top:0;left:0;right:0;z-index:80;background:#000;border-bottom:1px solid rgba(255,255,255,.22);transform:translateY(-104%);opacity:0;transition:transform .35s ease,opacity .35s ease}.site-nav.is-visible{transform:translateY(0);opacity:1}.nav-inner{height:74px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{font-family:var(--title);font-size:23px;letter-spacing:.08em;text-transform:uppercase}.nav-actions{display:flex;gap:.8rem;align-items:center}.nav-actions a,.menu-toggle,.btn{font-family:var(--body);font-size:19px;letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(255,255,255,.72);background:#000;color:#fff;padding:1.05rem 1.18rem;line-height:1;transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}.nav-actions a:hover,.menu-toggle:hover,.btn:hover{background:#fff;color:#000;transform:translateY(-2px);box-shadow:0 0 0 1px #fff}
.menu-panel{position:fixed;inset:0;z-index:95;background:rgba(0,0,0,.95);visibility:hidden;opacity:0;transition:opacity .25s ease,visibility .25s ease}.menu-panel.is-open{opacity:1;visibility:visible}.menu-box{width:min(940px,calc(100% - 96px));margin:9vh auto 0;border:1px solid #fff;background:#000;transform:translateY(26px);transition:transform .25s ease;box-shadow:0 40px 140px rgba(255,255,255,.08)}.menu-panel.is-open .menu-box{transform:translateY(0)}.menu-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.3);padding:1rem 1.1rem;font-size:16px;letter-spacing:.15em;text-transform:uppercase}.menu-close{border:1px solid rgba(255,255,255,.55);padding:.65rem .9rem}.menu-list a{display:grid;grid-template-columns:76px 1fr 178px;align-items:center;gap:1rem;padding:1.18rem 1.15rem;border-bottom:1px solid rgba(255,255,255,.16);transition:background .2s ease,color .2s ease,padding-left .2s ease}.menu-list a:hover{background:#fff;color:#000;padding-left:1.7rem}.menu-no,.menu-meta{font-size:16px;letter-spacing:.13em;text-transform:uppercase;opacity:.66}.menu-title{font-family:var(--title);font-size:clamp(38px,5vw,74px);line-height:.85;text-transform:uppercase}.menu-meta{text-align:right}
.hero{position:relative;min-height:100svh;display:grid;align-items:center;isolation:isolate;overflow:hidden;padding:74px 0 98px}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:none;transform:none;z-index:0;image-rendering:auto;backface-visibility:hidden}.hero-shade{position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 39%,rgba(255,255,255,.11),rgba(0,0,0,.04) 37%,rgba(0,0,0,.34) 90%),linear-gradient(90deg,rgba(0,0,0,.54),rgba(0,0,0,.04) 48%,rgba(0,0,0,.54));opacity:calc(.93 - (var(--hero-progress) * .22))}.flicker{position:absolute;inset:0;z-index:3;background:#fff;opacity:0;pointer-events:none;animation:flicker 12s infinite steps(1,end)}.grain{position:fixed;inset:-40%;z-index:3;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 240 240' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");animation:grain 6s steps(8) infinite}.hero-card{position:relative;z-index:7;text-align:center;max-width:1040px;margin-inline:auto;padding:2rem 0;transform:translateY(calc(var(--hero-progress)*-34px));opacity:calc(1 - (var(--hero-progress)*.45))}.kicker{font-family:var(--accent);font-size:clamp(38px,4.5vw,66px);line-height:1;text-transform:lowercase;margin:0 0 1rem;text-shadow:0 8px 35px #000}.hero-title{display:flex;align-items:center;justify-content:center;gap:clamp(.55rem,2.35vw,2.2rem);white-space:nowrap;line-height:.72}.hero-title .main-word{font-family:var(--title);font-size:clamp(78px,15vw,222px);letter-spacing:.018em;text-transform:uppercase;text-shadow:0 18px 70px rgba(0,0,0,.9)}.hero-title .script-de{font-family:var(--accent);font-size:clamp(52px,8.1vw,122px);text-transform:lowercase;text-shadow:0 12px 48px #000}.subscript{font-family:var(--accent);font-size:clamp(32px,3.9vw,58px);line-height:1;text-transform:lowercase;margin:.65rem 0 0;text-shadow:0 8px 32px #000}.hero-copy{max-width:660px;margin:2rem auto 0;font-size:22px;line-height:1.62;color:rgba(255,255,255,.88);text-shadow:0 6px 24px #000}.hero-actions{display:flex;flex-direction:column;align-items:center;gap:.8rem;margin-top:2.2rem}.action-note{font-family:var(--accent);font-size:40px;line-height:1;text-transform:lowercase;text-shadow:0 7px 26px #000}.btn.primary{background:#fff;color:#000;border-color:#fff;font-size:21px;min-width:264px;text-align:center;padding:1.12rem 1.38rem}.btn.primary:hover{background:#000;color:#fff}.hero-locations{position:absolute;left:64px;right:64px;bottom:31px;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:2rem;font-family:var(--body);font-size:clamp(22px,2.2vw,34px);letter-spacing:.15em;text-transform:uppercase;color:#fff;text-shadow:0 8px 28px #000}.hero-locations span{text-align:center;white-space:nowrap}.hero-locations span:nth-child(2){font-family:var(--accent);font-size:clamp(36px,3.5vw,54px);letter-spacing:.03em;text-transform:none}
main{position:relative;z-index:5;background:#000}.section{padding:106px 0;border-top:1px solid rgba(255,255,255,.14)}.section-head{display:grid;grid-template-columns:.78fr 1.22fr;align-items:end;gap:3rem;margin-bottom:50px}.eyebrow{font-size:16px;letter-spacing:.17em;text-transform:uppercase;color:var(--soft);margin:0 0 1rem}h2{font-family:var(--title);font-size:clamp(58px,7.8vw,126px);font-weight:700;line-height:.82;text-transform:uppercase;letter-spacing:.01em;margin:0}.lede{font-size:22px;line-height:1.65;color:rgba(255,255,255,.78);max-width:680px;margin:0}.script-line{display:block;font-family:var(--accent);font-size:clamp(44px,5.5vw,78px);line-height:.9;text-transform:lowercase;color:#fff;margin-bottom:.7rem}
.now-showing{position:relative;overflow:hidden}.now-showing::before{content:"NOW SHOWING • CINE DE DOS • RAQUEL & TYLER •";position:absolute;left:0;right:0;top:0;font-family:var(--accent);font-size:clamp(72px,12vw,180px);line-height:.8;letter-spacing:.018em;text-transform:none;color:rgba(255,255,255,.045);white-space:nowrap;transform:translateY(-24%);}.poster-grid{display:grid;grid-template-columns:minmax(300px,470px) 1fr;gap:clamp(2.8rem,6vw,6rem);align-items:center;position:relative;z-index:2}.poster-stage{position:relative;perspective:1200px}.poster-stage::before{content:"";position:absolute;inset:9% -12% -8% 16%;background:radial-gradient(circle,rgba(255,255,255,.2),transparent 66%);filter:blur(22px);opacity:.75;transform:rotate(-4deg)}.poster-frame{position:relative;border:1px solid rgba(255,255,255,.75);background:#050505;padding:12px;box-shadow:0 30px 100px rgba(0,0,0,.72),0 0 0 1px rgba(255,255,255,.08);transform:rotate(-1.2deg);transition:transform .45s ease,filter .45s ease,box-shadow .45s ease}.poster-frame::before{content:"";position:absolute;inset:-13px;border:1px solid rgba(255,255,255,.26);pointer-events:none}.poster-frame::after{content:"NOW SHOWING";position:absolute;left:50%;top:-37px;transform:translateX(-50%);font-family:var(--body);font-size:15px;letter-spacing:.18em;background:#000;color:#fff;border:1px solid rgba(255,255,255,.58);padding:.45rem .7rem;white-space:nowrap}.poster-frame:hover{transform:rotate(.15deg) translateY(-9px) scale(1.012);filter:brightness(1.07);box-shadow:0 46px 140px rgba(255,255,255,.11)}.poster-frame img{width:100%;height:auto;filter:grayscale(1) contrast(1.04)}.poster-caption{position:absolute;right:-42px;bottom:8%;writing-mode:vertical-rl;font-family:var(--accent);font-size:38px;color:#fff;text-shadow:0 6px 20px #000}.copy-block{max-width:720px}.copy-block h2{margin-bottom:1.05rem}.copy-block p{font-size:23px;line-height:1.62;color:rgba(255,255,255,.8);max-width:600px}.copy-block .tight{max-width:470px}.button-row{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.9rem}.btn.light{background:#fff;color:#000;border-color:#fff}.btn.light:hover{background:#000;color:#fff}.btn.ghost:hover{background:#fff;color:#000}
.timeline-section{padding-top:98px;position:relative;overflow:hidden}.timeline-section::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.035),transparent);opacity:.75;pointer-events:none}.timeline{position:relative;display:grid;gap:54px;margin-top:30px;padding-block:12px}.timeline:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.32) 0 12px,transparent 12px 22px)}.timeline:after{content:"";position:absolute;top:0;left:50%;width:1px;height:var(--timeline-progress,0%);background:#fff;box-shadow:0 0 22px rgba(255,255,255,.65);transition:height .08s linear}.timeline-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:stretch;position:relative;min-height:0}.timeline-row:before{content:attr(data-chapter);position:absolute;top:34px;left:50%;width:48px;height:48px;border-radius:50%;background:#000;color:#fff;border:1px solid #fff;display:grid;place-items:center;transform:translateX(-50%);z-index:2;box-shadow:0 0 0 10px #000,0 0 30px rgba(255,255,255,.28);font-family:var(--body);font-size:16px;letter-spacing:.05em}.timeline-row::after{content:"";position:absolute;top:58px;left:calc(50% - 35px);right:calc(50% - 35px);height:1px;background:rgba(255,255,255,.35);z-index:1}.timeline-row.is-right .timeline-meta{grid-column:1}.timeline-row.is-right .episode-card{grid-column:2}.timeline-row.is-left .timeline-meta{grid-column:2}.timeline-row.is-left .episode-card{grid-column:1;grid-row:1}.timeline-meta{min-height:100%;border:1px solid rgba(255,255,255,.28);padding:1.7rem;background:#050505;display:flex;flex-direction:column;justify-content:center;gap:.5rem;color:#fff;position:relative;overflow:hidden;transition:transform .3s ease,border .3s ease}.timeline-meta::before{content:"";position:absolute;inset:-30%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.08),transparent);transform:translateX(-80%) rotate(12deg);transition:transform .7s ease}.timeline-row:hover .timeline-meta::before{transform:translateX(80%) rotate(12deg)}.timeline-row:hover .timeline-meta{transform:translateY(-4px);border-color:rgba(255,255,255,.52)}.timeline-row.is-right .timeline-meta{text-align:right;align-items:flex-end}.timeline-row.is-left .timeline-meta{text-align:left;align-items:flex-start}.episode-no{font-size:16px;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.62)}.timeline-meta strong{font-family:var(--title);font-size:clamp(34px,4vw,58px);line-height:.86;text-transform:uppercase}.timeline-meta em{font-style:normal;font-size:22px;letter-spacing:.08em;text-transform:uppercase}.timeline-meta small{font-size:19px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.72)}.episode-card{position:relative;display:block;background:#fff;color:#000;border:1px solid #fff;padding:2.05rem 2.1rem 2rem;min-height:0;overflow:visible;transition:transform .28s ease,box-shadow .28s ease,clip-path .28s ease;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}.episode-card::before,.episode-card::after{content:"";position:absolute;top:50%;width:18px;height:18px;background:#000;border-radius:50%;transform:translateY(-50%);box-shadow:0 0 0 1px #fff}.episode-card::before{left:-9px}.episode-card::after{right:-9px}.episode-card:hover{transform:translateY(-9px) rotate(.15deg);box-shadow:0 0 0 1px #fff,0 26px 70px rgba(255,255,255,.15);clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,26px 100%,0 calc(100% - 26px))}.card-topline{display:flex;justify-content:space-between;gap:1rem;font-size:17px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid rgba(0,0,0,.28);padding-bottom:1rem;margin-bottom:1.35rem;color:rgba(0,0,0,.68)}.episode-card h3{font-family:var(--title);font-size:clamp(44px,5.4vw,86px);line-height:.86;text-transform:uppercase;letter-spacing:.005em;margin:0 0 .8rem;color:#000}.translation{font-family:var(--accent);font-size:clamp(38px,4vw,60px)!important;line-height:.95!important;color:#000!important;margin:.2rem 0 1rem!important}.episode-card p{font-size:21px;line-height:1.55;color:rgba(0,0,0,.8);margin:.55rem 0 0}.card-link{display:inline-block;margin-top:1.4rem;font-size:17px;letter-spacing:.14em;text-transform:uppercase;border-top:1px solid #000;padding-top:.55rem;color:#000}
.reel-section{padding:98px 0 108px;overflow:hidden;border-top:1px solid rgba(255,255,255,.14)}.reel-row{width:min(1180px,calc(100% - 118px));margin:36px auto 0;display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:16px;overflow:visible}.reel-card{min-height:255px;border:1px solid rgba(255,255,255,.4);background:#050505;color:#fff;padding:1.35rem;display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s ease,background .25s ease,color .25s ease,border .25s ease}.reel-card:hover{background:#fff;color:#000;border-color:#fff;transform:translateY(-9px) rotate(.25deg)}.reel-no{font-size:17px;letter-spacing:.16em;text-transform:uppercase;opacity:.65}.reel-script{font-family:var(--accent);font-size:40px;line-height:.9;text-transform:lowercase}.reel-card strong{font-family:var(--title);font-size:clamp(34px,3.3vw,55px);line-height:.86;text-transform:uppercase}.reel-card small{font-size:18px;line-height:1.45;opacity:.74}.footer{border-top:1px solid rgba(255,255,255,.14);padding:2rem 0 2.5rem;color:rgba(255,255,255,.64);font-size:16px;letter-spacing:.09em;text-transform:uppercase}.credits a{border-bottom:1px solid rgba(255,255,255,.4)}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.timeline-row.reveal{transform:translateY(52px) scale(.985)}.timeline-row.reveal.is-visible{transform:translateY(0) scale(1)}
@keyframes flicker{0%,7%,10%,12%,38%,41%,100%{opacity:0}8%{opacity:.08}11%{opacity:.035}40%{opacity:.06}}@keyframes grain{0%{transform:translate(0,0)}10%{transform:translate(-5%,3%)}20%{transform:translate(-11%,7%)}30%{transform:translate(7%,-9%)}40%{transform:translate(-3%,12%)}50%{transform:translate(-12%,6%)}60%{transform:translate(10%,0)}70%{transform:translate(0,10%)}80%{transform:translate(7%,3%)}90%{transform:translate(-6%,5%)}100%{transform:translate(0,0)}}
@media(max-width:1000px){.reel-row{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-row{gap:54px}}
@media(max-width:900px){body{font-size:19px}.wrap{width:min(100% - 70px,1180px)}.nav-actions a{display:none}.menu-list a{grid-template-columns:50px 1fr}.menu-meta{display:none}.hero-title .main-word{font-size:clamp(62px,18vw,122px)}.hero-title .script-de{font-size:clamp(42px,11vw,78px)}.hero-locations{left:42px;right:42px;font-size:17px;gap:.8rem}.hero-locations span:nth-child(2){font-size:32px}.section-head,.poster-grid{grid-template-columns:1fr;gap:2.4rem}.poster-caption{display:none}.timeline:before,.timeline:after{left:14px}.timeline-row,.timeline-row.is-left,.timeline-row.is-right{grid-template-columns:1fr;gap:1rem;padding-left:42px}.timeline-row:before{left:14px;width:42px;height:42px;font-size:14px;box-shadow:0 0 0 8px #000}.timeline-row::after{display:none}.timeline-row.is-left .timeline-meta,.timeline-row.is-left .episode-card,.timeline-row.is-right .timeline-meta,.timeline-row.is-right .episode-card{grid-column:1;grid-row:auto;text-align:left;align-items:flex-start}.episode-card{padding:1.55rem}.card-topline{flex-direction:column}.film-edge{width:22px;background-size:22px 42px}.scroll-track{right:10px}}
@media(max-width:560px){body{cursor:auto}.cursor,.cursor-dot,.spotlight{display:none}a,button{cursor:pointer}.wrap{width:min(100% - 48px,1180px)}.hero{padding-bottom:120px}.hero-title{gap:.35rem}.hero-copy{font-size:18px}.hero-locations{flex-direction:column;bottom:22px;gap:.2rem}.button-row{flex-direction:column}.btn{width:100%;text-align:center}.section{padding:74px 0}.reel-row{width:min(100% - 48px,1180px);grid-template-columns:1fr}.reel-card{min-height:220px}}

/* --- Tyler/Raquel final ticket + schedule polish --- */
.hero-copy{display:none!important}.hero-card{padding-top:0}.hero-actions{margin-top:1.7rem}.hero-locations{font-family:var(--body)!important;left:74px!important;right:74px!important;bottom:34px!important;font-size:clamp(22px,2.55vw,38px)!important;letter-spacing:.17em!important}.hero-locations span,.hero-locations span:nth-child(2){font-family:var(--body)!important;font-size:clamp(22px,2.55vw,38px)!important;letter-spacing:.17em!important;text-transform:uppercase!important;line-height:1!important}.action-note{font-size:clamp(38px,4.5vw,66px)!important;margin-bottom:.25rem}.nav-actions a,.menu-toggle,.btn{position:relative;overflow:visible;border-radius:2px!important;isolation:isolate;padding:1.05rem 1.35rem!important;font-size:clamp(18px,1.12vw,22px)!important}.btn,.nav-actions a,.menu-toggle{box-shadow:inset 0 0 0 1px currentColor,0 12px 40px rgba(255,255,255,.055)}.btn::before,.btn::after,.nav-actions a::before,.nav-actions a::after,.menu-toggle::before,.menu-toggle::after{content:"";position:absolute;top:50%;width:15px;height:15px;border-radius:50%;background:#000;transform:translateY(-50%);z-index:2;pointer-events:none}.btn::before,.nav-actions a::before,.menu-toggle::before{left:-8px}.btn::after,.nav-actions a::after,.menu-toggle::after{right:-8px}.btn.light,.btn.primary{background:#fff!important;color:#000!important;border-color:#fff!important}.btn.light::before,.btn.light::after,.btn.primary::before,.btn.primary::after{background:#000}.btn.light:hover,.btn.primary:hover{background:#000!important;color:#fff!important;border-color:#fff!important;box-shadow:0 0 0 1px #fff,0 26px 80px rgba(255,255,255,.11)}.btn.light:hover::before,.btn.light:hover::after,.btn.primary:hover::before,.btn.primary:hover::after{background:#000}.button-row{align-items:center;gap:1.25rem!important}.schedule-cue{font-family:var(--body);display:inline-flex;align-items:center;gap:1rem;color:#fff;letter-spacing:.16em;text-transform:uppercase;font-size:clamp(18px,1.15vw,22px);line-height:1;padding:.95rem 0;opacity:.88;transition:opacity .2s ease,transform .2s ease}.schedule-cue:hover{opacity:1;transform:translateY(-2px)}.schedule-cue i{display:block;width:1px;height:46px;background:rgba(255,255,255,.88);position:relative;animation:scheduleDrop 1.8s ease-in-out infinite}.schedule-cue i::after{content:"";position:absolute;left:50%;bottom:0;width:9px;height:9px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:translateX(-50%) rotate(45deg)}@keyframes scheduleDrop{0%,100%{transform:translateY(-5px);opacity:.55}50%{transform:translateY(5px);opacity:1}}
.copy-block p{font-size:clamp(22px,1.55vw,28px)!important;line-height:1.55!important;color:rgba(255,255,255,.82)!important}.copy-block .tight{max-width:420px!important}.poster-frame{box-shadow:0 36px 120px rgba(255,255,255,.12),0 0 0 1px rgba(255,255,255,.72)!important}.timeline-section{padding-top:110px}.timeline{gap:60px}.reel-section{padding-top:104px}.reel-row{width:min(1160px,calc(100% - 160px))!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:18px!important;overflow:visible!important}.reel-card{min-width:0!important;padding:1.45rem 1.25rem!important;min-height:250px!important}.reel-card strong{font-size:clamp(30px,2.8vw,50px)!important}.reel-card small{font-size:18px!important}.reel-script{font-family:var(--body)!important;text-transform:uppercase!important;font-size:16px!important;letter-spacing:.16em!important;opacity:.76!important}@media(max-width:1000px){.hero-locations{left:34px!important;right:34px!important;font-size:clamp(15px,2.8vw,24px)!important}.hero-locations span,.hero-locations span:nth-child(2){font-size:clamp(15px,2.8vw,24px)!important}.button-row{flex-direction:column;align-items:flex-start}.reel-row{width:100%!important;display:flex!important;overflow-x:auto!important;gap:14px!important;padding:0 28px 12px!important;scroll-snap-type:x mandatory}.reel-card{flex:0 0 72vw!important;scroll-snap-align:center}.schedule-cue i{height:36px}}


/* --- Final class-pass: quieter copy, bigger poster, ticket CTA, full-site spotlight --- */
.spotlight{z-index:70!important;background:radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.44) 0,rgba(255,255,255,.18) 110px,rgba(255,255,255,.06) 260px,transparent 520px)!important;opacity:.78!important;mix-blend-mode:screen!important}.cursor,.cursor-dot{z-index:101!important}.grain{opacity:.095!important}.flicker{animation:flicker 14s infinite steps(1,end)!important}
.kicker,.subscript{font-family:var(--accent)!important;text-transform:lowercase!important;letter-spacing:.02em!important}.kicker{font-size:clamp(24px,3vw,45px)!important;margin-bottom:1.05rem!important}.subscript{font-size:clamp(22px,2.8vw,42px)!important;margin-top:.95rem!important}.hero-title .script-de{font-family:var(--accent)!important}
.hero-card{max-width:1120px!important}.hero-actions{margin-top:2.35rem!important;gap:.75rem!important}.action-note{display:none!important}.cast-ticket{font-family:var(--body)!important;display:inline-flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:.38rem!important;min-width:312px!important;padding:1.18rem 1.75rem!important;letter-spacing:.14em!important;text-transform:uppercase!important;line-height:1!important}.cast-ticket span{font-family:var(--body)!important;font-size:clamp(13px,.86vw,16px)!important;letter-spacing:.18em!important;opacity:.72!important}.cast-ticket strong{font-family:var(--body)!important;font-size:clamp(21px,1.35vw,28px)!important;letter-spacing:.14em!important;font-weight:400!important}.ticket-btn{clip-path:polygon(15px 0,calc(100% - 15px) 0,100% 15px,100% calc(100% - 15px),calc(100% - 15px) 100%,15px 100%,0 calc(100% - 15px),0 15px)!important}.ticket-btn::before,.ticket-btn::after{width:18px!important;height:18px!important}.ticket-btn::before{left:-9px!important}.ticket-btn::after{right:-9px!important}.ticket-btn{box-shadow:inset 0 0 0 1px currentColor,inset 0 0 0 6px rgba(255,255,255,.18),0 22px 70px rgba(255,255,255,.08)!important}.btn.light.ticket-btn{box-shadow:inset 0 0 0 1px #000,inset 0 0 0 6px rgba(0,0,0,.08),0 22px 70px rgba(255,255,255,.09)!important}.hero-schedule-cue{font-family:var(--body);display:inline-flex;flex-direction:column;align-items:center;gap:.62rem;color:#fff;letter-spacing:.18em;text-transform:uppercase;font-size:clamp(15px,1vw,19px);line-height:1;opacity:.86;text-shadow:0 8px 22px #000;transition:transform .22s ease,opacity .22s ease}.hero-schedule-cue:hover{opacity:1;transform:translateY(3px)}.hero-schedule-cue i{display:block;width:1px;height:38px;background:rgba(255,255,255,.82);position:relative;animation:scheduleDrop 1.8s ease-in-out infinite}.hero-schedule-cue i::after{content:"";position:absolute;left:50%;bottom:0;width:9px;height:9px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:translateX(-50%) rotate(45deg)}
.now-showing{padding:132px 0 118px!important}.poster-grid{grid-template-columns:minmax(360px,610px) minmax(260px,.82fr)!important;gap:clamp(3rem,6.4vw,7rem)!important}.poster-stage{max-width:610px!important;margin-inline:auto!important}.poster-frame{padding:15px!important;transform:rotate(-2.4deg) scale(1.045)!important;box-shadow:0 42px 150px rgba(255,255,255,.16),0 0 0 1px #fff,0 0 80px rgba(255,255,255,.08)!important}.poster-frame::before{inset:-18px!important;border-color:rgba(255,255,255,.38)!important}.poster-frame::after{top:-42px!important;font-size:16px!important;letter-spacing:.2em!important;background:#fff!important;color:#000!important;border-color:#fff!important}.poster-frame:hover{transform:rotate(-.5deg) translateY(-12px) scale(1.075)!important;box-shadow:0 58px 180px rgba(255,255,255,.2),0 0 0 1px #fff!important}.poster-caption{font-size:46px!important;right:-58px!important}.now-copy{align-self:center!important}.now-copy .eyebrow{font-size:17px!important}.now-copy h2{font-size:clamp(68px,8.6vw,146px)!important;margin-bottom:1rem!important}.now-copy p{font-size:clamp(19px,1.45vw,26px)!important;max-width:390px!important;line-height:1.52!important;color:rgba(255,255,255,.75)!important}.small-ticket{min-width:286px!important;padding:1.02rem 1.45rem!important}.button-row .schedule-cue{display:none!important}
.timeline-section{padding-top:112px!important}.section-head{grid-template-columns:.9fr 1.1fr!important}.section-head .lede{font-size:clamp(20px,1.45vw,27px)!important;line-height:1.58!important}.timeline{gap:70px!important}.timeline-row{gap:86px!important}.timeline-row:before{width:54px!important;height:54px!important;top:30px!important;font-size:17px!important;box-shadow:0 0 0 12px #000,0 0 38px rgba(255,255,255,.34)!important}.timeline-row::after{top:58px!important}.timeline-meta{background:#0b0b0b!important;border-color:rgba(255,255,255,.34)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)!important}.episode-card{padding:2.25rem 2.3rem 2.1rem!important;box-shadow:0 28px 100px rgba(255,255,255,.08)!important}.episode-card:hover{box-shadow:0 0 0 1px #fff,0 34px 110px rgba(255,255,255,.2)!important}.episode-card h3{font-size:clamp(52px,5.6vw,94px)!important}.episode-card p{font-size:clamp(20px,1.35vw,25px)!important}.translation{font-size:clamp(42px,4vw,66px)!important}.card-topline{font-size:clamp(15px,1vw,19px)!important}.card-link{font-size:clamp(15px,1vw,19px)!important}
.reel-section{padding-top:112px!important}.reel-row{margin-top:40px!important}.reel-card{clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px);position:relative}.reel-card::before,.reel-card::after{content:"";position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:#000;transform:translateY(-50%);border:1px solid rgba(255,255,255,.4)}.reel-card::before{left:-7px}.reel-card::after{right:-7px}.reel-card:hover::before,.reel-card:hover::after{background:#000;border-color:#000}.reel-card:hover .reel-script{color:#000!important}
@media(max-width:900px){.poster-grid{grid-template-columns:1fr!important}.poster-stage{max-width:min(560px,88vw)!important}.poster-frame{transform:rotate(-1.3deg) scale(1)!important}.poster-frame:hover{transform:rotate(0deg) translateY(-8px) scale(1.025)!important}.now-copy p{max-width:100%!important}.timeline-row{gap:1rem!important}.section-head{grid-template-columns:1fr!important}.hero-schedule-cue i{height:30px}.cast-ticket{min-width:min(320px,82vw)!important}.spotlight{display:none!important}}



/* --- Tyler revision: quieter hero, schedule bridge, premiere banner --- */
.hero-card{transform:translateY(-1.4vh) !important;}
.kicker{font-family:var(--accent) !important;font-size:clamp(24px,2.45vw,42px) !important;line-height:.9 !important;letter-spacing:.01em !important;text-transform:lowercase !important;margin-bottom:.55rem !important;}
.hero-title{gap:clamp(.35rem,1.25vw,1.1rem) !important;}
.hero-title .main-word{font-size:clamp(38px,8.2vw,112px) !important;letter-spacing:.012em !important;}
.hero-title .script-de{font-size:clamp(28px,5.1vw,72px) !important;}
.subscript{font-family:var(--accent) !important;font-size:clamp(22px,2.55vw,38px) !important;line-height:.88 !important;margin:.35rem 0 0 !important;text-transform:lowercase !important;}
.hero-actions{margin-top:1.25rem !important;gap:.72rem !important;}
.cast-ticket{position:relative;min-width:clamp(250px,25vw,346px) !important;padding:1rem 1.45rem !important;border:1px solid #fff !important;border-radius:0 !important;clip-path:polygon(13px 0,calc(100% - 13px) 0,100% 13px,100% calc(100% - 13px),calc(100% - 13px) 100%,13px 100%,0 calc(100% - 13px),0 13px) !important;box-shadow:0 0 0 1px rgba(255,255,255,.22),0 18px 50px rgba(0,0,0,.5) !important;}
.cast-ticket::before,.cast-ticket::after{content:"";position:absolute;top:50%;width:18px;height:18px;background:#000;border:1px solid #fff;border-radius:50%;transform:translateY(-50%);}
.cast-ticket::before{left:-10px}.cast-ticket::after{right:-10px}
.cast-ticket span{display:block;font-family:var(--body) !important;font-size:clamp(12px,1vw,15px) !important;letter-spacing:.14em !important;text-transform:uppercase !important;margin-bottom:.22rem !important;}
.cast-ticket strong{display:block;font-family:var(--body) !important;font-size:clamp(20px,1.75vw,28px) !important;letter-spacing:.13em !important;text-transform:uppercase !important;font-weight:400 !important;}
.hero-schedule-cue.hero-arrow-only{display:grid !important;place-items:center !important;width:48px !important;height:62px !important;margin-top:.05rem !important;border:0 !important;background:transparent !important;color:#fff !important;opacity:.9 !important;}
.hero-schedule-cue.hero-arrow-only span{position:absolute !important;width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;}
.hero-schedule-cue.hero-arrow-only::before{content:"";position:absolute;top:2px;bottom:18px;left:50%;width:1px;background:linear-gradient(to bottom,rgba(255,255,255,.08),rgba(255,255,255,.9));animation:arrowDrift 1.8s ease-in-out infinite;}
.hero-schedule-cue.hero-arrow-only i{position:absolute;bottom:10px;left:50%;width:13px;height:13px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:translateX(-50%) rotate(45deg);animation:arrowPulse 1.8s ease-in-out infinite;}
.hero-locations{left:clamp(70px,8vw,120px) !important;right:clamp(70px,8vw,120px) !important;bottom:26px !important;font-family:var(--body) !important;font-size:clamp(12px,1.12vw,18px) !important;letter-spacing:.24em !important;text-transform:uppercase !important;color:rgba(255,255,255,.9) !important;}
.hero-locations span:nth-child(2){font-family:var(--body) !important;font-size:inherit !important;letter-spacing:.24em !important;text-transform:uppercase !important;}
.now-showing{padding-bottom:62px !important;}
.poster-grid{grid-template-columns:minmax(330px,560px) minmax(260px,.78fr) !important;gap:clamp(2.2rem,5vw,5.6rem) !important;}
.poster-stage{min-height:0 !important;}
.poster-frame{transform:rotate(-1.1deg) scale(1.06) !important;box-shadow:0 38px 120px rgba(0,0,0,.78),0 0 0 1px rgba(255,255,255,.15),0 0 90px rgba(255,255,255,.08) !important;}
.poster-frame:hover{transform:rotate(.05deg) translateY(-10px) scale(1.085) !important;}
.copy-block p{max-width:420px !important;font-size:clamp(18px,1.55vw,22px) !important;line-height:1.64 !important;color:rgba(255,255,255,.74) !important;}
.copy-block .button-row{margin-top:1.45rem !important;}
.schedule-bridge{padding:14px 0 58px !important;border-top:0 !important;background:#000 !important;position:relative;z-index:7;}
.schedule-scroll{display:grid;place-items:center;width:max-content;margin:0 auto;color:#fff;text-align:center;font-family:var(--body);font-size:clamp(15px,1.3vw,20px);letter-spacing:.18em;text-transform:uppercase;}
.schedule-scroll span{border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:.42rem;}
.schedule-scroll i{display:block;width:13px;height:13px;margin-top:.8rem;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:rotate(45deg);animation:arrowPulse 1.8s ease-in-out infinite;}
.reel-section{padding:74px 0 84px !important;overflow:hidden !important;border-top:1px solid rgba(255,255,255,.14) !important;background:#000;position:relative;}
.reel-section::before{content:"COMING SOON · 16MM · BLACK TIE";position:absolute;left:50%;top:10px;transform:translateX(-50%);font-family:var(--accent);font-size:clamp(70px,11vw,170px);line-height:.8;letter-spacing:.018em;color:rgba(255,255,255,.045);white-space:nowrap;pointer-events:none;}
.reel-section .section-head{position:relative;z-index:2;display:flex !important;align-items:flex-end !important;justify-content:space-between !important;gap:2rem !important;margin-bottom:30px !important;}
.reel-section .section-head>div:first-child{min-width:max-content;}
.reel-section h2{font-size:clamp(42px,6vw,94px) !important;line-height:.83 !important;max-width:680px;}
.reel-section .lede{max-width:430px !important;font-size:clamp(17px,1.3vw,20px) !important;color:rgba(255,255,255,.72) !important;text-align:right;}
.reel-row{position:relative;z-index:2;width:min(1260px,calc(100% - 112px)) !important;display:flex !important;grid-template-columns:none !important;gap:16px !important;margin:28px auto 0 !important;padding:5px 12px 24px !important;overflow-x:auto !important;overflow-y:visible !important;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#fff rgba(255,255,255,.12);}
.reel-row::-webkit-scrollbar{height:5px}.reel-row::-webkit-scrollbar-track{background:rgba(255,255,255,.12)}.reel-row::-webkit-scrollbar-thumb{background:#fff;border-radius:999px}.reel-card{flex:0 0 clamp(242px,20vw,310px) !important;min-height:220px !important;padding:1.22rem !important;overflow:visible !important;scroll-snap-align:start;clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px);}
.reel-card strong{font-size:clamp(27px,2.55vw,44px) !important;line-height:.9 !important;white-space:normal !important;overflow:visible !important;word-break:normal !important;overflow-wrap:normal !important;}
.reel-script{font-size:clamp(27px,2.4vw,38px) !important;white-space:normal !important;}
.reel-card small{font-size:clamp(15px,1.05vw,17px) !important;line-height:1.45 !important;display:block;}
.timeline-section{padding-top:86px !important;}
@keyframes arrowPulse{0%,100%{opacity:.45;transform:translateY(0) rotate(45deg)}50%{opacity:1;transform:translateY(7px) rotate(45deg)}}
@keyframes arrowDrift{0%,100%{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}
@media(max-width:900px){.hero-title .main-word{font-size:clamp(36px,11vw,86px) !important}.hero-title .script-de{font-size:clamp(27px,8vw,58px) !important}.kicker{font-size:clamp(22px,6vw,34px) !important}.subscript{font-size:clamp(21px,5vw,32px) !important}.hero-locations{left:38px !important;right:38px !important;font-size:clamp(11px,2.4vw,14px) !important;letter-spacing:.16em !important}.poster-grid{grid-template-columns:1fr !important}.poster-frame{transform:rotate(-.7deg) scale(1) !important}.reel-section .section-head{display:block !important}.reel-section .lede{text-align:left !important;margin-top:1rem}.reel-row{width:min(100% - 58px,1260px) !important}.reel-card{flex-basis:270px !important}.schedule-bridge{padding-bottom:42px !important}}
@media(max-width:560px){.hero-locations{flex-direction:row !important;gap:.5rem !important;justify-content:space-between !important;bottom:20px !important}.hero-locations span{font-size:10px !important;letter-spacing:.1em !important}.cast-ticket{min-width:236px !important}.reel-row{width:min(100% - 42px,1260px) !important}.reel-card{flex-basis:250px !important}}


/* ---- Tyler notes pass: smaller hero, lower ticket, cleaner scroll cues, hidden spotlight text ---- */
.hero{align-items:start !important;padding-top:clamp(118px,13vh,154px) !important;padding-bottom:118px !important;}
.hero-card{max-width:min(760px,calc(100% - 96px)) !important;padding-top:0 !important;transform:translateY(calc(var(--hero-progress)*-24px)) !important;}
.kicker{font-size:clamp(20px,2vw,34px) !important;margin-bottom:.55rem !important;letter-spacing:.02em !important;opacity:.94 !important;}
.hero-title{gap:clamp(.28rem,1.15vw,1rem) !important;line-height:.76 !important;}
.hero-title .main-word{font-size:clamp(42px,7.3vw,112px) !important;letter-spacing:.012em !important;text-shadow:0 10px 44px rgba(0,0,0,.95) !important;}
.hero-title .script-de{font-size:clamp(30px,4.8vw,72px) !important;text-shadow:0 8px 34px #000 !important;}
.subscript{font-size:clamp(19px,2.05vw,34px) !important;margin-top:.45rem !important;opacity:.95 !important;}
.hero-actions{margin-top:clamp(6.5rem,16vh,13.5rem) !important;gap:.72rem !important;}
.btn.primary.ticket-btn.cast-ticket{min-width:clamp(245px,25vw,350px) !important;font-size:clamp(15px,1.15vw,19px) !important;padding:1.02rem 1.42rem !important;box-shadow:0 24px 80px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.95) inset !important;}
.cast-ticket span{font-size:clamp(11px,.78vw,13px) !important;letter-spacing:.16em !important;}
.cast-ticket strong{font-size:clamp(18px,1.62vw,25px) !important;letter-spacing:.14em !important;}
.hero-schedule-cue.hero-arrow-only{position:relative !important;display:inline-flex !important;width:auto !important;height:auto !important;margin-top:.15rem !important;align-items:center !important;gap:.72rem !important;flex-direction:column !important;font-size:clamp(11px,.82vw,13px) !important;letter-spacing:.22em !important;opacity:.78 !important;}
.hero-schedule-cue.hero-arrow-only span{position:static !important;width:auto !important;height:auto !important;overflow:visible !important;clip:auto !important;font-family:var(--body) !important;}
.hero-schedule-cue.hero-arrow-only::before{content:"" !important;position:static !important;display:block !important;order:2 !important;width:1px !important;height:32px !important;background:linear-gradient(to bottom,rgba(255,255,255,.1),rgba(255,255,255,.95)) !important;animation:scrollLine 1.75s ease-in-out infinite !important;}
.hero-schedule-cue.hero-arrow-only i{position:static !important;display:block !important;order:3 !important;width:10px !important;height:10px !important;border-right:1px solid #fff !important;border-bottom:1px solid #fff !important;transform:rotate(45deg) !important;margin-top:-16px !important;animation:scrollArrow 1.75s ease-in-out infinite !important;background:transparent !important;}
.hero-locations{left:clamp(70px,9vw,150px) !important;right:clamp(70px,9vw,150px) !important;bottom:24px !important;font-size:clamp(10px,.78vw,13px) !important;letter-spacing:.26em !important;opacity:.9 !important;}
.hero-locations span,.hero-locations span:nth-child(2){font-family:var(--body) !important;font-size:clamp(10px,.78vw,13px) !important;letter-spacing:.26em !important;text-transform:uppercase !important;}
.hero-card::before{content:"RAQUEL  TYLER  CINE  DE  DOS";position:absolute;left:50%;top:50%;transform:translate(-50%,-48%);z-index:-1;font-family:var(--accent);font-size:clamp(70px,13vw,190px);line-height:.72;letter-spacing:.018em;text-transform:none;color:rgba(255,255,255,.024);white-space:nowrap;pointer-events:none;}
.now-showing::before,.reel-section::before,.timeline-section::after{color:rgba(255,255,255,.032) !important;text-shadow:0 0 1px rgba(255,255,255,.02);}
.timeline-section::after{content:"SCENES  TITLES  PLACES  PROMISES";position:absolute;left:50%;top:58%;transform:translate(-50%,-50%) rotate(-90deg);font-family:var(--accent);font-size:clamp(78px,11vw,170px);letter-spacing:.018em;line-height:.75;white-space:nowrap;pointer-events:none;z-index:0;}
.timeline-section .wrap{position:relative;z-index:2;}
.schedule-bridge{padding:26px 0 74px !important;background:#000 !important;}
.schedule-scroll{position:relative !important;display:inline-flex !important;flex-direction:column !important;align-items:center !important;gap:.66rem !important;font-size:clamp(12px,.95vw,15px) !important;letter-spacing:.22em !important;opacity:.9 !important;padding:1rem 1.4rem !important;border:1px solid rgba(255,255,255,.34) !important;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.015)) !important;box-shadow:0 18px 70px rgba(255,255,255,.04) !important;transition:transform .24s ease,background .24s ease,border-color .24s ease !important;}
.schedule-scroll::before,.schedule-scroll::after{content:"";position:absolute;top:50%;width:9px;height:18px;background:#000;border:1px solid rgba(255,255,255,.34);border-radius:999px;transform:translateY(-50%);}
.schedule-scroll::before{left:-5px;border-left:0;}
.schedule-scroll::after{right:-5px;border-right:0;}
.schedule-scroll:hover{transform:translateY(5px);border-color:#fff;background:#111;}
.schedule-scroll span{border:0 !important;padding:0 !important;}
.schedule-scroll i{width:1px !important;height:34px !important;border:0 !important;background:linear-gradient(to bottom,rgba(255,255,255,.12),rgba(255,255,255,.96)) !important;transform:none !important;margin:0 !important;position:relative !important;animation:scrollLine 1.75s ease-in-out infinite !important;}
.schedule-scroll i::after{content:"";position:absolute;left:50%;bottom:0;width:10px;height:10px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:translateX(-50%) rotate(45deg);animation:scrollArrow 1.75s ease-in-out infinite;}
.reel-section .lede{font-size:clamp(16px,1.05vw,18px) !important;line-height:1.55 !important;}
.reel-row{padding-inline:clamp(18px,2.4vw,36px) !important;}
.reel-card{overflow:visible !important;}
@keyframes scrollLine{0%,100%{opacity:.48;transform:scaleY(.78)}50%{opacity:1;transform:scaleY(1)}}
@keyframes scrollArrow{0%,100%{opacity:.55;transform:translateY(-1px) rotate(45deg)}50%{opacity:1;transform:translateY(4px) rotate(45deg)}}
@media(max-width:900px){.hero{padding-top:110px !important}.hero-card{max-width:calc(100% - 74px) !important}.hero-title .main-word{font-size:clamp(38px,12vw,76px) !important}.hero-title .script-de{font-size:clamp(28px,8vw,50px) !important}.kicker{font-size:clamp(19px,6vw,30px) !important}.subscript{font-size:clamp(18px,5vw,28px) !important}.hero-actions{margin-top:clamp(5.5rem,14vh,9rem) !important}.hero-locations{left:38px !important;right:38px !important;font-size:9px !important;letter-spacing:.15em !important;gap:.6rem !important}.hero-locations span,.hero-locations span:nth-child(2){font-size:9px !important;letter-spacing:.15em !important}.hero-card::before{font-size:clamp(58px,19vw,120px);white-space:normal;width:120%;}.schedule-scroll{font-size:12px !important}.schedule-bridge{padding-bottom:56px !important}}



/* === Final polish: centered hero, cinematic scroll cues, spotlight-revealed title wall === */
.hero{
  place-items:center !important;
  padding:52px 0 118px !important;
}
.hero-card{
  width:min(760px, calc(100% - 130px)) !important;
  max-width:760px !important;
  margin-inline:auto !important;
  text-align:center !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  transform:none !important;
}
.kicker,
.hero-title,
.subscript{
  width:100% !important;
  text-align:center !important;
  justify-content:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.kicker{font-size:clamp(18px,2vw,30px) !important;margin-bottom:.42rem !important;}
.hero-title{gap:clamp(.32rem,1.2vw,.9rem) !important;line-height:.76 !important;}
.hero-title .main-word{font-size:clamp(43px,7vw,98px) !important;text-align:center !important;}
.hero-title .script-de{font-size:clamp(33px,4.7vw,68px) !important;text-align:center !important;}
.subscript{font-size:clamp(18px,2vw,29px) !important;margin-top:.38rem !important;}
.hero-actions{width:100% !important;align-items:center !important;justify-content:center !important;gap:1.35rem !important;margin-top:clamp(3.2rem,9vh,6.3rem) !important;}
.cast-ticket{margin-inline:auto !important;}
.hero-locations{left:72px !important;right:72px !important;bottom:28px !important;justify-content:space-between !important;font-size:clamp(11px,1vw,15px) !important;letter-spacing:.18em !important;}
.hero-locations span:nth-child(2){font-family:var(--body) !important;font-size:clamp(11px,1vw,15px) !important;letter-spacing:.18em !important;text-transform:uppercase !important;}

.hero-ghostwall{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  overflow:hidden;
  display:grid;
  align-content:center;
  gap:clamp(1.25rem,3.2vh,2.4rem);
  opacity:.86;
  transform:rotate(-2.4deg) scale(1.06);
}
.hero-ghostwall span{
  display:block;
  width:140vw;
  margin-left:-20vw;
  font-family:var(--accent);
  font-size:clamp(48px,10vw,166px);
  line-height:.72;
  letter-spacing:.018em;
  text-transform:none;
  color:rgba(255,255,255,.028);
  white-space:nowrap;
  text-align:center;
  user-select:none;
}


.hero-ghostwall.glow{
  z-index:3;
  opacity:1;
  -webkit-mask-image:radial-gradient(circle at var(--mx) var(--my), #000 0 120px, rgba(0,0,0,.75) 180px, transparent 330px);
          mask-image:radial-gradient(circle at var(--mx) var(--my), #000 0 120px, rgba(0,0,0,.75) 180px, transparent 330px);
}
.hero-ghostwall.glow span{color:rgba(255,255,255,.16);text-shadow:0 0 18px rgba(255,255,255,.16);}
.hero-ghostwall.glow span:nth-child(even){color:rgba(255,255,255,.11);}
.hero-ghostwall.glow span:nth-child(3n){color:rgba(255,255,255,.18);}

.hero-schedule-cue,
.schedule-scroll{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:max-content !important;
  min-width:120px !important;
  text-align:center !important;
  gap:.8rem !important;
  font-family:var(--body) !important;
  font-size:clamp(12px,.86vw,15px) !important;
  letter-spacing:.22em !important;
  text-transform:uppercase !important;
  color:#fff !important;
  opacity:.92 !important;
  text-shadow:0 8px 24px #000 !important;
}
.hero-schedule-cue span,
.schedule-scroll span{
  display:block !important;
  width:100% !important;
  text-align:center !important;
  border:0 !important;
  padding:0 !important;
}
.hero-schedule-cue i,
.schedule-scroll i{
  display:block !important;
  position:relative !important;
  width:1px !important;
  height:clamp(76px,11vh,128px) !important;
  margin:0 auto !important;
  background:linear-gradient(to bottom, transparent, rgba(255,255,255,.34), rgba(255,255,255,.95), rgba(255,255,255,.34), transparent) !important;
  border:0 !important;
  transform:none !important;
  overflow:visible !important;
  animation:arrowLineFloat 2.35s ease-in-out infinite !important;
}
.hero-schedule-cue i::before,
.schedule-scroll i::before{
  content:"";
  position:absolute;
  left:50%;
  top:-2px;
  width:1px;
  height:34%;
  background:#fff;
  transform:translateX(-50%);
  box-shadow:0 0 18px rgba(255,255,255,.8);
  animation:arrowTracer 2.35s ease-in-out infinite;
}
.hero-schedule-cue i::after,
.schedule-scroll i::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  bottom:-1px !important;
  width:15px !important;
  height:15px !important;
  border-right:1px solid #fff !important;
  border-bottom:1px solid #fff !important;
  transform:translateX(-50%) rotate(45deg) !important;
  box-shadow:5px 5px 14px rgba(255,255,255,.18) !important;
}
.schedule-bridge{display:grid !important;place-items:center !important;text-align:center !important;padding:42px 0 70px !important;}
@keyframes arrowLineFloat{0%,100%{transform:translateY(0);opacity:.72}50%{transform:translateY(12px);opacity:1}}
@keyframes arrowTracer{0%{top:0;opacity:0}18%{opacity:1}76%{top:66%;opacity:1}100%{top:84%;opacity:0}}

@media(max-width:760px){
  .hero-card{width:min(500px,calc(100% - 76px)) !important;}
  .hero-title .main-word{font-size:clamp(37px,15vw,72px) !important;}
  .hero-title .script-de{font-size:clamp(29px,11vw,54px) !important;}
  .hero-locations{left:34px !important;right:34px !important;font-size:10px !important;letter-spacing:.1em !important;}
  .hero-locations span:nth-child(2){font-size:10px !important;letter-spacing:.1em !important;}
  .hero-ghostwall span{font-size:clamp(42px,18vw,108px);}
  .hero-ghostwall span:nth-child(even){font-size:clamp(24px,10vw,62px);}
}




/* === Tyler/Raquel polish pass: lower hero, real scroll arrows, hidden cinema text === */
.hero{
  align-items:start !important;
  padding-top:clamp(23vh,28vh,32vh) !important;
  padding-bottom:104px !important;
}
.hero-card{
  width:min(980px,calc(100% - 76px)) !important;
  max-width:980px !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  transform:translateY(calc(var(--hero-progress)*-22px)) !important;
}
.hero-title{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  margin-inline:auto !important;
}
.kicker,.subscript{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.hero-actions{
  margin-top:clamp(4.8rem,8.6vh,7.8rem) !important;
  gap:clamp(1.45rem,2.4vh,2.1rem) !important;
  align-items:center !important;
  justify-content:center !important;
}
.cast-ticket{
  transform:translateY(0) !important;
}

.hero-locations{
  left:clamp(68px,9vw,150px) !important;
  right:clamp(68px,9vw,150px) !important;
  bottom:24px !important;
  justify-content:space-between !important;
  text-align:center !important;
  font-size:clamp(9px,.72vw,12px) !important;
  letter-spacing:.27em !important;
}
.hero-locations span,.hero-locations span:nth-child(2){
  font-family:var(--body) !important;
  font-size:clamp(9px,.72vw,12px) !important;
  letter-spacing:.27em !important;
  text-transform:uppercase !important;
  opacity:.92 !important;
}

/* deeper hidden title layer on hero */
.hero-ghostwall{
  opacity:1 !important;
  z-index:2 !important;
  mix-blend-mode:screen !important;
  filter:blur(.1px) !important;
}
.hero-ghostwall span{
  color:rgba(255,255,255,.022) !important;
  text-shadow:0 0 1px rgba(255,255,255,.02) !important;
}
.hero-ghostwall span:nth-child(3n){color:rgba(255,255,255,.032) !important;}
.hero-ghostwall span:nth-child(4n){letter-spacing:.13em !important;}
.hero-card::before{
  color:rgba(255,255,255,.019) !important;
  font-size:clamp(80px,15vw,220px) !important;
}
.hero::after{
  content:"CINE DE DOS   RAQUEL & TYLER   CINEMA OF TWO";
  position:absolute;
  left:50%;
  bottom:11vh;
  transform:translateX(-50%);
  z-index:2;
  width:max-content;
  max-width:none;
  font-family:var(--accent);
  font-size:clamp(58px,9vw,146px);
  line-height:.8;
  letter-spacing:.018em;
  text-transform:none;
  color:rgba(255,255,255,.022);
  white-space:nowrap;
  pointer-events:none;
}

/* scroll cues rebuilt from scratch */
.hero-schedule-cue,
.schedule-scroll{
  width:max-content !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.82rem !important;
  font-family:var(--body) !important;
  font-size:clamp(11px,.78vw,13px) !important;
  letter-spacing:.3em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  color:rgba(255,255,255,.86) !important;
  line-height:1 !important;
  opacity:.92 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-shadow:0 9px 24px #000 !important;
  clip-path:none !important;
}
.hero-schedule-cue span,
.schedule-scroll span{
  display:block !important;
  border:0 !important;
  padding:0 !important;
}
.hero-schedule-cue i,
.schedule-scroll i{
  display:block !important;
  position:relative !important;
  width:1px !important;
  height:clamp(74px,9vh,106px) !important;
  margin:0 auto !important;
  background:linear-gradient(to bottom,transparent 0,rgba(255,255,255,.16) 6%,rgba(255,255,255,.92) 38%,rgba(255,255,255,.92) 78%,rgba(255,255,255,.18) 100%) !important;
  border:0 !important;
  transform:none !important;
  animation:longArrowFloat 2.15s ease-in-out infinite !important;
  box-shadow:0 0 18px rgba(255,255,255,.42) !important;
}
.hero-schedule-cue i::before,
.schedule-scroll i::before{
  content:"";
  position:absolute;
  left:0;
  top:-8%;
  width:1px;
  height:36%;
  background:linear-gradient(to bottom,transparent,#fff,transparent);
  opacity:.95;
  animation:arrowGlint 2.15s ease-in-out infinite;
}
.hero-schedule-cue i::after,
.schedule-scroll i::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  bottom:-1px !important;
  width:15px !important;
  height:15px !important;
  border-right:1px solid rgba(255,255,255,.95) !important;
  border-bottom:1px solid rgba(255,255,255,.95) !important;
  transform:translateX(-50%) rotate(45deg) !important;
  background:transparent !important;
  box-shadow:6px 6px 18px rgba(255,255,255,.22) !important;
}
.hero-schedule-cue:hover,
.schedule-scroll:hover{
  transform:translateY(5px) !important;
  opacity:1 !important;
}
.schedule-bridge{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  padding:38px 0 86px !important;
  border:0 !important;
  background:#000 !important;
  overflow:hidden !important;
}
.schedule-scroll{
  position:relative !important;
}
.schedule-scroll::before,
.schedule-scroll::after{
  display:none !important;
  content:none !important;
}

/* barely visible background titles across black sections */
main{position:relative;overflow:hidden;}
main::before{
  content:"ADMIT TWO   THE FIRST SCREENING   SHOT ON 16MM   COMING SOON   ";
  position:fixed;
  left:-4vw;
  top:19vh;
  z-index:1;
  width:108vw;
  font-family:var(--accent);
  font-size:clamp(64px,9vw,150px);
  line-height:.76;
  letter-spacing:.018em;
  text-transform:none;
  color:rgba(255,255,255,.018);
  transform:rotate(-5deg);
  pointer-events:none;
  white-space:nowrap;
}
.now-showing,.schedule-bridge,.reel-section,.timeline-section,.footer{
  position:relative !important;
  isolation:isolate !important;
}
.now-showing::after,
.schedule-bridge::after,
.reel-section::after,
.timeline-section::before,
.footer::before{
  position:absolute !important;
  z-index:-1 !important;
  pointer-events:none !important;
  font-family:var(--accent)!important;
  text-transform:none!important;
  white-space:nowrap !important;
  color:rgba(255,255,255,.026) !important;
  letter-spacing:.018em!important;
  line-height:.8 !important;
  text-shadow:0 0 1px rgba(255,255,255,.02) !important;
}
.now-showing::after{
  content:"NOW SHOWING  CINEMA OF TWO  NOW SHOWING" !important;
  left:50% !important;
  top:52% !important;
  transform:translate(-50%,-50%) rotate(-8deg) !important;
  font-size:clamp(84px,13vw,210px) !important;
}
.schedule-bridge::after{
  content:"SCROLL  SCROLL  SCROLL" !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  font-size:clamp(64px,10vw,160px) !important;
}
.reel-section::after{
  content:"ADMIT TWO  CURTAIN UP  BLACK TIE" !important;
  left:50% !important;
  bottom:2% !important;
  transform:translateX(-50%) !important;
  font-size:clamp(62px,9vw,150px) !important;
}
.timeline-section::before{
  content:"THE CELEBRATION SCRIPT  THE CELEBRATION SCRIPT" !important;
  left:50% !important;
  top:12% !important;
  transform:translateX(-50%) !important;
  font-size:clamp(72px,11vw,185px) !important;
  background:none !important;
  opacity:1 !important;
  inset:auto !important;
}
.footer::before{
  content:"THE END   THE BEGINNING" !important;
  left:50% !important;
  top:-40px !important;
  transform:translateX(-50%) !important;
  font-size:clamp(52px,8vw,130px) !important;
}
.now-showing .wrap,.schedule-bridge > *,.reel-section .wrap,.reel-row,.timeline-section .wrap,.footer .wrap{
  position:relative !important;
  z-index:2 !important;
}

/* keep section text readable over the new ghost titles */
.now-showing::before,.reel-section::before,.timeline-section::after{
  color:rgba(255,255,255,.02) !important;
}

@keyframes longArrowFloat{
  0%,100%{transform:translateY(0);opacity:.62;}
  45%{transform:translateY(12px);opacity:1;}
}
@keyframes arrowGlint{
  0%{transform:translateY(-40%);opacity:0;}
  28%{opacity:1;}
  70%{transform:translateY(220%);opacity:.88;}
  100%{transform:translateY(280%);opacity:0;}
}

@media(max-width:760px){
  .hero{padding-top:25vh !important;}
  .hero-card{width:calc(100% - 56px) !important;}
  .hero-actions{margin-top:4rem !important;}
  .hero-locations{left:34px !important;right:34px !important;font-size:9px !important;letter-spacing:.18em !important;}
  .hero-locations span,.hero-locations span:nth-child(2){font-size:9px !important;letter-spacing:.18em !important;}
  .hero::after{bottom:15vh;font-size:58px;}
  .hero-schedule-cue i,.schedule-scroll i{height:74px !important;}
}



/* Tyler/Raquel final subtle ghost text + rebuilt scroll indicators */
.hero-schedule-cue.hero-arrow-only,
.schedule-scroll{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:max-content !important;
  min-width:112px !important;
  height:auto !important;
  gap:.75rem !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  clip-path:none !important;
  color:#fff !important;
  opacity:.84 !important;
  font-family:var(--body) !important;
  font-size:clamp(11px,.78vw,14px) !important;
  line-height:1 !important;
  letter-spacing:.26em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  text-shadow:0 8px 24px #000 !important;
  transition:opacity .28s ease, transform .28s ease !important;
}
.hero-schedule-cue.hero-arrow-only:hover,
.schedule-scroll:hover{opacity:1 !important;transform:translateY(4px) !important;}
.hero-schedule-cue.hero-arrow-only span,
.schedule-scroll span{
  position:static !important;
  display:block !important;
  width:auto !important;
  height:auto !important;
  clip:auto !important;
  overflow:visible !important;
  border:0 !important;
  padding:0 !important;
}
.hero-schedule-cue.hero-arrow-only i,
.schedule-scroll i{
  position:relative !important;
  display:block !important;
  left:auto !important;
  bottom:auto !important;
  width:1px !important;
  height:96px !important;
  margin:0 auto !important;
  border:0 !important;
  background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.88) 25%,rgba(255,255,255,.88) 72%,rgba(255,255,255,0)) !important;
  transform:none !important;
  animation:arrowBreathe 2.35s ease-in-out infinite !important;
}
.hero-schedule-cue.hero-arrow-only i::before,
.schedule-scroll i::before{
  content:"" !important;
  position:absolute !important;
  top:8px !important;
  left:50% !important;
  width:1px !important;
  height:30px !important;
  background:#fff !important;
  transform:translateX(-50%) !important;
  opacity:0 !important;
  animation:arrowGlide 2.35s ease-in-out infinite !important;
}
.hero-schedule-cue.hero-arrow-only i::after,
.schedule-scroll i::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  bottom:1px !important;
  width:18px !important;
  height:18px !important;
  border-right:1px solid rgba(255,255,255,.92) !important;
  border-bottom:1px solid rgba(255,255,255,.92) !important;
  background:transparent !important;
  transform:translateX(-50%) rotate(45deg) !important;
  animation:arrowHeadFloat 2.35s ease-in-out infinite !important;
}
.schedule-scroll{
  gap:.85rem !important;
  font-size:clamp(12px,.9vw,16px) !important;
}
.schedule-scroll i{height:108px !important;}
.schedule-bridge{padding:10px 0 64px !important;}

/* remove old scroll pseudo clutter */
.hero-schedule-cue.hero-arrow-only::before,
.hero-schedule-cue.hero-arrow-only::after,
.schedule-scroll::before,
.schedule-scroll::after{content:none !important;display:none !important;}

/* make all barely-visible text quieter */
.hero-ghostwall span{color:rgba(255,255,255,.020) !important;text-shadow:none !important;}
.hero-ghostwall span:nth-child(even){color:rgba(255,255,255,.015) !important;}
.hero-ghostwall span:nth-child(3n){color:rgba(255,255,255,.023) !important;}
.hero-ghostwall.glow span{color:rgba(255,255,255,.115) !important;text-shadow:0 0 14px rgba(255,255,255,.08) !important;}
.hero-ghostwall.glow span:nth-child(even){color:rgba(255,255,255,.075) !important;}
.hero-ghostwall.glow span:nth-child(3n){color:rgba(255,255,255,.125) !important;}

.now-showing,.schedule-bridge,.reel-section,.timeline-section,.footer{position:relative !important;overflow:hidden !important;isolation:isolate !important;}
.now-showing::after,.schedule-bridge::after,.reel-section::after,.timeline-section::before,.footer::before{
  color:rgba(255,255,255,.010) !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.now-showing::after{content:"The First Screening   Cinema of Two" !important;font-family:var(--accent) !important;text-transform:none !important;letter-spacing:.02em !important;color:rgba(255,255,255,.014) !important;}
.schedule-bridge::after{content:"Ready, set, sail." !important;font-family:var(--body) !important;letter-spacing:.22em !important;color:rgba(255,255,255,.011) !important;}
.reel-section::after{content:"Roses for Raquel   Ready, set, sail." !important;font-family:var(--accent) !important;text-transform:none !important;letter-spacing:.02em !important;color:rgba(255,255,255,.013) !important;}
.timeline-section::before{content:"The Table of the Sea   Palms and Promises" !important;font-family:var(--accent)!important;color:rgba(255,255,255,.011) !important;}
.footer::before{content:"Sweet Goodbyes" !important;font-family:var(--accent) !important;text-transform:none !important;color:rgba(255,255,255,.014) !important;}

.section-ghost{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
  user-select:none;
}
.section-ghost span{
  position:absolute;
  display:block;
  white-space:nowrap;
  color:rgba(255,255,255,.012);
  text-shadow:none;
  opacity:1;
  mix-blend-mode:screen;
  will-change:transform,opacity;
}
.section-ghost .title{font-family:var(--accent);text-transform:none;letter-spacing:.018em;color:rgba(255,255,255,.010);font-size:clamp(56px,10vw,160px);line-height:.8;}
.section-ghost .type{font-family:var(--body);text-transform:none;letter-spacing:.22em;color:rgba(255,255,255,.009);font-size:clamp(19px,4.1vw,76px);}
.section-ghost .script{font-family:var(--accent);letter-spacing:.012em;text-transform:none;color:rgba(255,255,255,.016);font-size:clamp(44px,8.5vw,145px);}
.section-ghost span:nth-child(1){left:-5vw;top:8%;transform:rotate(-5deg);}
.section-ghost span:nth-child(2){right:-6vw;top:24%;transform:rotate(2deg);}
.section-ghost span:nth-child(3){left:15vw;top:43%;transform:rotate(-2deg);}
.section-ghost span:nth-child(4){right:8vw;bottom:20%;transform:rotate(-6deg);}
.section-ghost span:nth-child(5){left:-4vw;bottom:6%;transform:rotate(3deg);}
.section-ghost span:nth-child(6){right:-8vw;bottom:38%;transform:rotate(4deg);}
.now-showing .wrap,.schedule-bridge > *,.reel-section .wrap,.reel-row,.timeline-section .wrap,.footer .wrap{position:relative !important;z-index:2 !important;}

.now-ghost span:nth-child(1){top:3%;left:-6vw;}
.now-ghost span:nth-child(2){top:20%;right:-7vw;}
.now-ghost span:nth-child(3){top:50%;left:39vw;}
.now-ghost span:nth-child(4){bottom:7%;left:4vw;}
.now-ghost span:nth-child(5){bottom:22%;right:1vw;}
.reel-ghost span:nth-child(1){top:3%;left:6vw;}
.reel-ghost span:nth-child(2){top:28%;right:-3vw;}
.reel-ghost span:nth-child(3){top:56%;left:-9vw;}
.reel-ghost span:nth-child(4){bottom:20%;right:4vw;}
.reel-ghost span:nth-child(5){bottom:1%;left:22vw;}
.timeline-ghost span:nth-child(1){top:2%;left:-2vw;}
.timeline-ghost span:nth-child(2){top:17%;right:-10vw;}
.timeline-ghost span:nth-child(3){top:36%;left:7vw;}
.timeline-ghost span:nth-child(4){top:58%;right:-4vw;}
.timeline-ghost span:nth-child(5){bottom:14%;left:0vw;}
.timeline-ghost span:nth-child(6){bottom:1%;right:6vw;}
.footer-ghost span:nth-child(1){top:-30%;left:2vw;}
.footer-ghost span:nth-child(2){bottom:-12%;right:4vw;}
.footer-ghost span:nth-child(3){top:38%;left:42vw;}

@keyframes arrowBreathe{0%,100%{opacity:.58;filter:brightness(.82)}45%{opacity:1;filter:brightness(1.15)}}
@keyframes arrowGlide{0%{transform:translate(-50%,-18px);opacity:0}25%{opacity:.85}72%{transform:translate(-50%,54px);opacity:.35}100%{transform:translate(-50%,78px);opacity:0}}
@keyframes arrowHeadFloat{0%,100%{transform:translate(-50%,0) rotate(45deg);opacity:.74}45%{transform:translate(-50%,8px) rotate(45deg);opacity:1}}

@media(max-width:760px){
  .hero-schedule-cue.hero-arrow-only i,.schedule-scroll i{height:78px !important;}
  .section-ghost .title{font-size:clamp(42px,15vw,92px);}
  .section-ghost .type{font-size:clamp(15px,6vw,46px);}
  .section-ghost .script{font-size:clamp(34px,13vw,88px);}
}



/* --- auto-scroll guest links, timeline stills, vertical film copy --- */
.hero-locations{font-size:clamp(30px,3.25vw,48px)!important;letter-spacing:.18em!important;bottom:36px!important}
.hero-locations span,.hero-locations span:nth-child(2){font-family:var(--body)!important;font-size:clamp(30px,3.25vw,48px)!important;letter-spacing:.18em!important;text-transform:uppercase!important;line-height:1!important}
.reel-section::before{content:"COMING SOON · 16MM · BLACK TIE"!important;color:rgba(255,255,255,.018)!important;font-size:clamp(58px,10vw,150px)!important;letter-spacing:.055em!important}
.reel-row{width:min(1280px,calc(100% - 92px))!important;margin:38px auto 0!important;display:flex!important;grid-template-columns:none!important;gap:18px!important;overflow-x:auto!important;overflow-y:visible!important;padding:18px 6px 28px!important;scroll-snap-type:x proximity!important;scroll-padding-inline:28px!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-inline:contain!important;mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%)}
.reel-row::-webkit-scrollbar{height:3px}.reel-row::-webkit-scrollbar-track{background:rgba(255,255,255,.08)}.reel-row::-webkit-scrollbar-thumb{background:rgba(255,255,255,.65)}
.reel-row.is-paused .reel-card{animation-play-state:paused}.reel-card{flex:0 0 clamp(210px,22vw,295px)!important;min-height:172px!important;padding:1.15rem 1.18rem!important;scroll-snap-align:center!important;justify-content:space-between!important}.reel-card small{display:none!important}.reel-card strong{font-size:clamp(29px,2.7vw,44px)!important;line-height:.88!important}.reel-script{font-family:var(--body)!important;font-size:clamp(15px,1.35vw,20px)!important;letter-spacing:.14em!important;text-transform:uppercase!important}.reel-no{font-size:15px!important;letter-spacing:.18em!important}.reel-card:hover{transform:translateY(-10px) rotate(.35deg)!important}
.timeline-section .wrap{position:relative}.timeline-runner{position:absolute;top:170px;bottom:10px;width:30px;z-index:0;pointer-events:none;color:rgba(255,255,255,.16);font-family:var(--body);font-size:clamp(13px,1.05vw,17px);letter-spacing:.22em;text-transform:uppercase;writing-mode:vertical-rl;overflow:hidden}.timeline-runner span{display:inline-block;animation:verticalRoll 28s linear infinite}.runner-left{left:-46px}.runner-right{right:-46px;transform:rotate(180deg)}@keyframes verticalRoll{from{transform:translateY(-8%)}to{transform:translateY(18%)}}
.timeline-meta{padding:1.38rem!important;justify-content:flex-start!important;min-height:330px!important;gap:.45rem!important}.timeline-still{width:calc(100% + 2.76rem);height:clamp(160px,15.5vw,230px);margin:auto -1.38rem -1.38rem!important;overflow:hidden;border-top:1px solid rgba(255,255,255,.28);opacity:.93;filter:contrast(1.08) grayscale(1)}.timeline-still img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease,filter .8s ease}.timeline-row:hover .timeline-still img{transform:scale(1.055);filter:contrast(1.16)}.timeline-row.is-right .timeline-still img{object-position:center}.timeline-row.is-left .timeline-still img{object-position:center}
.timeline-meta strong{font-size:clamp(30px,3.3vw,52px)!important}.timeline-meta em{font-size:clamp(18px,1.55vw,24px)!important}.timeline-meta small{font-size:clamp(16px,1.35vw,21px)!important}.episode-card{padding:1.72rem 1.78rem 1.65rem!important;min-width:0!important;overflow:visible!important}.episode-card h3{font-size:clamp(36px,4.35vw,70px)!important;line-height:.88!important;overflow-wrap:normal!important}.translation{font-size:clamp(32px,3.25vw,52px)!important}.episode-card p{font-size:clamp(18px,1.45vw,22px)!important;line-height:1.42!important}.card-topline{font-size:clamp(13px,1vw,16px)!important;gap:.7rem!important;align-items:center}.card-topline span{display:block;min-width:0;max-width:50%;overflow-wrap:break-word;line-height:1.25}.timeline-row{gap:clamp(48px,6vw,82px)!important}.section-ghost span{color:rgba(255,255,255,.007)!important}.section-ghost .script{color:rgba(255,255,255,.011)!important}.section-ghost .type{color:rgba(255,255,255,.0065)!important}.section-ghost .title{color:rgba(255,255,255,.006)!important}
@media(max-width:980px){.timeline-runner{display:none}.timeline-row{grid-template-columns:1fr!important;gap:22px!important}.timeline-row.is-right .timeline-meta,.timeline-row.is-right .episode-card,.timeline-row.is-left .timeline-meta,.timeline-row.is-left .episode-card{grid-column:1!important;grid-row:auto!important}.timeline:before,.timeline:after,.timeline-row:before,.timeline-row:after{display:none!important}.timeline-meta{text-align:left!important;align-items:flex-start!important}.hero-locations{font-size:clamp(18px,4vw,30px)!important;left:34px!important;right:34px!important}.hero-locations span,.hero-locations span:nth-child(2){font-size:clamp(18px,4vw,30px)!important}.reel-row{width:calc(100% - 34px)!important;mask-image:none!important}.reel-card{flex-basis:250px!important}.episode-card h3{font-size:clamp(38px,12vw,58px)!important}}



/* --- Final polish: smaller hero locations, video controls, true guest-link marquee, timeline fit --- */
.hero-locations{font-size:clamp(17px,1.55vw,24px)!important;letter-spacing:.20em!important;bottom:34px!important;left:72px!important;right:72px!important;}
.hero-locations span,.hero-locations span:nth-child(2){font-family:var(--body)!important;font-size:clamp(17px,1.55vw,24px)!important;letter-spacing:.20em!important;text-transform:uppercase!important;line-height:1!important;}
.video-controls{position:absolute;right:78px;bottom:82px;z-index:20;display:flex;gap:10px;align-items:center;}
.video-controls button{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.58);background:rgba(0,0,0,.30);color:#fff;display:grid;place-items:center;font-family:var(--body);font-size:16px;line-height:1;backdrop-filter:none;box-shadow:0 12px 34px rgba(0,0,0,.55);transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease;}
.video-controls button:hover,.video-controls button:focus-visible{background:#fff;color:#000;border-color:#fff;transform:translateY(-3px);outline:none;}
.video-controls button.is-active{background:#fff;color:#000;border-color:#fff;}
.reel-section::before{content:"ADMIT TWO · CURTAIN UP · 16MM · BLACK TIE"!important;color:rgba(255,255,255,.012)!important;}
.reel-row{width:min(1320px,calc(100% - 86px))!important;gap:16px!important;overflow-x:auto!important;scroll-behavior:auto!important;}
.reel-card{flex:0 0 clamp(185px,18vw,250px)!important;min-height:126px!important;padding:1.05rem 1.05rem!important;justify-content:center!important;gap:.7rem!important;text-align:left!important;}
.reel-card strong{font-size:clamp(24px,2.1vw,34px)!important;line-height:.94!important;}
.reel-no{font-size:14px!important;letter-spacing:.2em!important;opacity:.62;}
.reel-script{display:none!important;}
.timeline-runner{top:0!important;bottom:0!important;height:100%!important;color:rgba(255,255,255,.13)!important;font-size:clamp(13px,1vw,16px)!important;letter-spacing:.24em!important;}
.runner-left{left:-58px!important}.runner-right{right:-58px!important}
.timeline-meta{min-height:350px!important;}
.timeline-still{height:clamp(170px,16vw,245px)!important;}
.episode-card{padding:1.55rem 1.62rem 1.55rem!important;}
.episode-card h3{font-size:clamp(32px,3.55vw,60px)!important;line-height:.92!important;overflow-wrap:break-word!important;word-break:normal!important;}
.translation{font-size:clamp(28px,3vw,46px)!important;line-height:.98!important;}
.episode-card p{font-size:clamp(17px,1.25vw,20px)!important;line-height:1.42!important;}
.card-topline{font-size:clamp(12px,.9vw,15px)!important;letter-spacing:.115em!important;}
@media(max-width:980px){.hero-locations{left:34px!important;right:34px!important;font-size:clamp(13px,3.25vw,22px)!important;}.hero-locations span,.hero-locations span:nth-child(2){font-size:clamp(13px,3.25vw,22px)!important;}.video-controls{right:50%;transform:translateX(50%);bottom:84px}.timeline-runner{display:none!important}.episode-card h3{font-size:clamp(34px,10vw,55px)!important}.reel-card{flex-basis:210px!important}}





/* --- Final polish patch: controls, guest-link motion, unique-still timeline --- */
.hero-locations{
  left:clamp(52px,7vw,118px)!important;
  right:clamp(52px,7vw,118px)!important;
  bottom:34px!important;
  font-size:clamp(15px,1.25vw,22px)!important;
  letter-spacing:.18em!important;
}
.hero-locations span,
.hero-locations span:nth-child(2){
  font-family:var(--body)!important;
  font-size:clamp(15px,1.25vw,22px)!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  line-height:1!important;
}
.video-controls{
  position:absolute!important;
  right:clamp(54px,6vw,100px)!important;
  bottom:clamp(84px,10vh,120px)!important;
  z-index:35!important;
  display:flex!important;
  gap:.55rem!important;
  align-items:center!important;
}
.video-controls button{
  width:42px!important;height:42px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  color:#fff!important;background:rgba(0,0,0,.34)!important;
  display:grid!important;place-items:center!important;
  font-family:var(--body)!important;font-size:18px!important;line-height:1!important;
  border-radius:50%!important;backdrop-filter:none!important;
  transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease!important;
}
.video-controls button:hover,.video-controls button.is-active{background:#fff!important;color:#000!important;border-color:#fff!important;transform:translateY(-2px)!important;}

.reel-section{overflow:hidden!important;}
.reel-row{
  width:min(1280px,calc(100% - 84px))!important;
  margin:34px auto 0!important;
  display:flex!important;
  align-items:stretch!important;
  gap:16px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  -webkit-overflow-scrolling:touch!important;
  padding:16px 4px 30px!important;
  mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%)!important;
  scrollbar-width:thin!important;
}
.reel-row::-webkit-scrollbar{height:5px!important}.reel-row::-webkit-scrollbar-track{background:rgba(255,255,255,.06)!important}.reel-row::-webkit-scrollbar-thumb{background:rgba(255,255,255,.45)!important}
.reel-card{
  flex:0 0 clamp(178px,21vw,240px)!important;
  min-height:92px!important;
  scroll-snap-align:center!important;
  padding:1.05rem 1.1rem!important;
  border:1px solid rgba(255,255,255,.72)!important;
  background:#000!important;color:#fff!important;
  display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:.8rem!important;
  clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px)!important;
}
.reel-card .reel-no{font-size:15px!important;color:rgba(255,255,255,.66)!important;letter-spacing:.12em!important;}
.reel-card strong{font-family:var(--body)!important;font-size:clamp(20px,2vw,25px)!important;line-height:1!important;letter-spacing:.03em!important;white-space:nowrap!important;}
.reel-card:hover{background:#fff!important;color:#000!important;transform:translateY(-5px)!important;}
.reel-card:hover .reel-no{color:#000!important;}

.timeline-section{position:relative!important;overflow:hidden!important;}
.timeline-section .wrap{position:relative!important;z-index:2!important;}
.timeline{position:relative!important;z-index:2!important;}
.timeline::before{opacity:.72!important;}
.timeline-row{
  display:grid!important;
  grid-template-columns:minmax(260px,.92fr) minmax(0,1.08fr)!important;
  gap:clamp(28px,4vw,64px)!important;
  align-items:center!important;
  margin:0 0 78px!important;
  overflow:visible!important;
}
.timeline-row.is-left{grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr)!important;}
.timeline-row.is-left .timeline-meta{grid-column:2!important;}
.timeline-row.is-left .episode-card{grid-column:1!important;grid-row:1!important;}
.timeline-meta{min-width:0!important;}
.timeline-still{
  margin-top:1rem!important;
  width:min(320px,100%)!important;
  aspect-ratio:16/10!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.42)!important;
  background:#111!important;
}
.timeline-still img{width:100%!important;height:100%!important;object-fit:cover!important;filter:grayscale(1) contrast(1.08)!important;}
.episode-card{
  min-width:0!important;max-width:100%!important;
  padding:clamp(1.15rem,2.2vw,2rem)!important;
  overflow:visible!important;
}
.episode-card h3{font-size:clamp(34px,4.5vw,68px)!important;line-height:.9!important;overflow-wrap:anywhere!important;hyphens:auto!important;}
.episode-card p{font-size:clamp(17px,1.55vw,22px)!important;line-height:1.45!important;}
.card-topline{gap:.8rem!important;align-items:start!important;}
.card-topline span{font-size:13px!important;line-height:1.15!important;white-space:normal!important;}
.timeline-runner{
  position:absolute!important;
  top:190px!important;bottom:70px!important;
  z-index:1!important;
  display:block!important;pointer-events:none!important;
  opacity:1!important;overflow:hidden!important;
  width:28px!important;
}
.timeline-runner.runner-left{left:clamp(18px,3vw,42px)!important;}
.timeline-runner.runner-right{right:clamp(18px,3vw,42px)!important;}
.timeline-runner span{
  display:block!important;
  writing-mode:vertical-rl!important;
  text-orientation:mixed!important;
  font-family:var(--body)!important;
  font-size:13px!important;
  letter-spacing:.22em!important;
  color:rgba(255,255,255,.16)!important;
  text-transform:uppercase!important;
  line-height:1!important;
  animation:timelineCreditDrift 36s linear infinite!important;
}
.runner-right span{animation-direction:reverse!important;}
@keyframes timelineCreditDrift{0%{transform:translateY(-35%)}100%{transform:translateY(22%)}}
.section-ghost span{opacity:.38!important;}
.section-ghost .title{color:rgba(255,255,255,.018)!important;}
.section-ghost .type{color:rgba(255,255,255,.028)!important;}
.section-ghost .script{color:rgba(255,255,255,.035)!important;}

@media(max-width:900px){
  .video-controls{right:24px!important;bottom:92px!important;}
  .hero-locations{left:34px!important;right:34px!important;font-size:13px!important;gap:.8rem!important;}
  .hero-locations span,.hero-locations span:nth-child(2){font-size:13px!important;letter-spacing:.12em!important;}
  .timeline-row,.timeline-row.is-left{display:block!important;margin-bottom:64px!important;}
  .timeline-row.is-left .timeline-meta,.timeline-row.is-left .episode-card{grid-column:auto!important;grid-row:auto!important;}
  .timeline-still{width:100%!important;max-width:420px!important;}
  .timeline-runner{display:none!important;}
  .reel-card{flex-basis:72vw!important;}
}



/* --- FINAL FIXES: preserve hero title, repair guest links, restore timeline cards --- */
.reel-section,.timeline-section{position:relative;isolation:isolate}
.ambient-montage{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.ambient-montage .ambient-frame{position:absolute;inset:-3%;background-position:center;background-size:cover;opacity:0;filter:grayscale(1) contrast(1.06) blur(1px);transform:scale(1.04);animation:ambientFade 18s infinite}
.ambient-montage .ambient-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.78),rgba(0,0,0,.86))}
.ambient-montage .ambient-frame:nth-child(2){animation-delay:6s}
.ambient-montage .ambient-frame:nth-child(3){animation-delay:12s}
@keyframes ambientFade{0%,24%{opacity:0}6%,18%{opacity:.16}25%,100%{opacity:0}}
.ambient-montage.flicker .ambient-frame{animation-duration:13s}
.reel-section > .wrap,.timeline-section > .wrap,.timeline-section > .section-ghost,.reel-section > .section-ghost{position:relative;z-index:1}

/* Guest links reel */
.reel-row{display:flex!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:18px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin;scroll-snap-type:x proximity!important;width:min(1320px,calc(100% - 72px))!important;padding-bottom:10px!important;position:relative;z-index:1}
.reel-card{position:relative;flex:0 0 clamp(230px,22vw,290px)!important;min-height:230px!important;padding:1.2rem 1.15rem 1.18rem!important;justify-content:space-between!important;gap:.9rem!important;border-color:rgba(255,255,255,.35)!important;background:#060606!important;overflow:hidden!important}
.reel-card::before{content:"";position:absolute;inset:0;background-position:center;background-size:cover;opacity:.28;filter:grayscale(1) contrast(1.05);transition:transform .7s ease,opacity .4s ease}
.reel-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.78) 58%,rgba(0,0,0,.92))}
.reel-card > *{position:relative;z-index:1}
.reel-card:hover::before{transform:scale(1.04);opacity:.4}
.reel-card:nth-child(5n/**/+1)::before{background-image:url("/assets/images/reel-01.webp")}
.reel-card:nth-child(5n/**/+2)::before{background-image:url("/assets/images/reel-02-clean.webp")}
.reel-card:nth-child(5n/**/+3)::before{background-image:url("/assets/images/reel-03.webp")}
.reel-card:nth-child(5n/**/+4)::before{background-image:url("/assets/images/reel-04.webp")}
.reel-card:nth-child(5n/**/+5)::before{background-image:url("/assets/images/reel-05.webp")}
.reel-no{font-size:14px!important;line-height:1.1!important;letter-spacing:.18em!important;opacity:.82!important}
.reel-script{font-family:var(--body)!important;font-size:13px!important;line-height:1.15!important;letter-spacing:.17em!important;text-transform:uppercase!important;opacity:.82!important}
.reel-card strong{display:block!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;font-family:var(--title)!important;font-size:clamp(22px,2.15vw,32px)!important;line-height:1.02!important;letter-spacing:.02em!important;text-transform:uppercase!important;margin-top:auto!important}
.reel-card small{display:block!important;font-size:15px!important;line-height:1.4!important;opacity:.82!important}

/* Timeline restored to date-above + full-width image card layout */
.timeline,.timeline:before,.timeline:after,.timeline-row:before,.timeline-row:after{all:unset}
.timeline{display:grid!important;gap:54px!important;margin-top:34px!important;position:relative!important;z-index:1}
.timeline-row,.timeline-row.is-left,.timeline-row.is-right{display:block!important;position:relative!important}
.timeline-meta{display:grid!important;grid-template-columns:auto minmax(120px,1fr) auto auto!important;gap:10px 18px!important;align-items:end!important;background:transparent!important;border:none!important;box-shadow:none!important;padding:0 0 14px!important;min-height:0!important;color:#fff!important;text-align:left!important}
.timeline-meta::before{display:none!important}
.timeline-meta .episode-no{grid-column:1!important;grid-row:1!important;font-size:15px!important;letter-spacing:.16em!important;color:rgba(255,255,255,.62)!important}
.timeline-meta strong{grid-column:2!important;grid-row:1!important;font-family:var(--title)!important;font-size:clamp(30px,3.3vw,52px)!important;line-height:.92!important;text-transform:uppercase!important;justify-self:start!important}
.timeline-meta em{grid-column:3!important;grid-row:1!important;font-size:clamp(16px,1.4vw,22px)!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-style:normal!important;opacity:.92!important;justify-self:end!important}
.timeline-meta small{grid-column:4!important;grid-row:1!important;font-size:clamp(15px,1.3vw,19px)!important;letter-spacing:.11em!important;text-transform:uppercase!important;opacity:.72!important;justify-self:end!important}
.timeline-meta .timeline-still{display:none!important}
.episode-card{display:block!important;overflow:hidden!important;padding:0 0 1.5rem!important;border:1px solid #fff!important;background:#fff!important;color:#000!important;clip-path:none!important;box-shadow:0 24px 80px rgba(255,255,255,.08)!important}
.episode-card::before,.episode-card::after{display:none!important}
.episode-card:hover{transform:translateY(-6px)!important;box-shadow:0 0 0 1px #fff,0 32px 100px rgba(255,255,255,.16)!important}
.episode-hero{display:block!important;width:100%!important;height:clamp(220px,29vw,420px)!important;margin:0 0 1.15rem!important;overflow:hidden!important;background:#111!important;border-bottom:1px solid rgba(0,0,0,.12)!important}
.episode-hero img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;filter:grayscale(1) contrast(1.06)!important;transition:transform .7s ease,filter .5s ease!important}
.episode-card:hover .episode-hero img{transform:scale(1.035)!important;filter:grayscale(1) contrast(1.1)!important}
.episode-card > :not(.episode-hero){padding-left:1.5rem!important;padding-right:1.5rem!important}
.card-topline{margin:0 1.5rem 1rem!important;padding-bottom:.75rem!important;display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:.8rem!important;flex-wrap:wrap!important;font-size:14px!important;letter-spacing:.14em!important;line-height:1.3!important}
.episode-card h3{font-size:clamp(34px,4.1vw,66px)!important;line-height:.92!important;overflow-wrap:break-word!important;word-break:normal!important;margin:0 0 .55rem!important}
.translation{font-size:clamp(28px,2.8vw,46px)!important;line-height:1!important;margin:0 0 .85rem!important}
.episode-card p{font-size:clamp(17px,1.3vw,20px)!important;line-height:1.48!important;margin-top:0!important}
.card-link{margin-top:1.1rem!important;padding-top:.7rem!important;display:inline-block!important}

@media (max-width:980px){
  .reel-row{width:calc(100% - 34px)!important;gap:14px!important}
  .reel-card{flex-basis:232px!important;min-height:215px!important}
  .timeline-meta{grid-template-columns:1fr!important;gap:4px!important;align-items:start!important}
  .timeline-meta .episode-no,.timeline-meta strong,.timeline-meta em,.timeline-meta small{grid-column:auto!important;grid-row:auto!important;justify-self:start!important}
  .episode-card h3{font-size:clamp(34px,9vw,54px)!important}
  .episode-hero{height:clamp(220px,52vw,320px)!important}
}
@media (max-width:560px){
  .reel-row{width:calc(100% - 24px)!important;padding-left:6px!important;padding-right:6px!important}
  .reel-card{flex-basis:85vw!important;min-height:205px!important}
  .episode-card > :not(.episode-hero),.card-topline{padding-left:1.12rem!important;padding-right:1.12rem!important;margin-left:0!important;margin-right:0!important}
}



/* --- Timeline should feel like an actual connected film timeline --- */
.timeline-section .section-head{
  margin-bottom:clamp(2rem,4vw,3.4rem)!important;
}
.timeline{
  position:relative!important;
  display:grid!important;
  gap:clamp(54px,7vw,86px)!important;
  margin-top:clamp(30px,4vw,46px)!important;
  padding-left:clamp(54px,6vw,86px)!important;
  padding-bottom:20px!important;
}
.timeline::before{
  content:""!important;
  position:absolute!important;
  left:clamp(20px,2.8vw,32px)!important;
  top:12px!important;
  bottom:18px!important;
  width:1px!important;
  background:repeating-linear-gradient(to bottom,rgba(255,255,255,.48) 0 16px,rgba(255,255,255,.18) 16px 26px,transparent 26px 38px)!important;
  box-shadow:0 0 20px rgba(255,255,255,.12)!important;
}
.timeline::after{
  content:""!important;
  position:absolute!important;
  left:clamp(20px,2.8vw,32px)!important;
  top:12px!important;
  width:1px!important;
  height:var(--timeline-progress,0%)!important;
  background:#fff!important;
  box-shadow:0 0 24px rgba(255,255,255,.72)!important;
  transition:height .08s linear!important;
}
.timeline-row,
.timeline-row.is-left,
.timeline-row.is-right{
  position:relative!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  opacity:1;
}
.timeline-row::before{
  content:attr(data-chapter)!important;
  position:absolute!important;
  left:calc(-1 * clamp(54px,6vw,86px) + clamp(20px,2.8vw,32px))!important;
  top:6px!important;
  width:clamp(38px,3.8vw,52px)!important;
  height:clamp(38px,3.8vw,52px)!important;
  border-radius:50%!important;
  background:#000!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.9)!important;
  display:grid!important;
  place-items:center!important;
  font-family:var(--body)!important;
  font-size:clamp(13px,.95vw,16px)!important;
  letter-spacing:.08em!important;
  box-shadow:0 0 0 10px #000,0 0 34px rgba(255,255,255,.25)!important;
  z-index:3!important;
  transform:none!important;
}
.timeline-row::after{
  content:""!important;
  position:absolute!important;
  left:calc(-1 * clamp(54px,6vw,86px) + clamp(20px,2.8vw,32px) + clamp(38px,3.8vw,52px))!important;
  top:calc(6px + clamp(19px,1.9vw,26px))!important;
  width:clamp(18px,2.6vw,36px)!important;
  height:1px!important;
  background:rgba(255,255,255,.55)!important;
  z-index:2!important;
}
.timeline-meta{
  position:relative!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto auto!important;
  align-items:end!important;
  gap:.55rem 1rem!important;
  padding:0 0 .75rem!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#fff!important;
  min-height:0!important;
  text-align:left!important;
}
.timeline-meta .episode-no{
  font-size:clamp(13px,.95vw,16px)!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  color:rgba(255,255,255,.65)!important;
}
.timeline-meta strong{
  font-family:var(--title)!important;
  font-size:clamp(28px,3.4vw,54px)!important;
  line-height:.9!important;
  text-transform:uppercase!important;
}
.timeline-meta em{
  font-size:clamp(15px,1.2vw,20px)!important;
  line-height:1!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
  opacity:.9!important;
}
.timeline-meta small{
  font-size:clamp(13px,1.05vw,18px)!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:rgba(255,255,255,.72)!important;
}
.timeline-meta .timeline-still{
  display:none!important;
}
.episode-card{
  position:relative!important;
  display:block!important;
  width:100%!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  overflow:hidden!important;
  clip-path:none!important;
  padding:0 0 1.55rem!important;
  box-shadow:0 30px 100px rgba(255,255,255,.075)!important;
  transition:transform .28s ease,box-shadow .28s ease,filter .28s ease!important;
}
.episode-card:hover{
  transform:translateY(-7px)!important;
  box-shadow:0 0 0 1px #fff,0 38px 120px rgba(255,255,255,.17)!important;
}
.episode-card::before,
.episode-card::after{
  display:none!important;
}
.episode-hero{
  display:block!important;
  width:100%!important;
  height:clamp(240px,34vw,480px)!important;
  margin:0 0 1.15rem!important;
  overflow:hidden!important;
  background:#111!important;
  border-bottom:1px solid rgba(0,0,0,.15)!important;
}
.episode-hero img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  filter:grayscale(1) contrast(1.07)!important;
  transition:transform .8s ease,filter .6s ease!important;
}
.episode-card:hover .episode-hero img{
  transform:scale(1.035)!important;
  filter:grayscale(1) contrast(1.13)!important;
}
.episode-card > :not(.episode-hero){
  margin-left:clamp(1.15rem,2.4vw,2rem)!important;
  margin-right:clamp(1.15rem,2.4vw,2rem)!important;
}
.card-topline{
  margin-top:.25rem!important;
  margin-bottom:1rem!important;
  padding-bottom:.8rem!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:.75rem!important;
  flex-wrap:wrap!important;
  border-bottom:1px solid rgba(0,0,0,.25)!important;
  font-size:clamp(12px,.95vw,15px)!important;
  line-height:1.35!important;
  letter-spacing:.14em!important;
  color:rgba(0,0,0,.7)!important;
}
.card-topline span{
  max-width:none!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
}
.episode-card h3{
  font-size:clamp(34px,4.35vw,70px)!important;
  line-height:.92!important;
  margin-bottom:.55rem!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.translation{
  font-size:clamp(29px,3vw,48px)!important;
  line-height:1!important;
  margin-bottom:.85rem!important;
}
.episode-card p{
  font-size:clamp(17px,1.3vw,20px)!important;
  line-height:1.48!important;
  max-width:760px!important;
}

/* --- Guest links: image-backed buttons + reliable readable titles --- */
.reel-section h2::before{
  content:"Prepare for Each Premiere"!important;
}
.reel-section h2{
  font-size:0!important;
}
.reel-section h2::before{
  display:block!important;
  font-family:var(--title)!important;
  font-size:clamp(42px,6vw,94px)!important;
  line-height:.83!important;
  letter-spacing:.01em!important;
  text-transform:uppercase!important;
}
.reel-row{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:18px!important;
  width:min(1320px,calc(100% - 72px))!important;
  margin:34px auto 0!important;
  padding:6px 0 15px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.68) rgba(255,255,255,.08)!important;
}
.reel-card{
  position:relative!important;
  flex:0 0 clamp(245px,22vw,320px)!important;
  min-height:255px!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  background:#060606!important;
  border:1px solid rgba(255,255,255,.38)!important;
  color:#fff!important;
  overflow:hidden!important;
  scroll-snap-align:center!important;
}
.reel-image{
  display:block!important;
  width:100%!important;
  height:132px!important;
  overflow:hidden!important;
  background:#111!important;
  border-bottom:1px solid rgba(255,255,255,.22)!important;
}
.reel-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  filter:grayscale(1) contrast(1.08)!important;
  opacity:.85!important;
  transition:transform .65s ease,opacity .35s ease!important;
}
.reel-card:hover .reel-image img{
  transform:scale(1.045)!important;
  opacity:1!important;
}
.reel-card::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,transparent 0,rgba(0,0,0,.25) 42%,rgba(0,0,0,.93) 100%)!important;
  z-index:1!important;
  pointer-events:none!important;
}
.reel-card::after{
  display:none!important;
}
.reel-card > :not(.reel-image){
  position:relative!important;
  z-index:2!important;
  margin-left:1.05rem!important;
  margin-right:1.05rem!important;
}
.reel-no{
  margin-top:.95rem!important;
  font-size:13px!important;
  line-height:1.1!important;
  letter-spacing:.19em!important;
  opacity:.8!important;
}
.reel-script{
  font-family:var(--body)!important;
  font-size:12px!important;
  line-height:1.15!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  opacity:.76!important;
}
.reel-card strong{
  display:block!important;
  margin-top:auto!important;
  margin-bottom:1rem!important;
  font-family:var(--title)!important;
  font-size:clamp(24px,2.1vw,34px)!important;
  line-height:1!important;
  letter-spacing:.02em!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  text-transform:uppercase!important;
}
.reel-card small{
  display:none!important;
}

/* subtle moving line makes the stacked timeline feel active while scrolling */
.timeline-row{
  transform-origin:left center!important;
}
.timeline-row.is-visible .episode-card{
  animation:timelineCardSettle .72s ease both!important;
}
@keyframes timelineCardSettle{
  0%{filter:brightness(.88);transform:translateY(16px)}
  100%{filter:brightness(1);transform:translateY(0)}
}

@media(max-width:980px){
  .timeline{
    padding-left:48px!important;
  }
  .timeline::before,
  .timeline::after{
    left:17px!important;
  }
  .timeline-row::before{
    left:-48px!important;
    width:36px!important;
    height:36px!important;
    top:4px!important;
    box-shadow:0 0 0 8px #000,0 0 24px rgba(255,255,255,.2)!important;
  }
  .timeline-row::after{
    left:-12px!important;
    width:22px!important;
    top:22px!important;
  }
  .timeline-meta{
    grid-template-columns:1fr!important;
    gap:5px!important;
  }
  .timeline-meta .episode-no,
  .timeline-meta strong,
  .timeline-meta em,
  .timeline-meta small{
    grid-column:auto!important;
    justify-self:start!important;
  }
  .episode-hero{
    height:clamp(220px,52vw,340px)!important;
  }
  .reel-row{
    width:calc(100% - 34px)!important;
  }
  .reel-card{
    flex-basis:265px!important;
  }
}
@media(max-width:560px){
  .timeline{
    padding-left:42px!important;
  }
  .reel-card{
    flex-basis:82vw!important;
    min-height:245px!important;
  }
  .episode-card > :not(.episode-hero){
    margin-left:1rem!important;
    margin-right:1rem!important;
  }
}



/* --- Timeline polish: fix chapter clipping and keep ghost text behind it --- */
.timeline-section{position:relative!important;overflow:hidden!important;isolation:isolate!important}
.timeline-section .section-ghost{z-index:1!important;opacity:1!important;pointer-events:none!important}
.timeline-section .section-ghost span{color:rgba(255,255,255,.02)!important;opacity:1!important;mix-blend-mode:screen!important;text-shadow:none!important}
.timeline-section .wrap,.timeline-section .timeline{position:relative!important;z-index:2!important}
.timeline{padding-left:clamp(62px,6.5vw,92px)!important}
.timeline-row::before{
  left:calc(-1 * clamp(62px,6.5vw,92px) + clamp(20px,2.8vw,32px))!important;
  width:clamp(40px,4.1vw,56px)!important;
  height:clamp(40px,4.1vw,56px)!important;
  font-size:clamp(14px,1.02vw,17px)!important;
  letter-spacing:.09em!important;
}
.timeline-row::after{
  left:calc(-1 * clamp(62px,6.5vw,92px) + clamp(20px,2.8vw,32px) + clamp(40px,4.1vw,56px))!important;
  width:clamp(20px,2.3vw,34px)!important;
}
.timeline-meta{
  padding-left:clamp(.95rem,1.4vw,1.25rem)!important;
  padding-right:clamp(.2rem,.8vw,.55rem)!important;
}
.timeline-meta .episode-no{
  display:inline-block!important;
  padding-left:.18rem!important;
  letter-spacing:.2em!important;
}
.timeline-meta strong,.timeline-meta em,.timeline-meta small{position:relative!important;z-index:2!important}
.timeline-row .episode-card,.timeline-row .timeline-meta{position:relative!important;z-index:2!important}

/* --- Guest links section: make it a full-width 5-card film strip --- */
.reel-section{
  background:linear-gradient(180deg,#efefef 0%,#e5e5e5 100%)!important;
  color:#000!important;
  border-top:1px solid rgba(0,0,0,.12)!important;
  border-bottom:1px solid rgba(0,0,0,.08)!important;
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.reel-section .section-ghost{z-index:1!important;opacity:1!important;pointer-events:none!important}
.reel-section .section-ghost span{color:rgba(0,0,0,.048)!important;mix-blend-mode:multiply!important;opacity:1!important;text-shadow:none!important}
.reel-section .wrap,.reel-row{position:relative!important;z-index:2!important}
.reel-section .eyebrow,.reel-section h2::before{color:#000!important}
.reel-section .lede,.reel-section p{color:rgba(0,0,0,.75)!important}
.reel-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  width:min(1680px,calc(100% - 38px))!important;
  margin:30px auto 0!important;
  gap:18px!important;
  padding:14px 24px 18px!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
  mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%)!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%)!important;
}
.reel-row::before,.reel-row::after{
  content:""!important;
  position:absolute!important;
  top:0!important;bottom:0!important;
  width:58px!important;
  pointer-events:none!important;
  z-index:4!important;
}
.reel-row::before{left:0!important;background:linear-gradient(90deg,#ededed 0%,rgba(237,237,237,0) 100%)!important}
.reel-row::after{right:0!important;background:linear-gradient(270deg,#e7e7e7 0%,rgba(231,231,231,0) 100%)!important}
.reel-card{
  flex:none!important;
  min-height:300px!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid rgba(0,0,0,.12)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.06)!important;
  border-radius:0!important;
  overflow:hidden!important;
  padding:0!important;
  scroll-snap-align:none!important;
}
.reel-card:hover{
  background:#fff!important;
  color:#000!important;
  border-color:rgba(0,0,0,.18)!important;
  transform:translateY(-6px)!important;
  box-shadow:0 24px 50px rgba(0,0,0,.09)!important;
}
.reel-card::before{display:none!important}
.reel-card > :not(.reel-image){position:relative!important;z-index:2!important;margin-left:1.05rem!important;margin-right:1.05rem!important}
.reel-image{
  display:block!important;
  width:100%!important;
  height:170px!important;
  border-bottom:1px solid rgba(0,0,0,.1)!important;
  background:#d9d9d9!important;
}
.reel-image img{
  width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;
  filter:grayscale(1) contrast(1.08)!important;
  opacity:1!important;
}
.reel-no{
  margin-top:1rem!important;
  color:rgba(0,0,0,.58)!important;
  font-size:12px!important;
  letter-spacing:.18em!important;
}
.reel-card strong{
  display:block!important;
  margin-top:auto!important;
  margin-bottom:1.05rem!important;
  color:#000!important;
  font-family:var(--title)!important;
  font-size:clamp(24px,2.05vw,34px)!important;
  line-height:1!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  text-transform:uppercase!important;
}
.reel-card small,.reel-script{display:none!important}

@media(max-width:1180px){
  .reel-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;width:min(1240px,calc(100% - 30px))!important}
}
@media(max-width:780px){
  .timeline{padding-left:52px!important}
  .timeline-row::before{left:-40px!important;width:36px!important;height:36px!important;font-size:13px!important;box-shadow:0 0 0 8px #000,0 0 24px rgba(255,255,255,.2)!important}
  .timeline-row::after{left:-4px!important;width:18px!important;top:22px!important}
  .timeline-meta{padding-left:1rem!important}
  .reel-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:calc(100% - 18px)!important;padding:10px 14px 16px!important;gap:14px!important}
  .reel-row::before,.reel-row::after{width:28px!important}
}
@media(max-width:560px){
  .reel-row{grid-template-columns:1fr!important;mask-image:none!important;-webkit-mask-image:none!important}
  .reel-row::before,.reel-row::after{display:none!important}
  .reel-card{min-height:274px!important}
}



/* Final pass requested: tab title, Now Showing split title, dark premiere cards, stronger timeline feel */
#now-title.now-title-split{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:clamp(.35rem,1.2vw,1rem)!important;
  white-space:nowrap!important;
  line-height:.74!important;
  margin-bottom:clamp(.85rem,1.8vw,1.3rem)!important;
}
#now-title.now-title-split .now-word{
  font-family:var(--title)!important;
  font-size:clamp(58px,7.8vw,126px)!important;
  font-weight:700!important;
  line-height:.74!important;
  letter-spacing:.01em!important;
  text-transform:uppercase!important;
}
#now-title.now-title-split .script-de{
  font-family:var(--accent)!important;
  font-size:clamp(44px,5.35vw,82px)!important;
  line-height:.66!important;
  text-transform:lowercase!important;
  transform:translateY(.04em)!important;
  display:inline-block!important;
}

/* Premiere section stays light, but the cards are black tickets with white text */
.reel-section{
  background:linear-gradient(180deg,#eeeeee 0%,#dedede 100%)!important;
  color:#000!important;
}
.reel-section .section-ghost span{
  color:rgba(0,0,0,.055)!important;
  mix-blend-mode:multiply!important;
}
.reel-row{
  width:min(1720px,calc(100% - 34px))!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:clamp(12px,1.25vw,20px)!important;
  padding-inline:clamp(18px,2.2vw,38px)!important;
  mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%)!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%)!important;
}
.reel-row::before{background:linear-gradient(90deg,#eeeeee 0%,rgba(238,238,238,0) 100%)!important}
.reel-row::after{background:linear-gradient(270deg,#dfdfdf 0%,rgba(223,223,223,0) 100%)!important}
.reel-card{
  background:#050505!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.36)!important;
  box-shadow:0 20px 46px rgba(0,0,0,.22)!important;
}
.reel-card:hover{
  background:#000!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.72)!important;
  transform:translateY(-7px) rotate(.12deg)!important;
  box-shadow:0 28px 64px rgba(0,0,0,.32)!important;
}
.reel-no,.reel-card strong{color:#fff!important}
.reel-no{opacity:.72!important}
.reel-image{border-bottom:1px solid rgba(255,255,255,.22)!important;background:#111!important}
.reel-image img{filter:grayscale(1) contrast(1.1)!important;opacity:.86!important}
.reel-card:hover .reel-image img{opacity:1!important;transform:scale(1.045)!important}

/* Fix blocked 'Chapter' label by moving the marker farther left and giving the date row breathing room */
.timeline{padding-left:clamp(76px,7.7vw,112px)!important}
.timeline::before,.timeline::after{left:clamp(18px,2.35vw,30px)!important}
.timeline-row::before{
  left:calc(-1 * clamp(76px,7.7vw,112px) + clamp(18px,2.35vw,30px))!important;
  top:2px!important;
  z-index:4!important;
}
.timeline-row::after{
  left:calc(-1 * clamp(76px,7.7vw,112px) + clamp(18px,2.35vw,30px) + clamp(40px,4.1vw,56px))!important;
  top:calc(2px + clamp(20px,2.05vw,28px))!important;
  width:clamp(25px,3vw,46px)!important;
}
.timeline-meta{
  padding-left:clamp(1.65rem,2.8vw,2.65rem)!important;
  min-height:0!important;
}
.timeline-meta .episode-no{
  padding-left:0!important;
  margin-left:0!important;
  letter-spacing:.18em!important;
}

/* Make the ghost text definitely present behind the timeline, but still subtle */
.timeline-section .section-ghost{z-index:0!important;opacity:1!important}
.timeline-section .section-ghost span{color:rgba(255,255,255,.032)!important;mix-blend-mode:screen!important}
.timeline-section::before{
  content:"THE TABLE OF THE SEA   PALMS AND PROMISES   READY SET SAIL   SWEET GOODBYES"!important;
  position:absolute!important;
  left:50%!important;
  top:44%!important;
  transform:translate(-50%,-50%) rotate(-7deg)!important;
  font-family:var(--accent)!important;
  font-size:clamp(72px,12vw,190px)!important;
  letter-spacing:.018em!important;
  line-height:.78!important;
  white-space:nowrap!important;
  color:rgba(255,255,255,.018)!important;
  z-index:0!important;
  pointer-events:none!important;
}
.timeline-section::after{
  content:"shot on 16mm  ·  coming soon  ·  a story in chapters"!important;
  position:absolute!important;
  left:50%!important;
  bottom:10%!important;
  transform:translateX(-50%) rotate(2deg)!important;
  font-family:var(--body)!important;
  font-size:clamp(24px,5vw,88px)!important;
  letter-spacing:.2em!important;
  text-transform:none!important;
  white-space:nowrap!important;
  color:rgba(255,255,255,.026)!important;
  z-index:0!important;
  pointer-events:none!important;
}
.timeline-section .wrap,.timeline{z-index:2!important}

/* More cinematic timeline movement */
.timeline-row{
  --scene-y:0px;
  --scene-brightness:.92;
  transition:opacity .55s ease,filter .55s ease!important;
}
.timeline-row .episode-card{
  transform:translateY(var(--scene-y)) scale(.995)!important;
  filter:brightness(var(--scene-brightness))!important;
  transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .5s ease,box-shadow .5s ease!important;
}
.timeline-row.is-active .episode-card{
  transform:translateY(calc(var(--scene-y) - 6px)) scale(1.008)!important;
  filter:brightness(1)!important;
  box-shadow:0 0 0 1px #fff,0 38px 118px rgba(255,255,255,.19)!important;
}
.timeline-row.is-active::before{
  animation:chapterPulse 1.8s ease-in-out infinite!important;
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
}
.episode-hero{position:relative!important;isolation:isolate!important}
.episode-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  opacity:.05!important;
  background:repeating-linear-gradient(to bottom,rgba(255,255,255,.22) 0 1px,transparent 1px 6px)!important;
  mix-blend-mode:screen!important;
}
.episode-hero::after{
  content:""!important;
  position:absolute!important;
  left:-20%!important;right:-20%!important;top:-45%!important;
  height:42%!important;
  z-index:3!important;
  pointer-events:none!important;
  opacity:0!important;
  background:linear-gradient(to bottom,transparent,rgba(255,255,255,.16),transparent)!important;
  transform:rotate(-4deg) translateY(-40%)!important;
}
.timeline-row.is-active .episode-hero::after{animation:filmSweep 2.6s ease-in-out infinite!important;opacity:.7!important}
.timeline-row.is-active .timeline-meta strong{filter:drop-shadow(0 0 18px rgba(255,255,255,.18))!important}
.card-link{position:relative!important}
.card-link::after{
  content:""!important;
  position:absolute!important;
  left:0!important;right:100%!important;bottom:-3px!important;
  height:1px!important;background:#000!important;
  transition:right .45s ease!important;
}
.episode-card:hover .card-link::after,.timeline-row.is-active .card-link::after{right:0!important}
@keyframes chapterPulse{0%,100%{box-shadow:0 0 0 10px #000,0 0 26px rgba(255,255,255,.28)}50%{box-shadow:0 0 0 10px #000,0 0 46px rgba(255,255,255,.62)}}
@keyframes filmSweep{0%{transform:rotate(-4deg) translateY(-70%);opacity:0}25%{opacity:.45}65%{opacity:.14}100%{transform:rotate(-4deg) translateY(345%);opacity:0}}

@media(max-width:1180px){
  .reel-row{grid-template-columns:repeat(5,minmax(150px,1fr))!important;width:calc(100% - 24px)!important;gap:12px!important;padding-inline:20px!important}
  .reel-image{height:145px!important}
  .reel-card strong{font-size:clamp(20px,2.2vw,30px)!important}
}
@media(max-width:780px){
  #now-title.now-title-split{justify-content:flex-start!important;white-space:normal!important;flex-wrap:wrap!important}
  .timeline{padding-left:56px!important}
  .timeline::before,.timeline::after{left:16px!important}
  .timeline-row::before{left:-45px!important;width:36px!important;height:36px!important;font-size:13px!important}
  .timeline-row::after{left:-9px!important;width:23px!important;top:20px!important}
  .timeline-meta{padding-left:.4rem!important}
  .reel-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;mask-image:none!important;-webkit-mask-image:none!important}
  .reel-row::before,.reel-row::after{display:none!important}
}
@media(max-width:560px){
  .reel-row{grid-template-columns:1fr!important}
  .reel-image{height:190px!important}
}



/* Final launch polish: full-quality hero playback, bigger controls, responsive cards, enhanced timeline motion */
.hero-video{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  filter:none!important;
  transform:none!important;
  image-rendering:auto!important;
  backface-visibility:hidden!important;
  will-change:auto!important;
}
.hero-shade{background:radial-gradient(circle at 50% 39%,rgba(255,255,255,.07),rgba(0,0,0,.02) 38%,rgba(0,0,0,.30) 92%),linear-gradient(90deg,rgba(0,0,0,.42),rgba(0,0,0,.02) 48%,rgba(0,0,0,.42))!important;}
.grain{opacity:.075!important;animation-duration:9s!important}.flicker{animation-duration:16s!important;opacity:0}.spotlight{will-change:transform!important}
.video-controls{gap:14px!important;right:clamp(54px,6vw,104px)!important;bottom:clamp(86px,10vh,126px)!important;}
.video-controls button{width:56px!important;height:56px!important;font-size:23px!important;border:1px solid rgba(255,255,255,.8)!important;background:rgba(0,0,0,.38)!important;box-shadow:0 16px 44px rgba(0,0,0,.62)!important;}
.video-controls button:hover,.video-controls button:focus-visible,.video-controls button.is-active{background:#fff!important;color:#000!important;border-color:#fff!important;transform:translateY(-3px) scale(1.03)!important;}
#now-title.now-title-split .script-de{font-family:var(--accent)!important;text-transform:lowercase!important;letter-spacing:.02em!important;line-height:.72!important;font-style:normal!important;}
.reel-section .reel-card{background:#030303!important;color:#fff!important;border-color:rgba(255,255,255,.34)!important;box-shadow:0 22px 54px rgba(0,0,0,.18)!important;}
.reel-section .reel-card:hover{background:#000!important;color:#fff!important;border-color:#fff!important;box-shadow:0 32px 70px rgba(0,0,0,.24)!important;}
.reel-card .reel-no,.reel-card strong{color:#fff!important}.reel-image{border-bottom-color:rgba(255,255,255,.22)!important;background:#111!important}.reel-row::before{background:linear-gradient(90deg,#ededed 0%,rgba(237,237,237,0) 100%)!important}.reel-row::after{background:linear-gradient(270deg,#e7e7e7 0%,rgba(231,231,231,0) 100%)!important}
.timeline-section .timeline{counter-reset:scene!important;}
.timeline-row{transition:transform .45s ease,filter .45s ease!important;}
.timeline-row.is-visible{filter:brightness(1)!important}.timeline-row:not(.is-visible){filter:brightness(.82)!important}
.timeline-row::before{transition:background .35s ease,color .35s ease,box-shadow .35s ease,transform .35s ease!important;}
.timeline-row:hover::before{background:#fff!important;color:#000!important;box-shadow:0 0 0 10px #000,0 0 44px rgba(255,255,255,.55)!important;transform:scale(1.04)!important;}
.timeline-row:hover::after{background:#fff!important;box-shadow:0 0 16px rgba(255,255,255,.7)!important;}
.episode-card{will-change:transform!important;}
.episode-card::after{content:""!important;display:block!important;position:absolute!important;inset:0!important;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.0) 36%,rgba(255,255,255,.42) 50%,rgba(255,255,255,.0) 64%,transparent 100%)!important;transform:translateX(-130%) skewX(-10deg)!important;opacity:0!important;pointer-events:none!important;z-index:5!important;transition:opacity .25s ease!important;}
.timeline-row:hover .episode-card::after{opacity:.22!important;animation:timelineSweep 1.15s ease forwards!important;}
.episode-hero img{transform:scale(1.001)!important;}
.timeline-row:hover .episode-hero img{transform:scale(1.045)!important;}
@keyframes timelineSweep{0%{transform:translateX(-130%) skewX(-10deg)}100%{transform:translateX(130%) skewX(-10deg)}}
.timeline::before{animation:timelineLinePulse 4.8s ease-in-out infinite!important;}
@keyframes timelineLinePulse{0%,100%{opacity:.76;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.25)}}
@media(max-width:900px){
  .hero-video{object-position:center center!important;}
  .hero{min-height:100svh!important;padding-bottom:112px!important;}
  .hero-card{max-width:calc(100% - 34px)!important;}
  .video-controls{right:50%!important;transform:translateX(50%)!important;bottom:78px!important;gap:12px!important;}
  .video-controls button{width:50px!important;height:50px!important;font-size:21px!important;}
  .hero-locations{left:24px!important;right:24px!important;bottom:24px!important;font-size:clamp(10px,2.8vw,14px)!important;letter-spacing:.12em!important;gap:.5rem!important;}
  .hero-locations span,.hero-locations span:nth-child(2){font-size:clamp(10px,2.8vw,14px)!important;letter-spacing:.12em!important;}
  .reel-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:calc(100% - 24px)!important;padding-inline:14px!important;gap:14px!important;mask-image:none!important;-webkit-mask-image:none!important;}
  .reel-row::before,.reel-row::after{display:none!important;}
  .reel-card{min-height:256px!important;}
  .reel-image{height:155px!important;}
  .timeline{padding-left:48px!important;}
  .timeline-row::before{left:-42px!important;width:38px!important;height:38px!important;font-size:13px!important;}
  .timeline-row::after{left:-4px!important;width:20px!important;top:24px!important;}
  .episode-card h3{font-size:clamp(34px,10vw,56px)!important;}
  .episode-hero{height:clamp(220px,54vw,340px)!important;}
}
@media(max-width:560px){
  body{overflow-x:hidden!important;}
  .hero-title{white-space:nowrap!important;transform:scale(.94)!important;transform-origin:center!important;}
  .hero-actions{margin-top:clamp(4.6rem,14vh,8.5rem)!important;}
  .video-controls{bottom:88px!important;}
  .video-controls button{width:46px!important;height:46px!important;font-size:19px!important;}
  .reel-row{grid-template-columns:1fr!important;width:calc(100% - 20px)!important;}
  .reel-card{min-height:270px!important;}
  .reel-image{height:176px!important;}
  .timeline{padding-left:42px!important;gap:54px!important;}
  .timeline::before,.timeline::after{left:16px!important;}
  .timeline-row::before{left:-40px!important;width:34px!important;height:34px!important;font-size:12px!important;box-shadow:0 0 0 7px #000,0 0 20px rgba(255,255,255,.25)!important;}
  .timeline-row::after{left:-7px!important;width:19px!important;top:21px!important;}
  .timeline-meta{grid-template-columns:1fr!important;gap:5px!important;padding-left:.15rem!important;}
  .timeline-meta .episode-no,.timeline-meta strong,.timeline-meta em,.timeline-meta small{grid-column:auto!important;justify-self:start!important;}
}



/* --- Now Showing teaser trailer player --- */
.poster-frame::after{display:none!important}
.now-showing .poster-grid{align-items:center!important;grid-template-columns:minmax(330px,560px) minmax(340px,.92fr)!important}
.teaser-copy{align-self:center!important;max-width:620px!important}
.teaser-copy .eyebrow{color:#fff!important;font-size:clamp(15px,1.05vw,18px)!important;letter-spacing:.22em!important;margin-bottom:1rem!important}
.teaser-player{position:relative!important;width:100%!important;border:1px solid rgba(255,255,255,.72)!important;background:#050505!important;box-shadow:0 34px 110px rgba(255,255,255,.08),inset 0 0 0 1px rgba(255,255,255,.1)!important;overflow:hidden!important}
.teaser-expand{position:relative!important;display:block!important;width:100%!important;aspect-ratio:16/9!important;border:0!important;padding:0!important;background:#000!important;overflow:hidden!important}
.teaser-video{width:100%!important;height:100%!important;object-fit:cover!important;filter:grayscale(1) contrast(1.08)!important;transform:scale(1.01)!important}
.teaser-expand::before{content:""!important;position:absolute!important;inset:0!important;background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.05),rgba(0,0,0,.04) 42%,rgba(0,0,0,.45) 100%)!important;z-index:2!important;pointer-events:none!important}
.teaser-play{position:absolute!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;width:74px!important;height:74px!important;border:1px solid rgba(255,255,255,.92)!important;border-radius:50%!important;display:grid!important;place-items:center!important;z-index:3!important;color:#fff!important;font-family:var(--body)!important;font-size:28px!important;padding-left:4px!important;background:rgba(0,0,0,.32)!important;box-shadow:0 0 50px rgba(255,255,255,.16)!important;transition:transform .25s ease,background .25s ease!important}
.teaser-expand:hover .teaser-play{transform:translate(-50%,-50%) scale(1.08)!important;background:#fff!important;color:#000!important}
.teaser-frame-label{position:absolute!important;left:1rem!important;right:1rem!important;bottom:1rem!important;z-index:3!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:1rem!important;color:#fff!important;font-family:var(--body)!important;font-size:clamp(13px,1vw,17px)!important;letter-spacing:.18em!important;text-transform:uppercase!important;text-shadow:0 4px 20px #000!important}
.teaser-frame-label::after{content:"Expand Full Screen"!important;opacity:.78!important;font-size:.82em!important}
.teaser-mini-control{width:100%!important;border-top:1px solid rgba(255,255,255,.34)!important;padding:.95rem 1.1rem!important;color:#fff!important;background:#000!important;font-family:var(--body)!important;font-size:clamp(14px,1vw,18px)!important;letter-spacing:.16em!important;text-transform:uppercase!important;transition:background .2s ease,color .2s ease!important}
.teaser-mini-control:hover{background:#fff!important;color:#000!important}
.teaser-text{margin-top:1.25rem!important;max-width:560px!important;color:rgba(255,255,255,.78)!important;font-size:clamp(18px,1.35vw,23px)!important;line-height:1.55!important}
.teaser-modal{position:fixed!important;inset:0!important;z-index:999!important;display:grid!important;place-items:center!important;padding:clamp(18px,4vw,56px)!important;background:rgba(0,0,0,.94)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .25s ease,visibility .25s ease!important}
.teaser-modal.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.teaser-modal-video{width:min(1200px,96vw)!important;max-height:82vh!important;background:#000!important;border:1px solid rgba(255,255,255,.65)!important;box-shadow:0 40px 160px rgba(255,255,255,.12)!important}
.teaser-close{position:absolute!important;top:clamp(16px,3vw,34px)!important;right:clamp(16px,3vw,34px)!important;width:52px!important;height:52px!important;border:1px solid rgba(255,255,255,.75)!important;border-radius:50%!important;color:#fff!important;background:#000!important;font-size:34px!important;line-height:1!important;display:grid!important;place-items:center!important;z-index:2!important}
.teaser-close:hover{background:#fff!important;color:#000!important}
@media(max-width:900px){.now-showing .poster-grid{grid-template-columns:1fr!important}.teaser-copy{max-width:100%!important}.teaser-frame-label{flex-direction:column!important;align-items:flex-start!important;gap:.25rem!important}.teaser-play{width:62px!important;height:62px!important;font-size:23px!important}}
@media(max-width:560px){.teaser-frame-label{font-size:11px!important;letter-spacing:.12em!important}.teaser-frame-label::after{content:"Tap to Expand"!important}.teaser-text{font-size:17px!important}.teaser-close{width:46px!important;height:46px!important;font-size:30px!important}}



/* --- V8 final styling updates --- */
/* make ghost text a bit more visible on dark sections */
.hero-ghostwall span{color:rgba(255,255,255,.032)!important}
.hero-ghostwall span:nth-child(even){color:rgba(255,255,255,.024)!important}
.hero-ghostwall span:nth-child(3n){color:rgba(255,255,255,.038)!important}
.hero-ghostwall.glow span{color:rgba(255,255,255,.14)!important;text-shadow:0 0 18px rgba(255,255,255,.09)!important}
.now-showing .section-ghost span,
.timeline-section .section-ghost span,
.footer .section-ghost span,
.schedule-bridge .section-ghost span{opacity:.72!important}
.now-showing .section-ghost .title,.timeline-section .section-ghost .title,.footer .section-ghost .title,.schedule-bridge .section-ghost .title{color:rgba(255,255,255,.028)!important}
.now-showing .section-ghost .type,.timeline-section .section-ghost .type,.footer .section-ghost .type,.schedule-bridge .section-ghost .type{color:rgba(255,255,255,.038)!important}
.now-showing .section-ghost .script,.timeline-section .section-ghost .script,.footer .section-ghost .script,.schedule-bridge .section-ghost .script{color:rgba(255,255,255,.05)!important}
.now-showing::after,.timeline-section::before,.footer::before,.schedule-bridge::after{opacity:.95!important}

/* now showing teaser card */
.now-showing .poster-grid{align-items:center!important;grid-template-columns:minmax(330px,560px) minmax(360px,.95fr)!important}
.teaser-copy{align-self:center!important;max-width:640px!important}
.teaser-shell{position:relative;transform:rotate(1.55deg);transition:transform .45s ease,filter .45s ease,box-shadow .45s ease;will-change:transform;display:block}
.teaser-shell:hover{transform:rotate(.15deg) translateY(-12px) scale(1.04)}
.teaser-player{position:relative!important;width:100%!important;border:1px solid rgba(255,255,255,.78)!important;background:#050505!important;box-shadow:0 42px 150px rgba(255,255,255,.16),0 0 0 1px rgba(255,255,255,.92),0 0 80px rgba(255,255,255,.08)!important;overflow:visible!important}
.teaser-player::before{content:"";position:absolute;inset:-18px;border:1px solid rgba(255,255,255,.38);pointer-events:none;z-index:-1}
.teaser-nowshowing-badge{position:absolute;left:18px;top:-42px;z-index:6;background:rgba(245,245,245,.95);color:#232323;border:1px solid rgba(255,255,255,.85);padding:.52rem 1.18rem .38rem;font-family:var(--accent)!important;font-size:clamp(34px,3.4vw,62px)!important;line-height:.88;letter-spacing:.01em;box-shadow:0 10px 35px rgba(0,0,0,.2);transform:rotate(-3.2deg);white-space:nowrap}
.teaser-expand{position:relative!important;display:block!important;width:100%!important;aspect-ratio:16/9!important;border:0!important;padding:0!important;background:#000!important;overflow:hidden!important;cursor:pointer}
.teaser-slideshow{position:absolute;inset:0;overflow:hidden;background:#000}
.teaser-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08);opacity:0;transform:scale(1.04);transition:opacity .95s ease,transform 5s ease}
.teaser-slide.is-active{opacity:1;transform:scale(1)}
.teaser-flicker{position:absolute;inset:0;pointer-events:none;background:
  linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0) 12%,rgba(0,0,0,0) 80%,rgba(255,255,255,.04)),
  repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 2px,rgba(0,0,0,.02) 2px 4px);
  mix-blend-mode:screen;opacity:.18;animation:projectorPulse 1.2s infinite steps(2,end)}
.teaser-slideshow.is-flicker .teaser-flicker{animation:projectorBurst .32s linear 1}
@keyframes projectorPulse{0%,100%{opacity:.14}15%{opacity:.24}16%{opacity:.1}45%{opacity:.22}46%{opacity:.11}72%{opacity:.2}}
@keyframes projectorBurst{0%{opacity:.35}20%{opacity:.05}40%{opacity:.28}60%{opacity:.09}80%{opacity:.22}100%{opacity:.15}}
.teaser-expand::before{content:""!important;position:absolute!important;inset:0!important;background:radial-gradient(circle at 50% 46%,rgba(255,255,255,.08),rgba(0,0,0,.04) 42%,rgba(0,0,0,.52) 100%)!important;z-index:2!important;pointer-events:none!important}
.teaser-play{position:absolute!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;width:80px!important;height:80px!important;border:1px solid rgba(255,255,255,.92)!important;border-radius:50%!important;display:grid!important;place-items:center!important;z-index:3!important;color:#fff!important;font-family:var(--body)!important;font-size:30px!important;padding-left:5px!important;background:rgba(0,0,0,.34)!important;box-shadow:0 0 50px rgba(255,255,255,.16)!important;transition:transform .25s ease,background .25s ease,color .25s ease!important}
.teaser-expand:hover .teaser-play{transform:translate(-50%,-50%) scale(1.08)!important;background:#fff!important;color:#000!important}
.teaser-frame-label{position:absolute!important;left:1rem!important;right:1rem!important;bottom:1rem!important;z-index:3!important;display:block!important;color:#fff!important;font-family:var(--body)!important;font-size:clamp(13px,1vw,18px)!important;letter-spacing:.18em!important;text-transform:uppercase!important;text-shadow:0 4px 20px #000!important}
.teaser-frame-label::after{content:none!important}
.teaser-mini-control{display:block!important;width:100%!important;border-top:1px solid rgba(255,255,255,.34)!important;padding:1rem 1.2rem!important;color:#000!important;background:#fff!important;font-family:var(--body)!important;font-size:clamp(14px,1vw,18px)!important;letter-spacing:.16em!important;text-transform:uppercase!important;transition:background .2s ease,color .2s ease!important}
.teaser-mini-control:hover{background:#cfcfcf!important;color:#000!important}
.teaser-text{margin-top:1.45rem!important;max-width:620px!important;color:rgba(255,255,255,.8)!important;font-size:clamp(18px,1.35vw,23px)!important;line-height:1.55!important}
.teaser-modal-video{width:min(1280px,96vw)!important;max-height:84vh!important}

/* guest links section background white */
.reel-section{background:#fff!important;border-top:1px solid rgba(0,0,0,.08)!important}
.reel-section::before{color:rgba(0,0,0,.065)!important;text-shadow:none!important}
.reel-section::after{color:rgba(0,0,0,.05)!important}
.reel-section .section-ghost span{color:rgba(0,0,0,.07)!important;mix-blend-mode:multiply!important;opacity:1!important}
.reel-section .section-ghost .title{color:rgba(0,0,0,.055)!important}
.reel-section .section-ghost .type{color:rgba(0,0,0,.08)!important}
.reel-section .section-ghost .script{color:rgba(0,0,0,.1)!important}
.reel-section .wrap h2,.reel-section .eyebrow,.reel-section p{color:#111!important}
.reel-row::before{background:linear-gradient(90deg,#ffffff 0%,rgba(255,255,255,0) 100%)!important}
.reel-row::after{background:linear-gradient(270deg,#ffffff 0%,rgba(255,255,255,0) 100%)!important}
.reel-section .reel-card{background:#030303!important;color:#fff!important;border-color:rgba(255,255,255,.34)!important;box-shadow:0 18px 46px rgba(0,0,0,.12)!important}
.reel-section .reel-card:hover{background:#111!important;color:#fff!important;border-color:#fff!important;box-shadow:0 24px 60px rgba(0,0,0,.18)!important}

@media(max-width:900px){
  .now-showing .poster-grid{grid-template-columns:1fr!important}
  .teaser-copy{max-width:100%!important}
  .teaser-shell{transform:rotate(.85deg)}
  .teaser-shell:hover{transform:rotate(0deg) translateY(-8px) scale(1.015)}
  .teaser-nowshowing-badge{font-size:clamp(28px,9vw,52px)!important;top:-32px;left:12px}
}
@media(max-width:560px){
  .teaser-nowshowing-badge{top:-24px;left:10px;padding:.38rem .82rem .3rem;font-size:30px!important}
  .teaser-play{width:64px!important;height:64px!important;font-size:24px!important}
  .teaser-frame-label{font-size:11px!important;letter-spacing:.12em!important}
  .teaser-text{font-size:17px!important}
}



/* --- V9 refinements: consistent ticket buttons, ghost text, cards, poster caption --- */
.poster-caption{font-size:clamp(56px,5vw,82px)!important;right:-74px!important;letter-spacing:.015em!important}
@media(max-width:900px){.poster-caption{display:block!important;font-size:42px!important;right:-46px!important}}
@media(max-width:560px){.poster-caption{display:none!important}}

/* Schedule card clean crop: remove the visible black edge/logo artifact */
.reel-card:nth-child(2) .reel-image img{object-position:42% 50%!important;transform:scale(1.025)!important}
.reel-card:nth-child(2):hover .reel-image img{transform:scale(1.07)!important}

/* White premiere section: calmer, less obvious background text with more movement */
.reel-section{background:#fff!important}
.reel-section::before{font-size:clamp(38px,6.4vw,104px)!important;letter-spacing:.04em!important;color:rgba(0,0,0,.025)!important;transform:translateX(-52%) rotate(-4.5deg)!important;top:34px!important;white-space:nowrap!important;text-shadow:none!important}
.reel-section::after{font-size:clamp(46px,7vw,112px)!important;color:rgba(0,0,0,.021)!important;transform:rotate(3.5deg)!important;text-shadow:none!important}
.reel-section .section-ghost span{opacity:1!important;mix-blend-mode:multiply!important;text-shadow:none!important}
.reel-section .section-ghost .title{font-size:clamp(36px,6.5vw,96px)!important;color:rgba(0,0,0,.026)!important;letter-spacing:.08em!important}
.reel-section .section-ghost .type{font-size:clamp(13px,2.2vw,42px)!important;color:rgba(0,0,0,.031)!important;letter-spacing:.25em!important}
.reel-section .section-ghost .script{font-size:clamp(30px,5.6vw,86px)!important;color:rgba(0,0,0,.035)!important;letter-spacing:.02em!important}
.reel-ghost span:nth-child(1){top:9%!important;left:-3vw!important;transform:rotate(-8deg)!important}
.reel-ghost span:nth-child(2){top:22%!important;right:4vw!important;transform:rotate(4deg)!important}
.reel-ghost span:nth-child(3){top:55%!important;left:-6vw!important;transform:rotate(-5deg)!important}
.reel-ghost span:nth-child(4){bottom:14%!important;right:12vw!important;transform:rotate(7deg)!important}
.reel-ghost span:nth-child(5){bottom:2%!important;left:28vw!important;transform:rotate(-3deg)!important}

/* Black sections: make the ghost text actually a bit more visible, but still subtle */
.now-showing .section-ghost span,
.timeline-section .section-ghost span,
.footer .section-ghost span,
.schedule-bridge .section-ghost span{opacity:1!important;mix-blend-mode:screen!important;text-shadow:none!important}
.now-showing .section-ghost .title,
.timeline-section .section-ghost .title,
.footer .section-ghost .title,
.schedule-bridge .section-ghost .title{color:rgba(255,255,255,.044)!important}
.now-showing .section-ghost .type,
.timeline-section .section-ghost .type,
.footer .section-ghost .type,
.schedule-bridge .section-ghost .type{color:rgba(255,255,255,.052)!important}
.now-showing .section-ghost .script,
.timeline-section .section-ghost .script,
.footer .section-ghost .script,
.schedule-bridge .section-ghost .script{color:rgba(255,255,255,.065)!important}
.now-showing::after,.timeline-section::before,.footer::before,.schedule-bridge::after{color:rgba(255,255,255,.038)!important;opacity:1!important;text-shadow:none!important}
.hero-ghostwall span{color:rgba(255,255,255,.04)!important}
.hero-ghostwall span:nth-child(even){color:rgba(255,255,255,.031)!important}
.hero-ghostwall span:nth-child(3n){color:rgba(255,255,255,.047)!important}

/* Consistent ticket button system: header, hero, teaser, and timeline details */
.nav-actions a,.menu-toggle,.btn,.card-link,.teaser-mini-control{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.55rem!important;overflow:visible!important;clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px)!important;border:1px solid currentColor!important;border-radius:0!important;letter-spacing:.14em!important;text-transform:uppercase!important;line-height:1!important;text-decoration:none!important;transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease!important}
.nav-actions a::before,.nav-actions a::after,.menu-toggle::before,.menu-toggle::after,.btn::before,.btn::after,.card-link::before,.card-link::after,.teaser-mini-control::before,.teaser-mini-control::after{content:""!important;position:absolute!important;top:50%!important;width:16px!important;height:16px!important;border-radius:50%!important;transform:translateY(-50%)!important;z-index:3!important;pointer-events:none!important;box-shadow:0 0 0 1px currentColor!important}
.nav-actions a::before,.menu-toggle::before,.btn::before,.card-link::before,.teaser-mini-control::before{left:-9px!important}
.nav-actions a::after,.menu-toggle::after,.btn::after,.card-link::after,.teaser-mini-control::after{right:-9px!important}
.nav-actions a,.menu-toggle{background:#000!important;color:#fff!important;padding:1.02rem 1.34rem!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),inset 0 0 0 6px rgba(255,255,255,.05),0 12px 40px rgba(255,255,255,.055)!important}
.nav-actions a::before,.nav-actions a::after,.menu-toggle::before,.menu-toggle::after{background:#000!important}
.nav-actions a:hover,.menu-toggle:hover{background:#fff!important;color:#000!important;transform:translateY(-2px)!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12),inset 0 0 0 6px rgba(0,0,0,.06),0 18px 48px rgba(255,255,255,.12)!important}
.nav-actions a:hover::before,.nav-actions a:hover::after,.menu-toggle:hover::before,.menu-toggle:hover::after{background:#000!important;box-shadow:0 0 0 1px #fff!important}
.card-link{margin-top:1.35rem!important;padding:.95rem 1.24rem!important;background:#000!important;color:#fff!important;border-top:1px solid #000!important;font-family:var(--body)!important;font-size:clamp(13px,.98vw,16px)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),inset 0 0 0 6px rgba(255,255,255,.06)!important}
.card-link::before,.card-link::after{background:#fff!important;box-shadow:0 0 0 1px #000!important}
.episode-card:hover .card-link,.timeline-row.is-active .card-link{background:#111!important;color:#fff!important;transform:translateY(-2px)!important}
.card-link::after{content:""!important;position:absolute!important;right:-9px!important;top:50%!important;width:16px!important;height:16px!important;border-radius:50%!important;transform:translateY(-50%)!important;background:#fff!important;box-shadow:0 0 0 1px #000!important}
.teaser-mini-control{background:#fff!important;color:#000!important;border-color:#fff!important;padding:1.02rem 1.28rem!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12),inset 0 0 0 6px rgba(0,0,0,.055)!important}
.teaser-mini-control::before,.teaser-mini-control::after{background:#050505!important;box-shadow:0 0 0 1px #fff!important}
.teaser-mini-control:hover{background:#cfcfcf!important;color:#000!important;transform:translateY(-1px)!important}
.btn.primary,.btn.light{box-shadow:inset 0 0 0 1px rgba(0,0,0,.12),inset 0 0 0 6px rgba(0,0,0,.06),0 22px 70px rgba(255,255,255,.09)!important}
.btn.primary::before,.btn.primary::after,.btn.light::before,.btn.light::after{background:#000!important;box-shadow:0 0 0 1px #fff!important}
.btn.ghost::before,.btn.ghost::after,.btn:not(.primary):not(.light)::before,.btn:not(.primary):not(.light)::after{background:#000!important}

@media(max-width:900px){
  .nav-actions a{display:none!important}
  .card-link{width:auto!important;max-width:100%!important;text-align:center!important}
  .poster-caption{font-size:clamp(38px,8vw,54px)!important;right:-52px!important}
}
@media(max-width:560px){
  .poster-caption{display:none!important}
  .card-link{font-size:13px!important;padding:.86rem 1rem!important}
}



/* --- V10: make all normal buttons match the hero ticket; keep trailer button rectangular --- */
.nav-actions a,
.menu-toggle,
.btn:not(.teaser-mini-control),
.card-link,
.menu-list a .menu-label,
.small-ticket{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:auto!important;
  padding:1rem 1.45rem!important;
  border:1px solid #fff!important;
  border-radius:0!important;
  background:#000!important;
  color:#fff!important;
  font-family:var(--body)!important;
  font-size:clamp(14px,1.02vw,18px)!important;
  letter-spacing:.14em!important;
  font-weight:400!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  clip-path:polygon(13px 0,calc(100% - 13px) 0,100% 13px,100% calc(100% - 13px),calc(100% - 13px) 100%,13px 100%,0 calc(100% - 13px),0 13px)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.22),0 18px 50px rgba(0,0,0,.5)!important;
  overflow:visible!important;
  transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease!important;
}
.nav-actions a::before,.nav-actions a::after,
.menu-toggle::before,.menu-toggle::after,
.btn:not(.teaser-mini-control)::before,.btn:not(.teaser-mini-control)::after,
.card-link::before,.card-link::after,
.small-ticket::before,.small-ticket::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:18px!important;
  height:18px!important;
  border-radius:50%!important;
  background:#000!important;
  border:1px solid #fff!important;
  transform:translateY(-50%)!important;
  pointer-events:none!important;
  z-index:4!important;
  box-shadow:none!important;
}
.nav-actions a::before,.menu-toggle::before,.btn:not(.teaser-mini-control)::before,.card-link::before,.small-ticket::before{left:-10px!important;right:auto!important}
.nav-actions a::after,.menu-toggle::after,.btn:not(.teaser-mini-control)::after,.card-link::after,.small-ticket::after{right:-10px!important;left:auto!important}
.nav-actions a:hover,
.menu-toggle:hover,
.btn:not(.teaser-mini-control):hover,
.card-link:hover,
.episode-card:hover .card-link,
.timeline-row.is-active .card-link,
.small-ticket:hover{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
  transform:translateY(-5px)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.38),0 26px 70px rgba(255,255,255,.13)!important;
}
.nav-actions a:hover::before,.nav-actions a:hover::after,
.menu-toggle:hover::before,.menu-toggle:hover::after,
.btn:not(.teaser-mini-control):hover::before,.btn:not(.teaser-mini-control):hover::after,
.card-link:hover::before,.card-link:hover::after,
.episode-card:hover .card-link::before,.episode-card:hover .card-link::after,
.timeline-row.is-active .card-link::before,.timeline-row.is-active .card-link::after,
.small-ticket:hover::before,.small-ticket:hover::after{
  background:#000!important;
  border-color:#fff!important;
}
/* Open details specifically: no top-line underline, no odd double pseudo, same hero-ticket language */
.card-link{
  margin-top:1.35rem!important;
  border-top:1px solid #fff!important;
  padding:.98rem 1.42rem!important;
  width:auto!important;
  max-width:max-content!important;
  color:#fff!important;
  background:#000!important;
}
.card-link::after{right:-10px!important;left:auto!important;width:18px!important;height:18px!important;background:#000!important;border:1px solid #fff!important}
.card-link::before{left:-10px!important;width:18px!important;height:18px!important;background:#000!important;border:1px solid #fff!important}
/* The teaser trailer button stays a simple card-connected rectangle */
.teaser-mini-control{
  display:block!important;
  width:100%!important;
  border:0!important;
  border-top:1px solid rgba(255,255,255,.34)!important;
  border-radius:0!important;
  clip-path:none!important;
  padding:1rem 1.2rem!important;
  background:#fff!important;
  color:#000!important;
  font-family:var(--body)!important;
  font-size:clamp(14px,1vw,18px)!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  line-height:1!important;
  box-shadow:none!important;
  transition:background .2s ease,color .2s ease,transform .2s ease!important;
}
.teaser-mini-control::before,.teaser-mini-control::after{display:none!important;content:none!important}
.teaser-mini-control:hover{background:#cfcfcf!important;color:#000!important;transform:none!important;box-shadow:none!important}

/* --- V10: black-section ghost text should be visible without the cursor --- */
.now-showing::before{color:rgba(255,255,255,.075)!important;text-shadow:0 0 1px rgba(255,255,255,.05)!important}
.now-showing::after{color:rgba(255,255,255,.055)!important;opacity:1!important;text-shadow:0 0 1px rgba(255,255,255,.04)!important}
.timeline-section::before{opacity:.98!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.055),transparent)!important}
.timeline-section::after{color:rgba(255,255,255,.06)!important;opacity:1!important}
.now-showing .section-ghost,
.timeline-section .section-ghost{z-index:1!important;opacity:1!important;mix-blend-mode:normal!important;filter:none!important}
.now-showing .section-ghost span,
.timeline-section .section-ghost span{
  opacity:1!important;
  text-shadow:0 0 1px rgba(255,255,255,.045)!important;
  mix-blend-mode:normal!important;
}
.now-showing .section-ghost .title,
.timeline-section .section-ghost .title{color:rgba(255,255,255,.05)!important}
.now-showing .section-ghost .type,
.timeline-section .section-ghost .type{color:rgba(255,255,255,.07)!important}
.now-showing .section-ghost .script,
.timeline-section .section-ghost .script{color:rgba(255,255,255,.085)!important}
.now-showing .wrap,
.timeline-section .wrap{position:relative!important;z-index:3!important}

/* --- V10: more vertical Nitti typewriter motion in Now Showing + Timeline --- */
.now-showing{position:relative!important;overflow:hidden!important}
.now-runner,
.timeline-runner{
  position:absolute!important;
  z-index:1!important;
  pointer-events:none!important;
  color:rgba(255,255,255,.23)!important;
  font-family:var(--body)!important;
  font-size:clamp(12px,.92vw,16px)!important;
  letter-spacing:.24em!important;
  text-transform:uppercase!important;
  writing-mode:vertical-rl!important;
  overflow:hidden!important;
  text-shadow:0 0 8px rgba(255,255,255,.08)!important;
  opacity:.82!important;
}
.now-runner span,
.timeline-runner span{display:inline-block!important;animation:verticalRollLong 34s linear infinite!important}
.now-runner-left{left:clamp(18px,3.5vw,64px)!important;top:8%!important;bottom:8%!important}
.now-runner-right{right:clamp(18px,3.5vw,64px)!important;top:12%!important;bottom:12%!important;transform:rotate(180deg)!important}
.runner-left{left:clamp(18px,3vw,42px)!important;color:rgba(255,255,255,.24)!important}
.runner-right{right:clamp(18px,3vw,42px)!important;color:rgba(255,255,255,.22)!important}
.runner-inner-left{left:clamp(78px,8vw,140px)!important;top:90px!important;bottom:42px!important;color:rgba(255,255,255,.16)!important;font-size:clamp(11px,.82vw,14px)!important;opacity:.62!important}
.runner-inner-right{right:clamp(78px,8vw,140px)!important;top:132px!important;bottom:24px!important;color:rgba(255,255,255,.17)!important;font-size:clamp(11px,.82vw,14px)!important;opacity:.62!important;transform:rotate(180deg)!important}
.runner-inner-left span{animation-duration:42s!important;animation-direction:reverse!important}
.runner-inner-right span{animation-duration:38s!important}
@keyframes verticalRollLong{0%{transform:translateY(-12%)}50%{transform:translateY(16%)}100%{transform:translateY(-12%)}}
@media(max-width:980px){.now-runner,.timeline-runner{display:none!important}.nav-actions a{display:none!important}.card-link{max-width:100%!important}}
@media(max-width:560px){.card-link{font-size:13px!important;padding:.9rem 1.05rem!important}.menu-toggle{padding:.9rem 1.05rem!important}}



/* --- V12: unified hero-style ticket shape, better ghost balance, full-height runners --- */

/* Core ticket shape shared by header buttons, hero CTA, and timeline card CTA */
.nav-actions a,
.menu-toggle,
.btn:not(.teaser-mini-control),
.card-link{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  isolation:isolate!important;
  border-radius:0!important;
  clip-path:polygon(24px 0,calc(100% - 24px) 0,100% 24px,100% calc(100% - 24px),calc(100% - 24px) 100%,24px 100%,0 calc(100% - 24px),0 24px)!important;
  padding:1.04rem 1.42rem!important;
  border:1px solid currentColor!important;
  text-transform:uppercase!important;
  letter-spacing:.14em!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:0 14px 42px rgba(0,0,0,.32)!important;
}
.nav-actions a::before,.nav-actions a::after,
.menu-toggle::before,.menu-toggle::after,
.btn:not(.teaser-mini-control)::before,.btn:not(.teaser-mini-control)::after,
.card-link::before,.card-link::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:20px!important;
  height:20px!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
  pointer-events:none!important;
  box-shadow:none!important;
}
.nav-actions a::before,.menu-toggle::before,.btn:not(.teaser-mini-control)::before,.card-link::before{left:-10px!important}
.nav-actions a::after,.menu-toggle::after,.btn:not(.teaser-mini-control)::after,.card-link::after{right:-10px!important}

/* Header buttons: solid black, white text; white on hover */
.nav-actions a,
.menu-toggle{
  background:#000!important;
  color:#fff!important;
  border-color:#fff!important;
}
.nav-actions a::before,.nav-actions a::after,
.menu-toggle::before,.menu-toggle::after{
  background:#000!important;
  border:1px solid #fff!important;
}
.nav-actions a:hover,
.menu-toggle:hover{
  background:#fff!important;
  color:#000!important;
  border-color:#000!important;
  transform:translateY(-2px)!important;
  box-shadow:0 20px 54px rgba(0,0,0,.3)!important;
}
.nav-actions a:hover::before,.nav-actions a:hover::after,
.menu-toggle:hover::before,.menu-toggle:hover::after{
  background:#000!important;
  border-color:#000!important;
}

/* Hero CTA: solid white, black text; black on hover */
.hero-actions .cast-ticket,
.hero-actions .btn.primary.ticket-btn.cast-ticket,
.hero-actions .btn.light.ticket-btn.cast-ticket{
  background:#fff!important;
  color:#000!important;
  border-color:#000!important;
  box-shadow:0 22px 64px rgba(0,0,0,.42)!important;
}
.hero-actions .cast-ticket::before,
.hero-actions .cast-ticket::after{
  background:#000!important;
  border:1px solid #000!important;
}



/* Timeline CTA: solid black to pop, label is handled in markup */
.card-link{
  background:#000!important;
  color:#fff!important;
  border-color:#fff!important;
  min-width:200px!important;
  padding:1rem 1.3rem!important;
  font-size:14px!important;
  box-shadow:0 16px 42px rgba(0,0,0,.35)!important;
}
.card-link::before,.card-link::after{
  background:#000!important;
  border:1px solid #fff!important;
}
.card-link:hover{
  background:#fff!important;
  color:#000!important;
  border-color:#000!important;
  transform:translateY(-2px)!important;
}
.card-link:hover::before,.card-link:hover::after{
  background:#000!important;
  border-color:#000!important;
}

/* Trailer button stays rectangular, white to black hover */
.teaser-mini-control{
  clip-path:none!important;
  border-radius:0!important;
  border:1px solid #000!important;
  background:#fff!important;
  color:#000!important;
  box-shadow:0 14px 42px rgba(0,0,0,.24)!important;
  padding:1rem 1.35rem!important;
}
.teaser-mini-control::before,.teaser-mini-control::after{display:none!important;content:none!important}
.teaser-mini-control:hover{
  background:#000!important;
  color:#fff!important;
  border-color:#fff!important;
  transform:translateY(-2px)!important;
}

/* Slightly tone down Now Showing ghost text */
.now-showing::before{color:rgba(255,255,255,.044)!important;text-shadow:none!important}
.now-showing::after{color:rgba(255,255,255,.03)!important;text-shadow:none!important}
.now-showing .section-ghost .title{color:rgba(255,255,255,.032)!important}
.now-showing .section-ghost .type{color:rgba(255,255,255,.042)!important}
.now-showing .section-ghost .script{color:rgba(255,255,255,.05)!important}

/* Make timeline ghost text ever-so-slightly more visible */
.timeline-section::before,.timeline-section::after{color:rgba(255,255,255,.04)!important;text-shadow:none!important}
.timeline-section .section-ghost .title{color:rgba(255,255,255,.042)!important}
.timeline-section .section-ghost .type{color:rgba(255,255,255,.054)!important}
.timeline-section .section-ghost .script{color:rgba(255,255,255,.062)!important}

/* Full-height vertical Nitti runners in Now Showing */
.now-showing{overflow:hidden!important;position:relative!important}
.now-runner{
  top:-8px!important;
  bottom:-8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:.68!important;
}
.now-runner-left{left:clamp(14px,2.8vw,42px)!important}
.now-runner-right{right:clamp(14px,2.8vw,42px)!important}
.now-runner span{
  min-height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  animation-duration:40s!important;
}

/* A touch more visible for timeline runners too, matching the user's preferred look */
.timeline-runner{opacity:.78!important}
.runner-left{color:rgba(255,255,255,.25)!important}
.runner-right{color:rgba(255,255,255,.23)!important}
.runner-inner-left{color:rgba(255,255,255,.18)!important}
.runner-inner-right{color:rgba(255,255,255,.18)!important}

@media(max-width:980px){
  .nav-actions a{display:none!important}
  .card-link{min-width:unset!important;width:100%!important}
}



/* V13 — restore exact ticket silhouette: rectangle with chamfered corners + half-circle cutouts */
:root{
  --ticket-corner: 18px;
  --ticket-notch: 22px;
}

.nav-actions a,
.menu-toggle,
.hero-actions .cast-ticket,
.card-link{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  border-radius:0!important;
  text-decoration:none!important;
  line-height:1!important;
  clip-path:polygon(var(--ticket-corner) 0,calc(100% - var(--ticket-corner)) 0,100% var(--ticket-corner),100% calc(100% - var(--ticket-corner)),calc(100% - var(--ticket-corner)) 100%,var(--ticket-corner) 100%,0 calc(100% - var(--ticket-corner)),0 var(--ticket-corner))!important;
  transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease!important;
  box-shadow:0 16px 40px rgba(0,0,0,.22)!important;
}
.nav-actions a::before,.nav-actions a::after,
.menu-toggle::before,.menu-toggle::after,
.hero-actions .cast-ticket::before,.hero-actions .cast-ticket::after,
.card-link::before,.card-link::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:var(--ticket-notch)!important;
  height:var(--ticket-notch)!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  background:var(--ticket-cutout, #000)!important;
  z-index:3!important;
  pointer-events:none!important;
  box-shadow:none!important;
  border:none!important;
}
.nav-actions a::before,.menu-toggle::before,.hero-actions .cast-ticket::before,.card-link::before{left:calc(var(--ticket-notch) * -.5)!important}
.nav-actions a::after,.menu-toggle::after,.hero-actions .cast-ticket::after,.card-link::after{right:calc(var(--ticket-notch) * -.5)!important}

/* Header buttons */
.nav-actions a,
.menu-toggle{
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  --ticket-cutout:#000;
  padding:1.02rem 1.34rem!important;
  letter-spacing:.14em!important;
}
.nav-actions a:hover,
.menu-toggle:hover{
  background:#000!important;
  color:#fff!important;
  border-color:#fff!important;
  transform:translateY(-2px) scale(1.035)!important;
  box-shadow:0 20px 52px rgba(0,0,0,.28)!important;
}

/* Hero ticket */
.hero-actions .cast-ticket,
.hero-actions .btn.primary.ticket-btn.cast-ticket,
.hero-actions .btn.light.ticket-btn.cast-ticket{
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  --ticket-cutout:#000;
  box-shadow:0 22px 64px rgba(0,0,0,.34)!important;
}


/* Timeline / details buttons */
.card-link{
  background:#000!important;
  color:#fff!important;
  border:1px solid #000!important;
  --ticket-cutout:#fff;
  margin-top:1.35rem!important;
  padding:.98rem 1.3rem!important;
  font-size:clamp(13px,.98vw,16px)!important;
  letter-spacing:.14em!important;
  min-width:208px!important;
}
.card-link:hover,
.episode-card:hover .card-link,
.timeline-row.is-active .card-link{
  background:#1e1e1e!important;
  color:#fff!important;
  border-color:#1e1e1e!important;
  transform:translateY(-2px) scale(1.04)!important;
  box-shadow:0 20px 52px rgba(0,0,0,.22)!important;
}

/* Keep trailer button rectangular but still enlarge slightly */
.teaser-mini-control{
  border-radius:0!important;
  clip-path:none!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #000!important;
  transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease!important;
}
.teaser-mini-control::before,.teaser-mini-control::after{display:none!important;content:none!important}
.teaser-mini-control:hover{
  background:#000!important;
  color:#fff!important;
  transform:translateY(-2px) scale(1.03)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.18)!important;
}

/* Give ticket buttons the same gentle hover feel */
.hero-actions .cast-ticket span,
.hero-actions .cast-ticket strong{position:relative;z-index:1!important}

/* Make Now Showing ghost text more subtle again */
.now-showing::before{color:rgba(255,255,255,.03)!important;text-shadow:none!important}
.now-showing::after{color:rgba(255,255,255,.022)!important;text-shadow:none!important}
.now-showing .section-ghost .title{color:rgba(255,255,255,.018)!important}
.now-showing .section-ghost .type{color:rgba(255,255,255,.024)!important}
.now-showing .section-ghost .script{color:rgba(255,255,255,.03)!important}

/* Keep timeline ghost text a touch more visible than before */
.timeline-section::before,.timeline-section::after{color:rgba(255,255,255,.04)!important;text-shadow:none!important}
.timeline-section .section-ghost .title{color:rgba(255,255,255,.046)!important}
.timeline-section .section-ghost .type{color:rgba(255,255,255,.058)!important}
.timeline-section .section-ghost .script{color:rgba(255,255,255,.067)!important}

@media (max-width:980px){
  .card-link{min-width:unset!important;width:100%!important}
}



/* V14 — rebuild every clickable ticket from the hero ticket style */
:root{
  --hero-ticket-corner:28px;
  --hero-ticket-notch:34px;
  --ticket-corner:18px;
  --ticket-notch:24px;
}

/* Base for all ticket buttons except the trailer rectangle */
:is(.nav-actions a,.menu-toggle,.hero-actions .cast-ticket,.card-link){
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.55rem!important;
  overflow:visible!important;
  isolation:isolate!important;
  border-radius:0!important;
  text-decoration:none!important;
  line-height:1!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  clip-path:polygon(
    var(--ticket-corner) 0,
    calc(100% - var(--ticket-corner)) 0,
    100% var(--ticket-corner),
    100% calc(100% - var(--ticket-corner)),
    calc(100% - var(--ticket-corner)) 100%,
    var(--ticket-corner) 100%,
    0 calc(100% - var(--ticket-corner)),
    0 var(--ticket-corner)
  )!important;
  transition:transform .2s ease,background .2s ease,color .2s ease,filter .2s ease,box-shadow .2s ease!important;
}
:is(.nav-actions a,.menu-toggle,.hero-actions .cast-ticket,.card-link)::before,
:is(.nav-actions a,.menu-toggle,.hero-actions .cast-ticket,.card-link)::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:var(--ticket-notch)!important;
  height:var(--ticket-notch)!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  background:var(--ticket-cutout,#000)!important;
  border:0!important;
  box-shadow:none!important;
  z-index:4!important;
  pointer-events:none!important;
}
:is(.nav-actions a,.menu-toggle,.hero-actions .cast-ticket,.card-link)::before{left:calc(var(--ticket-notch) * -.5)!important;right:auto!important}
:is(.nav-actions a,.menu-toggle,.hero-actions .cast-ticket,.card-link)::after{right:calc(var(--ticket-notch) * -.5)!important;left:auto!important}

/* Hero button: preserve the exact big white ticket feel */
.hero-actions .cast-ticket,
.hero-actions .btn.primary.ticket-btn.cast-ticket,
.hero-actions .btn.light.ticket-btn.cast-ticket{
  --ticket-corner:var(--hero-ticket-corner);
  --ticket-notch:var(--hero-ticket-notch);
  --ticket-cutout:#000;
  background:#fff!important;
  color:#000!important;
  border:0!important;
  min-width:min(700px,86vw)!important;
  min-height:132px!important;
  padding:1.55rem 4.8rem!important;
  box-shadow:0 28px 80px rgba(0,0,0,.38),0 0 34px rgba(255,255,255,.12)!important;
}
.hero-actions .cast-ticket span{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  font-family:var(--body)!important;
  font-size:clamp(15px,1.35vw,23px)!important;
  letter-spacing:.42em!important;
  line-height:1.05!important;
  color:rgba(0,0,0,.66)!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.hero-actions .cast-ticket strong{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  margin-top:.7rem!important;
  font-family:var(--body)!important;
  font-size:clamp(30px,3.3vw,54px)!important;
  letter-spacing:.31em!important;
  line-height:1!important;
  color:#000!important;
  white-space:nowrap!important;
}




/* Header tickets: same shape language, smaller */
.nav-actions a,
.menu-toggle{
  --ticket-corner:15px;
  --ticket-notch:20px;
  --ticket-cutout:#000;
  background:#fff!important;
  color:#000!important;
  padding:1.03rem 1.48rem!important;
  font-family:var(--body)!important;
  font-size:clamp(14px,.9vw,17px)!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  box-shadow:0 14px 36px rgba(0,0,0,.24)!important;
}
.nav-actions a:hover,
.menu-toggle:hover{
  background:#000!important;
  color:#fff!important;
  transform:translateY(-2px) scale(1.045)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.5)!important;
}

/* Timeline details tickets: black version of the same ticket */
.card-link{
  --ticket-corner:17px;
  --ticket-notch:22px;
  --ticket-cutout:#fff;
  background:#000!important;
  color:#fff!important;
  padding:1rem 1.55rem!important;
  min-width:220px!important;
  font-family:var(--body)!important;
  font-size:clamp(13px,.95vw,16px)!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  border:0!important;
  border-top:0!important;
  margin-top:1.35rem!important;
  box-shadow:0 16px 38px rgba(0,0,0,.22)!important;
}
.card-link:hover,
.episode-card:hover .card-link,
.timeline-row.is-active .card-link{
  background:#151515!important;
  color:#fff!important;
  transform:translateY(-2px) scale(1.05)!important;
  filter:brightness(1.07)!important;
  box-shadow:0 22px 52px rgba(0,0,0,.28)!important;
}

/* Trailer stays rectangular but still feels clickable */
.teaser-mini-control{
  clip-path:none!important;
  border-radius:0!important;
  background:#fff!important;
  color:#000!important;
  border:0!important;
  box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
  transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease!important;
}
.teaser-mini-control::before,.teaser-mini-control::after{display:none!important;content:none!important}
.teaser-mini-control:hover{
  background:#d8d8d8!important;
  color:#000!important;
  transform:translateY(-2px) scale(1.025)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.26)!important;
}

/* Make cursor clearly react over clickable elements */
.cursor{transition:width .16s ease,height .16s ease,border .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease!important}
body.is-hovering .cursor{
  width:88px!important;
  height:88px!important;
  transform:translate(calc(var(--mx) - 44px),calc(var(--my) - 44px))!important;
  border:1px solid #fff!important;
  background:rgba(255,255,255,.12)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.18),0 0 34px rgba(255,255,255,.26)!important;
}
body.is-hovering .cursor::after{
  content:"CLICK"!important;
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  font-family:var(--body)!important;
  font-size:10px!important;
  letter-spacing:.18em!important;
  color:#fff!important;
  text-shadow:0 0 12px #000!important;
}
body.is-hovering .cursor-dot{
  width:7px!important;
  height:7px!important;
  transform:translate(calc(var(--mx) - 3.5px),calc(var(--my) - 3.5px))!important;
  background:#fff!important;
}
:is(a,button,[role="button"],.episode-card,.reel-card){cursor:pointer!important}

/* Now Showing background: keep it subtle */
.now-showing::before{color:rgba(255,255,255,.022)!important;text-shadow:none!important}
.now-showing::after{color:rgba(255,255,255,.016)!important;text-shadow:none!important}
.now-showing .section-ghost .title{color:rgba(255,255,255,.014)!important}
.now-showing .section-ghost .type{color:rgba(255,255,255,.018)!important}
.now-showing .section-ghost .script{color:rgba(255,255,255,.024)!important}
.now-runner{opacity:.54!important;color:rgba(255,255,255,.18)!important}

@media(max-width:980px){
  .nav-actions a{display:none!important}
  .hero-actions .cast-ticket{min-width:min(640px,86vw)!important;min-height:116px!important;padding:1.35rem 3.2rem!important}
  .card-link{width:100%!important;min-width:0!important}
}
@media(max-width:560px){
  .hero-actions .cast-ticket{--ticket-corner:20px;--ticket-notch:26px;min-height:104px!important;padding:1.18rem 2.1rem!important}
  .hero-actions .cast-ticket span{font-size:12px!important;letter-spacing:.24em!important}
  .hero-actions .cast-ticket strong{font-size:28px!important;letter-spacing:.2em!important}
}



/* V15 — final ticket reset: scoped selectors win over the older button experiments */
:root{--v15-black:#000;--v15-white:#fff;--v15-grey:#1a1a1a}

/* shared exact ticket silhouette: rectangle, angled corners, centered half-circle side cutouts */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket,
html body .timeline-section .card-link{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  isolation:isolate!important;
  border-radius:0!important;
  text-decoration:none!important;
  line-height:1!important;
  border:1px solid var(--ticket-border,#fff)!important;
  background:var(--ticket-bg,#fff)!important;
  color:var(--ticket-color,#000)!important;
  clip-path:polygon(
    var(--ticket-corner,16px) 0,
    calc(100% - var(--ticket-corner,16px)) 0,
    100% var(--ticket-corner,16px),
    100% calc(100% - var(--ticket-corner,16px)),
    calc(100% - var(--ticket-corner,16px)) 100%,
    var(--ticket-corner,16px) 100%,
    0 calc(100% - var(--ticket-corner,16px)),
    0 var(--ticket-corner,16px)
  )!important;
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease!important;
  box-shadow:var(--ticket-shadow,0 18px 52px rgba(0,0,0,.35))!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::before,
html body .site-nav .menu-toggle::after,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::before,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::after,
html body .timeline-section .card-link::before,
html body .timeline-section .card-link::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:var(--ticket-notch,18px)!important;
  height:var(--ticket-notch,18px)!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  background:var(--ticket-hole,#000)!important;
  border:0!important;
  box-shadow:none!important;
  z-index:4!important;
  pointer-events:none!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .menu-toggle::before,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::before,
html body .timeline-section .card-link::before{left:calc(var(--ticket-notch,18px) / -2)!important;right:auto!important}
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::after,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::after,
html body .timeline-section .card-link::after{right:calc(var(--ticket-notch,18px) / -2)!important;left:auto!important}

/* HERO: restore previous good size; only shape/color are controlled here */
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{
  --ticket-corner:13px;
  --ticket-notch:18px;
  --ticket-bg:#fff;
  --ticket-color:#000;
  --ticket-border:#fff;
  --ticket-hole:#000;
  --ticket-shadow:0 24px 80px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.95) inset;
  min-width:clamp(245px,25vw,350px)!important;
  min-height:0!important;
  max-width:none!important;
  width:auto!important;
  padding:1.02rem 1.42rem!important;
  gap:.36rem!important;
  flex-direction:column!important;
  font-family:var(--body)!important;
  font-size:clamp(15px,1.15vw,19px)!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket span{
  display:block!important;
  position:relative!important;
  z-index:2!important;
  margin:0 0 .22rem!important;
  font-family:var(--body)!important;
  font-size:clamp(11px,.78vw,13px)!important;
  letter-spacing:.16em!important;
  line-height:1.05!important;
  color:rgba(0,0,0,.66)!important;
  white-space:nowrap!important;
}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket strong{
  display:block!important;
  position:relative!important;
  z-index:2!important;
  margin:0!important;
  font-family:var(--body)!important;
  font-size:clamp(18px,1.62vw,25px)!important;
  letter-spacing:.14em!important;
  line-height:1!important;
  color:#000!important;
  font-weight:400!important;
  white-space:nowrap!important;
}




/* HEADER: same shape, compact version */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  --ticket-corner:12px;
  --ticket-notch:16px;
  --ticket-bg:#fff;
  --ticket-color:#000;
  --ticket-border:#fff;
  --ticket-hole:#000;
  --ticket-shadow:0 12px 34px rgba(0,0,0,.26);
  padding:.86rem 1.14rem!important;
  min-width:0!important;
  min-height:0!important;
  font-family:var(--body)!important;
  font-size:clamp(13px,.88vw,16px)!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
html body .site-nav .nav-actions a:hover,
html body .site-nav .menu-toggle:hover{
  --ticket-bg:#000;
  --ticket-color:#fff;
  --ticket-border:#fff;
  --ticket-hole:#000;
  transform:translateY(-2px) scale(1.035)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.34)!important;
}

/* TIMELINE DETAILS: same silhouette, black ticket on white card */
html body .timeline-section .card-link{
  --ticket-corner:13px;
  --ticket-notch:18px;
  --ticket-bg:#000;
  --ticket-color:#fff;
  --ticket-border:#000;
  --ticket-hole:#fff;
  --ticket-shadow:0 12px 32px rgba(0,0,0,.22);
  display:inline-flex!important;
  margin-top:1.35rem!important;
  padding:.88rem 1.22rem!important;
  min-width:178px!important;
  width:auto!important;
  border-top:1px solid #000!important;
  font-family:var(--body)!important;
  font-size:clamp(13px,.9vw,15px)!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
html body .timeline-section .card-link:hover,
html body .timeline-section .episode-card:hover .card-link,
html body .timeline-section .timeline-row.is-active .card-link{
  --ticket-bg:#111;
  --ticket-color:#fff;
  --ticket-border:#111;
  --ticket-hole:#fff;
  transform:translateY(-2px) scale(1.04)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.25)!important;
}

/* Trailer remains rectangular, not a ticket */
html body .teaser-mini-control{
  clip-path:none!important;
  border-radius:0!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #000!important;
  transform:none!important;
}
html body .teaser-mini-control::before,
html body .teaser-mini-control::after{display:none!important;content:none!important}
html body .teaser-mini-control:hover{
  background:#000!important;
  color:#fff!important;
  transform:translateY(-2px) scale(1.02)!important;
}

/* Clickable cursor feedback: visible change over any link/button/card */
body.is-hovering .cursor{
  width:54px!important;
  height:54px!important;
  border-color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  box-shadow:0 0 0 1px rgba(0,0,0,.18),0 0 34px rgba(255,255,255,.42)!important;
  transform:translate(-50%,-50%) scale(1)!important;
}
body.is-hovering .cursor::after{
  content:"CLICK"!important;
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  font-family:var(--body)!important;
  font-size:9px!important;
  letter-spacing:.16em!important;
  color:#fff!important;
}
body.is-hovering .cursor-dot{opacity:0!important;transform:scale(.25)!important}

@media(max-width:900px){
  html body .site-nav .nav-actions a{display:none!important}
  html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{min-width:min(320px,82vw)!important;padding:1rem 1.35rem!important}
  html body .timeline-section .card-link{width:100%!important;min-width:0!important}
}
@media(max-width:560px){
  html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{min-width:236px!important;padding:.95rem 1.2rem!important}
  html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket span{font-size:11px!important;letter-spacing:.14em!important}
  html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket strong{font-size:20px!important;letter-spacing:.13em!important}
}



/* V16 — final override: fix clickable cursor, rebuild non-hero tickets from the hero silhouette */
:root{
  --ticket-corner-small:13px;
  --ticket-notch-small:18px;
  --nav-ticket-bg:#fff;
  --nav-ticket-text:#000;
  --nav-ticket-hole:#282828;
  --timeline-ticket-bg:#7a7a7a;
  --timeline-ticket-text:#fff;
  --timeline-ticket-hole:#fff;
}

/* cursor: no text; stays locked to mouse instead of jumping to top-left */
html body .cursor{
  transform:translate(calc(var(--mx, 50vw) - 21px),calc(var(--my, 50vh) - 21px))!important;
  transition:width .15s ease,height .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .08s linear!important;
}
html body.is-hovering .cursor{
  width:58px!important;
  height:58px!important;
  transform:translate(calc(var(--mx, 50vw) - 29px),calc(var(--my, 50vh) - 29px)) scale(1.05)!important;
  border-color:#fff!important;
  background:rgba(255,255,255,.11)!important;
  box-shadow:0 0 0 1px rgba(0,0,0,.22),0 0 36px rgba(255,255,255,.44)!important;
}
html body.is-hovering .cursor::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:8px!important;
  height:8px!important;
  border-radius:50%!important;
  background:#fff!important;
  transform:translate(-50%,-50%)!important;
  box-shadow:0 0 18px rgba(255,255,255,.7)!important;
}
html body.is-hovering .cursor::after{
  content:""!important;
  position:absolute!important;
  inset:9px!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:50%!important;
  background:transparent!important;
  display:block!important;
  color:transparent!important;
  letter-spacing:0!important;
  font-size:0!important;
  pointer-events:none!important;
}
html body.is-clicking .cursor{
  transform:translate(calc(var(--mx, 50vw) - 29px),calc(var(--my, 50vh) - 29px)) scale(.82)!important;
  background:rgba(255,255,255,.22)!important;
}
html body.is-hovering .cursor-dot{
  opacity:0!important;
  transform:translate(calc(var(--mx, 50vw) - 2px),calc(var(--my, 50vh) - 2px)) scale(.2)!important;
}
:is(a,button,[role="button"],.episode-card,.reel-card,.teaser-expand){cursor:none!important}
@media(max-width:560px){:is(a,button,[role="button"],.episode-card,.reel-card,.teaser-expand){cursor:pointer!important}}

/* unify the ticket geometry — same angled rectangle + exact centered side half-circles */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle,
html body .timeline-section .card-link{
  --ticket-corner:var(--ticket-corner-small)!important;
  --ticket-notch:var(--ticket-notch-small)!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  isolation:isolate!important;
  border-radius:0!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
  line-height:1!important;
  clip-path:polygon(
    var(--ticket-corner) 0,
    calc(100% - var(--ticket-corner)) 0,
    100% var(--ticket-corner),
    100% calc(100% - var(--ticket-corner)),
    calc(100% - var(--ticket-corner)) 100%,
    var(--ticket-corner) 100%,
    0 calc(100% - var(--ticket-corner)),
    0 var(--ticket-corner)
  )!important;
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::before,
html body .site-nav .menu-toggle::after,
html body .timeline-section .card-link::before,
html body .timeline-section .card-link::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:var(--ticket-notch)!important;
  height:var(--ticket-notch)!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  background:var(--ticket-hole-current)!important;
  border:0!important;
  box-shadow:none!important;
  z-index:3!important;
  pointer-events:none!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .menu-toggle::before,
html body .timeline-section .card-link::before{left:calc(var(--ticket-notch) / -2)!important;right:auto!important}
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::after,
html body .timeline-section .card-link::after{right:calc(var(--ticket-notch) / -2)!important;left:auto!important}

/* header tickets: white body, grey cutouts/background, black hover */
html body .site-nav{
  background:#282828!important;
  border-bottom:1px solid rgba(255,255,255,.2)!important;
}
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  --ticket-hole-current:var(--nav-ticket-hole)!important;
  background:var(--nav-ticket-bg)!important;
  color:var(--nav-ticket-text)!important;
  border:1px solid #fff!important;
  padding:.86rem 1.18rem!important;
  min-width:0!important;
  min-height:0!important;
  font-family:var(--body)!important;
  font-size:clamp(13px,.88vw,16px)!important;
  letter-spacing:.14em!important;
  box-shadow:0 12px 34px rgba(0,0,0,.24)!important;
}
html body .site-nav .nav-actions a:hover,
html body .site-nav .menu-toggle:hover{
  background:#000!important;
  color:#fff!important;
  border-color:#fff!important;
  transform:translateY(-2px) scale(1.045)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.34)!important;
}

/* timeline More Details tickets: medium grey base, flip to white + enlarge */
html body .timeline-section .card-link{
  --ticket-hole-current:var(--timeline-ticket-hole)!important;
  background:var(--timeline-ticket-bg)!important;
  color:var(--timeline-ticket-text)!important;
  border:1px solid var(--timeline-ticket-bg)!important;
  border-top:1px solid var(--timeline-ticket-bg)!important;
  margin-top:1.35rem!important;
  padding:.9rem 1.24rem!important;
  min-width:178px!important;
  width:auto!important;
  font-family:var(--body)!important;
  font-size:clamp(13px,.9vw,15px)!important;
  letter-spacing:.14em!important;
  box-shadow:0 12px 32px rgba(0,0,0,.2)!important;
}
html body .timeline-section .card-link:hover,
html body .timeline-section .episode-card:hover .card-link,
html body .timeline-section .timeline-row.is-active .card-link{
  background:#fff!important;
  color:#000!important;
  border-color:#000!important;
  transform:translateY(-2px) scale(1.055)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.24)!important;
}

/* keep the hero ticket's current good size, but let it enlarge on hover only */
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{
  transform:none!important;
}


/* trailer remains a regular rectangle, but flips and enlarges like the others */
html body .teaser-mini-control{
  clip-path:none!important;
  border-radius:0!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #000!important;
  transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease!important;
}
html body .teaser-mini-control::before,
html body .teaser-mini-control::after{display:none!important;content:none!important}
html body .teaser-mini-control:hover{
  background:#000!important;
  color:#fff!important;
  transform:translateY(-2px) scale(1.03)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.18)!important;
}

@media(max-width:900px){
  html body .site-nav .nav-actions a{display:none!important}
  html body .timeline-section .card-link{width:100%!important;min-width:0!important}
}



/* V17 — keep the header/nav black, make only header button bodies grey, and make timeline buttons grey */
html body .site-nav{
  background:#000!important;
  border-bottom:1px solid rgba(255,255,255,.22)!important;
}
html body .site-nav .brand{color:#fff!important}

/* Header buttons: grey ticket on black header, black cutouts so the holes match the black nav */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  --ticket-hole-current:#000!important;
  background:#d9d9d9!important;
  color:#000!important;
  border:1px solid #d9d9d9!important;
  box-shadow:0 12px 34px rgba(0,0,0,.28)!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::before,
html body .site-nav .menu-toggle::after{
  background:#000!important;
  border:none!important;
  box-shadow:none!important;
}
html body .site-nav .nav-actions a:hover,
html body .site-nav .menu-toggle:hover{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
  transform:translateY(-2px) scale(1.055)!important;
  box-shadow:0 18px 46px rgba(255,255,255,.12)!important;
}
html body .site-nav .nav-actions a:hover::before,
html body .site-nav .nav-actions a:hover::after,
html body .site-nav .menu-toggle:hover::before,
html body .site-nav .menu-toggle:hover::after{
  background:#000!important;
}

/* Timeline More Details buttons: readable medium grey, not dark; flip + enlarge on hover */
html body .timeline-section .card-link{
  --ticket-hole-current:#fff!important;
  background:#9f9f9f!important;
  color:#000!important;
  border:1px solid #9f9f9f!important;
  border-top:1px solid #9f9f9f!important;
  box-shadow:0 12px 32px rgba(0,0,0,.18)!important;
}
html body .timeline-section .card-link::before,
html body .timeline-section .card-link::after{
  background:#fff!important;
  border:none!important;
  box-shadow:none!important;
}
html body .timeline-section .card-link:hover,
html body .timeline-section .episode-card:hover .card-link,
html body .timeline-section .timeline-row.is-active .card-link{
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
  transform:translateY(-2px) scale(1.06)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.24)!important;
}
html body .timeline-section .card-link:hover::before,
html body .timeline-section .card-link:hover::after,
html body .timeline-section .episode-card:hover .card-link::before,
html body .timeline-section .episode-card:hover .card-link::after,
html body .timeline-section .timeline-row.is-active .card-link::before,
html body .timeline-section .timeline-row.is-active .card-link::after{
  background:#fff!important;
}

/* Keep cursor working exactly like v16; just make clickable hover slightly clearer */
html body.is-hovering .cursor{
  box-shadow:0 0 0 1px rgba(0,0,0,.28),0 0 40px rgba(255,255,255,.48)!important;
}



/* V18 — keep nav black, make header button cutouts visible against it */
html body .site-nav{
  background:#000!important;
  border-bottom:1px solid rgba(255,255,255,.22)!important;
}
html body .site-nav .brand{color:#fff!important}

/* Header buttons: grey ticket bodies on black nav, with visible cutout edge */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  --ticket-corner:16px!important;
  --ticket-notch:20px!important;
  --ticket-body:#d9d9d9!important;
  --ticket-ink:#000!important;
  --ticket-cutout:#000!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  clip-path:polygon(var(--ticket-corner) 0,calc(100% - var(--ticket-corner)) 0,100% var(--ticket-corner),100% calc(100% - var(--ticket-corner)),calc(100% - var(--ticket-corner)) 100%,var(--ticket-corner) 100%,0 calc(100% - var(--ticket-corner)),0 var(--ticket-corner))!important;
  background:var(--ticket-body)!important;
  color:var(--ticket-ink)!important;
  border:1px solid #d9d9d9!important;
  border-radius:0!important;
  padding:1.02rem 1.34rem!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  overflow:visible!important;
  box-shadow:0 14px 42px rgba(0,0,0,.32)!important;
  transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::before,
html body .site-nav .menu-toggle::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:var(--ticket-notch)!important;
  height:var(--ticket-notch)!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  background:var(--ticket-cutout)!important;
  border:1px solid #d9d9d9!important; /* visible rim on black nav */
  box-shadow:none!important;
  z-index:3!important;
  pointer-events:none!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .menu-toggle::before{left:calc(var(--ticket-notch) / -2)!important;right:auto!important}
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::after{right:calc(var(--ticket-notch) / -2)!important;left:auto!important}
html body .site-nav .nav-actions a:hover,
html body .site-nav .menu-toggle:hover{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
  transform:translateY(-2px) scale(1.04)!important;
  box-shadow:0 20px 56px rgba(255,255,255,.12)!important;
}
html body .site-nav .nav-actions a:hover::before,
html body .site-nav .nav-actions a:hover::after,
html body .site-nav .menu-toggle:hover::before,
html body .site-nav .menu-toggle:hover::after{
  background:#000!important;
  border-color:#fff!important;
}

/* Timeline detail buttons: medium grey, clear ticket cutouts on white cards */
html body .timeline-section .card-link{
  --ticket-corner:16px!important;
  --ticket-notch:20px!important;
  --ticket-body:#bdbdbd!important;
  --ticket-cutout:#fff!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  clip-path:polygon(var(--ticket-corner) 0,calc(100% - var(--ticket-corner)) 0,100% var(--ticket-corner),100% calc(100% - var(--ticket-corner)),calc(100% - var(--ticket-corner)) 100%,var(--ticket-corner) 100%,0 calc(100% - var(--ticket-corner)),0 var(--ticket-corner))!important;
  background:var(--ticket-body)!important;
  color:#000!important;
  border:1px solid #bdbdbd!important;
  border-top:1px solid #bdbdbd!important;
  border-radius:0!important;
  margin-top:1.35rem!important;
  padding:.98rem 1.3rem!important;
  min-width:208px!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  overflow:visible!important;
  box-shadow:0 14px 34px rgba(0,0,0,.12)!important;
  transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
html body .timeline-section .card-link::before,
html body .timeline-section .card-link::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:var(--ticket-notch)!important;
  height:var(--ticket-notch)!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  background:#fff!important;
  border:1px solid #fff!important;
  box-shadow:none!important;
  z-index:3!important;
  pointer-events:none!important;
}
html body .timeline-section .card-link::before{left:calc(var(--ticket-notch) / -2)!important;right:auto!important}
html body .timeline-section .card-link::after{right:calc(var(--ticket-notch) / -2)!important;left:auto!important}
html body .timeline-section .card-link:hover,
html body .timeline-section .episode-card:hover .card-link,
html body .timeline-section .timeline-row.is-active .card-link{
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
  transform:translateY(-2px) scale(1.045)!important;
  box-shadow:0 20px 52px rgba(0,0,0,.22)!important;
}
html body .timeline-section .card-link:hover::before,
html body .timeline-section .card-link:hover::after,
html body .timeline-section .episode-card:hover .card-link::before,
html body .timeline-section .episode-card:hover .card-link::after,
html body .timeline-section .timeline-row.is-active .card-link::before,
html body .timeline-section .timeline-row.is-active .card-link::after{
  background:#fff!important;
  border-color:#fff!important;
}

@media(max-width:980px){
  html body .site-nav .nav-actions a{display:none!important}
  html body .timeline-section .card-link{width:100%!important;min-width:0!important}
}



/* V19 — only the hero CTA keeps the ticket style. All other buttons are rebuilt cleanly from scratch. */

/* Keep the hero ticket at the smaller, approved size */
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{
  min-width:clamp(245px,25vw,350px)!important;
  min-height:auto!important;
  padding:1.02rem 1.42rem!important;
  clip-path:polygon(13px 0,calc(100% - 13px) 0,100% 13px,100% calc(100% - 13px),calc(100% - 13px) 100%,13px 100%,0 calc(100% - 13px),0 13px)!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  border-radius:0!important;
  transform:none!important;
}

html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::before,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::after{
  display:block!important;
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:18px!important;
  height:18px!important;
  border-radius:50%!important;
  background:#000!important;
  border:1px solid #fff!important;
  transform:translateY(-50%)!important;
  box-shadow:none!important;
  z-index:3!important;
}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::before{left:-10px!important;right:auto!important}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::after{right:-10px!important;left:auto!important}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket span{font-size:clamp(11px,.78vw,13px)!important;letter-spacing:.16em!important;line-height:1!important}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket strong{font-size:clamp(18px,1.62vw,25px)!important;letter-spacing:.14em!important;line-height:1!important}

/* Header/nav: remove ticket styling entirely, make it compact and scroll-indicator-like */
html body .site-nav{
  background:#000!important;
  border-bottom:1px solid rgba(255,255,255,.2)!important;
}
html body .site-nav .nav-actions{
  gap:1.15rem!important;
}
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  clip-path:none!important;
  background:transparent!important;
  color:#fff!important;
  border:0!important;
  border-radius:0!important;
  min-width:0!important;
  min-height:0!important;
  padding:.56rem .08rem .64rem!important;
  font-family:var(--body)!important;
  font-size:clamp(12px,.78vw,14px)!important;
  letter-spacing:.2em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
  transform:none!important;
  overflow:visible!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  isolation:auto!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .menu-toggle::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:50%!important;
  top:calc(100% - 3px)!important;
  width:1px!important;
  height:12px!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(255,255,255,.65)!important;
  transform:translateX(-50%) scaleY(.55)!important;
  transform-origin:top!important;
  opacity:.55!important;
  box-shadow:none!important;
  transition:transform .2s ease,opacity .2s ease!important;
}
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  width:100%!important;
  height:1px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  transform:translateX(-50%) scaleX(.32)!important;
  transform-origin:center!important;
  opacity:.75!important;
  box-shadow:none!important;
  transition:transform .2s ease,opacity .2s ease!important;
}
html body .site-nav .nav-actions a:hover,
html body .site-nav .menu-toggle:hover{
  background:transparent!important;
  color:#fff!important;
  border:0!important;
  transform:translateY(-2px) scale(1.035)!important;
  box-shadow:none!important;
}
html body .site-nav .nav-actions a:hover::before,
html body .site-nav .menu-toggle:hover::before{
  transform:translateX(-50%) scaleY(1)!important;
  opacity:1!important;
}
html body .site-nav .nav-actions a:hover::after,
html body .site-nav .menu-toggle:hover::after{
  transform:translateX(-50%) scaleX(1)!important;
  opacity:1!important;
}

/* Timeline details: no tickets, one consistent clean grey CTA with scroll-line cue */
html body .timeline-section .card-link{
  clip-path:none!important;
  background:#c9c9c9!important;
  color:#000!important;
  border:1px solid #c9c9c9!important;
  border-radius:0!important;
  min-width:0!important;
  width:auto!important;
  margin-top:1.35rem!important;
  padding:.86rem 1.05rem!important;
  font-family:var(--body)!important;
  font-size:clamp(12px,.88vw,14px)!important;
  letter-spacing:.18em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transform:none!important;
  overflow:visible!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.78rem!important;
  isolation:auto!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease!important;
}
html body .timeline-section .card-link::before{
  content:""!important;
  display:block!important;
  position:static!important;
  width:28px!important;
  height:1px!important;
  border:0!important;
  border-radius:0!important;
  background:currentColor!important;
  transform:none!important;
  opacity:.85!important;
  box-shadow:none!important;
  order:2!important;
}
html body .timeline-section .card-link::after{
  content:""!important;
  display:block!important;
  position:static!important;
  width:7px!important;
  height:7px!important;
  border:0!important;
  border-right:1px solid currentColor!important;
  border-bottom:1px solid currentColor!important;
  border-radius:0!important;
  background:transparent!important;
  transform:rotate(-45deg)!important;
  box-shadow:none!important;
  opacity:.85!important;
  order:3!important;
  margin-left:-.9rem!important;
}
html body .timeline-section .card-link:hover,
html body .timeline-section .episode-card:hover .card-link,
html body .timeline-section .timeline-row.is-active .card-link{
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
  transform:translateY(-2px) scale(1.035)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}

/* Trailer button remains a simple rectangle, with same clean hover behavior */
html body .teaser-mini-control{
  clip-path:none!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #000!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
}
html body .teaser-mini-control::before,
html body .teaser-mini-control::after{
  display:none!important;
  content:none!important;
}
html body .teaser-mini-control:hover{
  background:#000!important;
  color:#fff!important;
  border-color:#fff!important;
  transform:translateY(-2px) scale(1.025)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}

@media(max-width:980px){
  html body .site-nav .nav-actions a{display:none!important}
  html body .timeline-section .card-link{width:100%!important;max-width:100%!important}
}
@media(max-width:560px){
  html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{min-width:236px!important;padding:.95rem 1.2rem!important}
}



/* V20 — only hero keeps the ticket. Everything else becomes Cameo text-only CTAs. */
:root{--cameo:"Nitti Typewriter Cameo","Nitti Typewriter","Courier New",Courier,monospace;}

/* Preserve the approved hero ticket exactly at the last good size */
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{
  font-family:var(--body)!important;
  min-width:clamp(245px,25vw,350px)!important;
  min-height:auto!important;
  padding:1.02rem 1.42rem!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  border-radius:0!important;
  clip-path:polygon(13px 0,calc(100% - 13px) 0,100% 13px,100% calc(100% - 13px),calc(100% - 13px) 100%,13px 100%,0 calc(100% - 13px),0 13px)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.22),0 18px 50px rgba(0,0,0,.5)!important;
  transform:none!important;
}

html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::before,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::after{
  display:block!important;
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:18px!important;
  height:18px!important;
  border-radius:50%!important;
  background:#000!important;
  border:1px solid #fff!important;
  transform:translateY(-50%)!important;
  box-shadow:none!important;
}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::before{left:-10px!important;right:auto!important}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket::after{right:-10px!important;left:auto!important}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket span{font-family:var(--body)!important;font-size:clamp(11px,.78vw,13px)!important;letter-spacing:.16em!important;line-height:1!important}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket strong{font-family:var(--body)!important;font-size:clamp(18px,1.62vw,25px)!important;letter-spacing:.14em!important;line-height:1!important}

/* Header buttons: just Cameo typewriter text. No box, no line, no ticket. */
html body .site-nav{background:#000!important;border-bottom:1px solid rgba(255,255,255,.2)!important}
html body .site-nav .nav-actions{gap:clamp(1rem,2vw,1.75rem)!important;align-items:center!important}
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  font-family:var(--cameo)!important;
  background:transparent!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  border:0!important;
  border-radius:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  padding:.5rem .08rem!important;
  min-width:0!important;
  min-height:0!important;
  font-size:clamp(12px,.82vw,15px)!important;
  letter-spacing:.22em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  transform:none!important;
  transition:transform .16s ease,color .16s ease,text-shadow .16s ease,opacity .16s ease!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::before,
html body .site-nav .menu-toggle::after{
  display:none!important;
  content:none!important;
}
html body .site-nav .nav-actions a:hover,
html body .site-nav .menu-toggle:hover{
  background:transparent!important;
  color:#fff!important;
  transform:translateY(-1px) scale(1.12)!important;
  box-shadow:none!important;
  text-shadow:0 0 5px rgba(255,255,255,.88),0 0 18px rgba(255,255,255,.35)!important;
  animation:cameoFlicker .48s steps(2,end) 1!important;
}

/* Timeline More Details: Cameo text only, clean and consistent on every card. */
html body .timeline-section .card-link{
  font-family:var(--cameo)!important;
  background:transparent!important;
  color:rgba(0,0,0,.88)!important;
  border:0!important;
  border-radius:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  padding:0!important;
  margin-top:1.35rem!important;
  min-width:0!important;
  width:auto!important;
  font-size:clamp(14px,1vw,18px)!important;
  letter-spacing:.2em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  position:relative!important;
  overflow:visible!important;
  transform:none!important;
  transform-origin:left center!important;
  transition:transform .16s ease,color .16s ease,text-shadow .16s ease,opacity .16s ease!important;
}
html body .timeline-section .card-link::before,
html body .timeline-section .card-link::after{
  display:none!important;
  content:none!important;
}
html body .timeline-section .card-link:hover,
html body .timeline-section .episode-card:hover .card-link,
html body .timeline-section .timeline-row.is-active .card-link{
  background:transparent!important;
  color:#000!important;
  border:0!important;
  transform:translateY(-1px) scale(1.1)!important;
  box-shadow:none!important;
  text-shadow:0 0 4px rgba(0,0,0,.22)!important;
  animation:cameoFlicker .48s steps(2,end) 1!important;
}

/* Trailer/player button: also text-only Cameo so it matches the new non-hero system. */
html body .teaser-mini-control{
  font-family:var(--cameo)!important;
  background:transparent!important;
  color:#fff!important;
  border:0!important;
  border-radius:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  padding:1rem 0 .25rem!important;
  width:100%!important;
  font-size:clamp(14px,1vw,18px)!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  line-height:1!important;
  transition:transform .16s ease,color .16s ease,text-shadow .16s ease!important;
}
html body .teaser-mini-control::before,
html body .teaser-mini-control::after{display:none!important;content:none!important}
html body .teaser-mini-control:hover{
  background:transparent!important;
  color:#fff!important;
  border:0!important;
  transform:translateY(-1px) scale(1.06)!important;
  box-shadow:none!important;
  text-shadow:0 0 5px rgba(255,255,255,.85),0 0 18px rgba(255,255,255,.35)!important;
  animation:cameoFlicker .48s steps(2,end) 1!important;
}

/* Optional menu close follows the same Cameo text-only language. */
html body .menu-close{
  font-family:var(--cameo)!important;
  border:0!important;
  background:transparent!important;
  color:#fff!important;
  letter-spacing:.2em!important;
  padding:.55rem 0!important;
  transition:transform .16s ease,text-shadow .16s ease!important;
}
html body .menu-close::before,html body .menu-close::after{display:none!important;content:none!important}
html body .menu-close:hover{transform:scale(1.1)!important;text-shadow:0 0 5px rgba(255,255,255,.85),0 0 18px rgba(255,255,255,.35)!important;animation:cameoFlicker .48s steps(2,end) 1!important}

@keyframes cameoFlicker{
  0%,100%{opacity:1;filter:none;}
  18%{opacity:.58;filter:blur(.2px);}
  30%{opacity:1;filter:none;}
  43%{opacity:.72;filter:blur(.35px);}
  55%{opacity:1;filter:none;}
  72%{opacity:.84;filter:blur(.15px);}
}

/* Cursor: keep the two-circle hover state, but turn the inner circle and dot black. */
html body .cursor{
  width:42px!important;
  height:42px!important;
  border:1px solid rgba(255,255,255,.9)!important;
  background:transparent!important;
  transform:translate(calc(var(--mx,50vw) - 21px),calc(var(--my,50vh) - 21px))!important;
  transition:width .15s ease,height .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .08s linear!important;
}
html body .cursor::before{display:none!important;content:none!important}
html body .cursor::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:8px!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:50%!important;
  background:transparent!important;
  pointer-events:none!important;
  box-shadow:none!important;
}
html body.is-hovering .cursor{
  width:58px!important;
  height:58px!important;
  transform:translate(calc(var(--mx,50vw) - 29px),calc(var(--my,50vh) - 29px)) scale(1.04)!important;
  border-color:#fff!important;
  background:rgba(255,255,255,.1)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.22),0 0 34px rgba(255,255,255,.38)!important;
}
html body.is-hovering .cursor::after{
  inset:10px!important;
  border-color:#000!important;
  background:transparent!important;
}
html body .cursor-dot{
  opacity:1!important;
  width:4px!important;
  height:4px!important;
  background:#fff!important;
  transform:translate(calc(var(--mx,50vw) - 2px),calc(var(--my,50vh) - 2px))!important;
  transition:background .15s ease,box-shadow .15s ease,transform .08s linear!important;
}
html body.is-hovering .cursor-dot{
  opacity:1!important;
  background:#000!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.18),0 0 10px rgba(0,0,0,.45)!important;
  transform:translate(calc(var(--mx,50vw) - 2px),calc(var(--my,50vh) - 2px)) scale(1.25)!important;
}
html body.is-clicking .cursor{
  transform:translate(calc(var(--mx,50vw) - 29px),calc(var(--my,50vh) - 29px)) scale(.88)!important;
}

@media(max-width:980px){
  html body .site-nav .nav-actions a{display:none!important}
  html body .timeline-section .card-link{font-size:15px!important;width:auto!important;max-width:100%!important}
}
@media(max-width:560px){
  html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{min-width:236px!important;padding:.95rem 1.2rem!important}
  html body .timeline-section .card-link{font-size:14px!important}
}



/* V21 — wire in full Nitti family and use each variant intentionally.
   Font binaries are referenced by filename in assets/fonts/. */
:root{
  --nitti-corrected:"Nitti Typewriter Corrected", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-open:"Nitti Typewriter Open", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-underlined:"Nitti Typewriter Underlined", "Nitti Typewriter", "Courier New", Courier, monospace;
  --cameo:var(--nitti-cameo);
}

/* Corrected becomes the clean body/readability Nitti. */
html body,
html body .copy-block p,
html body .lede,
html body .episode-card p,
html body .teaser-text,
html body .hero-locations span,
html body .menu-title{
  font-family:var(--nitti-corrected)!important;
}

/* Cameo stays reserved for clickable text CTAs and button-like microcopy. */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle,
html body .timeline-section .card-link,
html body .teaser-mini-control,
html body .menu-close{
  font-family:var(--nitti-cameo)!important;
}

/* Open adds a lighter cinematic typewriter treatment to cards and numbers. */
html body .reel-no,
html body .episode-no,
html body .card-topline,
html body .timeline-meta em,
html body .timeline-meta small,
html body .menu-no,
html body .menu-meta,
html body .teaser-frame-label,
html body .video-controls button{
  font-family:var(--nitti-open)!important;
}
html body .reel-no,
html body .episode-no{
  letter-spacing:.2em!important;
}
html body .card-topline{
  letter-spacing:.16em!important;
}

/* Underlined is mixed into ghost text and moving vertical typewriter text. */

html body .section-ghost span:nth-child(3n),
html body .reel-ghost span:nth-child(3n),
html body .timeline-ghost span:nth-child(3n){
  font-family:var(--nitti-open)!important;
}
html body .section-ghost span:nth-child(5n){
  font-family:var(--nitti-cameo)!important;
}

/* Keep Now Showing ghost text subtle, but let the mixed Nitti variants show when visible. */
html body .now-showing::before{color:rgba(255,255,255,.026)!important;text-shadow:none!important}
html body .now-showing::after{color:rgba(255,255,255,.02)!important;text-shadow:none!important}
html body .now-showing .section-ghost .title{color:rgba(255,255,255,.018)!important}
html body .now-showing .section-ghost .type{color:rgba(255,255,255,.024)!important}
html body .now-showing .section-ghost .script{color:rgba(255,255,255,.03)!important}

/* Timeline ghost text gets a little more readable with the Nitti mix. */
html body .timeline-section .section-ghost .title{color:rgba(255,255,255,.045)!important}
html body .timeline-section .section-ghost .type{color:rgba(255,255,255,.056)!important}
html body .timeline-section .section-ghost .script{color:rgba(255,255,255,.064)!important}
html body .timeline-runner{font-family:var(--nitti-underlined)!important;letter-spacing:.25em!important;opacity:.78!important}
html body .runner-inner-left,
html body .runner-inner-right{font-family:var(--nitti-open)!important;opacity:.68!important}

/* Preserve the cleaned-up non-ticket button system from v20, now using Cameo. */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  font-family:var(--nitti-cameo)!important;
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  padding:.5rem .08rem!important;
  letter-spacing:.22em!important;
  text-transform:uppercase!important;
  transition:transform .16s ease,color .16s ease,text-shadow .16s ease,opacity .16s ease!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::before,
html body .site-nav .menu-toggle::after{display:none!important;content:none!important}
html body .site-nav .nav-actions a:hover,
html body .site-nav .menu-toggle:hover{
  color:#fff!important;
  transform:translateY(-1px) scale(1.12)!important;
  text-shadow:0 0 5px rgba(255,255,255,.9),0 0 18px rgba(255,255,255,.34)!important;
  animation:cameoFlicker .48s steps(2,end) 1!important;
}
html body .timeline-section .card-link{
  font-family:var(--nitti-cameo)!important;
  background:transparent!important;
  color:rgba(0,0,0,.9)!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  padding:0!important;
  letter-spacing:.2em!important;
}
html body .timeline-section .card-link::before,
html body .timeline-section .card-link::after{display:none!important;content:none!important}
html body .timeline-section .card-link:hover,
html body .timeline-section .episode-card:hover .card-link,
html body .timeline-section .timeline-row.is-active .card-link{
  background:transparent!important;
  color:#000!important;
  transform:translateY(-1px) scale(1.1)!important;
  text-shadow:0 0 4px rgba(0,0,0,.22)!important;
  animation:cameoFlicker .48s steps(2,end) 1!important;
}



/* V22 — Corrected is now ONLY for crossed-out text + ghost text.
   Ghost text intentionally mixes every loaded display family. */
:root{
  --nitti-corrected:"Nitti Typewriter Corrected", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-open:"Nitti Typewriter Open", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-underlined:"Nitti Typewriter Underlined", "Nitti Typewriter", "Courier New", Courier, monospace;
  --cameo:var(--nitti-cameo);
}

/* Put normal readable copy back on the original Nitti, not Corrected. */
html body,
html body .copy-block p,
html body .lede,
html body .episode-card p,
html body .teaser-text,
html body .hero-locations span,
html body .menu-title,
html body .brand,
html body .eyebrow,
html body .poster-frame::after,
html body .teaser-frame-label{
  font-family:var(--body)!important;
}

/* Corrected is reserved for crossed-out / marked-out text. */
html body s,
html body del,
html body .strike,
html body .struck,
html body .crossed,
html body .crossed-out,
html body .strikeout,
html body .redacted-copy{
  font-family:var(--nitti-corrected)!important;
  text-decoration-thickness:1px!important;
  text-decoration-color:currentColor!important;
}

/* Cameo remains the no-box text button font. */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle,
html body .timeline-section .card-link,
html body .teaser-mini-control,
html body .menu-close{
  font-family:var(--nitti-cameo)!important;
}

/* Open stays on card/meta/detail typography. */
html body .reel-no,
html body .episode-no,
html body .card-topline,
html body .timeline-meta em,
html body .timeline-meta small,
html body .menu-no,
html body .menu-meta,
html body .video-controls button,
html body .reel-card strong,
html body .reel-script{
  font-family:var(--nitti-open)!important;
}

/* Ghost text gets a deliberate blend of every font family. */









/* Force each existing ghost group to show multiple fonts, even when it only has a few spans. */
html body .now-ghost span:nth-child(1),
html body .timeline-ghost span:nth-child(1),
html body .footer-ghost span:nth-child(1){font-family:var(--accent)!important;text-transform:none!important}
html body .now-ghost span:nth-child(2),
html body .timeline-ghost span:nth-child(2),
html body .footer-ghost span:nth-child(2){font-family:var(--nitti-underlined)!important}
html body .now-ghost span:nth-child(3),
html body .timeline-ghost span:nth-child(3),
html body .footer-ghost span:nth-child(3){font-family:var(--accent)!important;}
html body .now-ghost span:nth-child(4),
html body .timeline-ghost span:nth-child(4),
html body .footer-ghost span:nth-child(4){font-family:var(--nitti-corrected)!important;text-decoration:line-through;text-decoration-thickness:1px}
html body .now-ghost span:nth-child(5),
html body .timeline-ghost span:nth-child(5),
html body .footer-ghost span:nth-child(5){font-family:var(--nitti-open)!important}
html body .now-ghost span:nth-child(6),
html body .timeline-ghost span:nth-child(6),
html body .footer-ghost span:nth-child(6){font-family:var(--nitti-cameo)!important}
html body .reel-ghost span:nth-child(1){font-family:var(--nitti-cameo)!important}
html body .reel-ghost span:nth-child(2){font-family:var(--nitti-open)!important}
html body .reel-ghost span:nth-child(3){font-family:var(--accent)!important;}
html body .reel-ghost span:nth-child(4){font-family:var(--accent)!important;text-transform:none!important}
html body .reel-ghost span:nth-child(5){font-family:var(--nitti-corrected)!important;text-decoration:line-through;text-decoration-thickness:1px}

/* Moving vertical text also gets mixed, not just one Nitti variant. */
html body .now-runner-left span{font-family:var(--nitti-underlined)!important}
html body .now-runner-right span{font-family:var(--nitti-corrected)!important;text-decoration:line-through;text-decoration-thickness:1px}
html body .runner-left span{font-family:var(--nitti-underlined)!important}
html body .runner-right span{font-family:var(--nitti-cameo)!important}
html body .runner-inner-left span{font-family:var(--nitti-open)!important}
html body .runner-inner-right span{font-family:var(--nitti-corrected)!important;text-decoration:line-through;text-decoration-thickness:1px}

/* Keep ghost text subtle enough but readable with the mixed font treatment. */
html body .now-showing .section-ghost .title{color:rgba(255,255,255,.019)!important}
html body .now-showing .section-ghost .type{color:rgba(255,255,255,.025)!important}
html body .now-showing .section-ghost .script{color:rgba(255,255,255,.032)!important}
html body .timeline-section .section-ghost .title{color:rgba(255,255,255,.045)!important}
html body .timeline-section .section-ghost .type{color:rgba(255,255,255,.056)!important}
html body .timeline-section .section-ghost .script{color:rgba(255,255,255,.064)!important}



/* V25 — tighten ONLY the Nitti Typewriter Cameo tracking, slightly enlarge text CTAs, and restore trailer button. */
:root{
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", "Courier New", Courier, monospace;
}

/* Cameo should read like dense connected black blocks, not widely spaced letters. */


/* Header buttons: still pure Cameo text, just a little larger and tighter. */
html body .site-nav .nav-actions{gap:clamp(1.1rem,2.1vw,1.9rem)!important;}
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  background:transparent!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  color:rgba(255,255,255,.92)!important;
  padding:.62rem .08rem!important;
  min-width:0!important;
  min-height:0!important;
  font-size:clamp(17px,1.12vw,22px)!important;
  line-height:.96!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  transform-origin:center center!important;
  transition:transform .16s ease,color .16s ease,text-shadow .16s ease,opacity .16s ease!important;
}
html body .site-nav .nav-actions a::before,
html body .site-nav .nav-actions a::after,
html body .site-nav .menu-toggle::before,
html body .site-nav .menu-toggle::after{display:none!important;content:none!important;}
html body .site-nav .nav-actions a:hover,
html body .site-nav .menu-toggle:hover{
  color:#fff!important;
  transform:translateY(-1px) scale(1.12)!important;
  text-shadow:0 0 5px rgba(255,255,255,.9),0 0 18px rgba(255,255,255,.34)!important;
  animation:cameoFlicker .48s steps(2,end) 1!important;
}

/* Timeline CTAs: larger Cameo text, tight spacing, no box/ticket treatment. */
html body .timeline-section .card-link{
  background:transparent!important;
  color:rgba(0,0,0,.92)!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  padding:0!important;
  margin-top:1.48rem!important;
  min-width:0!important;
  width:auto!important;
  font-size:clamp(18px,1.22vw,24px)!important;
  line-height:.96!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  transform-origin:left center!important;
  transition:transform .16s ease,color .16s ease,text-shadow .16s ease,opacity .16s ease!important;
}
html body .timeline-section .card-link::before,
html body .timeline-section .card-link::after{display:none!important;content:none!important;}
html body .timeline-section .card-link:hover,
html body .timeline-section .episode-card:hover .card-link,
html body .timeline-section .timeline-row.is-active .card-link{
  background:transparent!important;
  color:#000!important;
  transform:translateY(-1px) scale(1.11)!important;
  text-shadow:0 0 4px rgba(0,0,0,.24)!important;
  animation:cameoFlicker .48s steps(2,end) 1!important;
}

/* Restore Play Wedding Trailer to the previous rectangular player button and original body font. */
html body .teaser-mini-control{
  display:block!important;
  width:100%!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #000!important;
  border-radius:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  padding:1rem 1.2rem!important;
  font-family:var(--body)!important;
  font-size:clamp(14px,1vw,18px)!important;
  letter-spacing:.16em!important;
  word-spacing:normal!important;
  text-transform:uppercase!important;
  line-height:1!important;
  transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease!important;
}
html body .teaser-mini-control::before,
html body .teaser-mini-control::after{display:none!important;content:none!important;}
html body .teaser-mini-control:hover{
  background:#000!important;
  color:#fff!important;
  transform:translateY(-2px) scale(1.025)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
  text-shadow:none!important;
  animation:none!important;
}

@media(max-width:980px){
  html body .site-nav .nav-actions a{display:none!important;}
  html body .site-nav .menu-toggle{font-size:17px!important;}
  html body .timeline-section .card-link{font-size:18px!important;}
}



/* V26 — Menu uses Nitti Typewriter Open. Cameo is removed from large ghost text and kept only on the small vertical runner where it was already used. */
:root{
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-open:"Nitti Typewriter Open", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-corrected:"Nitti Typewriter Corrected", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-underlined:"Nitti Typewriter Underlined", "Nitti Typewriter", "Courier New", Courier, monospace;
}

/* Menu button + full overlay menu should use Nitti Typewriter Open, not Cameo. */
html body .site-nav .menu-toggle,
html body .menu-panel,
html body .menu-box,
html body .menu-head,
html body .menu-head span,
html body .menu-close,
html body .menu-list a,
html body .menu-title,
html body .menu-no,
html body .menu-meta{
  font-family:var(--nitti-open)!important;
  font-kerning:normal!important;
  font-feature-settings:"kern" 1!important;
}
html body .site-nav .menu-toggle{
  letter-spacing:-.025em!important;
  word-spacing:.04em!important;
}
html body .menu-title{
  letter-spacing:-.045em!important;
  line-height:.88!important;
}
html body .menu-no,
html body .menu-meta,
html body .menu-head,
html body .menu-close{
  letter-spacing:.04em!important;
}

/* Remove Cameo from all large ghost systems. Keep the mix, but use every other font family there. */









/* Existing short ghost groups also avoid Cameo completely. */
html body .now-ghost span:nth-child(1),
html body .timeline-ghost span:nth-child(1),
html body .footer-ghost span:nth-child(1){font-family:var(--accent)!important;text-transform:none!important;letter-spacing:.03em!important;text-decoration:none!important;}
html body .now-ghost span:nth-child(2),
html body .timeline-ghost span:nth-child(2),
html body .footer-ghost span:nth-child(2){font-family:var(--nitti-underlined)!important;letter-spacing:.14em!important;text-decoration:none!important;}
html body .now-ghost span:nth-child(3),
html body .timeline-ghost span:nth-child(3),
html body .footer-ghost span:nth-child(3){font-family:var(--accent)!important;letter-spacing:.018em!important;text-decoration:none!important;}
html body .now-ghost span:nth-child(4),
html body .timeline-ghost span:nth-child(4),
html body .footer-ghost span:nth-child(4){font-family:var(--nitti-corrected)!important;letter-spacing:.12em!important;text-decoration:line-through!important;text-decoration-thickness:1px!important;}
html body .now-ghost span:nth-child(5),
html body .timeline-ghost span:nth-child(5),
html body .footer-ghost span:nth-child(5){font-family:var(--nitti-open)!important;letter-spacing:.12em!important;text-decoration:none!important;}
html body .now-ghost span:nth-child(6),
html body .timeline-ghost span:nth-child(6),
html body .footer-ghost span:nth-child(6){font-family:var(--body)!important;letter-spacing:.15em!important;text-decoration:none!important;}
html body .reel-ghost span:nth-child(1){font-family:var(--nitti-open)!important;letter-spacing:.12em!important;text-decoration:none!important;}
html body .reel-ghost span:nth-child(2){font-family:var(--nitti-underlined)!important;letter-spacing:.14em!important;text-decoration:none!important;}
html body .reel-ghost span:nth-child(3){font-family:var(--accent)!important;letter-spacing:.018em!important;text-decoration:none!important;}
html body .reel-ghost span:nth-child(4){font-family:var(--accent)!important;text-transform:none!important;letter-spacing:.03em!important;text-decoration:none!important;}
html body .reel-ghost span:nth-child(5){font-family:var(--nitti-corrected)!important;letter-spacing:.12em!important;text-decoration:line-through!important;text-decoration-thickness:1px!important;}

/* Cameo is kept only on the small vertical moving runner where it was already used. */
html body .runner-right span{
  font-family:var(--nitti-cameo)!important;
  letter-spacing:-.075em!important;
  word-spacing:.08em!important;
  text-decoration:none!important;
}
html body .now-runner-left span,
html body .runner-left span{font-family:var(--nitti-underlined)!important;letter-spacing:.18em!important;text-decoration:none!important;}
html body .now-runner-right span,
html body .runner-inner-right span{font-family:var(--nitti-corrected)!important;letter-spacing:.14em!important;text-decoration:line-through!important;text-decoration-thickness:1px!important;}
html body .runner-inner-left span{font-family:var(--nitti-open)!important;letter-spacing:.13em!important;text-decoration:none!important;}



/* V27 — corrected font leaves large ghost text; menu button returns to Cameo; vertical runners mix every Nitti; cursor softened. */
:root{
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-open:"Nitti Typewriter Open", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-corrected:"Nitti Typewriter Corrected", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-underlined:"Nitti Typewriter Underlined", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-normal:"Nitti Typewriter", "Courier New", Courier, monospace;
  --cameo:var(--nitti-cameo);
}

/* The menu trigger itself goes back to the Cameo text-button treatment. */
html body .site-nav .menu-toggle{
  font-family:var(--nitti-cameo)!important;
  letter-spacing:-.075em!important;
  word-spacing:.08em!important;
  font-kerning:normal!important;
  font-feature-settings:"kern" 1!important;
}

/* Open is only for the opened menu overlay content, not the menu trigger button. */
html body .menu-panel,
html body .menu-box,
html body .menu-head,
html body .menu-head span,
html body .menu-list a,
html body .menu-title,
html body .menu-no,
html body .menu-meta,
html body .menu-close{
  font-family:var(--nitti-open)!important;
  letter-spacing:.03em!important;
  font-kerning:normal!important;
  font-feature-settings:"kern" 1!important;
}
html body .menu-title{letter-spacing:-.045em!important;line-height:.88!important;}

/* Corrected is removed from ALL large/background ghost text. Large ghosts still mix the other families. */
html body .section-ghost span,
html body .hero-ghostwall span,
html body .now-ghost span,
html body .timeline-ghost span,
html body .footer-ghost span,
html body .reel-ghost span{
  text-decoration:none!important;
}









/* Short large ghost groups: no Corrected and no Cameo. */
html body .now-ghost span:nth-child(1),
html body .timeline-ghost span:nth-child(1),
html body .footer-ghost span:nth-child(1){font-family:var(--accent)!important;text-transform:none!important;letter-spacing:.03em!important;}
html body .now-ghost span:nth-child(2),
html body .timeline-ghost span:nth-child(2),
html body .footer-ghost span:nth-child(2){font-family:var(--nitti-underlined)!important;letter-spacing:.14em!important;text-transform:none!important;}
html body .now-ghost span:nth-child(3),
html body .timeline-ghost span:nth-child(3),
html body .footer-ghost span:nth-child(3){font-family:var(--accent)!important;letter-spacing:.018em!important;text-transform:none!important;}
html body .now-ghost span:nth-child(4),
html body .timeline-ghost span:nth-child(4),
html body .footer-ghost span:nth-child(4){font-family:var(--nitti-open)!important;letter-spacing:.12em!important;text-transform:none!important;}
html body .now-ghost span:nth-child(5),
html body .timeline-ghost span:nth-child(5),
html body .footer-ghost span:nth-child(5){font-family:var(--nitti-normal)!important;letter-spacing:.15em!important;text-transform:none!important;}
html body .now-ghost span:nth-child(6),
html body .timeline-ghost span:nth-child(6),
html body .footer-ghost span:nth-child(6){font-family:var(--accent)!important;text-transform:none!important;letter-spacing:.03em!important;}
html body .reel-ghost span:nth-child(1){font-family:var(--nitti-open)!important;letter-spacing:.12em!important;text-transform:none!important;}
html body .reel-ghost span:nth-child(2){font-family:var(--nitti-underlined)!important;letter-spacing:.14em!important;text-transform:none!important;}
html body .reel-ghost span:nth-child(3){font-family:var(--accent)!important;letter-spacing:.018em!important;text-transform:none!important;}
html body .reel-ghost span:nth-child(4){font-family:var(--accent)!important;text-transform:none!important;letter-spacing:.03em!important;}
html body .reel-ghost span:nth-child(5){font-family:var(--nitti-normal)!important;letter-spacing:.15em!important;text-transform:none!important;}

/* Small vertical scrolling ghost text: intentional mix of every Nitti variant. */
html body .now-runner-left span{
  font-family:var(--nitti-normal)!important;
  letter-spacing:.16em!important;
  text-decoration:none!important;
}
html body .now-runner-right span{
  font-family:var(--nitti-open)!important;
  letter-spacing:.12em!important;
  text-decoration:none!important;
}
html body .runner-left span{
  font-family:var(--nitti-underlined)!important;
  letter-spacing:.17em!important;
  text-decoration:none!important;
}
html body .runner-right span{
  font-family:var(--nitti-cameo)!important;
  letter-spacing:-.075em!important;
  word-spacing:.08em!important;
  text-decoration:none!important;
}
html body .runner-inner-left span{
  font-family:var(--nitti-corrected)!important;
  letter-spacing:.12em!important;
  text-decoration:line-through!important;
  text-decoration-thickness:1px!important;
}
html body .runner-inner-right span{
  font-family:var(--nitti-normal)!important;
  letter-spacing:.16em!important;
  text-decoration:none!important;
}

/* Make cursor rings a touch subtler while preserving the two-ring clickable state. */
html body .cursor{
  width:40px!important;
  height:40px!important;
  border-color:rgba(255,255,255,.58)!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:translate(calc(var(--mx,50vw) - 20px),calc(var(--my,50vh) - 20px))!important;
}
html body .cursor::after{
  inset:9px!important;
  border-color:rgba(255,255,255,.34)!important;
  background:transparent!important;
}
html body.is-hovering .cursor{
  width:52px!important;
  height:52px!important;
  transform:translate(calc(var(--mx,50vw) - 26px),calc(var(--my,50vh) - 26px)) scale(1.02)!important;
  border-color:rgba(255,255,255,.72)!important;
  background:rgba(255,255,255,.045)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.12),0 0 22px rgba(255,255,255,.16)!important;
}
html body.is-hovering .cursor::after{
  inset:9px!important;
  border-color:rgba(0,0,0,.72)!important;
  background:transparent!important;
}
html body .cursor-dot{
  width:4px!important;
  height:4px!important;
  opacity:.82!important;
  background:rgba(255,255,255,.82)!important;
  box-shadow:none!important;
  transform:translate(calc(var(--mx,50vw) - 2px),calc(var(--my,50vh) - 2px))!important;
}
html body.is-hovering .cursor-dot{
  opacity:.9!important;
  background:rgba(0,0,0,.82)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.12)!important;
  transform:translate(calc(var(--mx,50vw) - 2px),calc(var(--my,50vh) - 2px)) scale(1.15)!important;
}
html body.is-clicking .cursor{
  transform:translate(calc(var(--mx,50vw) - 26px),calc(var(--my,50vh) - 26px)) scale(.9)!important;
}



/* V28 — hero ticket gets the same hover flicker energy; Fino leaves big ghost text; hero/Now Showing ghosts soften. */
:root{
  --nitti-normal:"Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-open:"Nitti Typewriter Open", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-underlined:"Nitti Typewriter Underlined", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", "Courier New", Courier, monospace;
}

/* Add the cool button flicker/scale to the hero ticket button without changing its size/layout. */
html body .hero .hero-actions .cast-ticket,
html body .hero .hero-actions .btn.primary.ticket-btn.cast-ticket{
  transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, filter .18s ease!important;
  transform-origin:center!important;
  will-change:transform,filter!important;
}





/* Big/background ghost text: no Fino. Use Charcoal Script where a large title voice is needed. */
html body .section-ghost span,
html body .hero-ghostwall span,
html body .now-ghost span,
html body .timeline-ghost span,
html body .footer-ghost span,
html body .reel-ghost span{
  text-decoration:none!important;
}





/* Remove Fino from section-level oversized ghost pseudo text too. */
html body .hero-card::before,
html body .now-showing::before,
html body .now-showing::after,
html body .timeline-section::before,
html body .timeline-section::after,
html body .reel-section::before,
html body .footer::before{
  font-family:var(--accent)!important;
  text-transform:none!important;
  letter-spacing:.018em!important;
}

/* Make hero and Now Showing large background ghost text more subtle. */
html body .hero-ghostwall{opacity:.58!important;}
html body .hero-ghostwall span{
  color:rgba(255,255,255,.014)!important;
  text-shadow:none!important;
}
html body .hero-ghostwall span:nth-child(even){color:rgba(255,255,255,.010)!important;}
html body .hero-ghostwall span:nth-child(3n){color:rgba(255,255,255,.016)!important;}
html body .hero-ghostwall.glow span{
  color:rgba(255,255,255,.075)!important;
  text-shadow:0 0 14px rgba(255,255,255,.08)!important;
}
html body .hero-card::before{color:rgba(255,255,255,.010)!important;text-shadow:none!important;}

html body .now-showing::before{color:rgba(255,255,255,.018)!important;text-shadow:none!important;}
html body .now-showing::after{color:rgba(255,255,255,.008)!important;text-shadow:none!important;}
html body .now-showing .section-ghost span{color:rgba(255,255,255,.010)!important;text-shadow:none!important;}
html body .now-showing .section-ghost .title{color:rgba(255,255,255,.012)!important;}
html body .now-showing .section-ghost .type{color:rgba(255,255,255,.011)!important;}
html body .now-showing .section-ghost .script{color:rgba(255,255,255,.015)!important;}
html body .now-showing .now-ghost span:nth-child(1),
html body .now-showing .now-ghost span:nth-child(3){color:rgba(255,255,255,.014)!important;}

/* Keep the small vertical scrolling ghost areas as the Nitti-family mix from v27. */
html body .now-runner-left span{font-family:var(--nitti-normal)!important;letter-spacing:.16em!important;text-decoration:none!important;}
html body .now-runner-right span{font-family:var(--nitti-open)!important;letter-spacing:.12em!important;text-decoration:none!important;}
html body .runner-left span{font-family:var(--nitti-underlined)!important;letter-spacing:.17em!important;text-decoration:none!important;}
html body .runner-right span{font-family:var(--nitti-cameo)!important;letter-spacing:-.075em!important;word-spacing:.08em!important;text-decoration:none!important;}
html body .runner-inner-left span{font-family:var(--nitti-corrected)!important;letter-spacing:.12em!important;text-decoration:line-through!important;text-decoration-thickness:1px!important;}
html body .runner-inner-right span{font-family:var(--nitti-normal)!important;letter-spacing:.16em!important;text-decoration:none!important;}



/* V29 — top-left hero name, matched to the small SOHO location type */
html body .hero-corner-name{
  position:absolute!important;
  left:clamp(52px,7vw,118px)!important;
  top:clamp(28px,4vh,48px)!important;
  z-index:36!important;
  font-family:var(--body)!important;
  font-size:clamp(15px,1.25vw,22px)!important;
  letter-spacing:.18em!important;
  line-height:1!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  text-shadow:0 8px 28px #000!important;
  text-transform:none!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}
@media(max-width:900px){
  html body .hero-corner-name{
    left:24px!important;
    top:24px!important;
    font-size:clamp(10px,2.8vw,14px)!important;
    letter-spacing:.12em!important;
  }
}



/* V30 — hard verification pass for v28/v29 changes so they cannot be hidden by older CSS. */
:root{
  --nitti-normal:"Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-open:"Nitti Typewriter Open", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-underlined:"Nitti Typewriter Underlined", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-corrected:"Nitti Typewriter Corrected", "Nitti Typewriter", "Courier New", Courier, monospace;
}

/* 1) Hero ticket: keep the exact existing ticket size/shape, but force the cool flicker + scale hover. */
html body .hero .hero-actions .cast-ticket,
html body .hero .hero-actions .btn.primary.ticket-btn.cast-ticket,
html body .hero .hero-actions .btn.light.ticket-btn.cast-ticket{
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease!important;
  transform-origin:center!important;
  will-change:transform,filter!important;
}





/* 2) Top-left hero name: force it visible above the video/shade and match the small SoHo timeline-location type. */
html body .hero{position:relative!important;}
html body .hero .hero-corner-name{
  position:absolute!important;
  left:clamp(44px,6.1vw,88px)!important;
  top:clamp(32px,4.8vh,62px)!important;
  z-index:82!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  font-family:var(--nitti-open)!important;
  font-size:clamp(15px,1.3vw,19px)!important;
  letter-spacing:.11em!important;
  line-height:1!important;
  color:rgba(255,255,255,.92)!important;
  text-shadow:0 8px 28px #000!important;
  text-transform:none!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}
@media(max-width:900px){
  html body .hero .hero-corner-name{
    left:22px!important;
    top:24px!important;
    font-size:clamp(11px,3.1vw,14px)!important;
    letter-spacing:.09em!important;
  }
}

/* 3) Remove Fino from all large/background ghost text. Use Charcoal Script + Nitti variants instead. */





/* 4) Soften the large hero and Now Showing background ghost text enough that the effect is subtle. */
html body .hero-ghostwall{opacity:.38!important;}
html body .hero-ghostwall span{
  color:rgba(255,255,255,.0075)!important;
  text-shadow:none!important;
}
html body .hero-ghostwall span:nth-child(even){color:rgba(255,255,255,.0055)!important;}
html body .hero-ghostwall span:nth-child(3n){color:rgba(255,255,255,.009)!important;}
html body .hero-ghostwall.glow span{
  color:rgba(255,255,255,.026)!important;
  text-shadow:none!important;
}
html body .hero-card::before{
  color:rgba(255,255,255,.006)!important;
  text-shadow:none!important;
}
html body .now-showing::before{
  color:rgba(255,255,255,.010)!important;
  text-shadow:none!important;
}
html body .now-showing::after{
  color:rgba(255,255,255,.0045)!important;
  text-shadow:none!important;
}
html body .now-showing .section-ghost span{
  color:rgba(255,255,255,.0065)!important;
  text-shadow:none!important;
}
html body .now-showing .section-ghost .title{color:rgba(255,255,255,.007)!important;}
html body .now-showing .section-ghost .type{color:rgba(255,255,255,.0065)!important;}
html body .now-showing .section-ghost .script{color:rgba(255,255,255,.009)!important;}

/* 5) Keep the small vertical scrolling ghost text as the Nitti-family mix. */
html body .now-runner-left span{font-family:var(--nitti-normal)!important;letter-spacing:.16em!important;text-decoration:none!important;}
html body .now-runner-right span{font-family:var(--nitti-open)!important;letter-spacing:.12em!important;text-decoration:none!important;}
html body .runner-left span{font-family:var(--nitti-underlined)!important;letter-spacing:.17em!important;text-decoration:none!important;}
html body .runner-right span{font-family:var(--nitti-cameo)!important;letter-spacing:-.075em!important;word-spacing:.08em!important;text-decoration:none!important;}
html body .runner-inner-left span{font-family:var(--nitti-corrected)!important;letter-spacing:.12em!important;text-decoration:line-through!important;text-decoration-thickness:1px!important;}
html body .runner-inner-right span{font-family:var(--nitti-normal)!important;letter-spacing:.16em!important;text-decoration:none!important;}



/* V31 — force final requested behavior: uppercase hero corner name, Charcoal-only big ghosts, and hero ticket flicker/glow. */
:root{
  --nitti-normal:"Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-open:"Nitti Typewriter Open", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-underlined:"Nitti Typewriter Underlined", "Nitti Typewriter", Courier, monospace;
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", Courier, monospace;
  --nitti-corrected:"Nitti Typewriter Corrected", "Nitti Typewriter", Courier, monospace;
}

/* Hero top-left name: all caps, matched to the SoHo location type. */
html body .hero .hero-corner-name{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  left:clamp(44px,6.1vw,88px)!important;
  top:clamp(32px,4.8vh,62px)!important;
  z-index:90!important;
  font-family:var(--nitti-normal)!important;
  font-size:clamp(15px,1.25vw,22px)!important;
  letter-spacing:.18em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  text-shadow:0 8px 28px #000!important;
  pointer-events:none!important;
  white-space:nowrap!important;
}
@media(max-width:900px){
  html body .hero .hero-corner-name{left:22px!important;top:24px!important;font-size:clamp(10px,2.8vw,14px)!important;letter-spacing:.12em!important}
}

/* Big/background ghost text: completely remove Fino from the oversized ghosts and use Charcoal Script instead. */
html body .hero-card::before,
html body .hero-ghostwall span,
html body .section-ghost span,
html body .section-ghost .title,
html body .section-ghost .type,
html body .section-ghost .script,
html body .now-showing::before,
html body .now-showing::after,
html body .timeline-section::before,
html body .timeline-section::after,
html body .schedule-bridge::before,
html body .schedule-bridge::after,
html body .reel-section::before,
html body .reel-section::after,
html body .footer::before,
html body .footer::after{
  font-family:var(--accent)!important;
  text-transform:none!important;
  letter-spacing:.018em!important;
  font-weight:400!important;
  text-decoration:none!important;
  font-style:normal!important;
}

/* Make the hero and Now Showing large ghosts softer so the Charcoal layer feels like texture, not another title. */
html body .hero-ghostwall{opacity:.30!important;filter:none!important;}
html body .hero-ghostwall span{color:rgba(255,255,255,.0055)!important;text-shadow:none!important;}
html body .hero-ghostwall span:nth-child(even){color:rgba(255,255,255,.0045)!important;}
html body .hero-ghostwall span:nth-child(3n){color:rgba(255,255,255,.0065)!important;}
html body .hero-ghostwall.glow{opacity:.55!important;}
html body .hero-ghostwall.glow span{color:rgba(255,255,255,.020)!important;text-shadow:none!important;}
html body .hero-card::before{font-family:var(--accent)!important;color:rgba(255,255,255,.0045)!important;text-shadow:none!important;}
html body .now-showing::before{font-family:var(--accent)!important;color:rgba(255,255,255,.0075)!important;text-shadow:none!important;}
html body .now-showing::after{font-family:var(--accent)!important;color:rgba(255,255,255,.0035)!important;text-shadow:none!important;}
html body .now-showing .section-ghost span,
html body .now-showing .section-ghost .title,
html body .now-showing .section-ghost .type,
html body .now-showing .section-ghost .script{
  font-family:var(--accent)!important;
  color:rgba(255,255,255,.0055)!important;
  text-shadow:none!important;
}
html body .now-showing .section-ghost .script{color:rgba(255,255,255,.0075)!important;}

/* Preserve only the small vertical moving ghost areas as mixed Nitti-family type. */
html body .now-runner-left span{font-family:var(--nitti-normal)!important;letter-spacing:.16em!important;text-transform:uppercase!important;text-decoration:none!important;}
html body .now-runner-right span{font-family:var(--nitti-open)!important;letter-spacing:.12em!important;text-transform:uppercase!important;text-decoration:none!important;}
html body .runner-left span{font-family:var(--nitti-underlined)!important;letter-spacing:.17em!important;text-transform:uppercase!important;text-decoration:none!important;}
html body .runner-right span{font-family:var(--nitti-cameo)!important;letter-spacing:-.075em!important;word-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important;}
html body .runner-inner-left span{font-family:var(--nitti-corrected)!important;letter-spacing:.12em!important;text-transform:uppercase!important;text-decoration:line-through!important;text-decoration-thickness:1px!important;}
html body .runner-inner-right span{font-family:var(--nitti-normal)!important;letter-spacing:.16em!important;text-transform:uppercase!important;text-decoration:none!important;}

/* Hero ticket: remove the old custom hero hover animations and use the same simple flicker/glow language as the other buttons. */
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket,
html body .hero .hero-actions .cast-ticket{
  transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease,text-shadow .16s ease,box-shadow .16s ease,opacity .16s ease!important;
  transform-origin:center center!important;
  will-change:transform,opacity!important;
}







/* V34 — source-clean pass: restore readable Charcoal ghost visibility, keep Fino out of oversized ghosts, and keep hero video full-quality. */
:root{
  --nitti-normal:"Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-open:"Nitti Typewriter Open", "Nitti Typewriter", "Courier New", Courier, monospace;
  --nitti-underlined:"Nitti Typewriter Underlined", "Nitti Typewriter", Courier, monospace;
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", Courier, monospace;
  --nitti-corrected:"Nitti Typewriter Corrected", "Nitti Typewriter", Courier, monospace;
}

/* Hero video: full source quality, no zoom, no CSS filter, no smoothing hacks that reduce sharpness. */
html body .hero-video,
html body header.hero .hero-video{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
  transform:none!important;
  opacity:1!important;
  image-rendering:auto!important;
  backface-visibility:hidden!important;
  will-change:auto!important;
}
html body .hero .grain{opacity:.045!important;}

/* Oversized/background ghosts: Charcoal only, including the fixed ADMIT TWO / FIRST SCREENING layer. */
html body main::before,
html body .hero::after,
html body .hero-card::before,
html body .hero-ghostwall span,
html body .hero-ghostwall span:nth-child(n),
html body .hero-ghostwall.glow span,
html body .hero-ghostwall.glow span:nth-child(n),
html body .now-showing::before,
html body .now-showing::after,
html body .now-showing .section-ghost span,
html body .now-showing .section-ghost span:nth-child(n),
html body .section-ghost span,
html body .section-ghost span:nth-child(n),
html body .section-ghost .title,
html body .section-ghost .type,
html body .section-ghost .script,
html body .timeline-section::before,
html body .timeline-section::after,
html body .schedule-bridge::before,
html body .schedule-bridge::after,
html body .reel-section::before,
html body .reel-section::after,
html body .footer::before,
html body .footer::after{
  font-family:var(--accent)!important;
  text-transform:none!important;
  letter-spacing:.018em!important;
  font-weight:400!important;
  font-style:normal!important;
  text-decoration:none!important;
}

/* Restore the big ghost visibility closer to the older working versions, without bringing Fino back. */
html body main::before{
  color:rgba(255,255,255,.018)!important;
  text-shadow:none!important;
}
html body .hero-ghostwall{
  opacity:.58!important;
  filter:none!important;
}
html body .hero-ghostwall span,
html body .hero-ghostwall span:nth-child(n){
  color:rgba(255,255,255,.014)!important;
  text-shadow:none!important;
}
html body .hero-ghostwall span:nth-child(even){color:rgba(255,255,255,.010)!important;}
html body .hero-ghostwall span:nth-child(3n){color:rgba(255,255,255,.016)!important;}
html body .hero-ghostwall.glow{
  opacity:.68!important;
}
html body .hero-ghostwall.glow span,
html body .hero-ghostwall.glow span:nth-child(n),
html body .hero-ghostwall.glow span:nth-child(even),
html body .hero-ghostwall.glow span:nth-child(3n){
  color:rgba(255,255,255,.072)!important;
  text-shadow:0 0 14px rgba(255,255,255,.08)!important;
}
html body .hero::after,
html body .hero-card::before{
  color:rgba(255,255,255,.014)!important;
  text-shadow:none!important;
}
html body .now-showing::before{
  color:rgba(255,255,255,.024)!important;
  text-shadow:none!important;
}
html body .now-showing::after{
  color:rgba(255,255,255,.017)!important;
  text-shadow:none!important;
}
html body .now-showing .section-ghost span,
html body .now-showing .section-ghost .title,
html body .now-showing .section-ghost .type,
html body .now-showing .section-ghost .script{
  color:rgba(255,255,255,.024)!important;
  text-shadow:none!important;
}
html body .now-showing .section-ghost .script{color:rgba(255,255,255,.034)!important;}
html body .timeline-section .section-ghost .title{color:rgba(255,255,255,.046)!important;}
html body .timeline-section .section-ghost .type{color:rgba(255,255,255,.058)!important;}
html body .timeline-section .section-ghost .script{color:rgba(255,255,255,.067)!important;}

/* Keep the small vertical moving ghost areas as the Nitti-family mix only. */
html body .now-runner-left span{font-family:var(--nitti-normal)!important;letter-spacing:.16em!important;text-transform:uppercase!important;text-decoration:none!important;}
html body .now-runner-right span{font-family:var(--nitti-open)!important;letter-spacing:.12em!important;text-transform:uppercase!important;text-decoration:none!important;}
html body .runner-left span{font-family:var(--nitti-underlined)!important;letter-spacing:.17em!important;text-transform:uppercase!important;text-decoration:none!important;}
html body .runner-right span{font-family:var(--nitti-cameo)!important;letter-spacing:-.075em!important;word-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important;}
html body .runner-inner-left span{font-family:var(--nitti-corrected)!important;letter-spacing:.12em!important;text-transform:uppercase!important;text-decoration:line-through!important;text-decoration-thickness:1px!important;}
html body .runner-inner-right span{font-family:var(--nitti-normal)!important;letter-spacing:.16em!important;text-transform:uppercase!important;text-decoration:none!important;}

/* Hero ticket: keep exact shape/size/base colors; keep the cleaned flicker/glow behavior from v32. */
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket:visited{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
  transform:none!important;
  filter:none!important;
  box-shadow:0 20px 58px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.95),0 0 24px rgba(255,255,255,.28)!important;
  transition:text-shadow .16s ease,box-shadow .16s ease,filter .16s ease,opacity .16s ease!important;
  will-change:opacity,filter!important;
}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket span{color:rgba(0,0,0,.66)!important;}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket strong{color:#000!important;}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket{
  position:relative!important;
  isolation:isolate!important;
}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket .ticket-pulse{
  position:absolute;
  inset:0;
  display:block;
  pointer-events:none;
  z-index:1;
  clip-path:polygon(15px 0,calc(100% - 15px) 0,100% 15px,100% calc(100% - 15px),calc(100% - 15px) 100%,15px 100%,0 calc(100% - 15px),0 15px);
  border:2px solid rgba(0,0,0,.48);
  background:rgba(0,0,0,.04);
  opacity:.28;
  transform:scale(.985);
  transform-origin:center center;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.16),inset 0 0 18px rgba(0,0,0,.08),0 0 18px rgba(255,255,255,.22);
  animation:heroTicketInnerPulse 2.65s ease-in-out infinite;
}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket span,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket strong{
  position:relative!important;
  z-index:2!important;
}
@keyframes heroTicketInnerPulse{
  0%,100%{
    opacity:.24;
    transform:scale(.982);
    border-color:rgba(0,0,0,.36);
    background:rgba(0,0,0,.03);
    box-shadow:inset 0 0 0 1px rgba(0,0,0,.12),inset 0 0 14px rgba(0,0,0,.06),0 0 14px rgba(255,255,255,.18);
  }
  50%{
    opacity:.92;
    transform:scale(1);
    border-color:rgba(0,0,0,.86);
    background:rgba(0,0,0,.075);
    box-shadow:inset 0 0 0 2px rgba(0,0,0,.36),inset 0 0 28px rgba(0,0,0,.16),0 0 34px rgba(255,255,255,.44);
  }
}

@media (prefers-reduced-motion: reduce){
}

html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket:hover,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket:focus-visible{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
  transform:none!important;
  filter:none!important;
  box-shadow:0 24px 68px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.95),0 0 30px rgba(255,255,255,.32)!important;
}
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket:hover span,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket:hover strong,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket:focus-visible span,
html body .hero .hero-actions a.btn.primary.ticket-btn.cast-ticket:focus-visible strong{
  color:#000!important;
  text-shadow:0 0 4px rgba(0,0,0,.28),0 0 13px rgba(255,255,255,.38)!important;
}








/* V35 — final: tighten Nitti Typewriter Cameo wherever it is used and keep hero video full-quality/smoother. */
:root{
  --nitti-cameo:"Nitti Typewriter Cameo", "Nitti Typewriter", Courier, monospace;
}

/* Cameo should render as dense, touching type blocks — no wide tracking. */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle,
html body .timeline-section .card-link,
html body .menu-close,
html body .runner-right span{
  font-family:var(--nitti-cameo)!important;
  letter-spacing:-.09em!important;
  word-spacing:.11em!important;
  font-kerning:normal!important;
  font-feature-settings:"kern" 1!important;
  text-rendering:optimizeLegibility!important;
}

/* Keep the button sizes from the last approved version, just with corrected Cameo spacing. */
html body .site-nav .nav-actions a,
html body .site-nav .menu-toggle{
  font-size:clamp(17px,1.12vw,22px)!important;
}
html body .timeline-section .card-link{
  font-size:clamp(18px,1.22vw,24px)!important;
}

/* Hero video: use the same full-resolution local MP4, no CSS filtering/compression, with smoother compositing. */
html body .hero{
  contain:paint!important;
}
html body .hero-video,
html body header.hero .hero-video{
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
  opacity:1!important;
  image-rendering:auto!important;
  backface-visibility:hidden!important;
  transform:translateZ(0)!important;
  will-change:transform!important;
}
html body .hero-shade,
html body .flicker{
  transform:translateZ(0)!important;
  will-change:opacity!important;
}



/* V37 final — direct uploaded video file, no remux; top-right controls keep the original larger control size. */
html body .hero .video-controls{
  position:absolute!important;
  top:clamp(32px,4.8vh,62px)!important;
  right:clamp(44px,6.1vw,88px)!important;
  bottom:auto!important;
  left:auto!important;
  transform:none!important;
  z-index:92!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:14px!important;
}
html body .hero .video-controls button{
  width:56px!important;
  height:56px!important;
  min-width:56px!important;
  min-height:56px!important;
  padding:0!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.80)!important;
  background:rgba(0,0,0,.38)!important;
  color:#fff!important;
  box-shadow:0 16px 44px rgba(0,0,0,.62)!important;
  display:grid!important;
  place-items:center!important;
  font-family:var(--body)!important;
  font-size:23px!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-shadow:0 6px 22px #000!important;
  backdrop-filter:none!important;
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
html body .hero .video-controls button:hover,
html body .hero .video-controls button:focus-visible,
html body .hero .video-controls button.is-active{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
  transform:translateY(-3px) scale(1.03)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.65),0 0 22px rgba(255,255,255,.24)!important;
}
html body .hero-video,
html body header.hero .hero-video{
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
  opacity:1!important;
  image-rendering:auto!important;
  backface-visibility:hidden!important;
  transform:none!important;
  will-change:auto!important;
}
@media(max-width:900px){
  html body .hero .video-controls{
    top:24px!important;
    right:22px!important;
    gap:10px!important;
  }
  html body .hero .video-controls button{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    font-size:19px!important;
  }
}



/* V39 final — no hero/trailer poster fallbacks; video-only hero, controls unchanged from v37. */
html body .hero-video,
html body header.hero .hero-video{
  display:block!important;
  background:#000!important;
  object-fit:cover!important;
  object-position:center center!important;
  opacity:1!important;
  filter:none!important;
}



/* V41 — plain direct 720 hero video, no fallback/poster, no native center playback button. */
html body .hero{background:#000!important;}
html body .hero-video,
html body header.hero .hero-video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  opacity:1!important;
  visibility:visible!important;
  display:block!important;
  background:#000!important;
  filter:none!important;
  transform:none!important;
  z-index:0!important;
  pointer-events:none!important;
}
html body .hero-video::-webkit-media-controls,
html body .hero-video::-webkit-media-controls-panel,
html body .hero-video::-webkit-media-controls-play-button,
html body .hero-video::-webkit-media-controls-start-playback-button{
  display:none!important;
  -webkit-appearance:none!important;
  opacity:0!important;
  pointer-events:none!important;
}



/* V42 final requested edits: title wording, timeline poster-shaped cards, bigger labels, and working hero scroll target. */

/* Timeline cards: keep the existing timeline system, but make each card feel like a vertical movie-poster frame instead of a horizontal photo card. */
html body .timeline-section .episode-card{
  width:min(100%, 500px)!important;
  max-width:500px!important;
  min-width:0!important;
  justify-self:start!important;
  padding-bottom:1.55rem!important;
}
html body .timeline-section .timeline-row.is-left .episode-card{
  justify-self:end!important;
}
html body .timeline-section .episode-hero{
  width:100%!important;
  height:auto!important;
  aspect-ratio:3 / 4!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 0 1.18rem!important;
  overflow:hidden!important;
}
html body .timeline-section .episode-hero img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/* Make the small event labels readable enough to feel like part of the poster design. */
html body .timeline-section .card-topline{
  font-size:clamp(17px,1.35vw,22px)!important;
  line-height:1.2!important;
  letter-spacing:.105em!important;
  gap:.75rem 1rem!important;
  margin-bottom:1.08rem!important;
  color:rgba(0,0,0,.82)!important;
}
html body .timeline-section .card-topline span{
  max-width:none!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
}
html body .timeline-section .card-topline span:first-child{
  color:#000!important;
}

/* Keep the poster cards balanced on smaller screens. */
@media(max-width:980px){
  html body .timeline-section .episode-card{
    width:min(100%, 440px)!important;
    max-width:440px!important;
    justify-self:start!important;
  }
  html body .timeline-section .timeline-row.is-left .episode-card{
    justify-self:start!important;
  }
  html body .timeline-section .episode-hero{
    aspect-ratio:4 / 5!important;
  }
}
@media(max-width:560px){
  html body .timeline-section .episode-card{
    width:100%!important;
    max-width:none!important;
  }
  html body .timeline-section .card-topline{
    font-size:clamp(16px,4.3vw,19px)!important;
    letter-spacing:.08em!important;
  }
}



/* V43 — centered alternating timeline; keep the existing visual language, change only the layout */
.timeline-section .timeline{
  position:relative!important;
  display:grid!important;
  gap:clamp(62px,7.4vw,106px)!important;
  width:min(1420px,100%)!important;
  margin:clamp(34px,4vw,52px) auto 0!important;
  padding-left:0!important;
  padding-right:0!important;
  padding-bottom:24px!important;
}
.timeline-section .timeline::before,
.timeline-section .timeline::after{
  left:50%!important;
  transform:translateX(-50%)!important;
  width:1px!important;
  top:8px!important;
  bottom:18px!important;
}
.timeline-section .timeline::before{
  content:""!important;
  position:absolute!important;
  height:auto!important;
  background:repeating-linear-gradient(to bottom,rgba(255,255,255,.52) 0 16px,rgba(255,255,255,.2) 16px 26px,transparent 26px 38px)!important;
  box-shadow:0 0 20px rgba(255,255,255,.12)!important;
}
.timeline-section .timeline::after{
  content:""!important;
  position:absolute!important;
  bottom:auto!important;
  height:var(--timeline-progress,0%)!important;
  background:#fff!important;
  box-shadow:0 0 24px rgba(255,255,255,.72)!important;
  transition:height .08s linear!important;
}
.timeline-section .timeline-row,
.timeline-section .timeline-row.is-left,
.timeline-section .timeline-row.is-right{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:center!important;
  gap:clamp(58px,7vw,112px)!important;
  margin:0!important;
  padding:0!important;
}
.timeline-section .timeline-row::before{
  content:attr(data-chapter)!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:clamp(40px,4vw,56px)!important;
  height:clamp(40px,4vw,56px)!important;
  border-radius:50%!important;
  background:#000!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.92)!important;
  display:grid!important;
  place-items:center!important;
  font-family:var(--body)!important;
  font-size:clamp(13px,1vw,16px)!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  box-shadow:0 0 0 10px #000,0 0 34px rgba(255,255,255,.25)!important;
  z-index:4!important;
  transform:translate(-50%,-50%)!important;
}
.timeline-section .timeline-row::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  left:calc(50% - clamp(52px,5vw,82px))!important;
  width:clamp(104px,10vw,164px)!important;
  height:1px!important;
  background:rgba(255,255,255,.5)!important;
  box-shadow:none!important;
  z-index:1!important;
  transform:none!important;
}
.timeline-section .timeline-row.is-right .timeline-meta{
  grid-column:1!important;
  grid-row:1!important;
  text-align:right!important;
  justify-items:end!important;
  align-items:end!important;
  padding:0 clamp(.7rem,1.5vw,1.25rem) 0 0!important;
}
.timeline-section .timeline-row.is-right .episode-card{
  grid-column:2!important;
  grid-row:1!important;
}
.timeline-section .timeline-row.is-left .timeline-meta{
  grid-column:2!important;
  grid-row:1!important;
  text-align:left!important;
  justify-items:start!important;
  align-items:end!important;
  padding:0 0 0 clamp(.7rem,1.5vw,1.25rem)!important;
}
.timeline-section .timeline-row.is-left .episode-card{
  grid-column:1!important;
  grid-row:1!important;
}
.timeline-section .timeline-meta{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:.35rem!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#fff!important;
  min-height:0!important;
  margin:0!important;
}
.timeline-section .timeline-meta .episode-no,
.timeline-section .timeline-meta strong,
.timeline-section .timeline-meta em,
.timeline-section .timeline-meta small{
  grid-column:auto!important;
  grid-row:auto!important;
  justify-self:inherit!important;
}
.timeline-section .timeline-meta .episode-no{
  font-size:clamp(13px,.95vw,16px)!important;
  letter-spacing:.19em!important;
  text-transform:uppercase!important;
  color:rgba(255,255,255,.66)!important;
}
.timeline-section .timeline-meta strong{
  font-family:var(--title)!important;
  font-size:clamp(34px,4.15vw,68px)!important;
  line-height:.86!important;
  text-transform:uppercase!important;
}
.timeline-section .timeline-meta em{
  font-size:clamp(16px,1.35vw,21px)!important;
  line-height:1!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
  font-style:normal!important;
  opacity:.92!important;
}
.timeline-section .timeline-meta small{
  font-size:clamp(14px,1.05vw,18px)!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:rgba(255,255,255,.72)!important;
}
.timeline-section .timeline-meta .timeline-still{display:none!important;}

/* Episode card keeps the black/white poster style, but the copy moves beside the poster */
.timeline-section .episode-card{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:minmax(190px,.48fr) minmax(220px,.52fr)!important;
  grid-template-areas:
    "poster topline"
    "poster title"
    "poster translation"
    "poster copy"
    "poster link"!important;
  align-items:center!important;
  column-gap:clamp(1rem,2vw,1.6rem)!important;
  row-gap:.25rem!important;
  width:100%!important;
  min-height:clamp(360px,33vw,520px)!important;
  padding:0 clamp(1.15rem,2vw,1.85rem) 0 0!important;
  overflow:hidden!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  clip-path:none!important;
  box-shadow:0 30px 100px rgba(255,255,255,.075)!important;
  transition:transform .28s ease,box-shadow .28s ease,filter .28s ease!important;
}
.timeline-section .episode-card::before,
.timeline-section .episode-card::after{display:none!important;}
.timeline-section .episode-card:hover{
  transform:translateY(-7px)!important;
  box-shadow:0 0 0 1px #fff,0 38px 120px rgba(255,255,255,.17)!important;
}
.timeline-section .timeline-row.is-active .episode-card{
  transform:translateY(calc(var(--scene-y,0px) - 6px)) scale(1.008)!important;
  filter:brightness(1)!important;
  box-shadow:0 0 0 1px #fff,0 38px 118px rgba(255,255,255,.19)!important;
}
.timeline-section .episode-hero{
  grid-area:poster!important;
  align-self:stretch!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:100%!important;
  aspect-ratio:2/3!important;
  margin:0!important;
  overflow:hidden!important;
  background:#111!important;
  border-right:1px solid rgba(0,0,0,.16)!important;
  border-bottom:0!important;
}
.timeline-section .episode-hero img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  filter:grayscale(1) contrast(1.07)!important;
  transform:scale(1.001)!important;
  transition:transform .8s ease,filter .6s ease!important;
}
.timeline-section .episode-card:hover .episode-hero img,
.timeline-section .timeline-row:hover .episode-hero img{
  transform:scale(1.045)!important;
  filter:grayscale(1) contrast(1.13)!important;
}
.timeline-section .episode-card > :not(.episode-hero){
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
.timeline-section .card-topline{
  grid-area:topline!important;
  align-self:end!important;
  margin:0 0 clamp(.75rem,1vw,1rem)!important;
  padding:0 0 .75rem!important;
  border-bottom:1px solid rgba(0,0,0,.25)!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:.7rem!important;
  flex-wrap:wrap!important;
  font-size:clamp(15px,1.05vw,18px)!important;
  line-height:1.25!important;
  letter-spacing:.13em!important;
  color:rgba(0,0,0,.72)!important;
}
.timeline-section .card-topline span{max-width:none!important;white-space:normal!important;overflow-wrap:break-word!important;}
.timeline-section .episode-card h3{
  grid-area:title!important;
  font-size:clamp(33px,3.25vw,56px)!important;
  line-height:.9!important;
  margin:0 0 .45rem!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.timeline-section .translation{
  grid-area:translation!important;
  font-size:clamp(26px,2.45vw,40px)!important;
  line-height:1!important;
  margin:0 0 .65rem!important;
}
.timeline-section .episode-card p:not(.translation){
  grid-area:copy!important;
  font-size:clamp(16px,1.14vw,19px)!important;
  line-height:1.45!important;
  max-width:420px!important;
  margin:0!important;
}
.timeline-section .card-link{
  grid-area:link!important;
  align-self:start!important;
  justify-self:start!important;
  margin-top:clamp(.75rem,1.2vw,1rem)!important;
  padding-top:.62rem!important;
  display:inline-block!important;
}

@media(max-width:1050px){
  .timeline-section .timeline{gap:clamp(54px,7vw,82px)!important;}
  .timeline-section .timeline-row,
  .timeline-section .timeline-row.is-left,
  .timeline-section .timeline-row.is-right{
    gap:clamp(44px,6vw,74px)!important;
  }
  .timeline-section .episode-card{
    grid-template-columns:minmax(160px,.48fr) minmax(190px,.52fr)!important;
    min-height:clamp(330px,39vw,470px)!important;
    padding-right:1rem!important;
  }
  .timeline-section .episode-card h3{font-size:clamp(30px,3.75vw,48px)!important;}
  .timeline-section .translation{font-size:clamp(24px,2.9vw,36px)!important;}
}
@media(max-width:780px){
  .timeline-section .timeline{
    padding-left:46px!important;
    width:100%!important;
    gap:54px!important;
  }
  .timeline-section .timeline::before,
  .timeline-section .timeline::after{
    left:16px!important;
    transform:none!important;
  }
  .timeline-section .timeline-row,
  .timeline-section .timeline-row.is-left,
  .timeline-section .timeline-row.is-right{
    display:block!important;
  }
  .timeline-section .timeline-row::before{
    left:-30px!important;
    top:6px!important;
    width:34px!important;
    height:34px!important;
    font-size:12px!important;
    box-shadow:0 0 0 7px #000,0 0 20px rgba(255,255,255,.25)!important;
    transform:none!important;
  }
  .timeline-section .timeline-row::after{
    left:4px!important;
    top:23px!important;
    width:22px!important;
  }
  .timeline-section .timeline-meta,
  .timeline-section .timeline-row.is-left .timeline-meta,
  .timeline-section .timeline-row.is-right .timeline-meta{
    text-align:left!important;
    justify-items:start!important;
    padding:0 0 .85rem!important;
  }
  .timeline-section .episode-card{
    display:block!important;
    min-height:0!important;
    padding:0 0 1.45rem!important;
  }
  .timeline-section .episode-hero{
    width:100%!important;
    height:clamp(300px,88vw,520px)!important;
    aspect-ratio:2/3!important;
    border-right:0!important;
    border-bottom:1px solid rgba(0,0,0,.15)!important;
  }
  .timeline-section .episode-card > :not(.episode-hero){
    margin-left:1rem!important;
    margin-right:1rem!important;
  }
  .timeline-section .card-topline{
    margin-top:1rem!important;
  }
  .timeline-section .episode-card h3{font-size:clamp(34px,10vw,56px)!important;}
  .timeline-section .translation{font-size:clamp(28px,8vw,44px)!important;}
}



/* V45 — build timeline cards around full-height 24x36 poster art. Keep V43 centered alternating timeline style. */
html body .timeline-section .timeline{
  width:min(1660px,100%)!important;
  gap:clamp(68px,7.6vw,112px)!important;
}
html body .timeline-section .timeline-row,
html body .timeline-section .timeline-row.is-left,
html body .timeline-section .timeline-row.is-right{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:clamp(52px,6.2vw,92px)!important;
  align-items:center!important;
}

/* Card width can breathe, but the card is still contained on its side of the center line. */
html body .timeline-section .episode-card{
  width:100%!important;
  max-width:790px!important;
  min-width:0!important;
  height:clamp(500px,42vw,650px)!important;
  min-height:0!important;
  max-height:none!important;
  display:grid!important;
  grid-template-columns:minmax(280px,40%) minmax(0,60%)!important;
  grid-template-areas:
    "poster topline"
    "poster title"
    "poster translation"
    "poster copy"
    "poster link"!important;
  align-items:center!important;
  column-gap:0!important;
  row-gap:.18rem!important;
  padding:0!important;
  overflow:hidden!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  clip-path:none!important;
  box-shadow:0 30px 100px rgba(255,255,255,.075)!important;
}
html body .timeline-section .timeline-row.is-right .episode-card{
  justify-self:start!important;
}
html body .timeline-section .timeline-row.is-left .episode-card{
  justify-self:end!important;
}

/* The poster is the full height of the card. No padding. No small image frame. */
html body .timeline-section .episode-hero{
  grid-area:poster!important;
  align-self:stretch!important;
  justify-self:stretch!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
  aspect-ratio:2 / 3!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#111!important;
  border-right:1px solid rgba(0,0,0,.16)!important;
  border-bottom:0!important;
}
html body .timeline-section .episode-hero img{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  aspect-ratio:2 / 3!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  filter:grayscale(1) contrast(1.07)!important;
  transform:scale(1.001)!important;
}

/* Text lives in the white area beside the full-height poster. */
html body .timeline-section .episode-card > :not(.episode-hero){
  margin-left:0!important;
  margin-right:0!important;
  padding-left:clamp(1.55rem,2.3vw,2.35rem)!important;
  padding-right:clamp(1.55rem,2.3vw,2.35rem)!important;
}
html body .timeline-section .card-topline{
  grid-area:topline!important;
  align-self:end!important;
  margin:0 0 clamp(.85rem,1.2vw,1.15rem)!important;
  padding-top:clamp(1.45rem,2vw,2.1rem)!important;
  padding-bottom:clamp(.75rem,1vw,1rem)!important;
  border-bottom:1px solid rgba(0,0,0,.25)!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:.85rem 1rem!important;
  flex-wrap:wrap!important;
  font-size:clamp(16px,1.1vw,20px)!important;
  line-height:1.25!important;
  letter-spacing:.115em!important;
  color:rgba(0,0,0,.78)!important;
}
html body .timeline-section .card-topline span{
  max-width:none!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
}
html body .timeline-section .card-topline span:first-child{
  color:#000!important;
}
html body .timeline-section .episode-card h3{
  grid-area:title!important;
  font-size:clamp(34px,3.25vw,58px)!important;
  line-height:.9!important;
  margin:0 0 clamp(.45rem,.75vw,.7rem)!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
html body .timeline-section .translation{
  grid-area:translation!important;
  font-size:clamp(27px,2.4vw,42px)!important;
  line-height:1!important;
  margin:0 0 clamp(.7rem,1vw,1rem)!important;
}
html body .timeline-section .episode-card p:not(.translation){
  grid-area:copy!important;
  font-size:clamp(16px,1.08vw,19px)!important;
  line-height:1.48!important;
  max-width:460px!important;
  margin:0!important;
}
html body .timeline-section .card-link{
  grid-area:link!important;
  align-self:start!important;
  justify-self:start!important;
  display:inline-block!important;
  margin-top:clamp(.9rem,1.2vw,1.2rem)!important;
  padding-top:.62rem!important;
}

@media(max-width:1180px){
  html body .timeline-section .timeline{width:min(1440px,100%)!important;}
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{gap:clamp(44px,5.4vw,72px)!important;}
  html body .timeline-section .episode-card{
    height:clamp(460px,45vw,590px)!important;
    grid-template-columns:minmax(230px,40%) minmax(0,60%)!important;
  }
  html body .timeline-section .episode-card > :not(.episode-hero){
    padding-left:clamp(1.15rem,1.8vw,1.75rem)!important;
    padding-right:clamp(1.15rem,1.8vw,1.75rem)!important;
  }
  html body .timeline-section .episode-card h3{font-size:clamp(30px,3.45vw,48px)!important;}
  html body .timeline-section .translation{font-size:clamp(24px,2.8vw,36px)!important;}
  html body .timeline-section .episode-card p:not(.translation){font-size:clamp(15px,1.25vw,18px)!important;}
}
@media(max-width:900px){
  html body .timeline-section .timeline{
    padding-left:46px!important;
    width:100%!important;
    gap:54px!important;
  }
  html body .timeline-section .timeline::before,
  html body .timeline-section .timeline::after{
    left:16px!important;
    transform:none!important;
  }
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{
    display:block!important;
  }
  html body .timeline-section .timeline-row::before{
    left:-30px!important;
    top:6px!important;
    width:34px!important;
    height:34px!important;
    font-size:12px!important;
    box-shadow:0 0 0 7px #000,0 0 20px rgba(255,255,255,.25)!important;
    transform:none!important;
  }
  html body .timeline-section .timeline-row::after{
    left:4px!important;
    top:23px!important;
    width:22px!important;
  }
  html body .timeline-section .timeline-meta,
  html body .timeline-section .timeline-row.is-left .timeline-meta,
  html body .timeline-section .timeline-row.is-right .timeline-meta{
    text-align:left!important;
    justify-items:start!important;
    padding:0 0 .85rem!important;
  }
  html body .timeline-section .episode-card{
    display:block!important;
    height:auto!important;
    max-width:560px!important;
    justify-self:start!important;
    padding:0 0 1.45rem!important;
  }
  html body .timeline-section .episode-hero{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:2 / 3!important;
    border-right:0!important;
    border-bottom:1px solid rgba(0,0,0,.15)!important;
  }
  html body .timeline-section .episode-card > :not(.episode-hero){
    margin-left:clamp(1.1rem,4.8vw,1.45rem)!important;
    margin-right:clamp(1.1rem,4.8vw,1.45rem)!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  html body .timeline-section .card-topline{padding-top:1.15rem!important;}
  html body .timeline-section .episode-card h3{font-size:clamp(34px,10vw,56px)!important;}
  html body .timeline-section .translation{font-size:clamp(28px,8vw,44px)!important;}
}



/* v47 — true split timeline: poster alone on one side, text card alone across the center line */
html body .timeline-section .timeline{
  position:relative!important;
  display:grid!important;
  gap:clamp(72px,6vw,108px)!important;
  margin-top:42px!important;
  padding:10px 0!important;
}
html body .timeline-section .timeline::before{
  content:""!important;
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  left:50%!important;
  width:1px!important;
  transform:translateX(-50%)!important;
  background:repeating-linear-gradient(to bottom,rgba(255,255,255,.36) 0 14px,transparent 14px 26px)!important;
  z-index:1!important;
}
html body .timeline-section .timeline::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:50%!important;
  width:1px!important;
  height:var(--timeline-progress,0%)!important;
  transform:translateX(-50%)!important;
  background:#fff!important;
  box-shadow:0 0 22px rgba(255,255,255,.62)!important;
  z-index:2!important;
}
html body .timeline-section .timeline-row,
html body .timeline-section .timeline-row.is-left,
html body .timeline-section .timeline-row.is-right{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,calc(50% - 88px)) 176px minmax(0,calc(50% - 88px))!important;
  gap:0!important;
  align-items:center!important;
  min-height:clamp(560px,50vw,780px)!important;
  padding:0!important;
  z-index:3!important;
}
html body .timeline-section .timeline-row::before{
  content:attr(data-chapter)!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:54px!important;
  height:54px!important;
  border-radius:50%!important;
  transform:translate(-50%,-50%)!important;
  display:grid!important;
  place-items:center!important;
  font-family:var(--body)!important;
  font-size:16px!important;
  letter-spacing:.05em!important;
  background:#000!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.95)!important;
  box-shadow:0 0 0 13px #000,0 0 32px rgba(255,255,255,.3)!important;
  z-index:8!important;
}
html body .timeline-section .timeline-row::after{
  content:""!important;
  position:absolute!important;
  left:calc(50% - 44px)!important;
  right:calc(50% - 44px)!important;
  top:50%!important;
  height:1px!important;
  transform:translateY(-50%)!important;
  background:rgba(255,255,255,.24)!important;
  z-index:2!important;
}
/* hard placement: one thing per side, never attached */
html body .timeline-section .timeline-row.is-right .timeline-text-card{grid-column:1!important;justify-self:end!important;margin-right:0!important;}
html body .timeline-section .timeline-row.is-right .timeline-poster-link{grid-column:3!important;justify-self:start!important;margin-left:0!important;}
html body .timeline-section .timeline-row.is-left .timeline-poster-link{grid-column:1!important;justify-self:end!important;margin-right:0!important;}
html body .timeline-section .timeline-row.is-left .timeline-text-card{grid-column:3!important;justify-self:start!important;margin-left:0!important;}
html body .timeline-section .timeline-poster-link{
  display:block!important;
  width:min(100%, 440px)!important;
  max-width:440px!important;
  text-decoration:none!important;
  position:relative!important;
  z-index:5!important;
}
html body .timeline-section .timeline-text-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  width:min(100%, 540px)!important;
  max-width:540px!important;
  min-height:clamp(410px,38vw,610px)!important;
  position:relative!important;
  z-index:5!important;
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  padding:clamp(1.9rem,2.5vw,2.65rem)!important;
  text-decoration:none!important;
  overflow:visible!important;
  transition:transform .3s ease,box-shadow .3s ease,clip-path .28s ease!important;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))!important;
  box-shadow:0 22px 70px rgba(255,255,255,.08)!important;
}
html body .timeline-section .timeline-text-card:hover{
  transform:translateY(-8px)!important;
  box-shadow:0 0 0 1px #fff,0 34px 110px rgba(255,255,255,.18)!important;
}
html body .timeline-section .timeline-text-card::before,
html body .timeline-section .timeline-text-card::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:18px!important;
  height:18px!important;
  border-radius:50%!important;
  background:#000!important;
  transform:translateY(-50%)!important;
  box-shadow:0 0 0 1px #fff!important;
  pointer-events:none!important;
}
html body .timeline-section .timeline-text-card::before{left:-9px!important;}
html body .timeline-section .timeline-text-card::after{right:-9px!important;}
html body .timeline-section .timeline-poster-stage{
  position:relative!important;
  width:100%!important;
  perspective:1200px!important;
}
html body .timeline-section .timeline-poster-stage::before{
  content:""!important;
  position:absolute!important;
  inset:8% -10% -8% 14%!important;
  background:radial-gradient(circle,rgba(255,255,255,.17),transparent 67%)!important;
  filter:blur(20px)!important;
  opacity:.8!important;
  transform:rotate(-4deg)!important;
  pointer-events:none!important;
}
html body .timeline-section .timeline-poster-frame{
  position:relative!important;
  width:100%!important;
  aspect-ratio:2 / 3!important;
  border:1px solid rgba(255,255,255,.78)!important;
  background:#050505!important;
  padding:12px!important;
  box-shadow:0 36px 120px rgba(255,255,255,.12),0 0 0 1px rgba(255,255,255,.72)!important;
  transition:transform .45s ease,filter .45s ease,box-shadow .45s ease!important;
  overflow:visible!important;
}
html body .timeline-section .timeline-poster-frame::before{
  content:""!important;
  position:absolute!important;
  inset:-14px!important;
  border:1px solid rgba(255,255,255,.3)!important;
  pointer-events:none!important;
}
html body .timeline-section .timeline-row.is-left .timeline-poster-frame{transform:rotate(-2.4deg) scale(1.02)!important;}
html body .timeline-section .timeline-row.is-right .timeline-poster-frame{transform:rotate(2.4deg) scale(1.02)!important;}
html body .timeline-section .timeline-row:hover .timeline-poster-frame,
html body .timeline-section .timeline-poster-link:hover .timeline-poster-frame{
  transform:rotate(.15deg) translateY(-12px) scale(1.055)!important;
  filter:brightness(1.07)!important;
  box-shadow:0 58px 180px rgba(255,255,255,.2),0 0 0 1px #fff!important;
}
html body .timeline-section .timeline-poster-frame img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#000!important;
  filter:grayscale(1) contrast(1.04)!important;
}
html body .timeline-section .timeline-text-head{
  display:grid!important;
  grid-template-columns:auto 1fr auto auto!important;
  gap:10px 18px!important;
  align-items:end!important;
  padding-bottom:1rem!important;
  border-bottom:1px solid rgba(0,0,0,.22)!important;
  margin-bottom:1.2rem!important;
}
html body .timeline-section .timeline-text-head .episode-no{font-size:15px!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:rgba(0,0,0,.62)!important;}
html body .timeline-section .timeline-text-head strong{font-family:var(--title)!important;font-size:clamp(34px,3.1vw,54px)!important;line-height:.9!important;text-transform:uppercase!important;}
html body .timeline-section .timeline-text-head em,
html body .timeline-section .timeline-text-head small{font-style:normal!important;text-transform:uppercase!important;letter-spacing:.1em!important;}
html body .timeline-section .timeline-text-head em{font-size:18px!important;color:rgba(0,0,0,.84)!important;}
html body .timeline-section .timeline-text-head small{font-size:17px!important;color:rgba(0,0,0,.58)!important;}
html body .timeline-section .timeline-text-card .card-topline{display:flex!important;justify-content:space-between!important;gap:.95rem!important;font-size:16px!important;letter-spacing:.11em!important;text-transform:uppercase!important;border-bottom:1px solid rgba(0,0,0,.18)!important;padding-bottom:1rem!important;margin-bottom:1.25rem!important;color:rgba(0,0,0,.68)!important;}
html body .timeline-section .timeline-text-card .card-topline span:last-child{text-align:right!important;}
html body .timeline-section .timeline-text-card h3{margin:0 0 .8rem!important;font-family:var(--title)!important;font-size:clamp(42px,4.25vw,72px)!important;line-height:.88!important;text-transform:uppercase!important;letter-spacing:.005em!important;color:#000!important;}
html body .timeline-section .timeline-text-card .translation{margin:.15rem 0 1rem!important;font-family:var(--accent)!important;font-size:clamp(34px,3.1vw,52px)!important;line-height:.94!important;color:#000!important;}
html body .timeline-section .timeline-text-card p{margin:.5rem 0 0!important;font-size:20px!important;line-height:1.55!important;color:rgba(0,0,0,.8)!important;}
html body .timeline-section .timeline-text-card .card-link{display:inline-block!important;margin-top:1.35rem!important;padding-top:.6rem!important;border-top:1px solid #000!important;font-size:16px!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#000!important;}
@media (max-width:1180px){
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{grid-template-columns:minmax(0,calc(50% - 72px)) 144px minmax(0,calc(50% - 72px))!important;}
  html body .timeline-section .timeline-poster-link{max-width:390px!important;}
  html body .timeline-section .timeline-text-card{max-width:500px!important;}
}
@media (max-width:980px){
  html body .timeline-section .timeline{gap:42px!important;}
  html body .timeline-section .timeline::before,
  html body .timeline-section .timeline::after{left:22px!important;transform:none!important;}
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{grid-template-columns:1fr!important;gap:18px!important;min-height:0!important;padding-left:52px!important;}
  html body .timeline-section .timeline-row::before{left:22px!important;top:18px!important;transform:translate(-50%,0)!important;width:42px!important;height:42px!important;font-size:14px!important;box-shadow:0 0 0 8px #000,0 0 24px rgba(255,255,255,.24)!important;}
  html body .timeline-section .timeline-row::after{display:none!important;}
  html body .timeline-section .timeline-row.is-left .timeline-poster-link,
  html body .timeline-section .timeline-row.is-left .timeline-text-card,
  html body .timeline-section .timeline-row.is-right .timeline-poster-link,
  html body .timeline-section .timeline-row.is-right .timeline-text-card{grid-column:1!important;justify-self:start!important;}
  html body .timeline-section .timeline-poster-link{width:min(100%,380px)!important;max-width:380px!important;}
  html body .timeline-section .timeline-text-card{width:min(100%,540px)!important;max-width:540px!important;min-height:0!important;padding:1.8rem!important;}
  html body .timeline-section .timeline-text-head{grid-template-columns:1fr!important;gap:4px!important;align-items:start!important;}
  html body .timeline-section .timeline-text-card .card-topline{flex-direction:column!important;}
  html body .timeline-section .timeline-text-card .card-topline span:last-child{text-align:left!important;}
  html body .timeline-section .timeline-text-card h3{font-size:clamp(34px,9vw,56px)!important;}
  html body .timeline-section .timeline-text-card .translation{font-size:clamp(30px,8vw,44px)!important;}
  html body .timeline-section .timeline-text-card p{font-size:18px!important;}
}



html body .hero-event-card{max-width:840px!important;padding-top:clamp(5.5rem,12vh,8rem)!important;padding-bottom:1rem!important;}
html body .hero-event-kicker{margin:0 0 .9rem!important;font-family:var(--nitti-open,var(--body))!important;font-size:clamp(14px,1.4vw,20px)!important;line-height:1.45!important;letter-spacing:.24em!important;text-transform:uppercase!important;color:rgba(255,255,255,.92)!important;text-shadow:0 10px 32px rgba(0,0,0,.82)!important;}
html body .hero-event-title{margin:0!important;font-family:var(--title)!important;font-size:clamp(58px,9.8vw,138px)!important;line-height:.9!important;letter-spacing:.02em!important;text-transform:uppercase!important;text-shadow:0 18px 64px rgba(0,0,0,.9)!important;}
html body .hero-event-subtitle{margin:.8rem 0 0!important;font-family:var(--accent)!important;font-size:clamp(28px,4.8vw,54px)!important;line-height:1!important;text-transform:none!important;color:#fff!important;text-shadow:0 10px 32px rgba(0,0,0,.82)!important;}
html body .hero-event-label{margin:1rem 0 0!important;font-family:var(--nitti-normal,var(--body))!important;font-size:clamp(18px,2vw,28px)!important;line-height:1.25!important;letter-spacing:.26em!important;text-transform:uppercase!important;color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;text-shadow:0 10px 28px rgba(0,0,0,.8)!important;}
html body .hero-event-card .hero-actions{margin-top:2rem!important;}
html body .reel-card{justify-content:flex-start!important;gap:.7rem!important;min-height:292px!important;padding-bottom:1.3rem!important;}
html body .reel-card .reel-image{margin-bottom:.15rem!important;}
html body .reel-card strong{display:block!important;font-size:clamp(24px,2.35vw,36px)!important;line-height:.95!important;white-space:normal!important;}
html body .reel-card .reel-sub,html body .reel-card small{display:block!important;font-family:var(--nitti-normal,var(--body))!important;font-size:clamp(14px,1vw,16px)!important;line-height:1.45!important;letter-spacing:.015em!important;text-transform:none!important;opacity:.82!important;white-space:normal!important;overflow:visible!important;color:rgba(255,255,255,.82)!important;}
html body .reel-section .reel-card:hover .reel-sub,html body .reel-section .reel-card:hover small{color:rgba(255,255,255,.92)!important;}
html body .timeline-section .timeline-text-card .card-link{margin-top:1rem!important;}
html body .timeline-section .timeline-text-card p:not(.translation){max-width:36ch!important;}
html body .timeline-section .timeline-text-card .timeline-text-head small{letter-spacing:.12em!important;}
@media (max-width:900px){html body .hero-event-kicker{letter-spacing:.18em!important;}html body .hero-event-label{letter-spacing:.16em!important;}html body .reel-card{min-height:308px!important;}}
@media (max-width:560px){html body .hero-event-card{padding-top:6.2rem!important;}html body .hero-event-title{font-size:clamp(42px,12vw,68px)!important;}html body .hero-event-subtitle{font-size:clamp(22px,6vw,34px)!important;}html body .hero-event-label{font-size:clamp(14px,4vw,18px)!important;}html body .reel-card{min-height:320px!important;}}



/* V51 — keep hero to one full-screen panel and move the event text up */
html body header.hero,
html body .hero{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  padding-top:0!important;
  padding-bottom:0!important;
  align-items:center!important;
  overflow:hidden!important;
}
html body .hero-event-card,
html body .hero .hero-event-card,
html body .hero-card.hero-event-card{
  padding-top:0!important;
  padding-bottom:0!important;
  margin-top:0!important;
  transform:translateY(-8.5vh)!important;
  max-width:min(900px,calc(100vw - 64px))!important;
}
html body .hero-event-kicker{margin-bottom:.62rem!important;font-size:clamp(12px,1.05vw,17px)!important;line-height:1.3!important;}
html body .hero-event-title{font-size:clamp(50px,8.6vw,122px)!important;line-height:.86!important;}
html body .hero-event-subtitle{margin-top:.55rem!important;font-size:clamp(24px,3.8vw,44px)!important;}
html body .hero-event-label{margin-top:.72rem!important;font-size:clamp(15px,1.55vw,23px)!important;}
html body .hero-event-card .hero-actions{margin-top:1.45rem!important;}
html body .hero-locations{bottom:22px!important;}
html body .hero .video-controls{top:26px!important;right:clamp(28px,4.8vw,78px)!important;bottom:auto!important;transform:none!important;}

/* Photos open as a lightbox instead of navigating away */
html body .timeline-poster-link,
html body .poster-frame{
  cursor:none!important;
}
html body .timeline-poster-link img,
html body .poster-frame img{
  cursor:none!important;
}
html body .timeline-poster-link:hover .timeline-poster-frame,
html body .poster-frame:hover{
  filter:brightness(1.08)!important;
}
html body .timeline-poster-link::after,
html body .poster-frame::before{
  pointer-events:none!important;
}

.site-lightbox{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  display:grid!important;
  place-items:center!important;
  padding:clamp(18px,3vw,44px)!important;
  background:rgba(0,0,0,.92)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .22s ease,visibility .22s ease!important;
  cursor:auto!important;
}
.site-lightbox.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
.site-lightbox img{
  max-width:min(92vw,860px)!important;
  max-height:92vh!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  border:1px solid rgba(255,255,255,.76)!important;
  box-shadow:0 35px 150px rgba(255,255,255,.18),0 0 0 12px #000!important;
  background:#000!important;
  cursor:auto!important;
}
.site-lightbox button{
  position:fixed!important;
  top:clamp(14px,2vw,26px)!important;
  right:clamp(14px,2vw,26px)!important;
  width:48px!important;
  height:48px!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.76)!important;
  background:#000!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-family:var(--body)!important;
  font-size:30px!important;
  line-height:1!important;
  cursor:pointer!important;
}
.site-lightbox button:hover{background:#fff!important;color:#000!important;}
body.lightbox-open{overflow:hidden!important;}

/* Native video modal/fullscreen should use the real cursor so it does not disappear over controls */
html body .teaser-modal,
html body .teaser-modal *,
html body .teaser-modal-video,
html body video:fullscreen,
html body video:fullscreen *,
html body video:-webkit-full-screen,
html body video:-webkit-full-screen *{
  cursor:auto!important;
}
html body .teaser-close,
html body .teaser-mini-control,
html body .teaser-expand{cursor:pointer!important;}
html body .teaser-modal .cursor,
html body .teaser-modal .cursor-dot{display:none!important;}

@media(max-width:900px){
  html body .hero-event-card,
  html body .hero .hero-event-card,
  html body .hero-card.hero-event-card{transform:translateY(-6vh)!important;max-width:calc(100vw - 44px)!important;}
  html body .hero-event-kicker{font-size:clamp(11px,2.5vw,14px)!important;letter-spacing:.15em!important;}
  html body .hero-event-title{font-size:clamp(42px,11vw,82px)!important;}
  html body .hero-event-subtitle{font-size:clamp(22px,5.4vw,36px)!important;}
  html body .hero-event-label{font-size:clamp(12px,3vw,18px)!important;letter-spacing:.14em!important;}
  html body .hero-event-card .hero-actions{margin-top:1.15rem!important;}
}
@media(max-width:560px){
  html body .hero-event-card,
  html body .hero .hero-event-card,
  html body .hero-card.hero-event-card{transform:translateY(-5.5vh)!important;}
  html body .hero-event-title{font-size:clamp(38px,12vw,64px)!important;}
  html body .hero-locations{bottom:16px!important;}
  html body .hero .video-controls{top:14px!important;right:12px!important;}
}



/* V52 — center the hero group inside one full-screen hero panel */
html body header.hero,
html body .hero{
  height:100vh!important;
  min-height:100vh!important;
  max-height:100vh!important;
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  align-items:center!important;
  overflow:hidden!important;
}
html body .hero .hero-card.hero-event-card,
html body .hero-card.hero-event-card,
html body .hero-event-card{
  position:relative!important;
  z-index:8!important;
  align-self:center!important;
  justify-self:center!important;
  margin:0 auto!important;
  padding:0!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  max-width:min(900px,calc(100vw - 64px))!important;
}
html body .hero-event-kicker{
  margin-bottom:.62rem!important;
  font-size:clamp(12px,1.05vw,17px)!important;
  line-height:1.3!important;
}
html body .hero-event-title{
  font-size:clamp(50px,8.6vw,122px)!important;
  line-height:.86!important;
}
html body .hero-event-subtitle{
  margin-top:.55rem!important;
  font-size:clamp(24px,3.8vw,44px)!important;
}
html body .hero-event-label{
  margin-top:.72rem!important;
  font-size:clamp(15px,1.55vw,23px)!important;
}
html body .hero-event-card .hero-actions{
  margin-top:1.45rem!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
html body .hero-scroll-outside{
  position:absolute!important;
  left:50%!important;
  bottom:clamp(74px,11vh,124px)!important;
  transform:translateX(-50%)!important;
  z-index:9!important;
  margin:0!important;
}
html body .hero-locations{bottom:22px!important;}
html body .hero .video-controls{
  top:26px!important;
  right:clamp(28px,4.8vw,78px)!important;
  bottom:auto!important;
  transform:none!important;
}

/* Force new timeline poster files to display cleanly on mobile and desktop */
html body .timeline-section .timeline-poster-frame,
html body .timeline-section .timeline-poster-frame img{
  aspect-ratio:2 / 3!important;
}
html body .timeline-section .timeline-poster-frame img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#000!important;
}

/* Poster/photo lightbox should keep images as image actions, not schedule links */
html body .timeline-poster-link,
html body .poster-frame{
  cursor:none!important;
}
html body .timeline-poster-link img,
html body .poster-frame img{
  cursor:none!important;
}
html body .timeline-poster-link:hover .timeline-poster-frame,
html body .poster-frame:hover{
  filter:brightness(1.08)!important;
}
.site-lightbox{
  cursor:auto!important;
}
.site-lightbox,
.site-lightbox *,
.site-lightbox button,
.site-lightbox img{
  cursor:auto!important;
}
.site-lightbox button{cursor:pointer!important;}

/* Fullscreen/native video controls should use the real cursor so it does not vanish */
html body.video-modal-open,
html body.video-modal-open *,
html body.video-fullscreen-active,
html body.video-fullscreen-active *,
html body .teaser-modal.is-open,
html body .teaser-modal.is-open *,
html body .teaser-modal-video,
html body .teaser-modal-video *,
html body video:fullscreen,
html body video:fullscreen *,
html body video:-webkit-full-screen,
html body video:-webkit-full-screen *{
  cursor:auto!important;
}
html body.video-modal-open .cursor,
html body.video-modal-open .cursor-dot,
html body.video-modal-open .spotlight,
html body.video-fullscreen-active .cursor,
html body.video-fullscreen-active .cursor-dot,
html body.video-fullscreen-active .spotlight{
  display:none!important;
}

/* Mobile: keep the hero centered and prevent the hero from becoming taller than the screen */
@media(max-width:900px){
  html body header.hero,
  html body .hero{
    height:100svh!important;
    min-height:100svh!important;
    max-height:100svh!important;
  }
  html body .hero .hero-card.hero-event-card,
  html body .hero-card.hero-event-card,
  html body .hero-event-card{
    transform:none!important;
    max-width:calc(100vw - 44px)!important;
  }
  html body .hero-event-kicker{
    font-size:clamp(11px,2.5vw,14px)!important;
    letter-spacing:.15em!important;
  }
  html body .hero-event-title{
    font-size:clamp(40px,10.8vw,78px)!important;
  }
  html body .hero-event-subtitle{
    font-size:clamp(22px,5.4vw,36px)!important;
  }
  html body .hero-event-label{
    font-size:clamp(12px,3vw,18px)!important;
    letter-spacing:.14em!important;
  }
  html body .hero-event-card .hero-actions{margin-top:1.15rem!important;}
  html body .hero-scroll-outside{bottom:clamp(68px,10vh,96px)!important;}
}
@media(max-width:560px){
  html body .hero-event-title{font-size:clamp(36px,11vw,62px)!important;}
  html body .hero-event-kicker{font-size:clamp(10px,2.55vw,13px)!important;line-height:1.35!important;}
  html body .hero-event-subtitle{font-size:clamp(20px,5.7vw,30px)!important;}
  html body .hero-event-label{font-size:clamp(11px,3.2vw,15px)!important;}
  html body .hero-locations{bottom:16px!important;}
  html body .hero .video-controls{top:14px!important;right:12px!important;}
  html body .hero-scroll-outside{bottom:72px!important;}
}



/* --- V48 final polish: mobile hero playback, cleaner split cards, cameo tracking, chapter accents --- */
html body video::-webkit-media-controls-start-playback-button{display:none!important;-webkit-appearance:none!important;}
html body video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none!important;}
html body .hero-video::-webkit-media-controls{display:none!important;}
html body .hero-video{background:#000!important;object-fit:cover!important;object-position:center center!important;}

/* tighter cameo tracking where it matters */
html body .timeline-chapter-tag,
html body .timeline-side-note,
html body .timeline-section .timeline-text-head .episode-no,
html body .timeline-section .timeline-text-card .card-link,
html body .timeline-section .timeline-text-card .card-topline{
  font-family:var(--cameo, var(--body))!important;
  letter-spacing:-.065em!important;
  word-spacing:.08em!important;
}
html body .timeline-section .timeline-text-card .card-topline span{display:block!important;}

/* cleaner desktop split layout */
html body .timeline-section .timeline{gap:92px!important;padding-block:26px 18px!important;}
html body .timeline-section .timeline-row,
html body .timeline-section .timeline-row.is-left,
html body .timeline-section .timeline-row.is-right{
  grid-template-columns:minmax(0,1fr) 148px minmax(0,1fr)!important;
  gap:clamp(18px,3vw,38px)!important;
  align-items:center!important;
}
html body .timeline-section .timeline-row::before{
  top:44px!important;
  width:56px!important;height:56px!important;
  font-size:16px!important;
  box-shadow:0 0 0 12px #000,0 0 40px rgba(255,255,255,.34)!important;
  transition:transform .35s ease, box-shadow .35s ease, background .35s ease, color .35s ease!important;
}
html body .timeline-section .timeline-row::after{
  top:72px!important;
  left:calc(50% - 46px)!important;
  right:calc(50% - 46px)!important;
  background:linear-gradient(90deg, rgba(255,255,255,.08), rgba(255,255,255,.46), rgba(255,255,255,.08))!important;
}
html body .timeline-section .timeline-row:hover::before,
html body .timeline-section .timeline-row.is-visible::before{
  transform:translateX(-50%) scale(1.05)!important;
  box-shadow:0 0 0 12px #000,0 0 52px rgba(255,255,255,.55)!important;
}

html body .timeline-section .timeline-poster-link{
  width:min(100%, 450px)!important;
  max-width:450px!important;
  align-self:center!important;
}
html body .timeline-section .timeline-poster-stage,
html body .timeline-section .timeline-poster-frame{width:100%!important;}
html body .timeline-section .timeline-poster-frame{
  aspect-ratio:2 / 3!important;
  padding:14px!important;
  box-shadow:0 38px 140px rgba(255,255,255,.14),0 0 0 1px rgba(255,255,255,.82)!important;
}
html body .timeline-section .timeline-poster-frame img{
  width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;background:#000!important;
}
html body .timeline-section .timeline-row.is-left .timeline-poster-frame{transform:rotate(-3deg) translateY(0) scale(1.015)!important;}
html body .timeline-section .timeline-row.is-right .timeline-poster-frame{transform:rotate(3deg) translateY(0) scale(1.015)!important;}
html body .timeline-section .timeline-row:hover .timeline-poster-frame,
html body .timeline-section .timeline-poster-link:hover .timeline-poster-frame,
html body .timeline-section .timeline-row.is-visible .timeline-poster-frame{
  filter:brightness(1.05)!important;
}
html body .timeline-section .timeline-row:hover .timeline-poster-frame,
html body .timeline-section .timeline-poster-link:hover .timeline-poster-frame{
  transform:rotate(.2deg) translateY(-14px) scale(1.045)!important;
  box-shadow:0 62px 190px rgba(255,255,255,.18),0 0 0 1px rgba(255,255,255,.95)!important;
}

html body .timeline-section .timeline-text-card{
  width:min(100%, 560px)!important;
  max-width:560px!important;
  min-height:clamp(560px, 44vw, 684px)!important;
  padding:clamp(2.2rem,2.8vw,2.9rem)!important;
  gap:.2rem!important;
  justify-content:flex-start!important;
  background:linear-gradient(180deg,#fff,#f7f7f7)!important;
  box-shadow:0 28px 90px rgba(255,255,255,.10)!important;
}
html body .timeline-section .timeline-text-card:hover{
  transform:translateY(-10px)!important;
  box-shadow:0 0 0 1px #fff,0 40px 120px rgba(255,255,255,.20)!important;
}
html body .timeline-section .timeline-text-head{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  grid-template-areas:
    "episode venue"
    "date time"!important;
  gap:8px 18px!important;
  align-items:end!important;
  padding-bottom:1.1rem!important;
  margin-bottom:1.35rem!important;
}
html body .timeline-section .timeline-text-head .episode-no{grid-area:episode!important;font-size:16px!important;color:rgba(0,0,0,.58)!important;}
html body .timeline-section .timeline-text-head strong{grid-area:date!important;font-size:clamp(36px,3vw,52px)!important;line-height:.92!important;}
html body .timeline-section .timeline-text-head em{grid-area:time!important;font-size:16px!important;justify-self:end!important;align-self:end!important;}
html body .timeline-section .timeline-text-head small{grid-area:venue!important;font-size:16px!important;justify-self:end!important;align-self:start!important;color:rgba(0,0,0,.54)!important;}
html body .timeline-section .timeline-text-card .card-topline{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:.85rem 1rem!important;
  padding-bottom:1.05rem!important;
  margin-bottom:1.2rem!important;
  font-size:17px!important;
  color:rgba(0,0,0,.7)!important;
}
html body .timeline-section .timeline-text-card .card-topline span:last-child{text-align:right!important;}
html body .timeline-section .timeline-text-card h3{font-size:clamp(38px,4vw,64px)!important;line-height:.9!important;margin:0 0 .65rem!important;}
html body .timeline-section .timeline-text-card .translation{font-size:clamp(30px,2.8vw,46px)!important;line-height:.96!important;margin:.05rem 0 1rem!important;}
html body .timeline-section .timeline-text-card p{font-size:19px!important;line-height:1.58!important;margin:.42rem 0 0!important;color:rgba(0,0,0,.82)!important;}
html body .timeline-section .timeline-text-card .card-link{margin-top:auto!important;display:inline-block!important;align-self:flex-start!important;font-size:15px!important;}

/* cool chapter accents */
html body .timeline-section .timeline-row{overflow:visible!important;isolation:isolate!important;}
html body .timeline-section .timeline-chapter-tag{
  position:absolute!important;
  left:50%!important;
  top:8px!important;
  transform:translateX(-50%)!important;
  z-index:7!important;
  font-size:12px!important;
  color:rgba(255,255,255,.72)!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  text-shadow:0 0 12px rgba(255,255,255,.1)!important;
}
html body .timeline-section .timeline-side-note{
  position:absolute!important;
  top:112px!important;
  z-index:1!important;
  font-size:11px!important;
  color:rgba(255,255,255,.22)!important;
  text-transform:uppercase!important;
  writing-mode:vertical-rl!important;
  text-orientation:mixed!important;
  white-space:nowrap!important;
  pointer-events:none!important;
  transition:opacity .3s ease, transform .3s ease!important;
}
html body .timeline-section .timeline-row.is-right .timeline-side-note{left:calc(50% - 34px)!important;transform:translateX(-100%)!important;}
html body .timeline-section .timeline-row.is-left .timeline-side-note{left:calc(50% + 34px)!important;transform:translateX(0) rotate(180deg)!important;}
html body .timeline-section .timeline-row:hover .timeline-side-note,
html body .timeline-section .timeline-row.is-visible .timeline-side-note{color:rgba(255,255,255,.34)!important;}

/* extra cinematic motion */
html body .timeline-section .timeline-row.is-visible .timeline-poster-frame{animation:timelinePosterFloat 6.5s ease-in-out infinite;}
html body .timeline-section .timeline-row.is-visible .timeline-text-card{animation:timelineCardFloat 7.5s ease-in-out infinite;}
html body .timeline-section .timeline-row:nth-child(even).is-visible .timeline-poster-frame{animation-delay:-2.2s;}
html body .timeline-section .timeline-row:nth-child(odd).is-visible .timeline-text-card{animation-delay:-3.1s;}
html body .timeline-section .timeline::before{animation:timelineGlowPulse 4.8s ease-in-out infinite!important;}
@keyframes timelinePosterFloat{0%,100%{transform:translateY(0) rotate(var(--poster-rot,0deg)) scale(1.015)}50%{transform:translateY(-8px) rotate(calc(var(--poster-rot,0deg) * .4)) scale(1.03)}}
@keyframes timelineCardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes timelineGlowPulse{0%,100%{opacity:.72;box-shadow:none}50%{opacity:1;box-shadow:0 0 24px rgba(255,255,255,.22)}}
html body .timeline-section .timeline-row.is-left .timeline-poster-frame{--poster-rot:-3deg!important;}
html body .timeline-section .timeline-row.is-right .timeline-poster-frame{--poster-rot:3deg!important;}

/* mobile tidy-up */
@media (max-width:980px){
  html body .hero .video-controls{top:24px!important;right:18px!important;bottom:auto!important;transform:none!important;gap:10px!important;}
  html body .hero .video-controls button{width:52px!important;height:52px!important;font-size:21px!important;}
  html body .timeline-section .timeline{gap:50px!important;padding-left:0!important;}
  html body .timeline-section .timeline::before,
  html body .timeline-section .timeline::after{left:20px!important;transform:none!important;}
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{grid-template-columns:1fr!important;gap:18px!important;padding-left:54px!important;}
  html body .timeline-section .timeline-row::before{left:20px!important;top:16px!important;transform:translate(-50%,0)!important;width:42px!important;height:42px!important;font-size:13px!important;box-shadow:0 0 0 8px #000,0 0 24px rgba(255,255,255,.26)!important;}
  html body .timeline-section .timeline-row::after{display:none!important;}
  html body .timeline-section .timeline-row.is-left .timeline-poster-link,
  html body .timeline-section .timeline-row.is-left .timeline-text-card,
  html body .timeline-section .timeline-row.is-right .timeline-poster-link,
  html body .timeline-section .timeline-row.is-right .timeline-text-card{grid-column:1!important;justify-self:start!important;}
  html body .timeline-section .timeline-poster-link{width:min(100%, 370px)!important;max-width:370px!important;}
  html body .timeline-section .timeline-text-card{width:min(100%, 100%)!important;max-width:100%!important;min-height:auto!important;padding:1.8rem 1.45rem 1.7rem!important;}
  html body .timeline-section .timeline-text-head{grid-template-columns:1fr!important;grid-template-areas:"episode" "date" "time" "venue"!important;gap:4px!important;align-items:start!important;}
  html body .timeline-section .timeline-text-head em,
  html body .timeline-section .timeline-text-head small{justify-self:start!important;}
  html body .timeline-section .timeline-text-card .card-topline{grid-template-columns:1fr!important;gap:.35rem!important;font-size:15px!important;}
  html body .timeline-section .timeline-text-card .card-topline span:last-child{text-align:left!important;}
  html body .timeline-section .timeline-text-card h3{font-size:clamp(30px,8vw,48px)!important;}
  html body .timeline-section .timeline-text-card .translation{font-size:clamp(26px,7vw,40px)!important;}
  html body .timeline-section .timeline-text-card p{font-size:17px!important;}
  html body .timeline-section .timeline-chapter-tag{left:20px!important;top:-12px!important;transform:none!important;font-size:10px!important;}
  html body .timeline-section .timeline-side-note{left:6px!important;top:82px!important;font-size:10px!important;opacity:.85!important;}
}
@media (max-width:640px){
  html body .hero .video-controls{top:18px!important;right:14px!important;gap:8px!important;}
  html body .hero .video-controls button{width:46px!important;height:46px!important;font-size:18px!important;}
  html body .timeline-section .timeline-poster-link{width:min(100%, 330px)!important;max-width:330px!important;}
  html body .timeline-section .timeline-text-card{padding:1.55rem 1.2rem 1.45rem!important;}
}



/* --- V49 final timeline pass: less Cameo, smoother poster movement, creative scroll motion, hover flicker --- */
html body .timeline-section{
  overflow:hidden!important;
}
html body .timeline-section .timeline-row.timeline-row-split{
  --poster-x:0px;
  --poster-y:0px;
  --poster-scale:1;
  --card-x:0px;
  --card-y:0px;
  --card-scale:1;
  --row-opacity:1;
  --row-blur:0px;
  --row-depth:0;
}

/* Use Nitti Open / Normal through the section; Cameo is only kept for the actual CTA button. */
html body .timeline-section .timeline-text-head,
html body .timeline-section .timeline-text-head .episode-no,
html body .timeline-section .timeline-text-head em,
html body .timeline-section .timeline-text-head small,
html body .timeline-section .timeline-text-card .card-topline,
html body .timeline-section .timeline-chapter-tag,
html body .timeline-section .timeline-side-note{
  font-family:var(--nitti-open, "Nitti Typewriter Open", "Nitti Typewriter", Courier, monospace)!important;
  letter-spacing:.06em!important;
  word-spacing:normal!important;
}
html body .timeline-section .timeline-text-card p,
html body .timeline-section .timeline-text-head strong{
  font-family:var(--body)!important;
}
html body .timeline-section .timeline-text-card .card-link{
  font-family:var(--nitti-cameo, "Nitti Typewriter Cameo", "Nitti Typewriter", Courier, monospace)!important;
  letter-spacing:-.075em!important;
  word-spacing:.08em!important;
}

/* Cleaner text cards */
html body .timeline-section .timeline-text-card{
  min-height:clamp(520px,42vw,650px)!important;
  justify-content:flex-start!important;
  gap:.35rem!important;
  padding:clamp(2.15rem,2.7vw,2.85rem)!important;
  transform:translate3d(var(--card-x),var(--card-y),0) scale(var(--card-scale))!important;
  opacity:var(--row-opacity)!important;
  filter:blur(var(--row-blur))!important;
  transition:transform .95s cubic-bezier(.16,.82,.22,1), opacity .65s ease, filter .65s ease, box-shadow .85s ease, background .85s ease!important;
  will-change:transform,opacity,filter!important;
}
html body .timeline-section .timeline-text-card .card-topline{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:start!important;
  gap:.55rem 1.05rem!important;
  font-size:clamp(14px,1vw,17px)!important;
  line-height:1.25!important;
  color:rgba(0,0,0,.68)!important;
}
html body .timeline-section .timeline-text-card .card-topline span{
  max-width:100%!important;
  overflow:visible!important;
  text-wrap:balance!important;
  overflow-wrap:normal!important;
}
html body .timeline-section .timeline-text-card .card-topline span:last-child{text-align:right!important;}
html body .timeline-section .timeline-text-head{
  gap:8px 16px!important;
  line-height:1.05!important;
}
html body .timeline-section .timeline-text-head .episode-no{font-size:clamp(13px,.92vw,15px)!important;}
html body .timeline-section .timeline-text-head strong{font-family:var(--title)!important;font-size:clamp(33px,2.9vw,50px)!important;}
html body .timeline-section .timeline-text-head em,
html body .timeline-section .timeline-text-head small{font-size:clamp(13px,.95vw,16px)!important;}
html body .timeline-section .timeline-text-card h3{
  font-size:clamp(36px,3.65vw,60px)!important;
  line-height:.92!important;
  margin-bottom:.65rem!important;
  text-wrap:balance!important;
}
html body .timeline-section .timeline-text-card .translation{
  font-size:clamp(30px,2.6vw,44px)!important;
  margin-bottom:1rem!important;
}
html body .timeline-section .timeline-text-card p{
  font-size:clamp(17px,1.25vw,19px)!important;
  line-height:1.55!important;
}

/* Smooth poster motion: the scroll transform is on the link, the angled poster slowly eases inside it. */
html body .timeline-section .timeline-poster-link{
  transform:translate3d(var(--poster-x),var(--poster-y),0) scale(var(--poster-scale))!important;
  opacity:var(--row-opacity)!important;
  filter:blur(var(--row-blur))!important;
  transition:transform 1.05s cubic-bezier(.16,.82,.22,1), opacity .7s ease, filter .7s ease!important;
  will-change:transform,opacity,filter!important;
  z-index:calc(4 + var(--row-depth,0))!important;
}
html body .timeline-section .timeline-poster-frame{
  transition:transform 1.25s cubic-bezier(.16,.86,.2,1), filter 1.05s ease, box-shadow 1.05s ease!important;
  will-change:transform,filter!important;
}
html body .timeline-section .timeline-row.is-left .timeline-poster-frame{
  transform:rotate(-2.8deg) translateY(0) scale(1.015)!important;
}
html body .timeline-section .timeline-row.is-right .timeline-poster-frame{
  transform:rotate(2.8deg) translateY(0) scale(1.015)!important;
}
html body .timeline-section .timeline-row:hover .timeline-poster-frame,
html body .timeline-section .timeline-poster-link:hover .timeline-poster-frame{
  filter:brightness(1.08)!important;
  box-shadow:0 64px 190px rgba(255,255,255,.22),0 0 0 1px #fff,0 0 90px rgba(255,255,255,.10)!important;
}
html body .timeline-section .timeline-row.is-left:hover .timeline-poster-frame,
html body .timeline-section .timeline-row.is-left .timeline-poster-link:hover .timeline-poster-frame{
  transform:rotate(-.35deg) translateY(-12px) scale(1.045)!important;
}
html body .timeline-section .timeline-row.is-right:hover .timeline-poster-frame,
html body .timeline-section .timeline-row.is-right .timeline-poster-link:hover .timeline-poster-frame{
  transform:rotate(.35deg) translateY(-12px) scale(1.045)!important;
}

/* Flicker/glow on hover, without changing the card layout. */
html body .timeline-section .timeline-poster-frame::after{
  content:""!important;
  position:absolute!important;
  inset:14px!important;
  z-index:5!important;
  pointer-events:none!important;
  opacity:0!important;
  background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.1) 42%,rgba(255,255,255,.34) 48%,rgba(255,255,255,.08) 54%,transparent 100%)!important;
  mix-blend-mode:screen!important;
  transform:translateX(-125%) skewX(-8deg)!important;
}
html body .timeline-section .timeline-row:hover .timeline-poster-frame::after,
html body .timeline-section .timeline-poster-link:hover .timeline-poster-frame::after{
  animation:v49PosterSweep 1.45s ease forwards, v49FlickerGlow 1.35s steps(7,end) infinite!important;
}
html body .timeline-section .timeline-row:hover .timeline-text-card,
html body .timeline-section .timeline-text-card:hover{
  animation:v49CardGlow 1.25s steps(7,end) infinite!important;
  background:linear-gradient(180deg,#fff,#f2f2f2)!important;
}
html body .timeline-section .timeline-text-card:hover .card-link,
html body .timeline-section .timeline-row:hover .card-link{
  animation:v49ButtonFlicker .95s steps(6,end) infinite!important;
}
@keyframes v49PosterSweep{0%{opacity:0;transform:translateX(-130%) skewX(-8deg)}18%{opacity:.9}100%{opacity:0;transform:translateX(130%) skewX(-8deg)}}
@keyframes v49FlickerGlow{0%,100%{filter:brightness(1)}14%{filter:brightness(1.28)}25%{filter:brightness(.92)}42%{filter:brightness(1.18)}63%{filter:brightness(.98)}78%{filter:brightness(1.22)}}
@keyframes v49CardGlow{0%,100%{box-shadow:0 0 0 1px #fff,0 28px 90px rgba(255,255,255,.12)}18%{box-shadow:0 0 0 1px #fff,0 36px 130px rgba(255,255,255,.22)}28%{box-shadow:0 0 0 1px #fff,0 24px 70px rgba(255,255,255,.1)}54%{box-shadow:0 0 0 1px #fff,0 40px 150px rgba(255,255,255,.24)}72%{box-shadow:0 0 0 1px #fff,0 28px 100px rgba(255,255,255,.14)}}
@keyframes v49ButtonFlicker{0%,100%{filter:brightness(1)}20%{filter:brightness(1.45)}32%{filter:brightness(.85)}52%{filter:brightness(1.25)}74%{filter:brightness(.95)}}

/* More creative scroll behavior: rows fly in/out and visually stack around the center line. */
html body .timeline-section .timeline-row.timeline-row-split{
  transition:filter .55s ease, opacity .55s ease!important;
  z-index:calc(20 + var(--row-depth,0))!important;
}
html body .timeline-section .timeline-row.timeline-row-split.is-current .timeline-chapter-tag{
  color:rgba(255,255,255,.95)!important;
  text-shadow:0 0 18px rgba(255,255,255,.32)!important;
}
html body .timeline-section .timeline-row.timeline-row-split.is-current::before{
  background:#fff!important;
  color:#000!important;
  box-shadow:0 0 0 12px #000,0 0 60px rgba(255,255,255,.64)!important;
}
html body .timeline-section .timeline-row.timeline-row-split.is-before .timeline-poster-link,
html body .timeline-section .timeline-row.timeline-row-split.is-after .timeline-poster-link,
html body .timeline-section .timeline-row.timeline-row-split.is-before .timeline-text-card,
html body .timeline-section .timeline-row.timeline-row-split.is-after .timeline-text-card{
  pointer-events:none!important;
}

/* Chapter and outside text: open/normal, not cameo. */
html body .timeline-section .timeline-chapter-tag{
  font-family:var(--nitti-open, "Nitti Typewriter Open", "Nitti Typewriter", Courier, monospace)!important;
  letter-spacing:.11em!important;
  font-size:13px!important;
}
html body .timeline-section .timeline-side-note{
  font-family:var(--body)!important;
  letter-spacing:.18em!important;
  color:rgba(255,255,255,.24)!important;
  animation:v49SideCreditDrift 8s ease-in-out infinite!important;
}
@keyframes v49SideCreditDrift{0%,100%{opacity:.42}50%{opacity:.78}}

@media (max-width:980px){
  html body .timeline-section .timeline-text-card,
  html body .timeline-section .timeline-poster-link{
    transform:none!important;
    opacity:1!important;
    filter:none!important;
  }
  html body .timeline-section .timeline-row.timeline-row-split{
    transform:translateY(var(--mobile-row-y,0px)) scale(var(--mobile-row-scale,1))!important;
    opacity:var(--mobile-row-opacity,1)!important;
    transition:transform .85s cubic-bezier(.16,.82,.22,1), opacity .65s ease!important;
  }
  html body .timeline-section .timeline-text-card .card-topline{
    grid-template-columns:1fr!important;
    font-size:14px!important;
    letter-spacing:.07em!important;
  }
  html body .timeline-section .timeline-text-card .card-topline span:last-child{text-align:left!important;}
  html body .timeline-section .timeline-text-card h3{font-size:clamp(29px,7.6vw,45px)!important;}
  html body .timeline-section .timeline-text-card .translation{font-size:clamp(26px,6.7vw,38px)!important;}
  html body .timeline-section .timeline-text-card p{font-size:16.5px!important;line-height:1.52!important;}
  html body .timeline-section .timeline-text-card .card-link{font-size:14px!important;}
  html body .timeline-section .timeline-side-note{font-size:9px!important;letter-spacing:.16em!important;}
}



/* Remove older float/keyframe transforms so the new scroll motion is smooth, not abrupt. */
html body .timeline-section .timeline-row.is-visible .timeline-poster-frame,
html body .timeline-section .timeline-row.is-visible .timeline-text-card{
  animation:none!important;
}
html body .timeline-section .timeline-row:hover .timeline-text-card,
html body .timeline-section .timeline-text-card:hover{
  animation:v49CardGlow 1.25s steps(7,end) infinite!important;
}
html body .timeline-section .timeline-row:hover .timeline-poster-frame::after,
html body .timeline-section .timeline-poster-link:hover .timeline-poster-frame::after{
  animation:v49PosterSweep 1.45s ease forwards, v49FlickerGlow 1.35s steps(7,end) infinite!important;
}
html body .timeline-section .timeline-row.is-current .timeline-poster-frame{
  box-shadow:0 54px 168px rgba(255,255,255,.18),0 0 0 1px rgba(255,255,255,.92)!important;
}
html body .timeline-section .timeline-row.is-current .timeline-text-card{
  box-shadow:0 0 0 1px #fff,0 38px 120px rgba(255,255,255,.18)!important;
}



/* Requested edits: hero announcement lower, scroll cue centered, event date added, mobile included. */
html body .hero .hero-card.hero-event-card,
html body .hero-card.hero-event-card,
html body .hero-event-card{
  box-sizing:border-box!important;
  width:min(860px,calc(100vw - 72px))!important;
  max-width:min(860px,calc(100vw - 72px))!important;
  padding:clamp(1.35rem,2vw,2.05rem) clamp(1.35rem,3.2vw,3rem) clamp(1.45rem,2.2vw,2.25rem)!important;
  transform:translateY(5.25vh)!important;
  background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.34))!important;
  border:1px solid rgba(255,255,255,.72)!important;
  outline:1px solid rgba(255,255,255,.18)!important;
  outline-offset:-9px!important;
  box-shadow:0 34px 110px rgba(0,0,0,.66),0 0 0 1px rgba(0,0,0,.8)!important;
  backdrop-filter:blur(2px)!important;
  -webkit-backdrop-filter:blur(2px)!important;
}
html body .hero-event-card::before,
html body .hero-event-card::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  width:18px!important;
  height:18px!important;
  border:1px solid rgba(255,255,255,.55)!important;
  background:rgba(0,0,0,.9)!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  pointer-events:none!important;
}
html body .hero-event-card::before{left:-10px!important;}
html body .hero-event-card::after{right:-10px!important;}
html body .hero-event-kicker{margin-bottom:.7rem!important;}
html body .hero-event-title{line-height:.84!important;}
html body .hero-event-label{margin-top:.82rem!important;}
html body .hero-event-date{
  margin:.72rem 0 0!important;
  font-family:var(--nitti-normal,var(--body))!important;
  font-size:clamp(12px,1.02vw,16px)!important;
  line-height:1.35!important;
  letter-spacing:.17em!important;
  text-transform:uppercase!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  text-shadow:0 10px 28px rgba(0,0,0,.82)!important;
}
html body .hero-event-card .hero-actions{margin-top:1.25rem!important;}
html body .hero-scroll-outside,
html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
  width:max-content!important;
  min-width:0!important;
  max-width:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  bottom:clamp(62px,8.5vh,94px)!important;
}
html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside span,
html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside i{
  align-self:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:900px){
  html body .hero .hero-card.hero-event-card,
  html body .hero-card.hero-event-card,
  html body .hero-event-card{
    width:calc(100vw - 44px)!important;
    max-width:calc(100vw - 44px)!important;
    padding:1.25rem 1.18rem 1.35rem!important;
    transform:translateY(3.3vh)!important;
    outline-offset:-7px!important;
  }
  html body .hero-event-card::before,
  html body .hero-event-card::after{width:14px!important;height:14px!important;}
  html body .hero-event-card::before{left:-8px!important;}
  html body .hero-event-card::after{right:-8px!important;}
  html body .hero-event-date{font-size:clamp(11px,2.5vw,14px)!important;letter-spacing:.13em!important;}
  html body .hero-scroll-outside,
  html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside{bottom:clamp(58px,8vh,82px)!important;}
}
@media(max-width:560px){
  html body .hero .hero-card.hero-event-card,
  html body .hero-card.hero-event-card,
  html body .hero-event-card{
    width:calc(100vw - 32px)!important;
    max-width:calc(100vw - 32px)!important;
    padding:1.05rem .95rem 1.16rem!important;
    transform:translateY(2.4vh)!important;
  }
  html body .hero-event-date{font-size:10.5px!important;letter-spacing:.105em!important;}
  html body .hero-event-card .hero-actions{margin-top:1rem!important;}
  html body .hero-scroll-outside,
  html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside{bottom:58px!important;}
}



/* Follow-up edits: guest links, timeline card click area, font swaps, larger cards/posters, hero scroll placement. */
html body .hero .hero-card.hero-event-card,
html body .hero-card.hero-event-card,
html body .hero-event-card{
  transform:translateY(-6vh)!important;
  font-family:var(--nitti-normal,var(--body))!important;
}
html body .hero-event-kicker,
html body .hero-event-label,
html body .hero-event-date,
html body .hero-event-card .hero-actions,
html body .hero-event-card .btn,
html body .hero-event-card .btn span,
html body .hero-event-card .btn strong{
  font-family:var(--nitti-normal,var(--body))!important;
}
html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside,
html body .hero-scroll-outside{
  top:min(calc(50% + clamp(205px,26vh,300px)),calc(100% - 118px))!important;
  bottom:auto!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  z-index:10!important;
}
html body .hero-locations,
html body .hero-locations span,
html body .hero-locations span:nth-child(2){
  font-family:var(--nitti-open,"Nitti Typewriter Open","Nitti Typewriter",Courier,monospace)!important;
}
html body .timeline-section .timeline-text-card,
html body .timeline-section .timeline-text-card .timeline-text-head,
html body .timeline-section .timeline-text-card .episode-no,
html body .timeline-section .timeline-text-card .timeline-text-head em,
html body .timeline-section .timeline-text-card .timeline-text-head small,
html body .timeline-section .timeline-text-card .card-topline,
html body .timeline-section .timeline-text-card .card-topline span,
html body .timeline-section .timeline-text-card p:not(.translation),
html body .timeline-section .timeline-text-card .card-link{
  font-family:var(--nitti-normal,var(--body))!important;
}
html body .timeline-section .timeline-text-card .timeline-text-head strong,
html body .timeline-section .timeline-text-card h3{
  font-family:var(--title)!important;
}
html body .timeline-section .timeline-text-card .translation{
  font-family:var(--accent)!important;
}
html body .timeline-section .timeline-text-card{
  width:min(100%,590px)!important;
  max-width:590px!important;
  min-height:clamp(560px,44vw,700px)!important;
  padding:clamp(2.35rem,3vw,3.18rem)!important;
}
html body .timeline-section .timeline-poster-link{
  width:min(100%,460px)!important;
  max-width:460px!important;
}
html body .timeline-section .timeline-poster-frame{
  transform-origin:center center!important;
}
html body .timeline-section .timeline-row,
html body .timeline-section .timeline-row.is-left,
html body .timeline-section .timeline-row.is-right{
  grid-template-columns:minmax(0,calc(50% - 60px)) 120px minmax(0,calc(50% - 60px))!important;
}
html body .timeline-section .timeline-text-card .card-link{
  display:inline-block!important;
  width:max-content!important;
  max-width:100%!important;
  pointer-events:auto!important;
}
html body .timeline-section .timeline-text-card{
  cursor:default!important;
}
html body .reel-card{
  flex-basis:clamp(250px,23vw,315px)!important;
  min-height:314px!important;
}
html body .reel-card.is-disabled,
html body .reel-card[aria-disabled="true"]{
  pointer-events:none!important;
  cursor:default!important;
  opacity:.88!important;
}
html body .reel-card.is-disabled:hover,
html body .reel-card[aria-disabled="true"]:hover{
  transform:none!important;
  border-color:rgba(255,255,255,.34)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.12)!important;
}
@media(max-width:1180px){
  html body .timeline-section .timeline-poster-link{width:min(100%,430px)!important;max-width:430px!important;}
  html body .timeline-section .timeline-text-card{width:min(100%,570px)!important;max-width:570px!important;}
}
@media(max-width:980px){
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{grid-template-columns:1fr!important;}
  html body .timeline-section .timeline-poster-link{width:min(100%,430px)!important;max-width:430px!important;}
  html body .timeline-section .timeline-text-card{width:min(100%,620px)!important;max-width:620px!important;min-height:0!important;padding:2rem!important;}
}
@media(max-width:900px){
  html body .hero .hero-card.hero-event-card,
  html body .hero-card.hero-event-card,
  html body .hero-event-card{transform:translateY(-5vh)!important;}
  html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside,
  html body .hero-scroll-outside{top:min(calc(50% + clamp(168px,25vh,230px)),calc(100% - 104px))!important;bottom:auto!important;}
  html body .reel-card{min-height:330px!important;}
}
@media(max-width:560px){
  html body .hero .hero-card.hero-event-card,
  html body .hero-card.hero-event-card,
  html body .hero-event-card{transform:translateY(-6vh)!important;}
  html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside,
  html body .hero-scroll-outside{top:min(calc(50% + clamp(150px,23vh,200px)),calc(100% - 100px))!important;bottom:auto!important;}
  html body .timeline-section .timeline-poster-link{width:min(100%,390px)!important;max-width:390px!important;}
  html body .timeline-section .timeline-text-card{padding:1.75rem!important;}
  html body .reel-card{min-height:340px!important;}
}



/* Latest request: restore Cameo CTA styling, tighten timeline text cards, enlarge posters, keep scroll under hero announcement, mobile included. */
:root{
  --nitti-normal:"Nitti Typewriter","Courier New",Courier,monospace;
  --nitti-open:"Nitti Typewriter Open","Nitti Typewriter","Courier New",Courier,monospace;
  --nitti-cameo:"Nitti Typewriter Cameo","Nitti Typewriter","Courier New",Courier,monospace;
}

/* Hero announcement: normal Nitti body, locations in Nitti Open. */
html body .hero .hero-card.hero-event-card,
html body .hero-card.hero-event-card,
html body .hero-event-card{
  transform:translateY(-8.5vh)!important;
  font-family:var(--nitti-normal)!important;
}
html body .hero-event-card .hero-event-kicker,
html body .hero-event-card .hero-event-label,
html body .hero-event-card .hero-event-date,
html body .hero-event-card .hero-actions,
html body .hero-event-card .btn,
html body .hero-event-card .btn span,
html body .hero-event-card .btn strong{
  font-family:var(--nitti-normal)!important;
}
html body .hero-locations,
html body .hero-locations span,
html body .hero-locations span:nth-child(2){
  font-family:var(--nitti-open)!important;
}

/* Keep the scroll cue under the announcement box instead of inside it. JS sets the exact top after layout. */
html body .hero-schedule-cue.hero-arrow-only.hero-scroll-outside,
html body .hero-scroll-outside{
  position:absolute!important;
  top:var(--hero-scroll-top,calc(50% + 255px))!important;
  bottom:auto!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  z-index:16!important;
  margin:0!important;
  width:max-content!important;
  max-width:none!important;
}

/* Timeline text cards: Nitti Normal, except CTA restored to Nitti Cameo. */
html body .timeline-section .timeline-text-card,
html body .timeline-section .timeline-text-card .timeline-text-head,
html body .timeline-section .timeline-text-card .episode-no,
html body .timeline-section .timeline-text-card .timeline-text-head em,
html body .timeline-section .timeline-text-card .timeline-text-head small,
html body .timeline-section .timeline-text-card .card-topline,
html body .timeline-section .timeline-text-card .card-topline span,
html body .timeline-section .timeline-text-card p:not(.translation){
  font-family:var(--nitti-normal)!important;
}
html body .timeline-section .timeline-text-card .card-link,
html body .timeline-section .timeline-text-card a.card-link,
html body .timeline-section .timeline-row:hover .timeline-text-card .card-link{
  font-family:var(--nitti-cameo)!important;
  letter-spacing:-.085em!important;
  word-spacing:.08em!important;
  color:#000!important;
  background:transparent!important;
  border-color:#000!important;
  text-transform:uppercase!important;
  font-weight:400!important;
  text-decoration:none!important;
}
html body .timeline-section .timeline-text-card .card-link::before,
html body .timeline-section .timeline-text-card .card-link::after{
  color:#000!important;
  border-color:#000!important;
}
html body .timeline-section .timeline-text-card .card-link:hover{
  color:#000!important;
  background:#fff!important;
  transform:translateY(-2px)!important;
}

/* Larger posters, tighter text cards. Font sizes are intentionally untouched. */
html body .timeline-section .timeline{
  gap:clamp(72px,7vw,118px)!important;
}
html body .timeline-section .timeline-row,
html body .timeline-section .timeline-row.is-left,
html body .timeline-section .timeline-row.is-right{
  grid-template-columns:minmax(0,calc(52% - 58px)) 116px minmax(0,calc(48% - 58px))!important;
  gap:clamp(20px,3vw,42px)!important;
  align-items:center!important;
}
html body .timeline-section .timeline-poster-link{
  width:min(100%,540px)!important;
  max-width:540px!important;
  justify-self:center!important;
  cursor:default!important;
}
html body .timeline-section .timeline-poster-stage,
html body .timeline-section .timeline-poster-frame{
  width:100%!important;
}
html body .timeline-section .timeline-poster-frame img{
  width:100%!important;
  height:auto!important;
}
html body .timeline-section .timeline-text-card{
  width:min(100%,500px)!important;
  max-width:500px!important;
  min-height:0!important;
  height:auto!important;
  padding:clamp(1.75rem,2.25vw,2.35rem)!important;
  gap:.25rem!important;
  justify-self:center!important;
  align-self:center!important;
}
html body .timeline-section .timeline-text-card .card-link{
  margin-top:1.15rem!important;
}

@media(max-width:1180px){
  html body .timeline-section .timeline-poster-link{width:min(100%,500px)!important;max-width:500px!important;}
  html body .timeline-section .timeline-text-card{width:min(100%,480px)!important;max-width:480px!important;}
}
@media(max-width:980px){
  html body .hero .hero-card.hero-event-card,
  html body .hero-card.hero-event-card,
  html body .hero-event-card{transform:translateY(-7vh)!important;}
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{
    grid-template-columns:1fr!important;
    gap:1.35rem!important;
  }
  html body .timeline-section .timeline-poster-link{width:min(100%,500px)!important;max-width:500px!important;}
  html body .timeline-section .timeline-text-card{width:min(100%,520px)!important;max-width:520px!important;min-height:0!important;padding:1.65rem!important;}
}
@media(max-width:560px){
  html body .hero .hero-card.hero-event-card,
  html body .hero-card.hero-event-card,
  html body .hero-event-card{transform:translateY(-6.5vh)!important;}
  html body .timeline-section .timeline{gap:58px!important;}
  html body .timeline-section .timeline-poster-link{width:min(100%,430px)!important;max-width:430px!important;}
  html body .timeline-section .timeline-text-card{width:calc(100vw - 42px)!important;max-width:calc(100vw - 42px)!important;padding:1.35rem!important;}
  html body .timeline-section .timeline-text-card .card-link{letter-spacing:-.085em!important;word-spacing:.075em!important;}
}



/* Final fix: the late hero announcement rule was forcing all copy to Nitti Normal. The subtitle is explicitly excluded from that group above and locked back to Charcoal Script here. Parentheses stay removed. */
html body header.hero .wrap.hero-card.hero-event-card > p.hero-event-subtitle,
html body header.hero .hero-card.hero-event-card > p.hero-event-subtitle,
html body .hero .hero-card.hero-event-card > p.hero-event-subtitle,
html body .hero-card.hero-event-card > p.hero-event-subtitle,
html body p.hero-event-subtitle{
  font-family:"Charcoal Script","Brush Script MT","Snell Roundhand",cursive!important;
  font-size:clamp(24px,3.8vw,44px)!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  word-spacing:normal!important;
  text-transform:lowercase!important;
  font-style:normal!important;
  font-weight:400!important;
  color:rgba(255,255,255,.96)!important;
  text-shadow:0 10px 32px rgba(0,0,0,.82)!important;
  margin:.55rem 0 0!important;
}
html body header.hero .wrap.hero-card.hero-event-card > p.hero-event-subtitle *{
  font-family:"Charcoal Script","Brush Script MT","Snell Roundhand",cursive!important;
}
@media(max-width:980px){
  html body header.hero .wrap.hero-card.hero-event-card > p.hero-event-subtitle,
  html body header.hero .hero-card.hero-event-card > p.hero-event-subtitle,
  html body .hero .hero-card.hero-event-card > p.hero-event-subtitle,
  html body .hero-card.hero-event-card > p.hero-event-subtitle,
  html body p.hero-event-subtitle{font-size:clamp(22px,5.4vw,36px)!important;}
}
@media(max-width:560px){
  html body header.hero .wrap.hero-card.hero-event-card > p.hero-event-subtitle,
  html body header.hero .hero-card.hero-event-card > p.hero-event-subtitle,
  html body .hero .hero-card.hero-event-card > p.hero-event-subtitle,
  html body .hero-card.hero-event-card > p.hero-event-subtitle,
  html body p.hero-event-subtitle{font-size:clamp(20px,5.7vw,30px)!important;}
}



/* Final Phase 1 fix: timeline posters open the image lightbox again, not event links. */
html body .timeline-section .timeline-poster-link,
html body .timeline-section .timeline-row.timeline-row-split.is-before .timeline-poster-link,
html body .timeline-section .timeline-row.timeline-row-split.is-after .timeline-poster-link{
  pointer-events:auto!important;
  cursor:zoom-in!important;
}
html body .timeline-section .timeline-poster-link *,
html body .timeline-section .timeline-poster-frame{
  cursor:zoom-in!important;
}



/* Latest requested layout polish: centered timeline intro, correct schedule anchor, and mobile card fit. */
html{scroll-padding-top:86px!important;}
html body{max-width:100%!important;overflow-x:hidden!important;}
html body #timeline-start,
html body .timeline-section{scroll-margin-top:86px!important;}

/* Timeline intro: title stack centered above a wider, shorter paragraph. */
html body .timeline-section .section-head{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:clamp(1rem,2.2vw,1.7rem)!important;
  width:min(1220px,100%)!important;
  margin:0 auto clamp(2.2rem,4vw,3.4rem)!important;
  padding-left:0!important;
  padding-right:0!important;
}
html body .timeline-section .section-head > div{
  width:100%!important;
  max-width:1080px!important;
  text-align:center!important;
  margin:0 auto!important;
}
html body .timeline-section .section-head .eyebrow{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html body .timeline-section #timeline-title,
html body .timeline-section .section-head h2{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  max-width:1040px!important;
}
html body .timeline-section .section-head .lede{
  width:min(1180px,calc(100vw - 72px))!important;
  max-width:1180px!important;
  margin:0 auto!important;
  text-align:center!important;
  font-size:clamp(19px,1.72vw,30px)!important;
  line-height:1.38!important;
  letter-spacing:.055em!important;
  color:rgba(255,255,255,.82)!important;
}

/* Guest link cards: on mobile/tablet they must fit inside the viewport, not clip right. */
@media(max-width:980px){
  html body .reel-section{overflow:hidden!important;}
  html body .reel-row{
    display:flex!important;
    grid-template-columns:none!important;
    width:100%!important;
    max-width:100vw!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:10px 20px 18px!important;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    box-sizing:border-box!important;
    scroll-padding-left:20px!important;
    scroll-padding-right:20px!important;
    mask-image:none!important;
    -webkit-mask-image:none!important;
  }
  html body .reel-row::before,
  html body .reel-row::after{display:none!important;}
  html body .reel-card{
    flex:0 0 min(320px,calc(100vw - 64px))!important;
    width:min(320px,calc(100vw - 64px))!important;
    max-width:calc(100vw - 64px)!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
}
@media(max-width:560px){
  html body .reel-row{padding-left:16px!important;padding-right:16px!important;gap:12px!important;}
  html body .reel-card{
    flex-basis:calc(100vw - 56px)!important;
    width:calc(100vw - 56px)!important;
    max-width:calc(100vw - 56px)!important;
    min-height:292px!important;
  }
}

/* Timeline mobile: leave room for the line/chapter number and keep poster + white card inside the viewport. */
@media(max-width:980px){
  html body .timeline-section .wrap{width:min(100% - 28px,1180px)!important;max-width:100%!important;}
  html body .timeline-section .timeline{
    width:100%!important;
    max-width:100%!important;
    padding-left:42px!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }
  html body .timeline-section .timeline::before,
  html body .timeline-section .timeline::after{left:18px!important;}
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{
    padding-left:0!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  html body .timeline-section .timeline-row::before{left:-24px!important;}
  html body .timeline-section .timeline-poster-link,
  html body .timeline-section .timeline-row.is-left .timeline-poster-link,
  html body .timeline-section .timeline-row.is-right .timeline-poster-link{
    width:min(100%,calc(100vw - 92px))!important;
    max-width:calc(100vw - 92px)!important;
    justify-self:start!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
  html body .timeline-section .timeline-poster-stage,
  html body .timeline-section .timeline-poster-frame{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  html body .timeline-section .timeline-text-card,
  html body .timeline-section .timeline-row.is-left .timeline-text-card,
  html body .timeline-section .timeline-row.is-right .timeline-text-card{
    width:min(100%,calc(100vw - 92px))!important;
    max-width:calc(100vw - 92px)!important;
    justify-self:start!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
}
@media(max-width:560px){
  html body .timeline-section .wrap{width:calc(100% - 22px)!important;}
  html body .timeline-section .section-head .lede{width:calc(100vw - 34px)!important;font-size:clamp(17px,4.4vw,21px)!important;line-height:1.42!important;letter-spacing:.04em!important;}
  html body .timeline-section .timeline{padding-left:36px!important;gap:50px!important;}
  html body .timeline-section .timeline::before,
  html body .timeline-section .timeline::after{left:16px!important;}
  html body .timeline-section .timeline-row::before{left:-21px!important;width:32px!important;height:32px!important;}
  html body .timeline-section .timeline-poster-link,
  html body .timeline-section .timeline-row.is-left .timeline-poster-link,
  html body .timeline-section .timeline-row.is-right .timeline-poster-link,
  html body .timeline-section .timeline-text-card,
  html body .timeline-section .timeline-row.is-left .timeline-text-card,
  html body .timeline-section .timeline-row.is-right .timeline-text-card{
    width:calc(100vw - 74px)!important;
    max-width:calc(100vw - 74px)!important;
  }
  html body .timeline-section .timeline-text-card{padding:1.32rem!important;}
}



/* Final Phase 1 polish: schedule/timeline anchors land flush on the black timeline section. */
html{scroll-padding-top:0!important;}
html body #timeline-start,
html body .timeline-section{
  scroll-margin-top:0!important;
}
html body .timeline-section{
  background:#000!important;
  border-top:0!important;
}



/* Mobile chapter labels sit above the poster/card stack. */
@media(max-width:980px){
  html body .timeline-section .timeline-row,
  html body .timeline-section .timeline-row.is-left,
  html body .timeline-section .timeline-row.is-right{
    position:relative!important;
    padding-top:74px!important;
  }
  html body .timeline-section .timeline-chapter-tag{
    position:absolute!important;
    top:8px!important;
    left:0!important;
    transform:none!important;
    z-index:14!important;
    display:block!important;
    width:max-content!important;
    max-width:calc(100vw - 40px)!important;
    margin:0!important;
  }
  html body .timeline-section .timeline-side-note{
    position:absolute!important;
    top:36px!important;
    left:0!important;
    transform:none!important;
    z-index:14!important;
    display:block!important;
    width:max-content!important;
    max-width:calc(100vw - 40px)!important;
    margin:0!important;
  }
}



/* Mobile header: brand + single Menu text control. */
@media screen and (max-width: 760px){
  html body .site-nav{
    background:#000!important;
    border-bottom:1px solid rgba(255,255,255,.22)!important;
  }

  html body .site-nav .nav-inner{
    height:68px!important;
    min-height:68px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:14px!important;
    padding-left:max(14px, env(safe-area-inset-left))!important;
    padding-right:max(14px, env(safe-area-inset-right))!important;
    box-sizing:border-box!important;
  }

  html body .site-nav .brand{
    grid-column:1!important;
    font-size:clamp(13px,4vw,17px)!important;
    line-height:1!important;
    letter-spacing:.12em!important;
    white-space:nowrap!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }

  html body .site-nav .nav-actions{
    grid-column:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }

  html body .site-nav .nav-actions > a{
    display:none!important;
  }

  html body .site-nav .nav-actions > button.menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:.35rem .06rem .35rem .1rem!important;
    border:0!important;
    outline:0!important;
    border-radius:0!important;
    background:transparent!important;
    background-color:transparent!important;
    appearance:none!important;
    -webkit-appearance:none!important;
    box-shadow:none!important;
    clip-path:none!important;
    filter:none!important;
    opacity:1!important;
    mix-blend-mode:normal!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font-family:"Nitti Typewriter Cameo","Nitti Typewriter","Courier New",Courier,monospace!important;
    font-size:clamp(22px,6.4vw,30px)!important;
    line-height:1!important;
    letter-spacing:-.075em!important;
    word-spacing:.11em!important;
    font-kerning:normal!important;
    font-feature-settings:"kern" 1!important;
    text-rendering:optimizeLegibility!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
    transform:none!important;
    text-shadow:none!important;
  }

  html body .site-nav .nav-actions > button.menu-toggle::before,
  html body .site-nav .nav-actions > button.menu-toggle::after{
    display:none!important;
    content:none!important;
  }

  html body .site-nav .nav-actions > button.menu-toggle:hover,
  html body .site-nav .nav-actions > button.menu-toggle:focus-visible{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    background:transparent!important;
    background-color:transparent!important;
    box-shadow:none!important;
    transform:none!important;
    text-shadow:none!important;
  }
}

/* Performance and invitation link patch */
section:not(.now-showing){content-visibility:auto;contain-intrinsic-size:900px}
img{height:auto}
.hero-invitation-link{display:inline-block;margin-top:.55rem;color:#fff;font-family:var(--cameo,"Nitti Typewriter Cameo",monospace);font-size:clamp(15px,1.35vw,19px);letter-spacing:-.045em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.72);padding:.2rem .08rem .32rem;text-shadow:0 4px 18px #000;transition:opacity .2s ease,border-color .2s ease}
.hero-invitation-link:hover,.hero-invitation-link:focus-visible{opacity:.7;border-color:#fff}
@media(max-width:760px){.hero-invitation-link{font-size:16px;margin-top:.7rem}}

/* V35 definitive local font map */
:root{--title:"Fino Bold",Fino,serif!important;--body:"Nitti Typewriter","Courier New",Courier,monospace!important;--accent:"CharcoalScript","Charcoal Script",cursive!important}
html body,html body p,html body li,html body dd,html body input,html body textarea,html body select{font-family:var(--body)!important}
html body h1,html body h2,html body h3,html body h4,html body h5,html body .title,html body .site-title,html body .logo,html body .brand,html body .hero-title .main-word,html body .chapter-title,html body .poster-title,html body .timeline-title,html body .section-title,html body .number,html body .chapter-number,html body .big-title{font-family:var(--title)!important}
html body .accent,html body .script,html body .charcoal,html body .hero-script,html body .eyebrow-script,html body .subtitle-script,html body .handwritten,html body .tagline-script,html body .translation,html body .poster-caption,html body .subscript,html body .kicker,html body .script-line,html body .script-de,html body .action-note{font-family:var(--accent)!important}

/* v38 hero playback performance: lightweight no-title sources, GPU compositing, and a still fallback. */
.hero-video{background:#000 url("../images/hero-video-poster.webp") center/cover no-repeat!important;transform:translateZ(0)!important;will-change:auto!important;contain:paint!important;backface-visibility:hidden!important}
@media(max-width:900px){.hero .grain,.hero~.grain{animation:none!important}.hero-video{transform:translateZ(0)!important}}


/* V40: remove the accidental fixed ADMIT TWO / THE FIRST SCREENING / SHOT ON 16MM line. Section-level ghost text and vertical credits remain. */
main::before{content:none!important;display:none!important;position:absolute!important}

/* === FINAL GUEST LINKS: ENGAGEMENT PHOTO CARDS === */
html body .reel-row{
  overflow:visible!important;
}
html body .reel-section .reel-card{
  background:#030303!important;
  color:#fff!important;
  transform-origin:center!important;
  transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease!important;
  will-change:transform!important;
}
html body .reel-section .reel-card:hover,
html body .reel-section .reel-card:focus-visible{
  background:#030303!important;
  color:#fff!important;
  transform:translateY(-8px) scale(1.055)!important;
  border-color:#fff!important;
  box-shadow:0 30px 70px rgba(0,0,0,.36)!important;
  z-index:5!important;
}
html body .reel-card .reel-image{
  background:#000!important;
  overflow:hidden!important;
}
html body .reel-card .reel-image img{
  filter:grayscale(1) contrast(1.06)!important;
  opacity:.92!important;
  transform:scale(1)!important;
  transition:filter .35s ease,opacity .35s ease,transform .45s ease!important;
}
html body .reel-card:hover .reel-image img,
html body .reel-card:focus-visible .reel-image img{
  filter:grayscale(0) contrast(1)!important;
  opacity:1!important;
  transform:scale(1.06)!important;
}
html body .reel-card.travel-card,
html body .reel-card.travel-card > :not(.reel-image){
  background:#030303!important;
}
html body .reel-card.travel-card .reel-no,
html body .reel-card.travel-card strong,
html body .reel-card.travel-card small{
  color:#fff!important;
}
@media(max-width:980px){
  html body .reel-row{
    overflow-x:auto!important;
    overflow-y:visible!important;
    padding-top:18px!important;
    padding-bottom:28px!important;
  }
  html body .reel-section .reel-card:hover,
  html body .reel-section .reel-card:focus-visible{
    transform:translateY(-5px) scale(1.035)!important;
  }
}
@media(max-width:560px){
  html body .reel-section .reel-card:active{
    transform:scale(1.025)!important;
  }
}

/* === GUEST LINKS V2: FORCE FRESH PHOTOS + TRUE BLACK CARD BODIES === */
html body .reel-section .reel-card,
html body .reel-section .reel-card > :not(.reel-image),
html body .reel-section .reel-card.travel-card,
html body .reel-section .reel-card.travel-card > :not(.reel-image){
  background-color:#000!important;
  background-image:none!important;
}
html body .reel-section .reel-card::before,
html body .reel-section .reel-card::after{
  display:none!important;
  content:none!important;
}
html body .reel-section .reel-card .reel-image{
  display:block!important;
  background:#000!important;
}
html body .reel-section .reel-card .reel-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  filter:grayscale(1) contrast(1.08)!important;
  opacity:1!important;
}
html body .reel-section .reel-card:hover .reel-image img,
html body .reel-section .reel-card:focus-visible .reel-image img{
  filter:grayscale(0) contrast(1)!important;
  transform:scale(1.065)!important;
}
html body .reel-section .reel-card:hover,
html body .reel-section .reel-card:focus-visible{
  background:#000!important;
  transform:translateY(-8px) scale(1.055)!important;
}
