.hero-live-background,.hero-live-toggle,.hero-live-sound,.hero-live-fullscreen { display:none; }
.hero-live-background { background:#08090b; }
.hero-live-background .hero-live-poster { position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; object-position:center; opacity:0; transition:opacity .8s ease; pointer-events:none; }
.hero-live-background.hero-live-poster-ready .hero-live-poster { opacity:1; }
.hero-live-background video { position:relative; z-index:1; opacity:0; transition:opacity 1s ease; }
.hero-live-background.hero-live-frame-ready video { opacity:1; }
/* Keep an already visible cover underneath the fade, avoiding a dip back to black. */
.hero-live-background::after { z-index:2; }
.hero-live-viewer[data-open] .hero-live-poster { object-fit:contain; }
@media (prefers-reduced-motion:reduce) {
  .hero-live-background .hero-live-poster,.hero-live-background video { transition:none; }
}
.hero-live-fullscreen-active { overflow:hidden; }
.hero-live-fullscreen-active.hero-live-enabled .hero { overflow:visible; }
.hero-live-fullscreen-active.hero-live-enabled .hero-live-viewer[data-open] { display:block; position:fixed; inset:0; z-index:2147483647; width:100vw; height:100dvh; max-width:none; max-height:none; margin:0; padding:0; border:0; border-radius:0; background:#000; overflow:hidden; pointer-events:auto; }
.hero-live-viewer[data-open]::backdrop { background:#000; }
.hero-live-fullscreen-active .hero-live-viewer[data-open]::after { display:none; }
.hero-live-fullscreen-active .hero-live-viewer[data-open] video { display:block; width:100%; height:100%; object-fit:contain; background:#000; }
.hero-live-viewer__close { display:none; }
.hero-live-viewer[data-open] .hero-live-viewer__close { position:absolute; top:calc(.8rem + env(safe-area-inset-top)); right:calc(.8rem + env(safe-area-inset-right)); z-index:2; display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid rgba(255,255,255,.6); border-radius:50%; background:rgba(10,10,12,.8); color:#fff; font:400 2rem/1 system-ui,sans-serif; cursor:pointer; }
.hero-live-viewer__close:focus-visible { outline:2px solid #fff; outline-offset:3px; }
@media (max-width:46.99rem) {
  .hero-live-enabled.hero-live-active .hero { background:#08090b; }
  .hero-live-enabled.hero-live-active .hero-live-background { display:block; position:absolute; inset:0; z-index:0; overflow:hidden; pointer-events:none; }
  .hero-live-background video { width:100%; height:100%; object-fit:cover; object-position:center; }
  .hero-live-background::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,6,9,.62),rgba(5,6,9,.2) 28%,rgba(5,6,9,.04) 46%,rgba(5,6,9,.52) 69%,#08090b 100%); }
  .hero-live-enabled.hero-live-active .hero__silhouette-picture,.hero-live-enabled.hero-live-active .hero__shade,.hero-live-enabled.hero-live-active .hero .deck-window { display:none; }
  .hero-live-enabled.hero-live-active .hero__inner { position:relative; z-index:1; min-height:100svh; padding:calc(1.1rem + env(safe-area-inset-top)) 1rem calc(1.2rem + env(safe-area-inset-bottom)); }
  .hero-live-enabled.hero-live-active .hero__layout { display:grid; grid-template-areas:"brand" "." "decision"; grid-template-columns:1fr; grid-template-rows:auto minmax(4rem,1fr) auto; align-content:stretch; gap:0; }
  .hero-live-enabled.hero-live-active .hero__info { display:contents; }
  .hero-live-enabled.hero-live-active .hero__brand { align-self:start; gap:.2rem; }
  .hero-live-enabled.hero-live-active .hero__logo { width:min(51vw,13rem); filter:drop-shadow(0 3px 14px #000); }
  .hero-live-enabled.hero-live-active .hero h1 { margin:.3rem 0; font-size:.85rem; letter-spacing:.12em; text-shadow:0 2px 8px #000; }
  .hero-live-enabled.hero-live-active .partner-lockup { min-height:2.5rem; gap:.45rem; font-size:1.05rem; text-shadow:0 2px 8px #000; }
  .hero-live-enabled.hero-live-active .partner-lockup img { width:2.5rem; height:2.5rem; }
  .hero-live-enabled.hero-live-active .partner-lockup__label { font-size:.62rem; }
  .hero-live-enabled.hero-live-active .hero__decision { align-self:end; gap:.65rem; }
  .hero-live-enabled.hero-live-active .event-facts { gap:.35rem; max-width:23rem; }
  .hero-live-enabled.hero-live-active .event-facts span { min-height:1.8rem; padding:.32rem .55rem; font-size:.75rem; background:rgba(6,8,12,.68); backdrop-filter:blur(5px); }
  .hero-live-enabled.hero-live-active .hero__buy { width:min(100%,22rem); }
  .hero-live-enabled.hero-live-active .hero__buy .price { font-size:1.2rem; text-shadow:0 2px 8px #000; }
  .hero-live-enabled.hero-live-active .hero__buy .button { min-height:3.3rem; font-size:1.15rem; }
  .hero-live-enabled.hero-live-active .hero__slogan { display:block; font-size:.92rem; color:#ddd; }
  .hero-live-toggle:not([hidden]) { display:grid; place-items:center; position:absolute; right:.9rem; top:calc(.9rem + env(safe-area-inset-top)); z-index:8; width:40px; height:40px; padding:0; border:1px solid rgba(255,255,255,.5); border-radius:50%; background:rgba(6,8,12,.48); color:#fff; font:600 1rem/1 system-ui,sans-serif; cursor:pointer; backdrop-filter:blur(6px); }
  .hero-live-sound:not([hidden]) { display:block; position:absolute; right:calc(.9rem + 48px); top:calc(.9rem + env(safe-area-inset-top)); z-index:8; min-height:40px; padding:.5rem .85rem; border:1px solid rgba(255,255,255,.5); border-radius:999px; background:rgba(6,8,12,.65); color:#fff; font:600 .8rem/1.2 system-ui,sans-serif; cursor:pointer; backdrop-filter:blur(6px); }
  .hero-live-fullscreen:not([hidden]) { display:block; position:absolute; left:.9rem; top:calc(.9rem + env(safe-area-inset-top)); z-index:8; min-height:40px; padding:.5rem .65rem; border:1px solid rgba(255,255,255,.5); border-radius:999px; background:rgba(6,8,12,.65); color:#fff; font:600 .75rem/1.2 system-ui,sans-serif; cursor:pointer; backdrop-filter:blur(6px); }
}
@media (max-width:46.99rem) {
  .hero-live-enabled.hero-live-active .hero__inner { padding-top:calc(4.1rem + env(safe-area-inset-top)); }
}
@media (max-width:46.99rem) and (max-height:42rem) {
  .hero-live-enabled.hero-live-active .hero__logo { width:9rem; }
  .hero-live-enabled.hero-live-active .hero__inner { padding-top:calc(4.1rem + env(safe-area-inset-top)); padding-bottom:.65rem; }
  .hero-live-enabled.hero-live-active .hero__decision { gap:.4rem; }
  .hero-live-enabled.hero-live-active .hero__layout { grid-template-rows:auto minmax(2rem,1fr) auto; }
}

@media (max-width:46.99rem) {
  .hero-live-enabled .hero__inner { padding-top:calc(4.1rem + env(safe-area-inset-top)); }
  .hero-live-toggle--replay:not([hidden]) { width:auto; padding:0 .9rem; border-radius:999px; font-size:.8rem; }
  .hero-live-enabled.hero-live-active .hero--variant-a .hero__layout { display:flex; flex-direction:column; justify-content:flex-end; gap:0; padding-top:4rem; }
  .hero-live-enabled.hero-live-active .hero--variant-a .hero__copy { display:flex; flex-direction:column; align-items:center; gap:.7rem; width:100%; }
  .hero-live-enabled.hero-live-active .hero--variant-a .hero__copy h1 { font-size:clamp(1.6rem,6.5vw,2rem); line-height:1.08; letter-spacing:.02em; margin:0; }
  .hero-live-enabled.hero-live-active .hero--variant-a .hero__slogan { text-align:center; margin-top:.7rem; }
}
