  /* ============ TOKENS ============ */
  :root{
    --accent:#ff2d55;
    --accent2:#ff9800;
    --purple:#bb86fc;
    --green:#00c853;
    --ink:#fcfcfd;
    --surface:#ffffff;
    --card:#ffffff;
    --card2:#f6f6f8;
    --border:#eaeaec;
    --border2:#e2e2e6;
    --text:#0a0a0a;
    --text2:#4a4a52;
    --text3:#6e6e78;
    --text4:#9a9aa2;
    --r-sm:8px;
    --r-md:12px;
    --r-lg:16px;
    --r-xl:24px;
    --r-full:9999px;
    --maxw:1280px;
    --shadow-card: 0 1px 2px rgba(10,10,10,.04), 0 12px 32px rgba(10,10,10,.06);
    --shadow-card-hover: 0 2px 6px rgba(10,10,10,.06), 0 24px 48px rgba(10,10,10,.10);
    --shadow-glow: 0 18px 50px rgba(255,45,85,.16);
  }

  *,*::before,*::after{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
  }
  body{
    margin:0;
    background:var(--ink);
    color:var(--text);
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img,video{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;margin:0;padding:0;}
  h1,h2,h3,h4,p{margin:0;}
  button{font-family:inherit;cursor:pointer;}
  :focus-visible{outline:2px solid var(--accent2);outline-offset:3px;border-radius:4px;}

  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
  @media (max-width:900px){.wrap{padding:0 24px;}}
  @media (max-width:480px){.wrap{padding:0 18px;}}

  .eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
    color:var(--accent2);
    background:rgba(255,152,0,.1);
    border:1px solid rgba(255,152,0,.25);
    padding:6px 14px;border-radius:var(--r-full);
  }
  .section-head{max-width:720px;margin:0 auto 48px;text-align:center;}
  .section-head h2{
    font-size:clamp(28px,4.2vw,46px);
    font-weight:900;letter-spacing:-.02em;line-height:1.1;
    margin-top:16px;
  }
  .section-head p{color:var(--text3);font-size:17px;line-height:1.6;margin-top:14px;}
  .section-pad{padding:96px 0;}
  @media (max-width:768px){.section-pad{padding:64px 0;}}
  @media (max-width:480px){.section-pad{padding:52px 0;}}

  .glow-blob{
    position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:0;
    opacity:.16;
  }

  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-weight:700;font-size:15px;
    padding:14px 26px;border-radius:var(--r-full);
    border:1px solid transparent;
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
    white-space:nowrap;
  }
  .btn-primary{
    background:linear-gradient(135deg,var(--accent),#ff5470);
    color:#fff;
    box-shadow:0 8px 24px rgba(255,45,85,.35);
  }
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(255,45,85,.5);}
  .btn-ghost{
    background:transparent;
    border-color:var(--border2);
    color:var(--text);
  }
  .btn-ghost:hover{background:rgba(10,10,10,.04);border-color:#c7c7cd;}
  .btn-block{width:100%;}
  .btn-sm{padding:9px 16px;font-size:13px;}

  /* ============ NAV ============ */
  .nav{
    position:sticky;top:0;z-index:100;
    background:rgba(255,255,255,.82);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    border-bottom:1px solid var(--border);
  }
  .nav-inner{
    max-width:var(--maxw);margin:0 auto;padding:14px 32px;
    display:flex;align-items:center;justify-content:space-between;gap:20px;
  }
  .nav-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:16px;}
  .nav-brand img{height:28px;width:28px;border-radius:8px;object-fit:cover;}
  .nav-brand small{
    display:block;font-size:9px;font-weight:700;letter-spacing:.12em;
    color:var(--accent2);text-transform:uppercase;
  }
  .nav-links{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600;color:var(--text3);}
  .nav-links a:hover{color:var(--text);}
  .nav-actions{display:flex;align-items:center;gap:22px;}
  .nav-login{font-size:14px;font-weight:600;color:var(--text3);}
  .nav-login:hover{color:var(--text);}
  @media (max-width:820px){.nav-links{display:none;}}
  @media (max-width:480px){.nav-actions{gap:14px;}}
  @media (max-width:480px){.nav-inner{padding:12px 18px;}.btn{padding:11px 18px;font-size:13px;}}

  /* ============ HERO ============ */
  .hero{
    position:relative;
    padding:76px 0 60px;
    overflow:hidden;
  }
  .hero .glow-blob.g1{width:560px;height:560px;background:var(--accent);top:-220px;right:-120px;}
  .hero .glow-blob.g2{width:420px;height:420px;background:var(--purple);bottom:-160px;left:-140px;opacity:.12;}
  .hero-inner{
    position:relative;z-index:1;
    display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;
  }
  @media (max-width:980px){.hero-inner{grid-template-columns:1fr;}}
  .hero-kicker{
    display:block;color:var(--accent);font-weight:800;
    font-size:clamp(14px,1.3vw,18px);letter-spacing:.34em;text-transform:uppercase;
    margin-bottom:18px;
  }
  .hero-copy h1{
    font-size:clamp(34px,5.4vw,64px);
    font-weight:900;line-height:1.04;letter-spacing:-.03em;
  }
  .hero-copy h1 em{
    font-style:normal;
    background:linear-gradient(100deg,var(--accent),var(--accent2) 65%);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .hero-copy h1 .h1-pre{
    display:block;font-size:clamp(20px,2.3vw,30px);font-weight:800;
    letter-spacing:-.015em;line-height:1.15;color:var(--text);margin-bottom:6px;
  }
  .hero-copy h1 .tm{
    font-size:.26em;vertical-align:super;color:var(--text4);font-weight:700;
    letter-spacing:0;margin-left:.05em;
  }
  .hero-tagline{
    margin-top:14px;font-size:clamp(1.3rem,2.6vw,2rem);font-weight:700;
    letter-spacing:-.01em;line-height:1.25;color:var(--text);
  }
  .hero-copy p.lede{
    margin-top:22px;font-size:18px;line-height:1.65;color:var(--text2);max-width:520px;
  }
  .hero-forline{margin-top:16px;font-size:15px;font-weight:600;color:var(--text2);}
  .hero-forline .muted{color:var(--text4);font-weight:400;}
  .hero-pillars{
    margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;
    font-size:12.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--text2);
  }
  .hero-pillars .pdot{width:4px;height:4px;border-radius:50%;background:var(--accent);display:inline-block;}
  .hero-note{margin-top:22px;font-size:13px;color:var(--text4);display:flex;align-items:center;gap:8px;}
  .hero-note .dot{width:6px;height:6px;border-radius:50%;background:var(--green);}

  /* hero before/after compare slider */
  .hero-compare-col{
    display:flex; flex-direction:column; align-items:center; justify-content:center;
  }
  .slider-wrap{ width:100%; max-width:300px; }
  .compare{
    position:relative; width:100%; aspect-ratio:9/16; border-radius:var(--r-lg);
    overflow:hidden; background:#000; border:1px solid var(--border2);
    box-shadow:0 30px 70px rgba(10,10,10,.18), 0 0 0 6px rgba(255,45,85,.05);
    user-select:none; touch-action:pan-y; cursor:ew-resize;
  }
  .compare .layer{ position:absolute; inset:0; }
  .compare .layer img, .compare .layer video{ width:100%; height:100%; object-fit:cover; display:block; }
  .compare .after-layer{ clip-path:inset(0 0 0 50%); }
  .compare-handle{
    position:absolute; top:0; bottom:0; left:50%; width:2px; background:rgba(255,255,255,.92);
    box-shadow:0 0 14px rgba(0,0,0,.5); transform:translateX(-1px); pointer-events:none; z-index:4;
  }
  .compare-grip{
    position:absolute; top:50%; left:50%; width:46px; height:46px; border-radius:50%;
    background:#fff; color:var(--ink2,#0a0a0a); display:flex; align-items:center; justify-content:center;
    transform:translate(-50%,-50%); box-shadow:0 8px 24px rgba(10,10,10,.35);
    pointer-events:none; font-weight:800; font-size:13px; z-index:5;
  }
  .compare-tag{
    position:absolute; top:10px; z-index:3; font-size:10px; font-weight:800; letter-spacing:.1em;
    text-transform:uppercase; padding:5px 9px; border-radius:var(--r-full); color:#fff;
    background:rgba(0,0,0,.55); backdrop-filter:blur(4px);
  }
  .compare-tag.before{ left:10px; }
  .compare-tag.after{ right:10px; background:var(--accent); }
  .compare-hint{
    text-align:center; font-size:12px; color:var(--text3); margin-top:14px;
    max-width:300px; line-height:1.5;
  }

  @media (max-width:980px){
    .hero-compare-col{ margin-top:8px; }
    .slider-wrap{ max-width:260px; }
  }
  @media (max-width:480px){
    .slider-wrap{ max-width:230px; }
  }

  /* marquee row */
  .marquee-band{
    position:relative;z-index:1;
    margin-top:52px;
    overflow:hidden;
    padding-left:0;padding-right:0;
    -webkit-mask-image:linear-gradient(90deg,transparent,var(--ink) 8%,var(--ink) 92%,transparent);
    mask-image:linear-gradient(90deg,transparent,var(--ink) 8%,var(--ink) 92%,transparent);
  }
  .marquee-track{
    display:flex;width:max-content;
    animation:marquee 60s linear infinite;
    animation-play-state:paused;        /* started by script once filled */
    will-change:transform;
  }
  .marquee-track.running{ animation-play-state:running; }
  .marquee-track .m-card{ margin-right:16px; flex:0 0 auto; }
  @media (prefers-reduced-motion: reduce){
    .marquee-track{animation:none;}
  }
  @keyframes marquee{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
  }
  .m-card{
    position:relative;width:100px;aspect-ratio:9/16;
    border-radius:var(--r-md);overflow:hidden;
    border:1px solid var(--border);background:#000;
    box-shadow:var(--shadow-card);
    flex:0 0 auto;
  }
  .m-card video{width:100%;height:100%;object-fit:cover;}
  .m-card::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(to top, rgba(0,0,0,.5), transparent 45%);
  }
  @media (max-width:480px){.m-card{width:76px;}}

  /* ============ 10-SECOND TEST STRIP ============ */
  .quickstrip{
    border-top:1px solid var(--border);border-bottom:1px solid var(--border);
    background:var(--surface);
  }
  .quickgrid{
    display:grid;grid-template-columns:repeat(6,1fr);
    padding:36px 0;
  }
  .quickitem{
    padding:0 18px;border-left:1px solid var(--border);
    display:flex;flex-direction:column;gap:8px;
  }
  .quickitem:first-child{border-left:none;padding-left:0;}
  .quickitem .qlabel{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent2);}
  .quickitem p{font-size:13.5px;color:var(--text2);line-height:1.5;}
  @media (max-width:980px){
    .quickgrid{grid-template-columns:repeat(3,1fr);gap:24px 0;}
    .quickitem:nth-child(3n+1){border-left:none;padding-left:0;}
    .quickitem:not(:nth-child(3n+1)){border-left:1px solid var(--border);}
  }
  @media (max-width:600px){
    .quickgrid{grid-template-columns:1fr;gap:20px 0;}
    .quickitem{border-left:none !important;padding-left:0 !important;border-top:1px solid var(--border);padding-top:16px;}
    .quickitem:first-child{border-top:none;padding-top:0;}
  }

  /* ============ REVEAL ANIMATION ============ */
  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease;}
  .reveal.is-visible{opacity:1;transform:none;}
  @media (prefers-reduced-motion: reduce){
    .reveal{opacity:1;transform:none;transition:none;}
  }

  /* ============ DANCE CAROUSEL ============ */
  .carousel-section{position:relative;background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
  .carousel-section .glow-blob{width:min(500px,100%);height:500px;background:var(--accent);top:20%;left:50%;transform:translateX(-50%);opacity:.05;}
  .carousel-head{
    display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
    margin-bottom:36px;flex-wrap:wrap;position:relative;z-index:1;
  }
  .carousel-head h2{font-size:clamp(26px,3.6vw,40px);font-weight:900;letter-spacing:-.02em;line-height:1.15;max-width:560px;}
  .surprise-chip{
    display:inline-flex;align-items:center;gap:8px;
    background:linear-gradient(135deg,rgba(187,134,252,.16),rgba(255,45,85,.16));
    border:1px solid rgba(187,134,252,.4);
    padding:10px 18px;border-radius:var(--r-full);
    font-size:13px;font-weight:800;color:var(--text);white-space:nowrap;
  }
  .rail-wrap{position:relative;z-index:1;}
  .rail{
    display:flex;gap:20px;overflow-x:auto;padding:6px 4px 22px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .rail::-webkit-scrollbar{display:none;}
  .rail-card{
    scroll-snap-align:start;
    flex:0 0 auto;width:250px;aspect-ratio:9/16;
    position:relative;border-radius:var(--r-lg);overflow:hidden;
    background:#000;border:1px solid var(--border2);
    box-shadow:0 20px 44px rgba(10,10,10,.25);
    transition:transform .25s ease, box-shadow .25s ease;
  }
  .rail-card:hover{transform:translateY(-8px);box-shadow:0 30px 60px rgba(255,45,85,.28);}
  .rail-card video{width:100%;height:100%;object-fit:cover;}
  .rail-card .grad-top{
    position:absolute;top:0;left:0;right:0;height:150px;z-index:2;
    background:linear-gradient(to bottom, rgba(0,0,0,.62), rgba(0,0,0,.25) 55%, transparent);
  }
  .rail-card .grad-bottom{
    position:absolute;bottom:0;left:0;right:0;height:130px;
    background:linear-gradient(to top, rgba(0,0,0,.82), transparent);
  }
  .rail-tag{
    position:absolute;top:14px;left:16px;right:14px;z-index:3;
    font-size:27px;font-weight:900;letter-spacing:-.025em;line-height:1.02;color:#fff;
    text-shadow:0 2px 14px rgba(0,0,0,.55), 0 1px 3px rgba(0,0,0,.65);
  }
  .rail-tag .ico{display:inline-block;font-size:.7em;line-height:1;margin-right:7px;vertical-align:.12em;text-shadow:none;}
  .rail-actions{
    position:absolute;right:10px;bottom:64px;
    display:flex;flex-direction:column;gap:16px;align-items:center;
  }
  .rail-actions .act{display:flex;flex-direction:column;align-items:center;gap:3px;color:#fff;}
  .rail-actions .act svg{width:24px;height:24px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6));}
  .rail-actions .act span{font-size:9.5px;font-weight:700;color:#eee;}
  .rail-sound{
    position:absolute;left:12px;right:56px;bottom:16px;
    display:flex;align-items:center;gap:7px;overflow:hidden;
    font-size:11px;font-weight:600;color:#fff;
  }
  .rail-sound .note{flex:0 0 auto;}
  .rail-sound .track{
    white-space:nowrap;overflow:hidden;position:relative;flex:1;
  }
  .rail-sound .track span{
    display:inline-block;padding-right:30px;
    animation:soundscroll 7s linear infinite;
  }
  @media (prefers-reduced-motion: reduce){.rail-sound .track span{animation:none;}}
  @keyframes soundscroll{
    0%{transform:translateX(0);}
    100%{transform:translateX(-50%);}
  }
  .rail-card.more{
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(160deg,var(--card2),var(--card));
    border:1.5px dashed var(--border2);
  }
  .rail-card.more .more-inner{text-align:center;padding:20px;}
  .rail-card.more .more-inner .plus{
    width:52px;height:52px;border-radius:50%;
    background:rgba(10,10,10,.04);border:1px solid var(--border2);
    display:flex;align-items:center;justify-content:center;
    margin:0 auto 14px;font-size:24px;color:var(--accent2);font-weight:800;
  }
  .rail-card.more p{font-size:13px;font-weight:700;color:var(--text2);}
  .rail-card.more small{font-size:11.5px;color:var(--text4);}
  @media (max-width:600px){
    .rail-card{width:64vw;}
  }

  /* ============ PHONE / DEVICE FRAMES ============ */
  .device-frame{
    position:relative;background:#050505;
    border:2px solid #2a2a2a;
    border-radius:34px;padding:14px 10px;
    box-shadow:0 30px 70px rgba(10,10,10,.35), inset 0 0 0 1px rgba(255,255,255,.03);
  }
  .device-frame::before{
    content:'';position:absolute;top:8px;left:50%;transform:translateX(-50%);
    width:56px;height:6px;border-radius:var(--r-full);background:#000;
    border:1px solid #2a2a2a;
  }
  .device-frame .device-screen{
    border-radius:22px;overflow:hidden;background:#0c0c0c;height:100%;
  }
  .device-frame.bigscreen{
    border-radius:16px;padding:16px;border-width:3px;
  }
  .device-frame.bigscreen::before{display:none;}
  .device-frame.bigscreen::after{
    content:'';position:absolute;left:50%;bottom:-26px;transform:translateX(-50%);
    width:120px;height:10px;background:#1c1c1c;border-radius:4px;
  }

  /* feed inside phone */
  .feed-list{display:flex;flex-direction:column;gap:8px;padding:10px;height:100%;overflow:hidden;}
  .feed-row{
    display:flex;align-items:center;gap:10px;
    background:rgba(255,255,255,.04);border:1px solid var(--border);
    border-radius:var(--r-md);padding:7px;
  }
  .feed-thumb{width:38px;height:56px;border-radius:6px;overflow:hidden;flex:0 0 auto;background:#000;}
  .feed-thumb video{width:100%;height:100%;object-fit:cover;}
  .feed-meta{flex:1;min-width:0;}
  .feed-meta .fname{font-size:11px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .feed-meta .fsub{font-size:9.5px;color:var(--text4);}
  .feed-heart{color:var(--accent);flex:0 0 auto;}

  /* QR mockup */
  .qr-card{
    background:#fff;border-radius:var(--r-md);padding:14px;
    width:132px;height:132px;display:flex;align-items:center;justify-content:center;
  }

  /* ============ GUEST MODE ============ */
  .guest-section{position:relative;}

  /* Experience markers — the two options, identical shape, left-aligned */
  .exp-marker{display:flex;align-items:center;gap:18px;margin-bottom:26px;text-align:left;}
  .exp-num{
    width:64px;height:64px;border-radius:18px;flex:0 0 auto;
    display:grid;place-items:center;color:#fff;
    font-size:32px;font-weight:900;letter-spacing:-.02em;line-height:1;
  }
  .exp-1 .exp-num{background:linear-gradient(135deg,#ffab2e,#ff6a2b);box-shadow:0 12px 28px rgba(255,120,30,.28);}
  .exp-2 .exp-num{background:linear-gradient(135deg,#9d6bff,#ff2d55);box-shadow:0 12px 28px rgba(157,107,255,.30);}
  .exp-of{display:block;font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;}
  .exp-1 .exp-of{color:#d97706;}
  .exp-2 .exp-of{color:#7c4dff;}
  .exp-name{
    display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:4px;
    font-size:clamp(26px,2.8vw,34px);font-weight:900;letter-spacing:-.025em;line-height:1.1;color:var(--text);
  }
  .exp-tag{
    font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
    padding:5px 11px;border-radius:var(--r-full);
    background:rgba(255,45,85,.09);border:1px solid rgba(255,45,85,.22);color:var(--accent);
  }
  .guest-section .section-head{margin:0 0 48px;text-align:left;max-width:760px;}
  .guest-section .section-head h2{margin-top:0;}
  .surprise-copy .surprise-headline{margin-top:0;}
  @media (max-width:480px){
    .exp-marker{gap:14px;margin-bottom:20px;}
    .exp-num{width:52px;height:52px;border-radius:15px;font-size:26px;}
    .exp-of{font-size:11.5px;letter-spacing:.14em;}
    .exp-name{font-size:24px;}
  }
  .guest-grid{
    display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;
  }
  @media (max-width:980px){.guest-grid{grid-template-columns:1fr;gap:44px;}}
  .steps{position:relative;padding-left:52px;}
  .steps::before{
    content:'';position:absolute;left:19px;top:14px;bottom:14px;width:2px;
    background:linear-gradient(to bottom, var(--accent), var(--accent2), var(--purple));
    opacity:.5;
  }
  .step{position:relative;padding-bottom:34px;}
  .step:last-child{padding-bottom:0;}
  .step-num{
    position:absolute;left:-52px;top:0;width:40px;height:40px;border-radius:50%;
    background:var(--card);border:1px solid var(--border2);
    display:flex;align-items:center;justify-content:center;
    font-weight:800;font-size:15px;color:var(--text);
    box-shadow:0 0 0 4px var(--ink);
  }
  .step h4{font-size:18px;font-weight:800;margin-bottom:6px;}
  .step p{font-size:14.5px;color:var(--text3);line-height:1.6;max-width:440px;}

  .guest-visual{
    position:relative;display:flex;align-items:center;justify-content:center;gap:18px;
  }
  .guest-visual .device-frame.phone{width:190px;height:390px;}
  .guest-visual .ad-frame{flex:0 1 380px;}
  .guest-visual .float-qr{z-index:3;}
  .guest-visual .float-qr{
    position:absolute;top:-16px;left:-10px;
    transform:rotate(-8deg);
    box-shadow:0 20px 40px rgba(10,10,10,.18);
  }
  @media (max-width:600px){
    .guest-visual .device-frame.phone{width:160px;height:328px;}
    .guest-visual .float-qr{width:96px;height:96px;padding:10px;left:-4px;top:-10px;}
  }

  /* ============ SURPRISE MODE ============ */
  .surprise-section{
    position:relative;overflow:hidden;
    background:radial-gradient(ellipse at top right, rgba(187,134,252,.07), transparent 55%),
               radial-gradient(ellipse at bottom left, rgba(255,45,85,.06), transparent 55%),
               var(--surface);
    border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  }
  .surprise-grid{
    display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:center;
  }
  @media (max-width:980px){.surprise-grid{grid-template-columns:1fr;}}
  .surprise-copy .eyebrow{background:rgba(187,134,252,.12);border-color:rgba(187,134,252,.35);color:var(--purple);}
  .surprise-headline{
    font-size:clamp(24px,3.4vw,36px);font-weight:900;letter-spacing:-.02em;line-height:1.2;
    margin-top:18px;
  }
  .surprise-headline .hl{
    background:linear-gradient(100deg,var(--purple),var(--accent));
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .surprise-visual{
    position:relative;display:flex;justify-content:center;
  }
  .surprise-visual .device-frame.bigscreen{width:100%;max-width:440px;}
  .ad-frame{
    position:relative;width:100%;max-width:380px;aspect-ratio:9/16;
    border-radius:28px;overflow:hidden;background:#000;
    border:1px solid var(--border2);
    box-shadow:0 30px 70px rgba(10,10,10,.22), 0 0 0 8px rgba(157,107,255,.06);
  }
  .ad-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
  .ad-sound{
    position:absolute;right:14px;bottom:14px;z-index:2;
    display:inline-flex;align-items:center;gap:8px;min-height:44px;
    padding:10px 16px;border-radius:var(--r-full);border:0;cursor:pointer;
    background:rgba(0,0,0,.6);backdrop-filter:blur(6px);color:#fff;
    font:700 13px/1 inherit;font-family:inherit;
    transition:background .2s ease;
  }
  .ad-sound:hover{background:rgba(0,0,0,.78);}
  .ad-sound:focus-visible{outline:3px solid #fff;outline-offset:2px;}
  .ad-sound .ico-on{display:none;}
  .ad-sound[aria-pressed="true"] .ico-on{display:block;}
  .ad-sound[aria-pressed="true"] .ico-off{display:none;}
  @media (max-width:980px){.ad-frame{max-width:340px;margin:8px auto 0;}}
  @media (max-width:480px){.ad-frame{max-width:300px;border-radius:22px;}}
  .bigscreen-inner{
    aspect-ratio:16/10;background:#000;border-radius:12px;
    display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px;
  }
  .bs-tile{border-radius:8px;overflow:hidden;background:#111;position:relative;}
  .bs-tile video{width:100%;height:100%;object-fit:cover;}
  .bs-tile.reveal-tile{
    grid-column:span 3;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,rgba(255,45,85,.25),rgba(187,134,252,.25));
    font-weight:800;font-size:13px;letter-spacing:.03em;
  }

  /* ============ FEATURES GRID ============ */
  .feat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-card);}
  .feat-item{background:var(--card);padding:26px 22px;display:flex;flex-direction:column;gap:12px;transition:background .2s ease;}
  .feat-item:hover{background:var(--card2);}
  .feat-icon{
    width:42px;height:42px;border-radius:var(--r-sm);
    display:flex;align-items:center;justify-content:center;
    background:rgba(255,45,85,.12);font-size:20px;
  }
  .feat-item h4{font-size:14.5px;font-weight:800;}
  .feat-item p{font-size:12.5px;color:var(--text3);line-height:1.55;}
  @media (max-width:980px){.feat-grid{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:480px){.feat-grid{grid-template-columns:1fr;}}

  /* ============ EVENT TYPES ============ */
  .events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  @media (max-width:900px){.events-grid{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:560px){.events-grid{grid-template-columns:1fr;}}
  .event-card{
    background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);
    padding:28px 24px;transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    position:relative;overflow:hidden;box-shadow:var(--shadow-card);
  }
  .event-card:hover{transform:translateY(-4px);border-color:var(--border2);box-shadow:var(--shadow-card-hover);}
  .event-card .eicon{font-size:30px;margin-bottom:16px;display:inline-block;}
  .event-card h4{font-size:17px;font-weight:800;margin-bottom:8px;}
  .event-card p{font-size:13.5px;color:var(--text3);line-height:1.55;}
  .event-card.has-img{padding:0;}
  .ev-media{
    position:relative;aspect-ratio:16/9;overflow:hidden;
    background:linear-gradient(135deg,#2a2a30,#111);
  }
  .ev-media img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
    filter:brightness(.82) saturate(1.05);
    transition:transform .5s ease, filter .3s ease;
  }
  .event-card.has-img:hover .ev-media img{transform:scale(1.04);filter:brightness(.75) saturate(1.08);}
  .ev-word{
    position:absolute;left:0;right:0;top:0;margin:0;padding:4.5% 5% 0;
    display:flex;align-items:flex-start;justify-content:center;
  }
  .ev-word span{
    display:block;width:100%;text-align:center;
    font-family:'Anton','Impact','Arial Narrow Bold',sans-serif;
    font-weight:400;text-transform:uppercase;
    font-size:40px;line-height:.95;letter-spacing:.01em;
    color:rgba(255,255,255,.58);
    white-space:nowrap;
  }
  .ev-desc{padding:16px 20px 20px;margin:0;}

  /* ============ RESELLER ECONOMICS ============ */
  .reseller-section{position:relative;background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
  .reseller-flow{
    display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:56px;
    position:relative;
  }
  @media (max-width:900px){.reseller-flow{grid-template-columns:repeat(2,1fr);gap:20px 0;}}
  @media (max-width:560px){.reseller-flow{grid-template-columns:1fr;}}
  .rflow-step{
    text-align:center;padding:0 16px;position:relative;
  }
  .rflow-step:not(:last-child)::after{
    content:'→';position:absolute;right:-2px;top:22px;color:var(--border2);font-size:20px;
  }
  @media (max-width:900px){.rflow-step:not(:last-child)::after{display:none;}}
  .rflow-num{
    width:44px;height:44px;border-radius:50%;margin:0 auto 14px;
    background:linear-gradient(135deg,var(--accent),var(--accent2));
    display:flex;align-items:center;justify-content:center;font-weight:900;font-size:17px;color:#fff;
  }
  .rflow-step h4{font-size:15px;font-weight:800;margin-bottom:6px;}
  .rflow-step p{font-size:12.5px;color:var(--text3);line-height:1.5;}

  .reseller-points{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
  @media (max-width:900px){.reseller-points{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:560px){.reseller-points{grid-template-columns:1fr;}}
  .rpoint{
    display:flex;align-items:flex-start;gap:10px;
    background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);
    padding:16px;box-shadow:var(--shadow-card);
  }
  .rpoint svg{flex:0 0 auto;margin-top:2px;}
  .rpoint span{font-size:13px;color:var(--text2);font-weight:600;line-height:1.4;}

  /* ============ PRICING ============ */
  .pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:stretch;}
  @media (max-width:1100px){.pricing-grid{grid-template-columns:repeat(2,1fr);max-width:860px;margin:0 auto;}}
  @media (max-width:640px){.pricing-grid{grid-template-columns:1fr;max-width:420px;}}
  .price-card{
    background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);
    padding:34px 28px;display:flex;flex-direction:column;gap:22px;position:relative;
    transition:transform .25s ease, box-shadow .25s ease;box-shadow:var(--shadow-card);
  }
  .price-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);}
  .price-card.popular{
    border-color:var(--accent);
    background:linear-gradient(180deg, rgba(255,45,85,.08), var(--card) 30%);
    box-shadow:0 30px 70px rgba(255,45,85,.22);
    transform:scale(1.03);
  }
  @media (max-width:980px){.price-card.popular{transform:none;}}
  .price-badge{
    position:absolute;top:-14px;left:50%;transform:translateX(-50%);
    background:linear-gradient(135deg,var(--accent),var(--accent2));
    color:#fff;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
    padding:6px 16px;border-radius:var(--r-full);white-space:nowrap;
  }
  .price-name{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text3);}
  .price-amt{display:flex;align-items:baseline;gap:6px;}
  .price-amt .num{font-size:44px;font-weight:900;letter-spacing:-.02em;}
  .price-amt{min-height:53px;align-items:center;}
  .price-amt .num.quote{font-size:30px;white-space:nowrap;line-height:1.1;}
  .price-card > .btn{margin-top:auto;}
  .price-amt .unit{font-size:14px;color:var(--text3);font-weight:600;}
  .price-guests{font-size:13.5px;color:var(--text2);font-weight:600;}
  .price-guests-note{display:block;font-size:12.5px;color:var(--text3);font-weight:500;margin-top:3px;}
  .price-feats{display:flex;flex-direction:column;gap:11px;}
  .price-feats li{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;color:var(--text2);}
  .price-feats svg{flex:0 0 auto;margin-top:2px;color:var(--green);}

  /* ============ WHITE LABEL ============ */
  .whitelabel-section{position:relative;}
  .wl-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
  @media (max-width:900px){.wl-grid{grid-template-columns:1fr;}}
  .wl-mock{
    background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);
    padding:24px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-card);
  }
  .wl-topbar{display:flex;align-items:center;justify-content:space-between;}
  .wl-logo-slot{
    display:flex;align-items:center;gap:8px;
    border:1.5px dashed var(--border2);border-radius:var(--r-sm);
    padding:8px 14px;font-size:11px;font-weight:700;color:var(--text4);
  }
  .wl-screen{
    aspect-ratio:16/9;border-radius:var(--r-md);overflow:hidden;position:relative;
    background:linear-gradient(135deg,#1c1c1c,#0c0c0c);
  }
  .wl-screen img{width:100%;height:100%;object-fit:cover;opacity:.55;}
  .wl-screen .wl-overlay{
    position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
    background:linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.7));
  }
  .wl-overlay .brandmark{
    padding:9px 20px;border:1.5px dashed rgba(255,255,255,.4);border-radius:var(--r-full);
    font-size:12px;font-weight:800;color:#fff;letter-spacing:.03em;
  }
  .placeholder-pill{
    position:absolute;top:10px;right:10px;z-index:2;
    background:rgba(0,0,0,.6);color:#eee;font-size:9px;font-weight:800;letter-spacing:.08em;
    text-transform:uppercase;padding:4px 8px;border-radius:var(--r-full);
    border:1px solid rgba(255,255,255,.15);
  }
  .wl-video{display:flex;flex-direction:column;align-items:center;}
  .wl-frame{
    position:relative;width:100%;max-width:340px;aspect-ratio:9/16;
    border-radius:26px;overflow:hidden;background:#000;
    border:1px solid var(--border2);box-shadow:0 30px 70px rgba(10,10,10,.20);
  }
  .wl-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
  .wl-frame::after{
    content:'';position:absolute;left:0;right:0;bottom:0;height:34%;pointer-events:none;
    background:linear-gradient(to top, rgba(0,0,0,.45), transparent);
  }
  .wl-slot{
    position:absolute;z-index:2;display:flex;align-items:center;justify-content:center;text-align:center;
    color:#fff;font-weight:800;letter-spacing:.02em;line-height:1.25;
    background:rgba(15,15,20,.16);
    border:1.5px dashed rgba(255,255,255,.85);border-radius:14px;
    text-shadow:0 1px 3px rgba(0,0,0,.75), 0 0 12px rgba(0,0,0,.45);
  }
  /* top-left brand slot */
  .wl-logo{top:4%;left:5%;width:30.6%;aspect-ratio:1/1;font-size:11px;padding:6px;backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px);}
  /* sits exactly over where the burned-in watermark was (y 74.5%-81%, x 2%-40%) */
  .wl-contact{left:1.6%;right:1.6%;top:72%;height:11%;font-size:14px;padding:0 10px;background:rgba(15,15,20,.22);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);}
  .wl-caption{margin-top:14px;font-size:12.5px;color:var(--text3);text-align:center;max-width:340px;}
  @media (max-width:480px){.wl-frame{max-width:290px;}.wl-logo{font-size:9.5px;}.wl-contact{font-size:12.5px;}}
  .wl-copy ul{display:flex;flex-direction:column;gap:14px;margin-top:22px;}
  .wl-copy li{display:flex;gap:10px;font-size:14.5px;color:var(--text2);align-items:flex-start;}
  .wl-copy svg{flex:0 0 auto;margin-top:3px;color:var(--purple);}

  /* ============ TESTIMONIALS ============ */
  .testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  @media (max-width:900px){.testi-grid{grid-template-columns:1fr;max-width:460px;margin:0 auto;}}
  .testi-card{
    background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);
    padding:28px 24px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-card);
  }
  .testi-quote{font-size:34px;color:rgba(255,45,85,.35);font-weight:900;line-height:1;}
  .testi-stars{display:flex;gap:3px;color:#f5a524;font-size:15px;}
  .testi-body{font-size:14px;color:var(--text2);font-style:italic;line-height:1.6;letter-spacing:.01em;}
  .testi-foot{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:4px;}
  .testi-avatar{
    width:38px;height:38px;border-radius:50%;
    background:linear-gradient(135deg,var(--card2),var(--border2));
    border:1px solid var(--border2);
  }
  .testi-foot .tn{font-size:12.5px;font-weight:700;color:var(--text);}
  .testi-foot .tr{font-size:11px;color:var(--text3);}

  /* ============ CLIENT LOGOS ============ */
  .logo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;}
  @media (max-width:900px){.logo-grid{grid-template-columns:repeat(3,1fr);}}
  @media (max-width:480px){.logo-grid{grid-template-columns:repeat(2,1fr);}}
  .logo-tile{
    background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);
    height:82px;display:flex;align-items:center;justify-content:center;text-align:center;
    padding:8px;box-shadow:var(--shadow-card);
  }
  .logo-tile span{font-size:10px;font-weight:800;letter-spacing:.05em;color:var(--text4);text-transform:uppercase;line-height:1.4;}

  /* ============ LEAD FORM ============ */
  .lead-section{position:relative;background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
  .lead-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:flex-start;}
  @media (max-width:900px){.lead-grid{grid-template-columns:1fr;}}
  .lead-copy h2{font-size:clamp(26px,3.6vw,38px);font-weight:900;letter-spacing:-.02em;line-height:1.15;}
  .lead-copy p{margin-top:16px;font-size:15px;color:var(--text3);line-height:1.65;max-width:420px;}
  .lead-perks{margin-top:26px;display:flex;flex-direction:column;gap:12px;}
  .lead-perks li{display:flex;gap:10px;font-size:13.5px;color:var(--text2);align-items:flex-start;}
  .lead-perks svg{flex:0 0 auto;margin-top:2px;color:var(--green);}
  .lead-form{
    background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);
    padding:32px;box-shadow:var(--shadow-card);
  }
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
  @media (max-width:600px){.form-row{grid-template-columns:1fr;}}
  .field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
  .field label{font-size:12.5px;font-weight:700;color:var(--text3);}
  .field input,.field select,.field textarea{
    background:var(--card2);border:1px solid var(--border2);border-radius:var(--r-sm);
    padding:12px 14px;color:var(--text);font-family:inherit;font-size:14px;
    transition:border-color .18s ease;
  }
  .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);outline:none;}
  .field textarea{resize:vertical;min-height:90px;}
  .form-note{font-size:12px;color:var(--text4);margin-top:14px;text-align:center;}
  .lf-hp{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden;}
  .form-status{font-size:13px;margin-top:12px;text-align:center;min-height:1em;}
  .form-status.is-success{color:var(--green);}
  .form-status.is-error{color:var(--accent);}

  /* ============ FAQ ============ */
  .faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
  .faq-item{
    background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);
    overflow:hidden;box-shadow:var(--shadow-card);
  }
  .faq-item summary{
    list-style:none;cursor:pointer;padding:18px 22px;
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    font-weight:700;font-size:15px;
  }
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary .chev{
    flex:0 0 auto;width:22px;height:22px;border-radius:50%;
    border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;
    transition:transform .2s ease;font-size:13px;color:var(--text3);
  }
  .faq-item[open] summary .chev{transform:rotate(45deg);}
  .faq-item .faq-body{padding:0 22px 20px;font-size:14px;color:var(--text3);line-height:1.65;}

  /* ============ FINAL CTA ============ */
  .final-cta{
    position:relative;overflow:hidden;text-align:center;
    padding:100px 0;
    background:radial-gradient(ellipse at center, rgba(255,45,85,.08), transparent 60%), var(--ink);
    border-top:1px solid var(--border);
  }
  .final-cta h2{font-size:clamp(30px,5vw,54px);font-weight:900;letter-spacing:-.03em;line-height:1.08;max-width:760px;margin:0 auto;}
  .final-cta p{margin-top:18px;color:var(--text3);font-size:16px;max-width:520px;margin-left:auto;margin-right:auto;}
  .final-cta .hero-cta-row{justify-content:center;margin-top:34px;}

  /* ============ FOOTER ============ */
  footer{background:var(--surface);border-top:1px solid var(--border);padding:60px 0 120px;}
  .foot-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px;}
  @media (max-width:768px){.foot-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:480px){.foot-grid{grid-template-columns:1fr;gap:32px;}}
  .foot-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:16px;margin-bottom:14px;}
  .foot-brand img{height:26px;width:26px;border-radius:6px;}
  footer p.tag{font-size:13.5px;color:var(--text4);max-width:260px;line-height:1.6;}
  .foot-col h5{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text3);margin-bottom:16px;}
  .foot-col ul{display:flex;flex-direction:column;gap:11px;}
  .foot-col a{font-size:13.5px;color:var(--text4);}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{
    margin-top:48px;padding-top:24px;border-top:1px solid var(--border);
    font-size:12.5px;color:var(--text4);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;
  }

  /* ============ STICKY MOBILE CTA ============ */
  .sticky-cta{
    display:none;
    position:fixed;left:0;right:0;bottom:0;z-index:90;
    background:rgba(255,255,255,.92);backdrop-filter:blur(12px);
    border-top:1px solid var(--border2);
    box-shadow:0 -8px 24px rgba(10,10,10,.06);
    padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));
    align-items:center;justify-content:space-between;gap:12px;
  }
  .sticky-cta .sc-text{font-size:12.5px;font-weight:700;color:var(--text2);line-height:1.3;}
  .sticky-cta .sc-text b{color:var(--text);display:block;font-size:13.5px;}
  @media (max-width:820px){
    .sticky-cta{display:flex;}
    body{padding-bottom:78px;}
  }
