.carjong-premiere[hidden]{display:none}
.carjong-premiere{
  position:fixed;
  inset:0;
  z-index:24000;
  display:grid;
  overflow:hidden;
  place-items:center;
  background:#020304;
  color:#fff;
  isolation:isolate;
  opacity:1;
  overscroll-behavior:contain;
  touch-action:none;
  transition:opacity .55s ease;
}
.carjong-premiere.is-leaving{opacity:0;pointer-events:none}
.carjong-premiere__bg,
.carjong-premiere__shade,
.carjong-premiere__energy,
.carjong-premiere__flash{position:absolute;inset:0;pointer-events:none}
.carjong-premiere__bg{z-index:-4;overflow:hidden}
.carjong-premiere__bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 48%;
  filter:saturate(1.18) contrast(1.12) brightness(.74);
  transform:scale(1.06);
  animation:carjong-premiere-camera 15s cubic-bezier(.2,.7,.2,1) both;
}
.carjong-premiere__shade{
  z-index:-3;
  background:
    radial-gradient(circle at 50% 50%,transparent 15%,rgba(0,0,0,.2) 47%,rgba(0,0,0,.88) 100%),
    linear-gradient(180deg,rgba(0,0,0,.7),transparent 32%,transparent 65%,rgba(0,0,0,.76));
}
.carjong-premiere__energy{
  z-index:-2;
  opacity:.8;
  background:
    repeating-conic-gradient(from 0deg at 50% 54%,transparent 0 7deg,rgba(255,205,54,.15) 8deg,transparent 9deg 18deg),
    radial-gradient(circle at 50% 54%,rgba(255,218,82,.38),transparent 29%);
  mix-blend-mode:screen;
  transform:scale(1.6);
  animation:carjong-premiere-energy 5s linear infinite;
}
.carjong-premiere__flash{
  z-index:8;
  opacity:0;
  background:#fff6c7;
  mix-blend-mode:screen;
  animation:carjong-premiere-flash 15s ease both;
}
.carjong-premiere__cards{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.carjong-premiere__card{
  position:absolute;
  top:var(--premiere-y);
  left:var(--premiere-x);
  display:grid;
  width:clamp(48px,14vw,84px);
  aspect-ratio:.69;
  place-items:center;
  border:2px solid rgba(255,224,126,.86);
  border-radius:10px;
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(210,215,218,.88));
  color:var(--premiere-color,#b8122d);
  font-size:clamp(24px,8vw,48px);
  font-weight:1000;
  box-shadow:0 0 32px rgba(255,196,37,.58),0 18px 38px rgba(0,0,0,.65);
  opacity:0;
  transform:translate3d(var(--premiere-from-x),80vh,0) rotate(var(--premiere-rotation)) scale(.5);
  animation:carjong-premiere-card-flight 6.8s cubic-bezier(.18,.72,.18,1) var(--premiere-delay) infinite;
}
.carjong-premiere__copy{
  position:relative;
  z-index:4;
  width:min(92vw,680px);
  min-height:270px;
  padding:24px;
  text-align:center;
  text-transform:uppercase;
  text-shadow:0 4px 24px #000,0 0 22px rgba(255,196,39,.78);
}
.carjong-premiere__beat,
.carjong-premiere__title{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;opacity:0}
.carjong-premiere__beat{
  margin:0;
  color:#fff8df;
  font-size:clamp(26px,8vw,58px);
  font-style:italic;
  font-weight:1000;
  letter-spacing:.08em;
  line-height:1.05;
}
.carjong-premiere__beat strong{display:block;color:#ffd24d;font-size:1.18em}
.carjong-premiere__beat.is-one{animation:carjong-premiere-beat 3s .55s both}
.carjong-premiere__beat.is-two{animation:carjong-premiere-beat 3s 3.65s both}
.carjong-premiere__beat.is-three{animation:carjong-premiere-beat 3s 6.75s both}
.carjong-premiere__title{animation:carjong-premiere-title 5.2s 9.75s both}
.carjong-premiere__title img{
  width:clamp(62px,17vw,98px);
  height:auto;
  margin-bottom:10px;
  border-radius:19px;
  box-shadow:0 0 42px rgba(255,211,66,.88);
}
.carjong-premiere__title b{
  color:#ffd24d;
  font-size:clamp(44px,14vw,104px);
  font-style:italic;
  font-weight:1000;
  letter-spacing:.055em;
  line-height:.9;
}
.carjong-premiere__title small{
  margin-top:14px;
  color:#fff8df;
  font-size:clamp(12px,3.5vw,20px);
  font-weight:900;
  letter-spacing:.25em;
}
.carjong-premiere__sound{
  position:absolute;
  top:max(16px,env(safe-area-inset-top));
  left:16px;
  z-index:12;
  border:1px solid rgba(255,220,105,.58);
  border-radius:999px;
  padding:9px 14px;
  background:rgba(2,3,4,.74);
  color:#fff3c4;
  font-size:12px;
  font-weight:900;
  backdrop-filter:blur(8px);
  cursor:pointer;
  touch-action:manipulation;
}
.carjong-premiere__actions{
  position:absolute;
  right:18px;
  bottom:max(34px,calc(22px + env(safe-area-inset-bottom)));
  left:18px;
  z-index:14;
  display:flex;
  justify-content:center;
  gap:12px;
  opacity:0;
  transform:translateY(20px);
}
.carjong-premiere__actions[hidden]{display:none}
.carjong-premiere.is-finished .carjong-premiere__actions{animation:carjong-premiere-actions-in .5s ease both}
.carjong-premiere__action{
  min-width:min(42vw,190px);
  border:1px solid rgba(255,220,105,.72);
  border-radius:14px;
  padding:14px 18px;
  background:rgba(4,6,8,.84);
  color:#fff3c4;
  font-size:15px;
  font-weight:1000;
  letter-spacing:.04em;
  box-shadow:0 10px 30px rgba(0,0,0,.5);
  backdrop-filter:blur(10px);
  cursor:pointer;
  touch-action:manipulation;
}
.carjong-premiere__action.is-primary{
  border-color:#ffe477;
  background:linear-gradient(135deg,#ffe477,#efbd00);
  color:#17130a;
  box-shadow:0 0 30px rgba(255,205,50,.44),0 10px 30px rgba(0,0,0,.52);
}
.carjong-premiere__progress{
  position:absolute;
  right:0;
  bottom:max(0px,env(safe-area-inset-bottom));
  left:0;
  z-index:10;
  height:4px;
  background:rgba(255,255,255,.13);
}
.carjong-premiere__progress::after{
  content:"";
  display:block;
  width:100%;
  height:100%;
  background:linear-gradient(90deg,#9f6100,#ffe47c,#fff7c6);
  box-shadow:0 0 16px rgba(255,211,65,.92);
  transform:scaleX(0);
  transform-origin:left;
  animation:carjong-premiere-progress 15s linear both;
}
.carjong-premiere.is-finished .carjong-premiere__bg img{animation:none;transform:scale(1.3) translateY(-3%)}
.carjong-premiere.is-finished .carjong-premiere__energy{animation:none;transform:scale(1.6) rotate(240deg)}
.carjong-premiere.is-finished .carjong-premiere__flash,
.carjong-premiere.is-finished .carjong-premiere__card,
.carjong-premiere.is-finished .carjong-premiere__beat{animation:none;opacity:0}
.carjong-premiere.is-finished .carjong-premiere__title{animation:none;opacity:1;transform:scale(1.03)}
.carjong-premiere.is-finished .carjong-premiere__progress::after{animation:none;transform:scaleX(1)}
@keyframes carjong-premiere-camera{0%{transform:scale(1.06)}55%{transform:scale(1.19) translateY(-1.5%)}100%{transform:scale(1.3) translateY(-3%)}}
@keyframes carjong-premiere-energy{to{transform:scale(1.6) rotate(360deg)}}
@keyframes carjong-premiere-flash{0%,22%,43%,64%,96%,100%{opacity:0}23%{opacity:.2}44%{opacity:.28}65%{opacity:.38}97%{opacity:.72}}
@keyframes carjong-premiere-card-flight{
  0%{opacity:0;transform:translate3d(var(--premiere-from-x),75vh,0) rotate(var(--premiere-rotation)) scale(.48)}
  18%{opacity:.96}
  78%{opacity:.74}
  100%{opacity:0;transform:translate3d(0,-110vh,0) rotate(8deg) scale(1.18)}
}
@keyframes carjong-premiere-beat{0%{opacity:0;transform:scale(.72) translateY(24px);filter:blur(8px)}16%,72%{opacity:1;transform:scale(1);filter:blur(0)}100%{opacity:0;transform:scale(1.18) translateY(-14px);filter:blur(5px)}}
@keyframes carjong-premiere-title{0%{opacity:0;transform:scale(.45);filter:blur(12px)}16%{opacity:1;transform:scale(1.08);filter:blur(0)}27%,88%{opacity:1;transform:scale(1)}100%{opacity:1;transform:scale(1.03)}}
@keyframes carjong-premiere-progress{to{transform:scaleX(1)}}
@keyframes carjong-premiere-actions-in{to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
  .carjong-premiere__bg img,
  .carjong-premiere__energy,
  .carjong-premiere__flash,
  .carjong-premiere__card,
  .carjong-premiere__beat,
  .carjong-premiere__progress::after{animation-duration:.01ms}
}
