/* VIBE LAB v529 — premium documentary treatment */
.opening{background-position:center center}
.opening .shade{background:linear-gradient(90deg,#01040af5 0 27%,#01040ab8 42%,transparent 70%),linear-gradient(0deg,#01040ae8 0,transparent 36%)}
.opening-copy{padding-left:2px}
.opening-copy h1{max-width:690px;text-wrap:balance}
.opening-copy .lead{max-width:640px;color:#dce6ef}
.launch{position:relative;overflow:hidden;border:1px solid #aaf7ff80;background:#dffcff;box-shadow:0 14px 42px #0008,0 0 45px #5ee7f224;transition:transform .25s,box-shadow .25s}
.launch:hover{transform:translateY(-2px);box-shadow:0 18px 52px #000a,0 0 55px #5ee7f238}
.launch:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#fff 48%,transparent 62%);transform:translateX(-120%);transition:transform .7s}
.launch:hover:after{transform:translateX(120%)}
.opening-data span{border:1px solid #ffffff12;border-top-color:#70ecf175;background:#050b14ad;backdrop-filter:blur(14px);border-radius:2px;box-shadow:0 18px 46px #0004}
.dual-motion{background-position:center;background-size:cover}
.dual-motion .shade{background:linear-gradient(90deg,#02050cb8 0 22%,transparent 42% 62%,#02050c9e 100%),linear-gradient(0deg,#02050cf2 0,transparent 35%)}
.dual-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(450px,650px) 1fr;align-items:end;gap:6vw;width:100%}
.dual-copy{padding:28px 30px 30px;border-left:1px solid #f6b75b80;background:linear-gradient(90deg,#03070fd9,transparent);text-shadow:0 4px 30px #000}
.dual-copy h2{font-size:clamp(48px,6.4vw,88px);margin-bottom:18px}
.dual-copy .lead{max-width:570px}
.dual-copy .facts{gap:10px}
.dual-copy .facts article{min-width:220px;padding:15px 16px;border-radius:4px;background:#030913c9;border-color:#ffffff20;backdrop-filter:blur(12px)}
.dual-copy .facts article>span{color:#f6bd66;font:800 9px monospace;letter-spacing:.14em}
.dual-copy .facts article>b{font-size:18px;color:#fff}
.dual-copy .facts small{color:#9eabb8}
.motion-note{justify-self:end;align-self:center;display:grid;grid-template-columns:54px 1fr;gap:6px 14px;align-items:center;max-width:260px;padding:18px 20px;border:1px solid #ffffff1f;background:#03070f99;backdrop-filter:blur(16px);box-shadow:0 20px 60px #0008}
.motion-note i{grid-row:1/3;width:45px;height:45px;border:1px solid #f6b75b;border-radius:50%;box-shadow:inset 0 0 22px #f6b75b24}
.motion-note span{color:#f6bd66;font:800 9px monospace;letter-spacing:.13em}
.motion-note b{font:700 11px/1.5 monospace;letter-spacing:.08em;color:#e9f2f7}
.photo-copy{border-radius:6px;border-color:#ffffff24;background:linear-gradient(135deg,#06101ddf,#030711b8);box-shadow:0 30px 80px #0008}
.photo-copy:before{content:"";position:absolute;left:30px;top:0;width:74px;height:1px;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}
.seasons article,.curios button,.table,.quiz{box-shadow:0 20px 55px #0003}
.seasons article,.curios button,.quiz{border-radius:6px}
.table{border-radius:7px}
.slide h1,.slide h2{text-wrap:balance}
.lead{text-wrap:pretty}
.eyebrow{text-shadow:0 0 22px #67e8f955}
body.motion-on .dual-motion.active{animation:dualPush 13s ease-out both}
body.motion-on .dual-motion.active .dual-copy{animation:refinedIn 1s .1s both}
body.motion-on .dual-motion.active .motion-note{animation:noteIn 1s .35s both}
@keyframes dualPush{from{background-size:102% auto;background-position:49% 50%}to{background-size:109% auto;background-position:51% 50%}}
@keyframes noteIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@media(max-width:800px){
  .opening{background-position:62% center}
  .opening .shade{background:linear-gradient(0deg,#01040af5 0 42%,#01040a75 78%,#01040a2e)}
  .dual-motion{background-position:53% center}
  .dual-motion .shade{background:linear-gradient(0deg,#02050cf7 0 55%,#02050c56 100%)}
  .dual-layout{grid-template-columns:1fr;align-items:end}
  .dual-copy{padding:18px 0 0;border-left:0;border-top:1px solid #f6b75b66;background:linear-gradient(0deg,#03070ff2,transparent)}
  .dual-copy h2{font-size:clamp(42px,13vw,64px)}
  .dual-copy .facts{display:grid;grid-template-columns:1fr 1fr}
  .dual-copy .facts article{min-width:0}
  .dual-copy .facts article>b{font-size:13px}
  .motion-note{display:none}
  .photo-copy:before{left:20px}
  body.motion-on .dual-motion.active{animation:none}
}
