/* v134 — click-to-load YouTube player (no third-party request until the visitor presses play),
   the video hero on video pages, the Video Library "new videos" strip, and the homepage watch band. */
.ccr-yt{position:relative;margin:0}
.ccr-yt-frame{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#002a20;
  border:1px solid rgba(29,211,160,.35);box-shadow:0 18px 60px rgba(0,0,0,.45),0 0 0 1px rgba(29,211,160,.06)}
.ccr-yt-btn{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;margin:0;border:0;background:none;cursor:pointer;color:inherit}
.ccr-yt-btn img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease,filter .3s ease}
.ccr-yt-btn:hover img{transform:scale(1.02);filter:brightness(1.08)}
.ccr-yt-btn:focus-visible{outline:3px solid #ff6900;outline-offset:-3px}
.ccr-yt-play{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;display:grid;place-items:center;
  background:rgba(0,51,40,.72);border:2px solid #1dd3a0;box-shadow:0 0 0 8px rgba(29,211,160,.12),0 0 44px rgba(29,211,160,.35);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform .2s ease}
.ccr-yt-btn:hover .ccr-yt-play{transform:scale(1.07)}
.ccr-yt-badge{position:absolute;left:14px;bottom:14px;font:600 11px/1 'IBM Plex Mono',monospace;letter-spacing:.14em;text-transform:uppercase;
  color:#f9fafc;background:rgba(0,30,24,.8);border:1px solid rgba(29,211,160,.45);padding:8px 11px;border-radius:6px}
.ccr-yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ccr-yt figcaption{margin-top:10px;font:400 13px/1.55 'Inter',system-ui,sans-serif;color:#a8c0b8}
.ccr-yt figcaption a{color:#1dd3a0}
@media (max-width:600px){.ccr-yt-play{width:64px;height:64px;margin:-32px 0 0 -32px}.ccr-yt-badge{left:10px;bottom:10px;font-size:10px;padding:6px 9px}}

/* video hero (top of each video page that has a full produced video) */
.vid-hero{position:relative;background:radial-gradient(ellipse at 50% -10%,rgba(29,211,160,.16),transparent 60%),#003328;
  padding:24px 22px 44px;border-bottom:1px solid #1a4d3a;font-family:'Inter',system-ui,sans-serif;color:#f9fafc}
.vid-hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;
  background-image:linear-gradient(rgba(29,211,160,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(29,211,160,.07) 1px,transparent 1px);background-size:56px 56px;
  -webkit-mask-image:linear-gradient(#000,transparent 85%);mask-image:linear-gradient(#000,transparent 85%)}
.vid-hero-inner{position:relative;max-width:1120px;margin:0 auto}
.vh-top{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:26px}
.vh-logo{display:inline-flex;align-items:center}
.vh-logo svg{height:24px;width:auto;display:block}
.vh-nav{display:flex;gap:10px;flex-wrap:wrap}
.vh-nav a{font:600 11px/1 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#f9fafc;text-decoration:none;
  border:1px solid rgba(29,211,160,.45);padding:10px 14px;border-radius:999px;background:rgba(0,30,24,.5)}
.vh-nav a:hover{border-color:#1dd3a0;color:#1dd3a0}
.vh-kicker{font:600 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.24em;text-transform:uppercase;color:#1dd3a0;margin:0 0 10px}
.vh-title{font:700 clamp(26px,4.2vw,46px)/1.08 'Poppins',sans-serif;letter-spacing:-.01em;margin:0 0 22px;color:#f9fafc}
.vh-title em{font-style:normal;color:#1dd3a0}
.vh-foot{display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:space-between;align-items:center;margin-top:16px;font:500 12px/1.5 'IBM Plex Mono',monospace;color:#a8c0b8;letter-spacing:.04em}
.vh-foot a{color:#1dd3a0;text-decoration:none}
.vh-foot a:hover{text-decoration:underline}

/* Video Library: new full videos strip */
.feat-videos{width:100%;max-width:1100px;margin:0 0 34px}
.feat-kicker{font:600 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.24em;text-transform:uppercase;color:#1dd3a0;margin:0 0 14px;display:flex;align-items:center;gap:10px}
.feat-kicker::before{content:"";width:26px;height:2px;background:#1dd3a0}
.feat-kicker .feat-all{margin-left:auto;color:#1dd3a0;text-decoration:none;letter-spacing:.14em}
.feat-kicker .feat-all:hover{text-decoration:underline}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(196px,1fr));gap:14px}
.feat-card{display:block;text-decoration:none;color:#f9fafc;border:1px solid rgba(29,211,160,.25);border-radius:12px;overflow:hidden;background:rgba(0,30,24,.55);transition:border-color .2s,transform .2s}
.feat-card:hover{border-color:#1dd3a0;transform:translateY(-2px)}
.feat-card:focus-visible{outline:3px solid #ff6900;outline-offset:2px}
.feat-thumb{position:relative;aspect-ratio:16/9;overflow:hidden}
.feat-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.feat-thumb .ccr-yt-play{width:46px;height:46px;margin:-23px 0 0 -23px;box-shadow:0 0 0 5px rgba(29,211,160,.12)}
.feat-dur{position:absolute;right:8px;bottom:8px;font:600 10px/1 'IBM Plex Mono',monospace;letter-spacing:.08em;background:rgba(0,20,16,.85);color:#f9fafc;padding:5px 7px;border-radius:4px}
.feat-body{padding:12px 14px 14px}
.feat-title{font:700 14px/1.3 'Poppins',sans-serif;margin:0 0 4px}
.feat-desc{font:400 12px/1.45 'Inter',sans-serif;color:#a8c0b8;margin:0}

/* homepage watch band: feature player + intro copy, then a horizontal rail of every other video */
.watch-band{width:100%;max-width:1180px;margin:30px auto 8px;padding:0 20px;box-sizing:border-box}
.watch-top{display:grid;grid-template-columns:1.55fr 1fr;gap:28px;align-items:center}
.watch-copy{font-family:'Inter',system-ui,sans-serif;color:#f9fafc}
.watch-copy .vh-kicker{margin:0 0 10px}
.watch-title{font:700 clamp(24px,2.6vw,34px)/1.12 'Poppins',sans-serif;letter-spacing:-.01em;margin:0 0 12px;color:#f9fafc}
.watch-title em{font-style:normal;color:#1dd3a0}
.watch-desc{font:400 15.5px/1.6 'Inter',sans-serif;color:#c9dcd6;margin:0 0 16px}
.watch-more{font:600 12px/1 'IBM Plex Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#1dd3a0;text-decoration:none}
.watch-more:hover{text-decoration:underline}
.vrail{position:relative;margin-top:22px}
.vrail-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 2px 6px;overscroll-behavior-x:contain}
.vrail-track::-webkit-scrollbar{display:none}
.vrail-track:focus-visible{outline:3px solid #ff6900;outline-offset:3px;border-radius:12px}
.vrail-track .feat-card{flex:0 0 calc((100% - 56px) / 4.35);scroll-snap-align:start;min-width:0}
.vrail-btn{position:absolute;top:50%;z-index:2;width:44px;height:44px;margin-top:-22px;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  color:#1dd3a0;background:rgba(0,30,24,.88);border:1.5px solid rgba(29,211,160,.6);box-shadow:0 6px 24px rgba(0,0,0,.45);transition:transform .15s ease,border-color .15s ease}
.vrail-btn:hover{transform:scale(1.07);border-color:#1dd3a0}
.vrail-btn:focus-visible{outline:3px solid #ff6900;outline-offset:2px}
.vrail-btn[hidden]{display:none}
.vrail-prev{left:-14px}.vrail-next{right:-14px}
@media (max-width:860px){.watch-top{grid-template-columns:1fr;gap:16px}.vrail-track .feat-card{flex-basis:calc((100% - 28px) / 2.4)}}
@media (max-width:560px){.vrail-track .feat-card{flex-basis:66%}.vrail-btn{display:none}}
@media (prefers-reduced-motion:reduce){.ccr-yt-btn img,.feat-card,.ccr-yt-play,.vrail-btn{transition:none}.vrail-track{scroll-behavior:auto}}
/* On pages with a video hero, the hero carries the back-links; the scene player's floating copy would cover the hero and the stage logo */
.vid-hero ~ .stage .lib-nav{display:none}

/* v147 — YouTube Shorts: vertical 9:16 click-to-load facade (poster = our own still), the lead block on a
   Crunch episode, the Short card (supplement / related, works on light or dark pages), and the /crunch/ rail. */
.ccr-yt--short{max-width:340px}
.ccr-yt--short .ccr-yt-frame{aspect-ratio:9/16;border-radius:16px}
.ccr-yt--short .ccr-yt-play{top:61%;width:72px;height:72px;margin:-36px 0 0 -36px}
.sh-card .ccr-yt--short .ccr-yt-play{width:54px;height:54px;margin:-27px 0 0 -27px}
.sh-card .ccr-yt-play svg{width:22px;height:22px}
.sh-wrap{max-width:960px;margin:2.4rem auto 0;padding:0 1.25rem}
.sh-wrap .sh-box{margin:0}
.sh-lead,.sh-box,.sh-rail{font-family:'Inter',system-ui,sans-serif;color:#f9fafc;
  background:radial-gradient(ellipse at 0% 0%,rgba(29,211,160,.16),transparent 55%),#003328;border:1px solid rgba(29,211,160,.28);border-radius:18px;
  box-shadow:0 18px 50px rgba(0,51,40,.28)}
.sh-lead{display:grid;grid-template-columns:minmax(200px,320px) 1fr;gap:30px;align-items:center;padding:22px;margin:0 0 1.8rem}
.sh-lead .ccr-yt--short{width:100%}
.sh-k{font:600 11px/1.45 'IBM Plex Mono',monospace !important;letter-spacing:.16em;text-transform:uppercase;color:#1dd3a0 !important;margin:0 0 10px !important}
.sh-t{font:700 clamp(1.08rem,2.2vw,1.42rem)/1.28 'Poppins',sans-serif !important;color:#f9fafc !important;margin:0 0 10px !important;max-width:none !important}
.sh-d{font:400 15px/1.62 'Inter',system-ui,sans-serif !important;color:#cfe0da !important;margin:0 0 14px !important;max-width:56ch}
.sh-links{display:flex;flex-wrap:wrap;gap:12px 20px;margin:0 !important}
.sh-links a,.sh-go{font:600 12px/1 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:#1dd3a0 !important;text-decoration:none !important;
  border-bottom:1px solid rgba(29,211,160,.45);padding-bottom:4px}
.sh-links a:hover,.sh-go:hover{color:#fff !important;border-color:#fff}
.sh-anim-h{font:700 1.08rem/1.3 'Poppins',sans-serif;color:#003328;margin:0 0 .8rem}
.sh-anim-h span{font-weight:500;color:#3d5a50;font-size:.88rem}
.sh-tsub{font:600 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#ff6900;margin:-.2rem 0 .7rem}
.transcript .sh-about{margin-top:1.8rem}
.sh-box{padding:22px;margin:2.2rem 0;clear:both}
.sh-box .sh-item{display:flex;flex-direction:column;gap:14px;min-width:0}
.sh-box--1 .sh-item{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:28px;align-items:center}
.sh-box--1 .ccr-yt--short{width:100%}
.sh-box-k{margin-bottom:16px !important}
.sh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:24px}
.sh-grid .ccr-yt--short{width:100%;max-width:300px}
.sh-grid .sh-t{font-size:1.02rem !important}
.sh-grid .sh-d{font-size:14px !important}
details.sh-tx{border-top:1px solid rgba(29,211,160,.22);padding-top:10px;margin:0}
details.sh-tx summary{cursor:pointer;font:600 11.5px/1.4 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:#1dd3a0;list-style:none}
details.sh-tx summary::-webkit-details-marker{display:none}
details.sh-tx summary::before{content:"+ ";color:#ff6900}
details.sh-tx[open] summary::before{content:"\2212  "}
details.sh-tx summary:focus-visible{outline:3px solid #ff6900;outline-offset:3px}
details.sh-tx p{font:400 14px/1.65 'Inter',system-ui,sans-serif !important;color:#cfe0da !important;margin:10px 0 0 !important;max-width:none}
.sh-rail{max-width:1100px;margin:2rem auto 2.4rem;padding:22px 22px 18px}
.sh-rail-head h2{font:700 1.35rem/1.25 'Poppins',sans-serif;color:#f9fafc;margin:0 0 6px}
.sh-rail-head p{font:400 14.5px/1.6 'Inter',system-ui,sans-serif;color:#cfe0da;margin:0;max-width:70ch}
.sh-rail-head a{color:#1dd3a0}
.sh-rail .vrail{margin-top:18px}
.vrail-track .sh-card{flex:0 0 calc((100% - 70px) / 5.4);scroll-snap-align:start;min-width:0;display:flex;flex-direction:column;gap:10px}
.sh-card .ccr-yt--short{width:100%}
.sh-card .sh-t{font-size:.95rem !important;margin:0 !important;flex:1}
.sh-card .sh-go{align-self:flex-start;font-size:11px}
@media (max-width:1000px){.vrail-track .sh-card{flex-basis:calc((100% - 42px) / 3.4)}}
@media (max-width:700px){.sh-lead,.sh-box--1 .sh-item{grid-template-columns:1fr;gap:18px}.sh-lead{padding:16px}.sh-box{padding:16px}
  .sh-lead .ccr-yt--short,.sh-box--1 .ccr-yt--short{width:min(100%,300px);margin:0 auto}.vrail-track .sh-card{flex-basis:calc((100% - 14px) / 2.2)}}
@media (max-width:420px){.vrail-track .sh-card{flex-basis:62%}}
