.lt-video-player {
  --video-accent:#9b71f5; --video-progress:0%; --video-buffered:0%;
  position:relative; display:block; width:100%; min-width:0; height:100%;
  overflow:hidden; overflow:clip; isolation:isolate; background:#171321; color:#fff;
  line-height:1; border-radius:var(--video-radius,inherit); font-family:'Satoshi-Variable',sans-serif;
  touch-action:manipulation; -webkit-tap-highlight-color:transparent;
}
.lt-video-player *, .lt-video-player *::before, .lt-video-player *::after { box-sizing:border-box; }
.lt-video-player[hidden], .lt-video-player [hidden] { display:none !important; }
/* The wrapper handles taps. The native video surface must not capture swipes. */
.lt-video-player > video { display:block; width:100%; height:100%; pointer-events:none; }
.lt-video-player > .lt-video-poster { position:absolute; inset:0; z-index:1; width:100%; height:100%; object-fit:contain; background:#171321; pointer-events:none; }
.lt-video-player button { cursor:pointer; border:0; margin:0; padding:0; color:#fff; flex-shrink:0; }
.lt-video-player svg { display:block; width:21px; height:21px; }
.lt-video-player .lt-video-center {
  position:absolute; left:12px; bottom:12px;
  display:grid; place-items:center; width:44px; height:44px; border-radius:50%;
  background:#713ad5ed; box-shadow:0 4px 22px #17132145,inset 0 0 0 1px #ffffff35;
  transform:translate(0,0);
  transition:transform .4s cubic-bezier(.22,1,.36,1),background-color .3s,box-shadow .3s,opacity .18s,visibility .18s; z-index:4;
}
.lt-video-center svg { width:24px; height:24px; transition:transform .3s cubic-bezier(.22,1,.36,1); }
.lt-video-player.is-controls-visible .lt-video-center { transform:translate(var(--video-play-x,0px),var(--video-play-y,0px)); background-color:transparent; box-shadow:none; pointer-events:none; }
.lt-video-player.is-controls-visible .lt-video-center svg { transform:scale(.875); }
.lt-video-player.is-playing:not(.is-controls-visible) .lt-video-center { opacity:0; visibility:hidden; pointer-events:none; }
.lt-video-player .lt-video-unmute {
  position:absolute; right:12px; bottom:12px; z-index:4; display:flex; flex-direction:row-reverse; align-items:center; width:112px; height:44px;
  padding:0; border-radius:22px; background:#713ad5ed; box-shadow:0 4px 22px #17132145,inset 0 0 0 1px #ffffff35;
  opacity:0; visibility:hidden; pointer-events:none; transform:translate(0,0);
  transition:transform .3s cubic-bezier(.22,1,.36,1),width .3s cubic-bezier(.22,1,.36,1),background-color .22s,box-shadow .22s,opacity .18s,visibility .18s;
}
.lt-video-unmute-symbol { display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; }
.lt-video-unmute-label { padding-left:12px; white-space:nowrap; font:600 12px/1 'Satoshi-Variable',sans-serif; transition:opacity .15s; }
.lt-video-player.needs-unmute .lt-video-unmute { opacity:1; visibility:visible; pointer-events:auto; }
.lt-video-player.needs-unmute .lt-video-unmute::before { content:''; position:absolute; inset:0; border:1px solid #ffffff80; border-radius:inherit; pointer-events:none; animation:lt-video-sound-pulse 2.8s ease-out infinite; }
.lt-video-player.is-controls-visible .lt-video-unmute { width:44px; transform:translate(var(--video-mute-x,0px),var(--video-mute-y,0px)); background:transparent; box-shadow:none; pointer-events:none; }
.lt-video-player.is-controls-visible .lt-video-unmute-label { opacity:0; }
.lt-video-player.is-controls-visible .lt-video-unmute::before { animation:none; opacity:0; }
.lt-video-player.needs-unmute [data-video-mute] > svg { opacity:0; }
@media(min-width:701px) {
  .lt-video-player:not(.is-controls-visible) .lt-video-unmute { opacity:0; visibility:hidden; pointer-events:none; }
  .lt-video-player:not(.is-controls-visible) .lt-video-unmute::before { animation:none; }
}
@keyframes lt-video-sound-pulse { 0%,20% { transform:scale(1); opacity:.7; } 75%,100% { transform:scale(1.12,1.3); opacity:0; } }
/* One persistent glyph travels from the corner to the toolbar and crossfades states. */
.lt-video-player [data-video-toggle] > svg { opacity:0; }
.lt-video-glyph-play, .lt-video-glyph-pause { transform-origin:12px 12px; transition:opacity .24s ease,transform .4s cubic-bezier(.34,1.56,.64,1); }
.lt-video-glyph-play { opacity:1; transform:scale(1); }
.lt-video-glyph-pause { opacity:0; transform:scale(.65); }
.lt-video-player.is-running .lt-video-glyph-play { opacity:0; transform:scale(.65); }
.lt-video-player.is-running .lt-video-glyph-pause { opacity:1; transform:scale(1); }
.lt-video-player.is-paused-muted .lt-video-unmute { width:44px; }
.lt-video-player.is-paused-muted .lt-video-unmute-label { width:0; padding:0; opacity:0; }
.lt-video-player.is-paused-muted .lt-video-unmute::before { animation:none; opacity:0; }
.lt-video-player .lt-video-controls {
  position:absolute; inset:auto 0 0; padding:28px 12px 10px;
  background:linear-gradient(transparent,#171321b8 36%,#171321ed);
  opacity:0; visibility:hidden; pointer-events:none; transform:translateY(5px);
  transition:opacity .2s,transform .2s,visibility .2s; z-index:3;
}
.lt-video-player.is-controls-visible .lt-video-controls { opacity:1; visibility:visible; pointer-events:auto; transform:none; }
.lt-video-toolbar { display:flex; align-items:center; gap:7px; min-width:0; }
.lt-video-player .lt-video-button { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:transparent; transition:background .16s; }
.lt-video-player .lt-video-button:hover { background:#ffffff22; }
.lt-video-time { font-size:12px; font-weight:500; font-variant-numeric:tabular-nums; white-space:nowrap; text-shadow:0 1px 5px #0008; }
.lt-video-spacer { flex:1; min-width:0; }
.lt-video-player .lt-video-timeline {
  display:block; appearance:none; -webkit-appearance:none; width:100%; height:24px;
  border:0; padding:0; margin:0 0 2px; cursor:pointer; border-radius:0;
  background:transparent; touch-action:pan-y; --track:linear-gradient(to right,var(--video-accent) 0 var(--video-progress),#ffffff8c var(--video-progress) var(--video-buffered),#ffffff35 var(--video-buffered) 100%);
}
.lt-video-timeline::-webkit-slider-runnable-track { height:3px; border-radius:3px; background:var(--track); }
.lt-video-timeline::-moz-range-track { height:3px; border-radius:3px; background:var(--track); }
.lt-video-timeline::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:11px; height:11px; margin-top:-4px; border-radius:50%; background:#fff; box-shadow:0 0 0 2px #713ad540; }
.lt-video-timeline::-moz-range-thumb { width:11px; height:11px; border:0; border-radius:50%; background:#fff; box-shadow:0 0 0 2px #713ad540; }
.lt-video-timeline:disabled { opacity:.4; cursor:default; }
.lt-video-player:focus-visible, .lt-video-player button:focus-visible, .lt-video-player input:focus-visible { outline:2px solid #c2a2ff !important; outline-offset:-2px !important; }
.lt-video-player .lt-video-loading {
  position:absolute; left:50%; top:50%; display:grid; place-items:center;
  width:52px; height:52px; margin:-26px; border:1px solid #ffffff30; border-radius:50%;
  background:#21182be6; box-shadow:0 4px 20px #08070b40;
  pointer-events:none; opacity:0; z-index:4;
}
.lt-video-player .lt-video-loading::before {
  content:''; width:30px; height:30px; border:3px solid #ffffff40;
  border-top-color:#fff; border-right-color:#c2a2ff; border-radius:50%;
  animation:lt-video-spin .9s linear infinite paused;
}
.lt-video-player.is-buffering .lt-video-loading { opacity:1; }
.lt-video-player.is-buffering .lt-video-loading::before { animation-play-state:running; }
.lt-video-player.is-buffering:not(.is-controls-visible) .lt-video-center { opacity:0; pointer-events:none; }
@keyframes lt-video-spin { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
.lt-video-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.lt-video-compact .lt-video-duration { display:none; }
.lt-video-small .lt-video-center { left:8px; bottom:8px; }
.lt-video-small .lt-video-unmute { right:8px; bottom:8px; }
.lt-video-small .lt-video-controls { padding:12px 6px 5px; }
.lt-video-small .lt-video-toolbar { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; justify-items:center; }
.lt-video-small .lt-video-time { grid-column:1/-1; grid-row:1; justify-self:start; margin:0 4px 3px; }
.lt-video-small [data-video-toggle] { grid-column:1; grid-row:2; }
.lt-video-small [data-video-mute] { grid-column:2; grid-row:2; }
.lt-video-small [data-video-fullscreen] { grid-column:3; grid-row:2; }
.lt-video-small[data-video-audio=none] .lt-video-toolbar { grid-template-columns:repeat(2,minmax(0,1fr)); }
.lt-video-small[data-video-audio=none] [data-video-fullscreen] { grid-column:2; }
.lt-video-small .lt-video-spacer { display:none; }
.lt-video-player.lt-video-small .lt-video-button { width:100%; max-width:44px; }
.lt-video-player.lt-video-player:is(:fullscreen,:-webkit-full-screen,.is-expanded) { width:100vw; max-width:none !important; height:var(--site-viewport-height,100vh); height:100dvh; aspect-ratio:auto; border-radius:0; background:#08070b; }
.lt-video-player.is-expanded { position:fixed; inset:0; z-index:2147483647; }
.lt-video-player:is(:fullscreen,:-webkit-full-screen,.is-expanded) > video { width:100%; height:100%; min-height:0; aspect-ratio:auto; object-fit:contain; }
.lt-video-player:is(:fullscreen,:-webkit-full-screen,.is-expanded) .lt-video-controls { padding:40px max(20px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)); }
.lt-video-mounted > [data-video-play], .lt-video-mounted > .feather-play-circle { display:none !important; }
.ev-device--iphone .lt-video-player { height:auto; aspect-ratio:9/16; flex:0 0 auto; }
.ev-led-screen .lt-video-player { height:auto; aspect-ratio:16/10; }
.ev-case-media .lt-video-player { height:auto; aspect-ratio:1; }
.ev-device-screen .lt-video-player { border-radius:0; }
.video-embed-container .lt-video-player { height:auto; }
@media(pointer:coarse) {
  .lt-video-player .lt-video-button { width:44px; height:44px; }
  .lt-video-player .lt-video-timeline { height:32px; }
  .lt-video-player:not(.lt-video-small) .lt-video-controls { padding-inline:10px; }
  .lt-video-toolbar { gap:4px; }
}
@media(prefers-reduced-motion:reduce) {
  .lt-video-player *, .lt-video-player *::before { animation:none !important; transition:none !important; }
  /* Keep loading feedback visible, with a slower turn and no decorative motion. */
  .lt-video-player .lt-video-loading::before { animation:lt-video-spin 2s linear infinite paused !important; }
  .lt-video-player.is-buffering .lt-video-loading::before { animation-play-state:running !important; }
}
/* The homepage reel reserves its aspect ratio before metadata or playback. */
/* A layout border changes the inner 16:9 ratio and exposes dark side bars. */
.showreel-video { width:100%; max-width:1180px; aspect-ratio:16/9; border:0; box-shadow:0 0 0 1px #ffffffb0; border-radius:20px; overflow:hidden; background:#171321; }
.showreel-video > video, .showreel-video > .lt-video-player { display:block; width:100%; height:100%; }
.showreel-video video { object-fit:contain; }
@media (max-width:700px) { .showreel-video { border-radius:16px; } }
