/* ===== Intro Video section (home) — desktop values are 1024px-artboard units, scaled by .design-frame ===== */
.intro-video{position:relative;isolation:isolate;display:grid;grid-template-columns:292px minmax(0,1fr);gap:46px;align-items:center;padding:58px 43px 62px;background:radial-gradient(circle at 88% 12%,#ffcf0014,transparent 38%),linear-gradient(160deg,#0f1a20,#0b1013 58%);color:#fff;overflow:hidden;scroll-margin-top:85px}
.intro-video::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:radial-gradient(ellipse at 75% 50%,#000 15%,transparent 70%);mask-image:radial-gradient(ellipse at 75% 50%,#000 15%,transparent 70%);pointer-events:none}
.intro-video::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--yellow,#ffcf00) 30%,var(--yellow,#ffcf00) 70%,transparent);opacity:.55}
.intro-video .section-eyebrow{font-size:7.5px;line-height:12px;letter-spacing:1.8px;font-weight:600;margin:0 0 10px;display:flex;align-items:center;gap:9px;color:#c7d4d9}
.intro-video .section-eyebrow>span{width:24px;height:2px;background:var(--yellow,#ffcf00);display:block}
.intro-video h2{font-size:24px;line-height:29px;letter-spacing:-.6px;font-weight:700;margin:0;color:#fff}
.intro-video h2 em{font-style:normal;color:var(--yellow,#ffcf00)}
.iv-body{font-size:10px;line-height:17px;color:#aebfc5;margin:12px 0 20px}
.iv-chapters{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:6px;counter-reset:none}
.iv-chapters button{width:100%;display:flex;align-items:center;gap:11px;padding:8px 11px;border:1px solid #ffffff14;border-radius:8px;background:#ffffff05;color:#fff;font:inherit;text-align:left;cursor:pointer;position:relative;overflow:hidden;transition:background .35s,border-color .35s}
.iv-chapters button::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:var(--p,0%);background:var(--yellow,#ffcf00);transition:width .25s linear}
.iv-chapters button:hover{background:#ffffff0b;border-color:#ffffff2a}
.iv-chapters button:focus-visible{outline:2px solid var(--yellow,#ffcf00);outline-offset:2px}
.iv-chapters button.is-active{background:linear-gradient(100deg,#ffcf0017,#ffffff05);border-color:#ffcf0052}
.iv-chapters b{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid #ffffff2e;font-size:7px;font-weight:700;color:#c7d4d9;transition:all .35s}
.iv-chapters button.is-active b{background:var(--yellow,#ffcf00);border-color:var(--yellow,#ffcf00);color:#0b1013}
.iv-chapters span{flex:1;font-size:10px;line-height:14px;font-weight:600}
.iv-chapters i{font-style:normal;font-size:8px;color:#7f939b;font-variant-numeric:tabular-nums}
.iv-cta{display:inline-flex;align-items:center;gap:9px;height:34px;padding:0 15px;border-radius:7px;background:var(--yellow,#ffcf00);color:#0b1013;font-size:9px;font-weight:700;text-decoration:none;transition:background .3s,transform .3s,box-shadow .3s}
.iv-cta svg{width:13px;height:13px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
.iv-cta:hover{transform:translateY(-1px);box-shadow:0 10px 22px -8px #ffcf0080}.iv-cta:hover svg{transform:translateX(3px)}
.iv-stage{position:relative;min-width:0}
.iv-frame{position:absolute;inset:-12px -12px auto auto;width:42%;height:52%;border-top:2px solid var(--yellow,#ffcf00);border-right:2px solid var(--yellow,#ffcf00);border-radius:0 16px 0 0;pointer-events:none}
.iv-frame::after{content:"";position:absolute;right:-12px;bottom:-12px;width:7px;height:7px;border-radius:50%;background:var(--yellow,#ffcf00)}
.iv-player{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#05090b;box-shadow:0 30px 60px -22px #000c,0 0 0 1px #ffffff14;transform:perspective(1400px) rotateY(-5deg) rotateX(1.5deg);transform-origin:left center;transition:transform .9s var(--ease-out,cubic-bezier(.22,1,.36,1))}
.intro-video:hover .iv-player,.iv-player.is-sound,.iv-player:focus-within{transform:none}
.iv-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.iv-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0b101333,transparent 30%,transparent 62%,#0b1013d9);transition:opacity .5s}
.iv-big-play{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border:0;border-radius:50%;background:var(--yellow,#ffcf00);color:#0b1013;display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 30px -6px #000a;transition:transform .4s var(--ease-out,ease),opacity .4s}
.iv-big-play svg{width:22px;height:22px;fill:currentColor;margin-left:3px}
.iv-ring{position:absolute;inset:-9px;border-radius:50%;border:1.5px solid #ffcf00a6;animation:ivPulse 2.4s ease-out infinite}
.iv-big-play:hover{transform:scale(1.08)}
.iv-big-play:focus-visible{outline:2px solid #fff;outline-offset:4px}
@keyframes ivPulse{from{opacity:.9;transform:scale(.85)}to{opacity:0;transform:scale(1.45)}}
.iv-player.is-sound .iv-big-play{opacity:0;transform:scale(.6);pointer-events:none}
.iv-badge{position:absolute;top:13px;left:13px;display:flex;align-items:center;gap:6px;padding:5px 9px;border-radius:30px;background:#0b1013a6;border:1px solid #ffffff24;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:6.5px;letter-spacing:1.4px;font-weight:600;color:#e3eaed}
.iv-badge i{width:6px;height:6px;border-radius:50%;background:#ff4d4d;box-shadow:0 0 0 3px #ff4d4d33;animation:ivBlink 1.6s ease-in-out infinite}
@keyframes ivBlink{50%{opacity:.35}}
.iv-controls{position:absolute;left:12px;right:12px;bottom:11px;display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:10px;background:#0b101380;border:1px solid #ffffff1c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .4s,transform .4s}
.iv-player:not(.is-sound):not(:hover):not(:focus-within) .iv-controls{opacity:0;transform:translateY(6px)}
.iv-controls button{flex:none;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:#fff;cursor:pointer;transition:background .3s,color .3s}
.iv-controls button:hover{background:#ffffff1a;color:var(--yellow,#ffcf00)}
.iv-controls button:focus-visible{outline:2px solid var(--yellow,#ffcf00)}
.iv-controls svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.iv-toggle svg{fill:currentColor;stroke:none}
.iv-toggle .i-play,.iv-player.is-paused .iv-toggle .i-pause{display:none}.iv-player.is-paused .iv-toggle .i-play{display:block}
.iv-mute .i-sound,.iv-player.is-unmuted .iv-mute .i-muted{display:none}.iv-player.is-unmuted .iv-mute .i-sound{display:block}
.iv-bar{position:relative;flex:1;height:14px;cursor:pointer;display:flex;align-items:center}
.iv-bar::before{content:"";position:absolute;left:0;right:0;height:3px;border-radius:3px;background:#ffffff33}
.iv-fill{position:absolute;left:0;height:3px;width:0;border-radius:3px;background:var(--yellow,#ffcf00);box-shadow:0 0 8px #ffcf0099}
.iv-fill::after{content:"";position:absolute;right:-4px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:#fff}
.iv-ticks i{position:absolute;top:50%;width:2px;height:7px;margin:-3.5px 0 0 -1px;background:#0b1013b3;border-radius:1px}
.iv-bar:focus-visible{outline:2px solid var(--yellow,#ffcf00);outline-offset:2px;border-radius:4px}
.iv-time{flex:none;font-size:8px;color:#d5e0e4;font-variant-numeric:tabular-nums;min-width:22px}
.iv-caption{margin:13px 0 0;display:flex;align-items:center;gap:8px;font-size:7px;letter-spacing:1.5px;font-weight:600;text-transform:uppercase;color:#7f939b}
.iv-caption span{width:6px;height:6px;border-radius:50%;background:var(--yellow,#ffcf00);box-shadow:0 0 0 3px #ffcf0026}
/* reveal */
.js .intro-video .iv-copy>*,.js .intro-video .iv-stage{opacity:0;transform:translateY(18px);transition:opacity .9s var(--ease-out,ease),transform .9s var(--ease-out,ease)}
.js .intro-video .iv-stage{transform:translateX(26px)}
.js .intro-video.is-in .iv-copy>*,.js .intro-video.is-in .iv-stage{opacity:1;transform:none}
.intro-video.is-in .iv-copy>:nth-child(2){transition-delay:.08s}.intro-video.is-in .iv-copy>:nth-child(3){transition-delay:.16s}.intro-video.is-in .iv-copy>:nth-child(4){transition-delay:.24s}.intro-video.is-in .iv-copy>:nth-child(5){transition-delay:.32s}.intro-video.is-in .iv-stage{transition-delay:.15s}
/* fullscreen */
.iv-player:fullscreen{border-radius:0;transform:none}.iv-player:fullscreen .iv-video{object-fit:contain}
.iv-player:fullscreen .iv-controls{left:24px;right:24px;bottom:22px;padding:10px 14px}
/* ===== Tablet + mobile ===== */
@media(max-width:1023px){
.intro-video{grid-template-columns:1fr;gap:30px;padding:52px 20px 56px}
.iv-stage{order:-1}
.intro-video .section-eyebrow{font-size:9.5px;line-height:14px;letter-spacing:2.4px;gap:10px;margin-bottom:12px}.intro-video .section-eyebrow>span{width:28px}
.intro-video h2{font-size:clamp(26px,7.6vw,31px);line-height:1.2;letter-spacing:-.8px}
.iv-body{font-size:14px;line-height:23px;margin:14px 0 22px;max-width:520px}
.iv-chapters{grid-template-columns:1fr 1fr;gap:9px}
.iv-chapters button{padding:12px;gap:10px;min-height:52px}
.iv-chapters b{width:28px;height:28px;font-size:9.5px}
.iv-chapters span{font-size:13px;line-height:17px}.iv-chapters i{font-size:11px}
.iv-cta{height:48px;padding:0 22px;font-size:13px}.iv-cta svg{width:17px;height:17px}
.iv-frame{inset:-9px -9px auto auto}
.iv-player{transform:none;border-radius:16px}
.iv-big-play{width:68px;height:68px;margin:-34px 0 0 -34px}.iv-big-play svg{width:26px;height:26px}
.iv-badge{font-size:9px;padding:6px 10px}
.iv-controls{opacity:1!important;transform:none!important;gap:6px;padding:4px 6px}
.iv-controls button{width:36px;height:36px}.iv-controls svg{width:18px;height:18px}
.iv-time{font-size:11px;min-width:30px}
.iv-caption{font-size:9.5px}}
@media(min-width:700px) and (max-width:1023px){.intro-video{padding:56px 40px 60px}.iv-chapters{grid-template-columns:repeat(4,1fr)}.iv-chapters button{flex-direction:column;align-items:flex-start}}
@media(max-width:420px){.iv-chapters i{display:none}.iv-time{display:none}}
@media(max-width:360px){.intro-video{padding-left:16px;padding-right:16px}.iv-chapters{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.iv-ring,.iv-badge i{animation:none}.iv-player{transform:none;transition:none}.js .intro-video .iv-copy>*,.js .intro-video .iv-stage{opacity:1;transform:none;transition:none}}

/* Big button states: playing muted = "tap for sound", paused = play, playing with sound = hidden. */
.iv-big-play .i-bplay{display:none}
.iv-big-play .i-bsound{display:block;width:22px;height:22px;margin:0;fill:currentColor}
.iv-big-play{background:#0b101399;color:#fff;border:1px solid #ffffff59;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.iv-big-play:hover{background:var(--yellow,#ffcf00);color:#0b1013;border-color:var(--yellow,#ffcf00)}
.iv-big-label{position:absolute;top:100%;left:50%;margin-top:9px;transform:translateX(-50%);white-space:nowrap;padding:4px 9px;border-radius:20px;background:#0b1013b3;font-size:7px;line-height:10px;letter-spacing:1.2px;font-weight:600;text-transform:uppercase;color:#fff;pointer-events:none}
.iv-player.is-paused .iv-big-play{opacity:1;transform:none;pointer-events:auto;background:var(--yellow,#ffcf00);color:#0b1013;border-color:var(--yellow,#ffcf00)}
.iv-player.is-paused .iv-big-play .i-bplay{display:block}
.iv-player.is-paused .iv-big-play .i-bsound,.iv-player.is-paused .iv-big-play .iv-big-label{display:none}
.iv-player.is-sound:not(.is-paused) .iv-big-play{opacity:0;transform:scale(.6);pointer-events:none}
@media(max-width:699px){.iv-big-label{font-size:9px;line-height:12px}.iv-big-play .i-bsound{width:26px;height:26px}}
