/* Video section (homepage #videos and /free), 17 Oct 2026; big player + list of films beside it, 18 Oct. Markup from scripts/build-video-reel.py. */
.video-reel{position:relative;margin-top:88px;background:var(--night,#071a42);color:#fff;border:3px solid var(--cream,#fff9e6);border-radius:28px;padding:38px 0 34px;box-shadow:7px 8px 0 var(--gold,#ffe133),11px 12px 0 var(--navy,#092755)}
.reel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:0 40px 22px}
.video-reel .eyebrow{color:var(--gold,#ffe133);margin:0}
.video-reel h2,.video-reel h3#videos-title{font-family:Bangers,Impact,sans-serif;font-size:60px;font-weight:400;letter-spacing:1px;line-height:1;transform:rotate(-1.5deg);margin:6px 0 12px;color:#fff}
.video-reel #videos-title span{color:var(--gold,#ffe133)}
.reel-intro{font-size:18px;line-height:1.5;max-width:560px;margin:0;opacity:.92}
.reel-tag{display:inline-block;margin:0 0 6px;background:var(--gold,#ffe133);color:var(--navy,#092755);font-weight:800;font-size:13px;letter-spacing:.6px;text-transform:uppercase;border-radius:999px;padding:3px 12px}
.reel-book2 .now-copy .reel-tag{background:var(--xred,#c8211b);color:#fff}
.reel-book1 .now-copy .reel-tag{background:var(--xgreen,#0f6b3a);color:#fff}
.reel-note{font-size:13px;opacity:.7;margin:0}

/* the big player on the left */
.reel-stage{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:40px;align-items:stretch;padding:4px 40px 0}
.reel-left{display:flex;flex-direction:column;gap:30px;align-items:center}
.feature-player{position:relative;width:100%}
.feature-player video{display:block;width:100%;height:auto;aspect-ratio:9/16;border-radius:18px;border:3px solid var(--cream,#fff9e6);background:#000;box-shadow:8px 9px 0 var(--gold,#ffe133);transition:box-shadow .25s}
.reel-book2 .feature-player video{box-shadow:8px 9px 0 var(--xred,#c8211b)}
.reel-book1 .feature-player video{box-shadow:8px 9px 0 var(--xgreen,#0f6b3a)}
.sound-btn{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);border:3px solid var(--navy,#092755);background:var(--gold,#ffe133);color:var(--navy,#092755);font:800 18px/1 DM,Arial,sans-serif;border-radius:999px;padding:12px 20px;cursor:pointer;box-shadow:3px 4px 0 var(--navy,#092755);white-space:nowrap;animation:sound-nudge 1.6s ease-in-out infinite}
.sound-btn[hidden]{display:none}
.sound-btn:focus-visible{outline:4px solid #fff;outline-offset:3px}
@keyframes sound-nudge{0%,100%{transform:translateX(-50%) scale(1)}50%{transform:translateX(-50%) scale(1.06)}}

/* beside it: what's playing, then the list of films */
.reel-side{display:flex;flex-direction:column;min-height:0;min-width:0}
.now-copy{padding-bottom:14px;border-bottom:2px dashed #ffffff40}
.now-copy .reel-tag{vertical-align:middle;margin:0}
.now-label{display:inline-block;vertical-align:middle;margin:0 12px 0 0;font-size:12px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold,#ffe133)}
.now-label:before{content:'';display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--xred,#e5322b);margin-right:8px;box-shadow:0 0 0 3px #e5322b44;animation:now-dot 1.4s ease-in-out infinite}
@keyframes now-dot{50%{opacity:.35}}
.now-copy .feature-title{font-family:Bangers,Impact,sans-serif;font-weight:400;font-size:46px;letter-spacing:1px;line-height:.98;margin:10px 0 8px;color:#fff;transform:rotate(-1.2deg);transform-origin:left}
.now-copy .feature-title span{color:var(--gold,#ffe133)}
.feature-blurb{font-size:16px;line-height:1.5;max-width:560px;margin:0 0 6px}
.list-title{font-family:Bangers,Impact,sans-serif;font-size:26px;letter-spacing:1px;margin:12px 0 8px;color:var(--gold,#ffe133)}
.list-title span{color:#fff;opacity:.6;font-size:22px}
.reel-list{list-style:none;margin:0;padding:2px 8px 6px 0;display:flex;flex-direction:column;gap:8px;flex:1 1 0;min-height:240px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--gold,#ffe133) transparent}
.reel-item{width:100%;display:flex;align-items:center;gap:14px;text-align:left;color:#fff;background:#ffffff0d;border:2px solid #ffffff26;border-radius:14px;padding:6px 14px 6px 6px;cursor:pointer;font:inherit;transition:background .15s,border-color .15s,transform .15s}
.reel-item:hover{background:#ffffff1f;border-color:#ffffff66;transform:translateX(3px)}
.reel-item:focus-visible{outline:4px solid var(--gold,#ffe133);outline-offset:2px}
.reel-item[aria-current=true]{background:var(--cream,#fff9e6);border-color:var(--gold,#ffe133);color:var(--navy,#092755);box-shadow:4px 5px 0 var(--gold,#ffe133);transform:none}
.ri-thumb{position:relative;flex:0 0 44px;aspect-ratio:9/16;border-radius:9px;overflow:hidden;border:2px solid #ffffffb0;background:#000}
.ri-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.ri-thumb i{position:absolute;inset:0;display:grid;place-items:center;font-style:normal;font-size:15px;color:#fff;background:#0007;text-shadow:0 1px 3px #000}
.reel-item[aria-current=true] .ri-thumb{border-color:var(--navy,#092755)}
.reel-item[aria-current=true] .ri-thumb i{opacity:0}
.ri-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.ri-tag{font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;opacity:.75}
.reel-book2 .ri-tag,.reel-item.reel-book2 .ri-tag{color:#ff8a7e}.reel-item.reel-pack .ri-tag{color:var(--gold,#ffe133)}.reel-item.reel-book1 .ri-tag{color:#7fe0a6}
.reel-item[aria-current=true] .ri-tag{color:var(--navy,#092755)}
.ri-text strong{font-family:Bangers,Impact,sans-serif;font-weight:400;font-size:23px;letter-spacing:.5px;line-height:1.02}
.ri-text strong span{color:var(--gold,#ffe133)}
.reel-item[aria-current=true] .ri-text strong span{color:var(--xred,#c8211b)}
.ri-text small{font-size:12.5px;opacity:.7}
.ri-now{display:none;flex-shrink:0;font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;background:var(--navy,#092755);color:var(--gold,#ffe133);border-radius:999px;padding:5px 10px}
.reel-item[aria-current=true] .ri-now{display:block}
.reel-item template{display:none}

@media(max-width:1050px){.reel-stage{grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:28px}.now-copy .feature-title{font-size:38px}.ri-now{display:none!important}.now-copy .reel-note{display:none}}
/* when the list is taller than the player it scrolls; a fade at the bottom shows there is more */
.reel-list.more{-webkit-mask:linear-gradient(#000 calc(100% - 46px),#0000);mask:linear-gradient(#000 calc(100% - 46px),#0000)}
@media(max-width:760px){
 .video-reel{margin-top:64px;padding:26px 0 26px;border-radius:20px;box-shadow:5px 6px 0 var(--gold,#ffe133),8px 9px 0 var(--navy,#092755)}
 .reel-head{padding:0 20px 16px;flex-direction:column;align-items:flex-start}
 .video-reel h2,.video-reel h3#videos-title{font-size:46px}
 .reel-intro{font-size:16px}
 .reel-stage{grid-template-columns:1fr;gap:22px;padding:0 20px}
 .feature-player{width:min(340px,100%);margin:0 auto}
 .now-copy .feature-title{font-size:40px}
 .feature-blurb{font-size:16px}
 .reel-list{flex:none;min-height:0;overflow:visible;padding-right:0}
 .ri-text strong{font-size:22px}
 .reel-left{display:contents}
 .reel-left>.button{order:3;width:100%}
 .reel-side{order:2}
}
@media(prefers-reduced-motion:reduce){.sound-btn,.now-label:before{animation:none}.reel-item{transition:none}}
