/* Nissan Mallo: captions follow the film playback time. */
.premium-home .lux-hero {background:#081425 url('./hero-video-poster-2k-v4-20261023.webp') center/cover no-repeat;}
.premium-home .lux-hero>.lux-slide {display:none;}
.mallo-hero-film {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;}
.premium-home .mallo-video-hero .lux-shade {pointer-events:none;background:linear-gradient(90deg,rgba(4,14,31,.84),rgba(4,14,31,.40) 40%,transparent 72%),linear-gradient(rgba(4,14,31,.28),transparent 28%,transparent 75%,rgba(4,14,31,.48));}
.premium-home .mallo-video-hero .lux-copy {padding-top:clamp(180px,25vh,260px);}
.mallo-video-caption {animation:mallo-caption-in .3s ease-out;max-width:48%;min-height:270px;}
.premium-home .mallo-video-hero .lux-copy h1 {font-size:clamp(42px,4.9vw,76px);line-height:1.04;max-width:100%;margin-top:22px;}
.mallo-video-hero .hero-epower {width:240px;max-width:85%;margin-bottom:16px;}
.mallo-video-hero .lux-actions {margin-top:24px;}
.mallo-video-hero .lux-kicker {font-size:11px;}
.mallo-video-hero .lux-copy .hero-subtitle {font-size:15px;}
.mallo-video-hero .mallo-video-progress button {height:28px;background:transparent;position:relative;}
.mallo-video-progress button:before {content:'';position:absolute;inset:12px 0;background:#ffffff50;border-radius:3px;}
.mallo-video-hero .mallo-video-progress button span,
.mallo-video-hero .mallo-video-progress button.active span {position:absolute;top:12px;left:0;height:4px;width:100%;transform:scaleX(var(--video-progress,0));transform-origin:left;transition:none;border-radius:3px;}
.mallo-video-controls button:focus-visible {outline:2px solid white;outline-offset:5px;}
.mallo-video-toggle svg {height:18px;}
@keyframes mallo-caption-in {from {opacity:0;transform:translateY(7px)}to {opacity:1;transform:none}}
@media (max-width:767px) {
  .premium-home .lux-hero {background-color:#081425;background-size:100% auto;background-position:center 280px;}
  .premium-home .mallo-video-hero {height:calc(480px + 56.25vw);min-height:680px;}
  .mallo-hero-film {top:280px;height:auto;aspect-ratio:16/9;object-fit:contain;}
  .premium-home .mallo-video-hero .lux-shade {background:linear-gradient(#081425 0 265px,transparent 300px,transparent calc(280px + 56.25vw - 20px),#081425 calc(280px + 56.25vw + 10px));}
  .premium-home .mallo-video-hero .lux-copy {padding-top:144px;height:100%;}
  .mallo-video-caption {max-width:100%;min-height:0;}
  .premium-home .mallo-video-hero .lux-copy h1 {font-size:clamp(27px,8vw,39px);line-height:1.03;max-width:100%;margin:14px 0 10px;}
  .mallo-video-hero .hero-epower {width:158px;margin-bottom:10px;}
  .mallo-video-hero .lux-copy .hero-subtitle {font-size:11px;}
  .mallo-video-hero .lux-kicker {font-size:9px;letter-spacing:.1em;}
  .premium-home .mallo-video-hero .lux-actions {bottom:95px;}
  .premium-home .mallo-video-hero .mallo-video-controls {bottom:27px;justify-content:center;gap:12px;}
  .mallo-video-controls .mallo-video-toggle {display:grid;width:40px;height:40px;}
  .mallo-video-hero .scroll-cue {display:none;}
}
@media (prefers-reduced-motion:reduce) {.mallo-video-caption {animation:none;}}

/* Keep the desktop film close to its native 16:9 framing. */
@media (min-width:768px) {.premium-home .mallo-video-hero {height:min(100svh,56.25vw);min-height:680px;}}

/* Desktop-only light veil trial. Mobile retains the original V3 overlay. */
@media (min-width:768px) {
 .premium-home .mallo-video-hero .lux-shade {background:linear-gradient(90deg,rgba(4,14,31,.64),rgba(4,14,31,.28) 30%,transparent 60%),linear-gradient(rgba(4,14,31,.18),transparent 24%,transparent 82%,rgba(4,14,31,.22));}
 .mallo-video-caption {text-shadow:0 2px 12px rgba(0,0,0,.65);}
}
