#page-home {
      --home-ink: #17002b;
      --home-orange: #fe7c01;
      --home-purple: #71248a;
      --home-amber: #fdc834;
      --home-pink: #ff4f9a;
      --home-cyan: #25d5ff;
      --home-lime: #b7ff42;
      --home-card: rgba(255, 255, 255, .82);
      --home-glass: rgba(255, 255, 255, .68);
      --home-line: rgba(23, 0, 43, .14);
      background:
        radial-gradient(circle at 8% 5%, rgba(253, 200, 52, .34), transparent 28rem),
        radial-gradient(circle at 88% 8%, rgba(254, 124, 1, .28), transparent 30rem),
        radial-gradient(circle at 50% 48%, rgba(113, 36, 138, .12), transparent 36rem),
        #fff;
    }

    #page-home .snap-hero {
      position: relative;
      min-height: calc(100vh - 78px);
      padding: 76px 0 58px;
      overflow: hidden;
      isolation: isolate;
    }

    /* Compact spacing calibration */
    #page-home .snap-hero{min-height:min(720px,calc(100vh - 78px));padding:62px 0 46px;}
    #page-home .hero-grid{gap:clamp(28px,4vw,42px);}

    /* Final requested refinements */
    #page-home .snap-hero{min-height:min(720px,calc(100vh - 96px));padding:clamp(56px,7vw,80px) 0 clamp(48px,6vw,64px);}
    #page-home .hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);gap:clamp(40px,5vw,64px);align-items:center;}
    #page-home .home-kicker{margin-bottom:16px;}
    #page-home .badge-row{gap:12px;margin-bottom:24px;}
    #page-home .badge{padding:8px 14px;}
    #page-home .hero-copy h1{max-width:720px;margin-bottom:16px;}
    #page-home .hero-copy .lead{max-width:624px;margin-bottom:32px;}
    #page-home .hero-ctas{gap:16px;margin-bottom:32px;}
    #page-home .home-proof-row{margin-top:0;gap:16px;}
    #page-home .hero-visual{min-height:560px;display:grid;place-items:center;}
    #page-home .snack-orbit{width:min(42vw,520px);min-width:448px;z-index:1;border:2px solid rgba(113,36,138,.18);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12) 0 47%,transparent 48%),conic-gradient(from 90deg,rgba(253,200,52,.56),rgba(254,124,1,.24),rgba(37,213,255,.2),rgba(113,36,138,.24),rgba(253,200,52,.56));box-shadow:0 0 0 18px rgba(253,200,52,.08),0 28px 70px rgba(23,0,43,.14);animation:homeOrbit 34s linear infinite;opacity:1;filter:drop-shadow(0 24px 38px rgba(23,0,43,.12));}
    #page-home .snack-orbit:before{content:"";position:absolute;inset:18px;border-radius:50%;border:2px dashed rgba(23,0,43,.16);background:radial-gradient(circle,transparent 58%,rgba(255,255,255,.28) 59%,transparent 66%);filter:blur(.2px);}
    #page-home .float-snack{--angle:0deg;--orbit-radius:226px;left:50%;top:50%;width:64px;height:64px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.7);border-radius:20px;background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.9),rgba(255,255,255,.46) 48%,rgba(255,255,255,.2)),rgba(255,255,255,.62);box-shadow:0 18px 34px rgba(23,0,43,.16),0 0 26px rgba(253,200,52,.22);opacity:1;filter:none;transform:rotate(var(--angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--angle)));animation:homeOrbitFloat 4.2s ease-in-out infinite alternate;transform-origin:center;backdrop-filter:blur(8px);will-change:transform;}
    #page-home .float-snack span{width:52px;height:52px;display:grid;place-items:center;border-radius:18px;color:transparent;font-size:0;background-image:url("../image/snack-sticker-sheet.png");background-repeat:no-repeat;background-size:calc(52px * 20) auto;background-position:calc(var(--sx) * 52px) calc(var(--sy) * 52px);filter:drop-shadow(0 9px 10px rgba(23,0,43,.18));animation:homeCounterOrbit 34s linear infinite reverse;}
    #page-home .snack-chips{--angle:0deg;animation-delay:-.2s}
    #page-home .snack-chips span{--sx:-17.45;--sy:-2.05}
    #page-home .snack-coffee{--angle:45deg;animation-delay:-1.4s}
    #page-home .snack-coffee span{--sx:-14.58;--sy:-5.86}
    #page-home .snack-drink{--angle:90deg;animation-delay:-2.1s}
    #page-home .snack-drink span{--sx:-7.05;--sy:-4.68}
    #page-home .snack-chocolate{--angle:135deg;animation-delay:-.9s}
    #page-home .snack-chocolate span{--sx:-4.7;--sy:-1.3}
    #page-home .snack-popcorn{--angle:180deg;animation-delay:-2.8s}
    #page-home .snack-popcorn span{--sx:-11.05;--sy:-1.55}
    #page-home .snack-cookies{--angle:225deg;animation-delay:-1.8s}
    #page-home .snack-cookies span{--sx:-14.45;--sy:-1.55}
    #page-home .snack-candy{--angle:270deg;animation-delay:-3.3s}
    #page-home .snack-candy span{--sx:-14.2;--sy:-10.16}
    #page-home .snack-sandwich{--angle:315deg;animation-delay:-2.5s}
    #page-home .snack-sandwich span{--sx:-8.85;--sy:-7.3}
    #page-home .video-halo{width:74%;filter:blur(16px);}
    #page-home .hero-video-machine{z-index:3;width:clamp(318px,26vw,382px);}
    @keyframes homeOrbitFloat{from{margin-top:-3px}to{margin-top:7px}}
    @keyframes homeCounterOrbit{to{transform:rotate(-360deg)}}
    #page-home .final-cta{min-height:280px;display:flex;flex-direction:column;justify-content:center;padding:64px 40px;}
    #page-home .final-cta .lead{margin-bottom:0;}
    @media(max-width:980px){#page-home .snap-hero{min-height:auto;padding:52px 0 56px;}#page-home .hero-grid{grid-template-columns:1fr;gap:40px;}#page-home .hero-visual{min-height:520px;}#page-home .snack-orbit{width:min(78vw,500px);min-width:0;}#page-home .float-snack{--orbit-radius:min(35vw,214px)}}
    @media(max-width:640px){#page-home .snap-hero{padding:40px 0 48px;}#page-home .badge-row{margin-bottom:20px;}#page-home .hero-copy .lead{margin-bottom:24px;}#page-home .hero-ctas{margin-bottom:24px;}#page-home .hero-visual{min-height:408px;}#page-home .snack-orbit{width:min(84vw,350px);}#page-home .float-snack{--orbit-radius:min(37vw,148px);width:46px;height:46px;border-radius:15px;}#page-home .float-snack span{width:38px;height:38px;border-radius:13px;background-size:calc(38px * 20) auto;background-position:calc(var(--sx) * 38px) calc(var(--sy) * 38px);}#page-home .hero-video-machine{width:min(74vw,292px);}#page-home .final-cta{min-height:248px;padding:48px 24px;}}

    /* Product inventory orbit: final cascade override */
    #page-home .snack-orbit{--orbit-size:min(42vw,520px);--orbit-radius:236px;width:var(--orbit-size);min-width:456px;aspect-ratio:1;border:1.5px solid rgba(113,36,138,.18);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.16) 0 46%,transparent 47%),conic-gradient(from 90deg,rgba(253,200,52,.36),rgba(254,124,1,.16),rgba(37,213,255,.12),rgba(113,36,138,.18),rgba(253,200,52,.36));box-shadow:0 0 0 14px rgba(253,200,52,.055),0 26px 62px rgba(23,0,43,.12);animation:homeProductOrbit 28s linear infinite;filter:drop-shadow(0 20px 34px rgba(23,0,43,.1));transform-origin:center;will-change:transform;opacity:1;}
    #page-home .snack-orbit::before{content:"";position:absolute;inset:18px;border-radius:50%;border:1.5px dashed rgba(23,0,43,.13);background:radial-gradient(circle,transparent 60%,rgba(255,255,255,.24) 61%,transparent 68%);pointer-events:none;}
    #page-home .float-snack{--angle:0deg;position:absolute;left:50%;top:50%;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:14px;background:rgba(255,255,255,.54);box-shadow:0 10px 22px rgba(23,0,43,.12),0 0 18px rgba(253,200,52,.12);opacity:1;filter:none;backdrop-filter:blur(7px);transform:rotate(var(--angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--angle)));animation:homeProductFloat 4.8s ease-in-out infinite alternate;will-change:transform;}
    #page-home .float-snack img{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 6px 7px rgba(23,0,43,.18));transform:translateZ(0);animation:homeProductUpright 28s linear infinite reverse;will-change:transform;}
    #page-home .snack-coke{--angle:0deg;animation-delay:-.2s}
    #page-home .snack-kurkure{--angle:90deg;animation-delay:-2s}
    #page-home .snack-cookie{--angle:135deg;animation-delay:-3s}
    #page-home .snack-muffin{--angle:180deg;animation-delay:-1.7s}
    #page-home .snack-coffee{--angle:225deg;animation-delay:-.8s}
    #page-home .snack-juice{--angle:270deg;animation-delay:-2.6s}
    #page-home .snack-water{--angle:315deg;animation-delay:-3.4s}
    @keyframes homeProductOrbit{to{transform:rotate(360deg)}}
    @keyframes homeProductUpright{to{transform:rotate(-360deg) translateZ(0)}}
    @keyframes homeProductFloat{from{margin-top:-2px}to{margin-top:5px}}
    @media(max-width:980px){#page-home .snack-orbit{--orbit-size:min(76vw,500px);--orbit-radius:min(35vw,222px);min-width:0;}#page-home .float-snack{width:38px;height:38px;border-radius:13px;}#page-home .float-snack img{width:31px;height:31px;}}
    @media(max-width:640px){#page-home .snack-orbit{--orbit-size:min(84vw,348px);--orbit-radius:min(38vw,150px);}#page-home .float-snack{width:32px;height:32px;border-radius:11px;}#page-home .float-snack img{width:25px;height:25px;}}

    /* Product inventory orbit: premium vending-machine items around the hero */
    #page-home .snack-orbit{
      --orbit-size:min(36vw,500px);
      --orbit-radius:214px;
      width:var(--orbit-size);
      min-width:402px;
      aspect-ratio:1;
      border:1.5px solid rgba(113,36,138,.16);
      border-radius:50%;
      background:
        radial-gradient(circle,rgba(255,255,255,.16) 0 46%,transparent 47%),
        conic-gradient(from 90deg,rgba(253,200,52,.28),rgba(254,124,1,.14),rgba(37,213,255,.1),rgba(113,36,138,.14),rgba(253,200,52,.28));
      box-shadow:0 0 0 10px rgba(253,200,52,.04),0 18px 54px rgba(23,0,43,.12);
      animation:homeProductOrbit 28s linear infinite;
      filter:drop-shadow(0 16px 28px rgba(23,0,43,.08));
      transform-origin:center;
      will-change:transform;
      opacity:.95;
    }

    #page-home .snack-orbit::before{
      content:"";
      position:absolute;
      inset:18px;
      border-radius:50%;
      border:1.5px dashed rgba(23,0,43,.13);
      background:radial-gradient(circle,transparent 60%,rgba(255,255,255,.24) 61%,transparent 68%);
      pointer-events:none;
    }

    #page-home .float-snack{
      --angle:0deg;
      position:absolute;
      left:50%;
      top:50%;
      width:36px;
      height:36px;
      display:grid;
      place-items:center;
      border:1px solid rgba(255,255,255,.7);
      border-radius:13px;
      background:rgba(255,255,255,.54);
      box-shadow:0 10px 20px rgba(23,0,43,.1),0 0 14px rgba(253,200,52,.1);
      opacity:.92;
      filter:none;
      backdrop-filter:blur(7px);
      transform:rotate(var(--angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--angle)));
      animation:homeProductFloat 4.8s ease-in-out infinite alternate;
      will-change:transform;
    }

    #page-home .float-snack img{
      width:28px;
      height:28px;
      object-fit:contain;
      filter:drop-shadow(0 6px 7px rgba(23,0,43,.18));
      transform:translateZ(0);
      animation:homeProductUpright 28s linear infinite reverse;
      will-change:transform;
    }

    #page-home .snack-coke{--angle:0deg;animation-delay:-.2s}
    #page-home .snack-kurkure{--angle:90deg;animation-delay:-2s}
    #page-home .snack-cookie{--angle:135deg;animation-delay:-3s}
    #page-home .snack-muffin{--angle:180deg;animation-delay:-1.7s}
    #page-home .snack-coffee{--angle:225deg;animation-delay:-.8s}
    #page-home .snack-juice{--angle:270deg;animation-delay:-2.6s}
    #page-home .snack-water{--angle:315deg;animation-delay:-3.4s}

    @keyframes homeProductOrbit{to{transform:rotate(360deg)}}
    @keyframes homeProductUpright{to{transform:rotate(-360deg) translateZ(0)}}
    @keyframes homeProductFloat{from{margin-top:-2px}to{margin-top:5px}}

    @media(max-width:980px){
      #page-home .snack-orbit{--orbit-size:min(76vw,500px);--orbit-radius:min(35vw,222px);min-width:0;}
      #page-home .float-snack{width:38px;height:38px;border-radius:13px;}
      #page-home .float-snack img{width:31px;height:31px;}
    }

    @media(max-width:640px){
      #page-home .snack-orbit{--orbit-size:min(84vw,348px);--orbit-radius:min(38vw,150px);}
      #page-home .float-snack{width:32px;height:32px;border-radius:11px;}
      #page-home .float-snack img{width:25px;height:25px;}
    }

    /* Final requested refinements */
    #page-home .snap-hero{min-height:min(720px,calc(100vh - 96px));padding:clamp(56px,7vw,80px) 0 clamp(48px,6vw,64px);}
    #page-home .hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);gap:clamp(40px,5vw,64px);align-items:center;}
    #page-home .home-kicker{margin-bottom:16px;}
    #page-home .badge-row{gap:12px;margin-bottom:24px;}
    #page-home .badge{padding:8px 14px;}
    #page-home .hero-copy h1{max-width:720px;margin-bottom:16px;}
    #page-home .hero-copy .lead{max-width:624px;margin-bottom:32px;}
    #page-home .hero-ctas{gap:16px;margin-bottom:32px;}
    #page-home .home-proof-row{margin-top:0;gap:16px;}
    #page-home .hero-visual{min-height:560px;display:grid;place-items:center;}

    #page-home .snack-orbit{
      width:min(42vw,520px);
      min-width:448px;
      z-index:1;
      border:2px solid rgba(113,36,138,.18);
      border-radius:50%;
      background:radial-gradient(circle,rgba(255,255,255,.12) 0 47%,transparent 48%),conic-gradient(from 90deg,rgba(253,200,52,.56),rgba(254,124,1,.24),rgba(37,213,255,.2),rgba(113,36,138,.24),rgba(253,200,52,.56));
      box-shadow:0 0 0 18px rgba(253,200,52,.08),0 28px 70px rgba(23,0,43,.14);
      animation:homeOrbit 34s linear infinite;
      opacity:1;
      filter:drop-shadow(0 24px 38px rgba(23,0,43,.12));
    }
    #page-home .snack-orbit:before{content:"";position:absolute;inset:18px;border-radius:50%;border:2px dashed rgba(23,0,43,.16);background:radial-gradient(circle,transparent 58%,rgba(255,255,255,.28) 59%,transparent 66%);filter:blur(.2px);}
    #page-home .float-snack{
      --angle:0deg;
      --orbit-radius:226px;
      left:50%;
      top:50%;
      width:64px;
      height:64px;
      display:grid;
      place-items:center;
      border:2px solid rgba(255,255,255,.7);
      border-radius:20px;
      background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.9),rgba(255,255,255,.46) 48%,rgba(255,255,255,.2)),rgba(255,255,255,.62);
      box-shadow:0 18px 34px rgba(23,0,43,.16),0 0 26px rgba(253,200,52,.22);
      opacity:1;
      filter:none;
      transform:rotate(var(--angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--angle)));
      animation:homeOrbitFloat 4.2s ease-in-out infinite alternate;
      transform-origin:center;
      backdrop-filter:blur(8px);
      will-change:transform;
    }
    #page-home .float-snack span{
      width:52px;
      height:52px;
      display:grid;
      place-items:center;
      border-radius:18px;
      color:transparent;
      font-size:0;
      background-image:url("../image/snack-sticker-sheet.png");
      background-repeat:no-repeat;
      background-size:calc(52px * 20) auto;
      background-position:calc(var(--sx) * 52px) calc(var(--sy) * 52px);
      filter:drop-shadow(0 9px 10px rgba(23,0,43,.18));
      animation:homeCounterOrbit 34s linear infinite reverse;
    }
    #page-home .snack-chips{--angle:0deg;animation-delay:-.2s}
    #page-home .snack-chips span{--sx:-17.45;--sy:-2.05}
    #page-home .snack-coffee{--angle:45deg;animation-delay:-1.4s}
    #page-home .snack-coffee span{--sx:-14.58;--sy:-5.86}
    #page-home .snack-drink{--angle:90deg;animation-delay:-2.1s}
    #page-home .snack-drink span{--sx:-7.05;--sy:-4.68}
    #page-home .snack-chocolate{--angle:135deg;animation-delay:-.9s}
    #page-home .snack-chocolate span{--sx:-4.7;--sy:-1.3}
    #page-home .snack-popcorn{--angle:180deg;animation-delay:-2.8s}
    #page-home .snack-popcorn span{--sx:-11.05;--sy:-1.55}
    #page-home .snack-cookies{--angle:225deg;animation-delay:-1.8s}
    #page-home .snack-cookies span{--sx:-14.45;--sy:-1.55}
    #page-home .snack-candy{--angle:270deg;animation-delay:-3.3s}
    #page-home .snack-candy span{--sx:-14.2;--sy:-10.16}
    #page-home .snack-sandwich{--angle:315deg;animation-delay:-2.5s}
    #page-home .snack-sandwich span{--sx:-8.85;--sy:-7.3}
    #page-home .video-halo{width:74%;filter:blur(16px);}
    #page-home .hero-video-machine{z-index:3;width:clamp(318px,26vw,382px);}
    @keyframes homeOrbitFloat{from{margin-top:-3px}to{margin-top:7px}}
    @keyframes homeCounterOrbit{to{transform:rotate(-360deg)}}
    #page-home .final-cta{min-height:280px;display:flex;flex-direction:column;justify-content:center;padding:64px 40px;}
    #page-home .final-cta .lead{margin-bottom:0;}
    @media(max-width:980px){
      #page-home .snap-hero{min-height:auto;padding:52px 0 56px;}
      #page-home .hero-grid{grid-template-columns:1fr;gap:40px;}
      #page-home .hero-visual{min-height:520px;}
      #page-home .snack-orbit{width:min(78vw,500px);min-width:0;}
      #page-home .float-snack{--orbit-radius:min(35vw,214px)}
    }
    @media(max-width:640px){
      #page-home .snap-hero{padding:40px 0 48px;}
      #page-home .badge-row{margin-bottom:20px;}
      #page-home .hero-copy .lead{margin-bottom:24px;}
      #page-home .hero-ctas{margin-bottom:24px;}
      #page-home .hero-visual{min-height:408px;}
      #page-home .snack-orbit{width:min(84vw,350px);}
      #page-home .float-snack{--orbit-radius:min(37vw,148px);width:46px;height:46px;border-radius:15px;}
      #page-home .float-snack span{width:38px;height:38px;border-radius:13px;background-size:calc(38px * 20) auto;background-position:calc(var(--sx) * 38px) calc(var(--sy) * 38px);}
      #page-home .hero-video-machine{width:min(74vw,292px);}
      #page-home .final-cta{min-height:248px;padding:48px 24px;}
    }

    /* Premium spacing pass for the first viewport */
    #page-home .snap-hero{
      min-height:min(720px,calc(100vh - 96px));
      padding:clamp(56px,7vw,80px) 0 clamp(48px,6vw,64px);
    }
    #page-home .hero-grid{
      grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);
      gap:clamp(40px,5vw,64px);
      align-items:center;
    }
    #page-home .home-kicker{
      margin-bottom:16px;
    }
    #page-home .badge-row{
      gap:12px;
      margin-bottom:24px;
    }
    #page-home .badge{
      padding:8px 14px;
    }
    #page-home .hero-copy h1{
      max-width:720px;
      margin-bottom:16px;
    }
    #page-home .hero-copy .lead{
      max-width:624px;
      margin-bottom:32px;
    }
    #page-home .hero-ctas{
      gap:16px;
      margin-bottom:32px;
    }
    #page-home .home-proof-row{
      margin-top:0;
      gap:16px;
    }
    #page-home .hero-visual{
      min-height:560px;
      display:grid;
      place-items:center;
    }

    /* Animated feature ring behind the machine */
    #page-home .snack-orbit{
      width:min(42vw,520px);
      min-width:448px;
      z-index:1;
      border:2px solid rgba(113,36,138,.18);
      border-radius:50%;
      background:
        radial-gradient(circle,rgba(255,255,255,.12) 0 47%,transparent 48%),
        conic-gradient(from 90deg,rgba(253,200,52,.56),rgba(254,124,1,.24),rgba(37,213,255,.2),rgba(113,36,138,.24),rgba(253,200,52,.56));
      box-shadow:0 0 0 18px rgba(253,200,52,.08),0 28px 70px rgba(23,0,43,.14);
      animation:homeOrbit 34s linear infinite;
      opacity:1;
      filter:drop-shadow(0 24px 38px rgba(23,0,43,.12));
    }
    #page-home .snack-orbit:before{
      content:"";
      position:absolute;
      inset:18px;
      border-radius:50%;
      border:2px dashed rgba(23,0,43,.16);
      background:radial-gradient(circle,transparent 58%,rgba(255,255,255,.28) 59%,transparent 66%);
      filter:blur(.2px);
    }
    #page-home .float-snack{
      --angle:0deg;
      --orbit-radius:226px;
      left:50%;
      top:50%;
      width:64px;
      height:64px;
      display:grid;
      place-items:center;
      border:2px solid rgba(255,255,255,.7);
      border-radius:20px;
      background:
        radial-gradient(circle at 28% 22%,rgba(255,255,255,.9),rgba(255,255,255,.46) 48%,rgba(255,255,255,.2)),
        rgba(255,255,255,.62);
      box-shadow:0 18px 34px rgba(23,0,43,.16),0 0 26px rgba(253,200,52,.22);
      opacity:1;
      filter:none;
      transform:rotate(var(--angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--angle)));
      animation:homeOrbitFloat 4.2s ease-in-out infinite alternate;
      transform-origin:center;
      backdrop-filter:blur(8px);
      will-change:transform;
    }
    #page-home .float-snack span{
      width:52px;
      height:52px;
      display:grid;
      place-items:center;
      border-radius:18px;
      color:transparent;
      font-size:0;
      background-image:url("../image/snack-sticker-sheet.png");
      background-repeat:no-repeat;
      background-size:calc(52px * 20) auto;
      background-position:calc(var(--sx) * 52px) calc(var(--sy) * 52px);
      filter:drop-shadow(0 9px 10px rgba(23,0,43,.18));
      animation:homeCounterOrbit 34s linear infinite reverse;
    }
    #page-home .snack-chips{--angle:0deg;animation-delay:-.2s}
    #page-home .snack-chips span{--sx:-17.45;--sy:-2.05}
    #page-home .snack-coffee{--angle:45deg;animation-delay:-1.4s}
    #page-home .snack-coffee span{--sx:-14.58;--sy:-5.86}
    #page-home .snack-drink{--angle:90deg;animation-delay:-2.1s}
    #page-home .snack-drink span{--sx:-7.05;--sy:-4.68}
    #page-home .snack-chocolate{--angle:135deg;animation-delay:-.9s}
    #page-home .snack-chocolate span{--sx:-4.7;--sy:-1.3}
    #page-home .snack-popcorn{--angle:180deg;animation-delay:-2.8s}
    #page-home .snack-popcorn span{--sx:-11.05;--sy:-1.55}
    #page-home .snack-cookies{--angle:225deg;animation-delay:-1.8s}
    #page-home .snack-cookies span{--sx:-14.45;--sy:-1.55}
    #page-home .snack-candy{--angle:270deg;animation-delay:-3.3s}
    #page-home .snack-candy span{--sx:-14.2;--sy:-10.16}
    #page-home .snack-sandwich{--angle:315deg;animation-delay:-2.5s}
    #page-home .snack-sandwich span{--sx:-8.85;--sy:-7.3}
    #page-home .video-halo{
      width:74%;
      filter:blur(16px);
    }
    #page-home .hero-video-machine{
      z-index:3;
      width:clamp(318px,26vw,382px);
    }
    @keyframes homeOrbitFloat{
      from{margin-top:-3px}
      to{margin-top:7px}
    }
    @keyframes homeCounterOrbit{
      to{transform:rotate(-360deg)}
    }

    #page-home .final-cta{
      min-height:280px;
      display:flex;
      flex-direction:column;
      justify-content:center;
      padding:64px 40px;
    }
    #page-home .final-cta .lead{
      margin-bottom:0;
    }

    @media(max-width:980px){
      #page-home .snap-hero{min-height:auto;padding:52px 0 56px;}
      #page-home .hero-grid{grid-template-columns:1fr;gap:40px;}
      #page-home .hero-visual{min-height:520px;}
      #page-home .snack-orbit{width:min(78vw,500px);min-width:0;}
      #page-home .float-snack{--orbit-radius:min(35vw,214px)}
    }
    @media(max-width:640px){
      #page-home .snap-hero{padding:40px 0 48px;}
      #page-home .badge-row{margin-bottom:20px;}
      #page-home .hero-copy .lead{margin-bottom:24px;}
      #page-home .hero-ctas{margin-bottom:24px;}
      #page-home .hero-visual{min-height:408px;}
      #page-home .snack-orbit{width:min(84vw,350px);}
      #page-home .float-snack{--orbit-radius:min(37vw,148px);width:46px;height:46px;border-radius:15px;}
      #page-home .float-snack span{width:38px;height:38px;border-radius:13px;background-size:calc(38px * 20) auto;background-position:calc(var(--sx) * 38px) calc(var(--sy) * 38px);}
      #page-home .hero-video-machine{width:min(74vw,292px);}
      #page-home .final-cta{min-height:248px;padding:48px 24px;}
    }
    #page-home .snap-hero{min-height:min(710px,calc(100vh - 78px));padding:64px 0;}

    /* 3D vending-machine video, blended into the SnapGo hero */
    #page-home .hero-video-machine{position:absolute;left:50%;top:50%;z-index:3;width:clamp(340px,29vw,430px);display:grid;place-items:center;isolation:isolate;background:transparent;box-shadow:none;overflow:visible;transform:translate(-50%,-50%);will-change:transform}
    #page-home .hero-video-machine:before{content:"";position:absolute;left:50%;bottom:-12px;width:72%;height:34px;transform:translateX(-50%);border-radius:50%;background:rgba(23,0,43,.16);filter:blur(18px);z-index:-2;pointer-events:none}
    #page-home .hero-video-machine:after{content:"";position:absolute;inset:2% -6% 8%;z-index:-1;pointer-events:none;border-radius:50%;background:radial-gradient(circle,rgba(253,200,52,.34) 0%,rgba(254,124,1,.16) 42%,rgba(113,36,138,.12) 70%,transparent 82%);filter:blur(24px)}
    #page-home .video-halo{position:absolute;width:82%;aspect-ratio:1;border-radius:50%;z-index:-1;background:radial-gradient(circle,rgba(253,200,52,.3),rgba(254,124,1,.12) 42%,transparent 72%);filter:blur(18px);animation:homeVideoHalo 3.5s ease-in-out infinite alternate}
    #page-home .hero-machine-art{position:relative;z-index:1;width:100%;max-width:none;height:auto;object-fit:contain;object-position:center center;filter:drop-shadow(0 34px 56px rgba(0,0,0,.24)) drop-shadow(0 16px 28px rgba(128,0,255,.16));transform:translateY(0);transform-style:preserve-3d;will-change:transform,filter;animation:homeMachineShowcase 5.8s cubic-bezier(.42,0,.2,1) infinite alternate}
    #page-home .hero-machine-art--campus{width:100%;max-width:none;height:auto;object-fit:contain;object-position:center center;}
    #page-home .machine-slang{position:absolute;z-index:5;display:inline-flex;align-items:center;padding:9px 13px;border:2px solid var(--home-ink);border-radius:999px;background:linear-gradient(135deg,var(--home-amber),#ffe278);box-shadow:4px 5px 0 var(--home-ink);color:var(--home-ink);font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.04em;white-space:nowrap;transform:rotate(-7deg);animation:homeSlangBob 3.2s ease-in-out infinite alternate}
    #page-home .machine-slang--hero{top:12%;right:1%}
    #page-home .machine-slang--demo{top:-18px;right:18px;background:linear-gradient(135deg,var(--home-pink),#ff9bc8);transform:rotate(5deg);animation-delay:-1.2s}
    @keyframes homeSlangBob{to{translate:0 -7px;rotate:2deg}}
    @keyframes homeMachineShowcase{0%{transform:translateY(5px) rotateY(-2deg) rotateX(1deg) scale(.995)}100%{transform:translateY(-8px) rotateY(2deg) rotateX(-1deg) scale(1.012)}}
    @keyframes homeVideoHalo{to{transform:scale(1.12);opacity:.72}}
    @media(min-width:1440px){#page-home .hero-video-machine{width:clamp(360px,22vw,440px)}}
    @media(max-width:980px){#page-home .hero-video-machine{width:clamp(300px,48vw,390px)}}
    @media(max-width:640px){#page-home .hero-video-machine{width:min(76vw,320px);border-radius:26px}}

    #page-home .snap-hero::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -3;
      background-image:
        linear-gradient(rgba(23, 0, 43, .07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(23, 0, 43, .07) 1px, transparent 1px);
      background-size: 46px 46px;
      mask-image: linear-gradient(to bottom, #000 0%, rgba(0, 0, 0, .8) 48%, transparent 100%);
      animation: homeGridDrift 14s linear infinite;
    }

    #page-home .snap-hero::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -2;
      background:
        linear-gradient(120deg, transparent 0 24%, rgba(255,255,255,.74) 24% 25%, transparent 25% 100%),
        radial-gradient(circle at 74% 42%, rgba(37, 213, 255, .18), transparent 22rem);
      pointer-events: none;
    }

    #page-home .home-glow {
      position: absolute;
      border-radius: 999px;
      filter: blur(20px);
      opacity: .62;
      z-index: -1;
      pointer-events: none;
      animation: homeGlowFloat 9s ease-in-out infinite alternate;
    }

    #page-home .home-glow.one {
      width: 340px;
      height: 340px;
      background: rgba(253, 200, 52, .58);
      top: -110px;
      left: 9%;
    }

    #page-home .home-glow.two {
      width: 390px;
      height: 390px;
      background: rgba(254, 124, 1, .35);
      right: -90px;
      top: 90px;
      animation-delay: -2s;
    }

    #page-home .home-glow.three {
      width: 280px;
      height: 280px;
      background: rgba(113, 36, 138, .32);
      left: -80px;
      bottom: 2%;
      animation-delay: -4s;
    }

    /* Quiet snack accents: background-only, not a competing pattern */
    #page-home .food-sprinkles{display:none}
    #page-home .sprinkle{position:absolute;display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.62);box-shadow:0 12px 28px rgba(23,0,43,.09);font-size:1.45rem;filter:saturate(1.12);animation:homeSprinkleFloat 7s ease-in-out infinite alternate}
    #page-home .sprinkle,
    #page-home .float-snack,
    #page-home .home-wallpaper span{
      --decor-size:48px;
      color:transparent;
      font-size:0;
      background-color:transparent;
      background-image:url("../image/snack-sticker-sheet.png");
      background-repeat:no-repeat;
      background-size:calc(var(--decor-size) * 20) auto;
      background-position:calc(var(--sx, -1) * var(--decor-size)) calc(var(--sy, -1) * var(--decor-size));
      border:0;
      box-shadow:none;
      filter:drop-shadow(0 10px 20px rgba(23,0,43,.12)) blur(var(--decor-blur,0));
      opacity:var(--decor-opacity,.2);
    }
    #page-home .s1{--sx:-1.03;--sy:-1.16;--decor-opacity:.14;--decor-blur:.3px}
    #page-home .s2{--sx:-14.45;--sy:-1.55;--decor-opacity:.18}
    #page-home .s3{--sx:-2.34;--sy:-7.42;--decor-opacity:.12;--decor-blur:.4px}
    #page-home .s4{--sx:-4.7;--sy:-1.3;--decor-opacity:.16}
    #page-home .s5{--sx:-14.58;--sy:-5.86;--decor-opacity:.16}
    #page-home .s6{--sx:-11.05;--sy:-1.55;--decor-opacity:.13;--decor-blur:.5px}
    #page-home .s1{top:12%;left:4%;transform:rotate(-14deg)}
    #page-home .s2{top:18%;right:5%;animation-delay:-1.5s;transform:rotate(12deg)}
    #page-home .s3{bottom:18%;left:7%;animation-delay:-3s;transform:rotate(16deg)}
    #page-home .s4{top:11%;left:55%;animation-delay:-4.5s;transform:rotate(-10deg)}
    #page-home .s5{bottom:12%;right:8%;animation-delay:-2.2s;transform:rotate(11deg)}
    #page-home .s6{bottom:28%;right:42%;animation-delay:-5.2s;transform:rotate(-12deg)}
    @keyframes homeSprinkleFloat{to{translate:0 -13px;rotate:5deg}}

    #page-home .hero-grid {
      grid-template-columns: minmax(0, 1fr) minmax(330px, .86fr);
      gap: 54px;
    }

    #page-home .hero-copy {
      position: relative;
      z-index: 4;
    }

    #page-home .home-kicker {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 9px 14px;
      margin-bottom: 20px;
      border:var(--border-size) solid var(--home-ink);
      border-radius: 999px;
      background: var(--home-card);
      box-shadow: 4px 4px 0 var(--home-ink);
      color: var(--home-purple);
      font-family: var(--font-mono);
      font-size: .76rem;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
      animation: homePopIn .65s ease both;
    }

    #page-home .home-kicker-dot {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: var(--home-lime);
      box-shadow: 0 0 0 6px rgba(183, 255, 66, .22);
      animation: homePulse 1.5s ease-in-out infinite;
    }

    #page-home .hero-copy h1 {
      max-width: 760px;
      margin-bottom: 20px;
      letter-spacing: 0;
      animation: homeRise .72s ease .08s both;
    }

    #page-home .hero-copy h1{font-size:clamp(2.8rem,5.4vw,5.3rem);line-height:.96;letter-spacing:-.035em;}

    #page-home .hero-copy h1 .accent {
      position: relative;
      color: var(--home-orange);
      text-shadow: 3px 3px 0 rgba(253, 200, 52, .85);
    }

    #page-home .hero-copy h1 .accent::after {
      content: "";
      position: absolute;
      left: 2%;
      right: 0;
      bottom: .08em;
      height: .18em;
      z-index: -1;
      background: var(--home-amber);
      border-radius: 999px;
      transform: rotate(-1.5deg);
    }

    #page-home .hero-copy .lead {
      max-width: 680px;
      color: #4d3d62;
      animation: homeRise .72s ease .18s both;
    }

    #page-home .hero-ctas {
      animation: homeRise .72s ease .28s both;
    }

    #page-home .btn {
      position: relative;
      overflow: hidden;
    }

    #page-home .btn::before {
      content: "";
      position: absolute;
      inset: -30% auto -30% -42%;
      width: 36%;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,.72), transparent);
      transform: skewX(-18deg);
      animation: homeButtonShine 3.4s ease-in-out infinite;
    }

    #page-home .home-proof-row {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
      max-width: 610px;
      margin-top: 28px;
      animation: homeRise .72s ease .38s both;
    }

    #page-home .home-proof {
      min-height: 98px;
      padding: 16px;
      border:var(--border-size) solid var(--home-ink);
      border-radius: 18px;
      background: var(--home-card);
      box-shadow: 4px 4px 0 var(--home-ink);
      backdrop-filter: blur(14px);
      transform: rotate(var(--tilt));
      transition: transform .2s ease, box-shadow .2s ease;
    }

    #page-home .home-proof:hover {
      transform: translate(-3px, -3px) rotate(0deg);
      box-shadow: 8px 8px 0 var(--home-ink);
    }

    #page-home .home-proof strong {
      display: block;
      color: var(--home-ink);
      font-family: var(--font-display);
      font-size: 1.65rem;
      line-height: 1;
    }

    #page-home .home-proof span {
      display: block;
      margin-top: 6px;
      color: #665279;
      font-size: .82rem;
      font-weight: 800;
    }

    #page-home .hero-visual {
      position: relative;
      min-height: 590px;
      align-items: center;
      perspective: 1000px;
      overflow: visible;
    }

    #page-home .snack-orbit {
      position: absolute;
      left: 50%;
      top: 50%;
      translate: -50% -50%;
      z-index: 1;
      width: min(43vw, 570px);
      aspect-ratio: 1;
      border: 2px dashed rgba(23, 0, 43, .2);
      border-radius: 50%;
      animation: homeOrbit 22s linear infinite;
      opacity: 1;
    }

    #page-home .snack-orbit:nth-child(2) {
      width: min(35vw, 455px);
      animation-duration: 16s;
      animation-direction: reverse;
      opacity: .5;
    }

    #page-home .float-snack {
      position: absolute;
      display: grid;
      place-items: center;
      width: 58px;
      height: 58px;
      border:var(--border-size) solid var(--home-ink);
      border-radius: 18px;
      background: #fff;
      box-shadow: 4px 4px 0 var(--home-ink);
      font-size: 1.55rem;
      animation: homeSnackWiggle 2.8s ease-in-out infinite;
    }
    #page-home .float-snack{--decor-size:58px;--decor-opacity:.52}
    #page-home .float-snack{
      background-color:transparent;
      background-image:url("../image/snack-sticker-sheet.png");
      background-repeat:no-repeat;
      background-size:calc(var(--decor-size) * 20) auto;
      background-position:calc(var(--sx, -1) * var(--decor-size)) calc(var(--sy, -1) * var(--decor-size));
      border:0;
      box-shadow:none;
      color:transparent;
      font-size:0;
      opacity:var(--decor-opacity,.2);
      filter:drop-shadow(0 10px 20px rgba(23,0,43,.12)) blur(var(--decor-blur,0));
    }
    #page-home .float-snack.snack-a{--sx:-8.3;--sy:-1.55}
    #page-home .float-snack.snack-b{--sx:-10.8;--sy:-5.72}
    #page-home .float-snack.snack-c{--sx:-14.2;--sy:-10.16}
    #page-home .float-snack.snack-d{--sx:-5.7;--sy:-11.72}

    #page-home .snack-a { left: 10%; top: 11%; }
    #page-home .snack-b { right: 6%; top: 23%; animation-delay: -.7s; }
    #page-home .snack-c { right: 14%; bottom: 13%; animation-delay: -1.4s; }
    #page-home .snack-d { left: 0; bottom: 26%; animation-delay: -2.1s; }

    #page-home .mock-machine {
      width: min(330px, 78vw);
      padding: 22px;
      border-radius: 30px;
      background:
        linear-gradient(155deg, rgba(255,255,255,.14), transparent 28%),
        linear-gradient(180deg, #8a32a5, var(--home-purple));
      box-shadow: 12px 12px 0 var(--home-ink), 0 36px 80px rgba(113, 36, 138, .35);
      transform: rotate(-2deg);
      animation: homeMachineBob 4.8s ease-in-out infinite;
    }

    #page-home .mock-machine::before {
      content: "";
      position: absolute;
      inset: 16px 16px auto auto;
      width: 12px;
      height: 74%;
      border-radius: 999px;
      background: linear-gradient(#fff, rgba(255,255,255,.08));
      opacity: .26;
    }

    #page-home .mock-screen,
    #page-home .machine-screen {
      border: 2px solid rgba(253, 200, 52, .72);
      box-shadow: inset 0 0 18px rgba(253, 200, 52, .14), 0 0 24px rgba(253, 200, 52, .22);
      animation: homeScreenGlow 1.9s ease-in-out infinite alternate;
    }

    #page-home .mock-grid {
      gap: 10px;
    }

    #page-home .mock-cell {
      border-radius: 14px;
      box-shadow: inset 0 -8px 0 rgba(23, 0, 43, .05);
      animation: homeSlotIdle 3s ease-in-out infinite;
      background:rgba(255,255,255,.72);
      padding:8px;
    }

    #page-home .shelf-product{
      max-height:58px;
      object-fit:contain;
      background:transparent;
    }

    #page-home .mock-cell:nth-child(2n) { animation-delay: -.8s; }
    #page-home .mock-cell:nth-child(3n) { animation-delay: -1.6s; }

    #page-home .mock-tray,
    #page-home .machine-tray {
      position: relative;
      overflow: hidden;
      background: linear-gradient(90deg, var(--home-orange), var(--home-amber), var(--home-orange));
      background-size: 200% 100%;
      animation: homeTrayMove 2.6s linear infinite;
    }

    #page-home .mock-coin {
      width: 90px;
      height: 90px;
      color: var(--home-ink);
      animation: homeCoinBounce 2.2s ease-in-out infinite;
    }

    #page-home .float-card {
      position: absolute;
      z-index: 5;
      min-width: 154px;
      padding: 12px 13px 15px;
      border: 2px solid rgba(255,255,255,.28);
      border-radius: 12px;
      background:
        linear-gradient(135deg,rgba(255,255,255,.1),transparent 30%),
        #180027;
      box-shadow: 5px 6px 0 var(--home-ink), 0 18px 38px rgba(23,0,43,.18);
      color: #fff;
      animation: homeFloatCard 4.4s ease-in-out infinite;
      isolation:isolate;
    }

    #page-home .float-card::after {
      content: "SNAP\A GO";
      position: absolute;
      right: 7px;
      bottom: 7px;
      color: rgba(255,255,255,.35);
      font-family: var(--font-display);
      font-size: .56rem;
      font-weight: 900;
      line-height: .82;
      letter-spacing: .08em;
      white-space: pre;
    }

    #page-home .float-card::before {
      content: "";
      position: absolute;
      display: none;
      z-index: 0;
    }

    #page-home .tag-kicker {
      display: inline-block;
      position: relative;
      z-index: 1;
      margin-bottom: 7px;
      padding: 3px 6px;
      background: var(--home-lime);
      color: var(--home-ink);
      font-family: var(--font-mono);
      font-size: .56rem;
      font-weight: 900;
      letter-spacing: .05em;
      line-height: 1;
      transform: rotate(-3deg);
    }

    #page-home .float-card strong {
      display: block;
      position: relative;
      z-index: 1;
      font-family: var(--font-display);
      font-size: 1.06rem;
      font-weight: 900;
      line-height: .95;
      letter-spacing: .015em;
    }

    #page-home .float-card small {
      display: block;
      position: relative;
      z-index: 1;
      margin-top: 8px;
      color: rgba(255,255,255,.72);
      font-size: .61rem;
      font-weight: 800;
      line-height: 1.1;
    }

    #page-home .float-card.two .tag-kicker { background: var(--home-pink); transform: rotate(3deg); }
    #page-home .float-card.three .tag-kicker { background: var(--home-amber); transform: rotate(-2deg); }
    #page-home .float-card.four .tag-kicker { background: #64ddff; transform: rotate(2deg); }
    #page-home .float-card.one { left: 2%; top: 86px; }
    #page-home .float-card.two { right: -6px; top: 126px; animation-delay: -1.2s; }
    #page-home .float-card.three { left: 0; bottom: 108px; animation-delay: -2.1s; }
    #page-home .float-card.four { right: 8%; bottom: 52px; animation-delay: -3s; }

    #page-home .scroll-cue {
      position: absolute;
      left: 50%;
      bottom: 18px;
      display: grid;
      place-items: center;
      width: 42px;
      height: 58px;
      border:var(--border-size) solid var(--home-ink);
      border-radius: 999px;
      background: rgba(255,255,255,.64);
      box-shadow: 3px 3px 0 var(--home-ink);
      transform: translateX(-50%);
    }

    #page-home .scroll-cue::after {
      content: "";
      width: 8px;
      height: 8px;
      border-radius: 999px;
      background: var(--home-orange);
      animation: homeScrollDot 1.25s ease-in-out infinite;
    }

    #page-home #demo {
      background:
        radial-gradient(circle at 16% 24%, rgba(254,124,1,.16), transparent 25rem),
        radial-gradient(circle at 82% 78%, rgba(113,36,138,.12), transparent 27rem);
    }

    #page-home .demo-wrap {
      align-items: center;
    }

    #page-home .demo-copy {
      position: relative;
    }

    #page-home .demo-copy::after {
      content: "LIVE DEMO";
      position: absolute;
      right: 8%;
      top: -28px;
      padding: 8px 12px;
      border:var(--border-size) solid var(--home-ink);
      border-radius: 999px;
      background: var(--home-lime);
      box-shadow: 3px 3px 0 var(--home-ink);
      color: var(--home-ink);
      font-family: var(--font-mono);
      font-size: .68rem;
      font-weight: 700;
      transform: rotate(7deg);
      animation: homeSnackWiggle 2.4s ease-in-out infinite;
    }

    #page-home .demo-counter {
      border:var(--border-size) solid var(--home-amber);
      box-shadow: 0 0 26px rgba(253, 200, 52, .16);
    }

    #page-home .machine {
      max-width: 460px;
      padding: 28px;
      border-radius: 32px;
      background:
        linear-gradient(140deg, rgba(255,255,255,.16), transparent 32%),
        linear-gradient(180deg, #7e2b99, #4d1265);
      box-shadow: 12px 12px 0 var(--home-ink), 0 30px 72px rgba(23, 0, 43, .28);
      animation: homeMachineBob 5s ease-in-out infinite;
    }

    #page-home .machine-grid {
      gap: 12px;
    }

    #page-home .slot {
      min-height: 96px;
      border-radius: 16px;
      background:
        linear-gradient(180deg, rgba(255,255,255,1), rgba(255,246,216,.96));
      box-shadow: inset 0 -8px 0 rgba(23,0,43,.05);
      cursor: pointer;
      padding:10px 8px;
    }

    #page-home .slot-product{
      max-height:48px;
      object-fit:contain;
      background:transparent;
    }

    #page-home .slot:hover {
      transform: translateY(-5px) rotate(-1deg);
      background: #fff;
    }

    #page-home .slot-emoji {
      filter: drop-shadow(0 8px 8px rgba(23,0,43,.14));
      transition: transform .18s ease;
    }

    #page-home .slot:hover .slot-emoji {
      transform: scale(1.16) rotate(7deg);
    }

    #page-home .slot.pulse {
      animation: homeProductPop .45s ease;
    }

    #page-home .burst {
      color: transparent;
      font-size: 0;
    }

    #page-home .burst::before {
      content: "\1F4A5";
      color: initial;
      font-size: 1.7rem;
    }

    #page-home .toast {
      background: var(--home-ink);
      color: var(--home-amber);
      box-shadow: 0 16px 38px rgba(23, 0, 43, .28);
    }

    #page-home .feature-card,
    #page-home .preview-card,
    #page-home .card {
      position: relative;
      overflow: hidden;
      transition: transform .2s ease, box-shadow .2s ease;
    }

    #page-home .feature-card::before,
    #page-home .preview-card::before,
    #page-home .card::before {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, rgba(255,255,255,.72), transparent 42%);
      pointer-events: none;
    }

    #page-home .feature-card:hover,
    #page-home .preview-card:hover {
      transform: translate(-4px, -4px) rotate(-.5deg);
      box-shadow: 9px 9px 0 var(--home-ink);
    }

    #page-home .home-section-shell {
      position: relative;
    }

    /* Decorative food wallpaper for content sections. It scrolls with the page
       and stays deliberately faint so it never competes with the copy. */
    #page-home .home-wallpaper-section{
      position:relative;
      isolation:isolate;
      overflow:hidden;
    }
    #page-home .home-wallpaper-section > .container{position:relative;z-index:1}
    #page-home .home-wallpaper{
      position:absolute;
      inset:0;
      z-index:0;
      pointer-events:none;
      opacity:1;
    }
    #page-home .home-wallpaper span{
      position:absolute;
      display:grid;
      place-items:center;
      width:84px;
      height:84px;
      border:2px solid rgba(113,36,138,.28);
      border-radius:28px;
      background:rgba(113,36,138,.11);
      box-shadow:0 12px 30px rgba(23,0,43,.06);
      font-size:2.45rem;
      opacity:.72;
      filter:saturate(.9);
    }
    #page-home .home-wallpaper span{--decor-size:84px;--decor-opacity:.12;--decor-blur:.4px}
    #page-home .home-wallpaper span{
      background-color:transparent;
      background-image:url("../image/snack-sticker-sheet.png");
      background-repeat:no-repeat;
      background-size:calc(var(--decor-size) * 20) auto;
      background-position:calc(var(--sx, -1) * var(--decor-size)) calc(var(--sy, -1) * var(--decor-size));
      border:0;
      box-shadow:none;
      color:transparent;
      font-size:0;
      opacity:var(--decor-opacity,.12);
      filter:drop-shadow(0 12px 24px rgba(23,0,43,.1)) blur(var(--decor-blur,.4px));
    }
    #page-home .home-wallpaper span:nth-child(1){--sx:-1.95;--sy:-3.7}
    #page-home .home-wallpaper span:nth-child(2){--sx:-14.45;--sy:-1.55}
    #page-home .home-wallpaper span:nth-child(3){--sx:-11.05;--sy:-1.55}
    #page-home .home-wallpaper span:nth-child(4){--sx:-17.45;--sy:-2.05}
    #page-home .home-wallpaper span:nth-child(1){top:12%;left:2.5%;transform:rotate(-14deg)}
    #page-home .home-wallpaper span:nth-child(2){top:16%;right:3%;transform:rotate(12deg)}
    #page-home .home-wallpaper span:nth-child(3){bottom:10%;left:7%;transform:rotate(9deg)}
    #page-home .home-wallpaper span:nth-child(4){bottom:7%;right:7%;transform:rotate(-10deg)}
    #page-home .home-wallpaper--drinks span:nth-child(1){top:18%;left:4%}
    #page-home .home-wallpaper--drinks span:nth-child(2){top:9%;right:8%}
    #page-home .home-wallpaper--mix span:nth-child(1){top:8%;left:6%}
    #page-home .home-wallpaper--mix span:nth-child(3){bottom:8%;left:15%}
    @media(max-width:640px){
      #page-home .home-wallpaper span{--decor-size:62px;width:62px;height:62px;border-radius:20px;font-size:0;opacity:var(--decor-opacity,.12)}
      #page-home .home-wallpaper span:nth-child(3),
      #page-home .home-wallpaper span:nth-child(4){display:none}
    }

    #page-home .home-section-shell::before {
      content: "";
      position: absolute;
      inset: 34px 0 auto;
      height: 3px;
      background: linear-gradient(90deg, transparent, rgba(23,0,43,.18), transparent);
      pointer-events: none;
    }

    #page-home .promise-banner {
      background:
        radial-gradient(circle at 18% 20%, rgba(253,200,52,.28), transparent 18rem),
        radial-gradient(circle at 82% 70%, rgba(254,124,1,.22), transparent 22rem),
        var(--home-ink);
    }

    #page-home .promise-banner p {
      text-shadow: 0 12px 34px rgba(0,0,0,.24);
    }
    #page-home .promise-banner .home-wallpaper{z-index:0;opacity:1}
    #page-home .promise-banner .home-wallpaper span{border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.12);box-shadow:none;opacity:.55;filter:saturate(.9)}
    #page-home .promise-banner .home-wallpaper span:nth-child(1){top:10%;left:8%}
    #page-home .promise-banner .home-wallpaper span:nth-child(2){top:auto;bottom:8%;right:10%}
    #page-home .promise-banner .home-wallpaper span:nth-child(3){top:20%;right:22%}
    #page-home .promise-banner .home-wallpaper span:nth-child(4){bottom:12%;left:22%}

    #page-home .split-panel {
      background:
        linear-gradient(135deg, rgba(255,255,255,.08), transparent 30%),
        var(--home-ink);
    }

    #page-home .final-cta {
      background:
        radial-gradient(circle at 12% 22%, rgba(255,255,255,.45), transparent 14rem),
        radial-gradient(circle at 90% 22%, rgba(253,200,52,.75), transparent 16rem),
        linear-gradient(135deg, var(--home-orange), #ff9d2e);
    }

    @keyframes homeGridDrift {
      from { background-position: 0 0, 0 0; }
      to { background-position: 46px 46px, 46px 46px; }
    }

    @keyframes homeGlowFloat {
      from { transform: translate3d(0, 0, 0) scale(1); }
      to { transform: translate3d(18px, 22px, 0) scale(1.08); }
    }

    @keyframes homeRise {
      from { opacity: 0; transform: translateY(18px); }
      to { opacity: 1; transform: translateY(0); }
    }

    @keyframes homePopIn {
      from { opacity: 0; transform: translateY(12px) rotate(-3deg) scale(.96); }
      to { opacity: 1; transform: translateY(0) rotate(-1deg) scale(1); }
    }

    @keyframes homePulse {
      0%, 100% { transform: scale(.86); opacity: .76; }
      50% { transform: scale(1.18); opacity: 1; }
    }

    @keyframes homeButtonShine {
      0%, 58% { left: -42%; }
      76%, 100% { left: 118%; }
    }

    @keyframes homeOrbit {
      to { transform: rotate(360deg); }
    }

    @keyframes homeSnackWiggle {
      0%, 100% { transform: translateY(0) rotate(-4deg); }
      50% { transform: translateY(-9px) rotate(5deg); }
    }

    @keyframes homeMachineBob {
      0%, 100% { transform: translateY(0) rotate(-2deg); }
      50% { transform: translateY(-14px) rotate(1.5deg); }
    }

    @keyframes homeScreenGlow {
      from { box-shadow: inset 0 0 16px rgba(253, 200, 52, .12), 0 0 16px rgba(253, 200, 52, .12); }
      to { box-shadow: inset 0 0 26px rgba(253, 200, 52, .28), 0 0 34px rgba(253, 200, 52, .28); }
    }

    @keyframes homeSlotIdle {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-4px); }
    }

    @keyframes homeTrayMove {
      to { background-position: 200% 0; }
    }

    @keyframes homeCoinBounce {
      0%, 100% { transform: rotate(8deg) translateY(0); }
      50% { transform: rotate(-4deg) translateY(-8px); }
    }

    @keyframes homeFloatCard {
      0%, 100% { transform: translateY(0) rotate(-2deg); }
      50% { transform: translateY(-12px) rotate(2deg); }
    }

    @keyframes homeTagIconPop {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-4px) scale(1.06); }
    }

    @keyframes homeScrollDot {
      0% { transform: translateY(-12px); opacity: 0; }
      35%, 70% { opacity: 1; }
      100% { transform: translateY(12px); opacity: 0; }
    }

    @keyframes homeProductPop {
      0% { transform: scale(1); }
      45% { transform: scale(.9) rotate(-2deg); }
      100% { transform: scale(1.04) rotate(1deg); }
    }

    @media (max-width: 980px) {
      #page-home .snap-hero {
        padding-top: 52px;
      }

      #page-home .hero-grid {
        grid-template-columns: 1fr;
      }

      #page-home .hero-visual {
        min-height: 520px;
      }

      #page-home .float-card.two {
        right: 6%;
      }

      #page-home .home-proof-row {
        grid-template-columns: 1fr 1fr 1fr;
      }
    }

    @media (max-width: 640px) {
      #page-home .snap-hero {
        min-height: auto;
        padding: 34px 0 54px;
      }

      #page-home .home-kicker {
        font-size: .58rem;
        max-width: 100%;
        padding: 8px 11px;
      }

      #page-home .hero-copy h1 {
        font-size: clamp(2.25rem, 10vw, 3rem);
      }

      #page-home .home-proof-row {
        display: none;
      }

      #page-home .hero-visual {
        min-height: 430px;
      }

      #page-home .mock-machine {
        width: min(285px, 82vw);
      }

      #page-home .float-card { min-width:132px; padding:10px 11px 12px; }
      #page-home .float-card strong { font-size: .88rem; }
      #page-home .float-card small { margin-top:6px; font-size:.54rem; }
      #page-home .tag-kicker { margin-bottom:5px; font-size:.5rem; }
      #page-home .float-card.one { left:0; top:58px; }
      #page-home .float-card.two { right:0; top:102px; }
      #page-home .float-card.three { left:0; bottom:82px; }
      #page-home .float-card.four { right:0; bottom:34px; }

      #page-home .float-snack {
        width: 46px;
        height: 46px;
        border-radius: 14px;
        font-size: 1.25rem;
      }

      #page-home .machine {
        padding: 22px;
      }

      #page-home .machine-grid {
        grid-template-columns: repeat(2, 1fr);
      }

      #page-home .slot {
        min-height: 88px;
      }

      #page-home .demo-copy::after {
        right: 0;
        top: -42px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      #page-home *,
      #page-home *::before,
      #page-home *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
      }
    }

    /* Gen-Z polish: brighter, cleaner, evenly spaced */
    #page-home .snap-hero {
      padding: clamp(56px, 8vw, 92px) 0 clamp(56px, 7vw, 76px);
    }

    #page-home .hero-grid,
    #page-home .demo-wrap {
      gap: clamp(32px, 5vw, 56px);
    }

    #page-home .hero-copy h1 .accent,
    #page-home .section-head h2 {
      background: linear-gradient(90deg, var(--home-orange), var(--home-pink), var(--home-purple));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
      text-shadow: none;
    }

    #page-home .home-proof,
    #page-home .feature-card,
    #page-home .preview-card,
    #page-home .split-panel,
    #page-home .final-cta,
    #page-home .machine,
    #page-home .mock-machine {
      border: var(--border);
      border-radius: 22px;
    }

    #page-home .feature-card,
    #page-home .preview-card {
      padding: 28px;
      background: rgba(255,255,255,.86);
      backdrop-filter: blur(14px);
    }

    #page-home .home-proof:hover,
    #page-home .feature-card:hover,
    #page-home .preview-card:hover {
      transform: translateY(-6px);
    }

    #page-home .hero-copy h1{font-size:var(--banner-title);line-height:1.02;letter-spacing:-.025em;margin-bottom:16px;}
    #page-home .hero-copy .lead{font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.55;}
    @media(max-width:640px){#page-home .hero-copy h1{font-size:clamp(2.2rem,9vw,2.85rem);}}
    @media(max-width:640px){#page-home .machine-slang--hero{top:2%;right:2%;font-size:.6rem}#page-home .machine-slang--demo{right:4px;font-size:.58rem}}
    @media(max-width:640px){#page-home .sprinkle{width:38px;height:38px;font-size:1.1rem}.s4,.s6{display:none}}

    #page-home .snap-hero{min-height:min(720px,calc(100vh - 78px));padding:62px 0 46px;}
    #page-home .hero-grid{gap:clamp(28px,4vw,42px);}

    /* Final requested refinements */
    #page-home .snap-hero{min-height:min(720px,calc(100vh - 96px));padding:clamp(56px,7vw,80px) 0 clamp(48px,6vw,64px);}
    #page-home .hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);gap:clamp(40px,5vw,64px);align-items:center;}
    #page-home .home-kicker{margin-bottom:16px;}
    #page-home .badge-row{gap:12px;margin-bottom:24px;}
    #page-home .badge{padding:8px 14px;}
    #page-home .hero-copy h1{max-width:720px;margin-bottom:16px;}
    #page-home .hero-copy .lead{max-width:624px;margin-bottom:32px;}
    #page-home .hero-ctas{gap:16px;margin-bottom:32px;}
    #page-home .home-proof-row{margin-top:0;gap:16px;}
    #page-home .hero-visual{min-height:560px;display:grid;place-items:center;}
    #page-home .snack-orbit{width:min(42vw,520px);min-width:448px;z-index:1;border:2px solid rgba(113,36,138,.18);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12) 0 47%,transparent 48%),conic-gradient(from 90deg,rgba(253,200,52,.56),rgba(254,124,1,.24),rgba(37,213,255,.2),rgba(113,36,138,.24),rgba(253,200,52,.56));box-shadow:0 0 0 18px rgba(253,200,52,.08),0 28px 70px rgba(23,0,43,.14);animation:homeOrbit 34s linear infinite;opacity:1;filter:drop-shadow(0 24px 38px rgba(23,0,43,.12));}
    #page-home .snack-orbit:before{content:"";position:absolute;inset:18px;border-radius:50%;border:2px dashed rgba(23,0,43,.16);background:radial-gradient(circle,transparent 58%,rgba(255,255,255,.28) 59%,transparent 66%);filter:blur(.2px);}
    #page-home .float-snack{--angle:0deg;--orbit-radius:226px;left:50%;top:50%;width:64px;height:64px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.7);border-radius:20px;background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.9),rgba(255,255,255,.46) 48%,rgba(255,255,255,.2)),rgba(255,255,255,.62);box-shadow:0 18px 34px rgba(23,0,43,.16),0 0 26px rgba(253,200,52,.22);opacity:1;filter:none;transform:rotate(var(--angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--angle)));animation:homeOrbitFloat 4.2s ease-in-out infinite alternate;transform-origin:center;backdrop-filter:blur(8px);will-change:transform;}
    #page-home .float-snack span{width:52px;height:52px;display:grid;place-items:center;border-radius:18px;color:transparent;font-size:0;background-image:url("../image/snack-sticker-sheet.png");background-repeat:no-repeat;background-size:calc(52px * 20) auto;background-position:calc(var(--sx) * 52px) calc(var(--sy) * 52px);filter:drop-shadow(0 9px 10px rgba(23,0,43,.18));animation:homeCounterOrbit 34s linear infinite reverse;}
    #page-home .snack-chips{--angle:0deg;animation-delay:-.2s}
    #page-home .snack-chips span{--sx:-17.45;--sy:-2.05}
    #page-home .snack-coffee{--angle:45deg;animation-delay:-1.4s}
    #page-home .snack-coffee span{--sx:-14.58;--sy:-5.86}
    #page-home .snack-drink{--angle:90deg;animation-delay:-2.1s}
    #page-home .snack-drink span{--sx:-7.05;--sy:-4.68}
    #page-home .snack-chocolate{--angle:135deg;animation-delay:-.9s}
    #page-home .snack-chocolate span{--sx:-4.7;--sy:-1.3}
    #page-home .snack-popcorn{--angle:180deg;animation-delay:-2.8s}
    #page-home .snack-popcorn span{--sx:-11.05;--sy:-1.55}
    #page-home .snack-cookies{--angle:225deg;animation-delay:-1.8s}
    #page-home .snack-cookies span{--sx:-14.45;--sy:-1.55}
    #page-home .snack-candy{--angle:270deg;animation-delay:-3.3s}
    #page-home .snack-candy span{--sx:-14.2;--sy:-10.16}
    #page-home .snack-sandwich{--angle:315deg;animation-delay:-2.5s}
    #page-home .snack-sandwich span{--sx:-8.85;--sy:-7.3}
    #page-home .video-halo{width:74%;filter:blur(16px);}
    #page-home .hero-video-machine{z-index:3;width:clamp(318px,26vw,382px);}
    @keyframes homeOrbitFloat{from{margin-top:-3px}to{margin-top:7px}}
    @keyframes homeCounterOrbit{to{transform:rotate(-360deg)}}
    #page-home .final-cta{min-height:280px;display:flex;flex-direction:column;justify-content:center;padding:64px 40px;}
    #page-home .final-cta .lead{margin-bottom:0;}
    @media(max-width:980px){#page-home .snap-hero{min-height:auto;padding:52px 0 56px;}#page-home .hero-grid{grid-template-columns:1fr;gap:40px;}#page-home .hero-visual{min-height:520px;}#page-home .snack-orbit{width:min(78vw,500px);min-width:0;}#page-home .float-snack{--orbit-radius:min(35vw,214px)}}
@media(max-width:640px){#page-home .snap-hero{padding:40px 0 48px;}#page-home .badge-row{margin-bottom:20px;}#page-home .hero-copy .lead{margin-bottom:24px;}#page-home .hero-ctas{margin-bottom:24px;}#page-home .hero-visual{min-height:408px;}#page-home .snack-orbit{width:min(84vw,350px);}#page-home .float-snack{--orbit-radius:min(37vw,148px);width:46px;height:46px;border-radius:15px;}#page-home .float-snack span{width:38px;height:38px;border-radius:13px;background-size:calc(38px * 20) auto;background-position:calc(var(--sx) * 38px) calc(var(--sy) * 38px);}#page-home .hero-video-machine{width:min(74vw,292px);}#page-home .final-cta{min-height:248px;padding:48px 24px;}}

/* Product inventory orbit: final cascade override */
#page-home .snack-orbit{--orbit-size:min(42vw,520px);--orbit-radius:236px;width:var(--orbit-size);min-width:456px;aspect-ratio:1;border:1.5px solid rgba(113,36,138,.18);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.16) 0 46%,transparent 47%),conic-gradient(from 90deg,rgba(253,200,52,.36),rgba(254,124,1,.16),rgba(37,213,255,.12),rgba(113,36,138,.18),rgba(253,200,52,.36));box-shadow:0 0 0 14px rgba(253,200,52,.055),0 26px 62px rgba(23,0,43,.12);animation:homeProductOrbit 28s linear infinite;filter:drop-shadow(0 20px 34px rgba(23,0,43,.1));transform-origin:center;will-change:transform;opacity:1;}
#page-home .snack-orbit::before{content:"";position:absolute;inset:18px;border-radius:50%;border:1.5px dashed rgba(23,0,43,.13);background:radial-gradient(circle,transparent 60%,rgba(255,255,255,.24) 61%,transparent 68%);pointer-events:none;}
#page-home .float-snack{--angle:0deg;position:absolute;left:50%;top:50%;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:14px;background:rgba(255,255,255,.54);box-shadow:0 10px 22px rgba(23,0,43,.12),0 0 18px rgba(253,200,52,.12);opacity:1;filter:none;backdrop-filter:blur(7px);transform:rotate(var(--angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--angle)));animation:homeProductFloat 4.8s ease-in-out infinite alternate;will-change:transform;}
#page-home .float-snack img{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 6px 7px rgba(23,0,43,.18));transform:translateZ(0);animation:homeProductUpright 28s linear infinite reverse;will-change:transform;}
#page-home .snack-coke{--angle:0deg;animation-delay:-.2s}
#page-home .snack-kurkure{--angle:90deg;animation-delay:-2s}
#page-home .snack-cookie{--angle:135deg;animation-delay:-3s}
#page-home .snack-muffin{--angle:180deg;animation-delay:-1.7s}
#page-home .snack-coffee{--angle:225deg;animation-delay:-.8s}
#page-home .snack-juice{--angle:270deg;animation-delay:-2.6s}
#page-home .snack-water{--angle:315deg;animation-delay:-3.4s}
@keyframes homeProductOrbit{to{transform:rotate(360deg)}}
@keyframes homeProductUpright{to{transform:rotate(-360deg) translateZ(0)}}
@keyframes homeProductFloat{from{margin-top:-2px}to{margin-top:5px}}
@media(max-width:980px){#page-home .snack-orbit{--orbit-size:min(76vw,500px);--orbit-radius:min(35vw,222px);min-width:0;}#page-home .float-snack{width:38px;height:38px;border-radius:13px;}#page-home .float-snack img{width:31px;height:31px;}}
@media(max-width:640px){#page-home .snack-orbit{--orbit-size:min(84vw,348px);--orbit-radius:min(38vw,150px);}#page-home .float-snack{width:32px;height:32px;border-radius:11px;}#page-home .float-snack img{width:25px;height:25px;}}

/* Packaged product background accents */
#page-home .home-wallpaper span{
  width:38px;
  height:38px;
  border:0;
  border-radius:0;
  background-color:transparent;
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center;
  box-shadow:none;
  opacity:.84;
  filter:drop-shadow(0 8px 12px rgba(23,0,43,.14));
  animation:homePackagedAccent 5s ease-in-out infinite alternate;
}
#page-home .home-wallpaper--snacks span:nth-child(1){background-image:url("../image/kurkurre.webp")}
#page-home .home-wallpaper--snacks span:nth-child(2){background-image:url("../image/dairymilk.webp")}
#page-home .home-wallpaper--snacks span:nth-child(3){background-image:url("../image/popcorn.webp")}
#page-home .home-wallpaper--snacks span:nth-child(4){background-image:url("../image/cold-coffee-cutout.webp")}
#page-home .home-wallpaper--drinks span:nth-child(1){background-image:url("../image/coke.webp")}
#page-home .home-wallpaper--drinks span:nth-child(2){background-image:url("../image/tropicana-cutout.webp")}
#page-home .home-wallpaper--drinks span:nth-child(3){background-image:url("../image/bisleri-cutout.webp")}
#page-home .home-wallpaper--drinks span:nth-child(4){background-image:url("../image/iced-tea-cutout.webp")}
#page-home .home-wallpaper--mix span:nth-child(1){background-image:url("../image/kurkurre.webp")}
#page-home .home-wallpaper--mix span:nth-child(2){background-image:url("../image/bourbon.webp")}
#page-home .home-wallpaper--mix span:nth-child(3){background-image:url("../image/mentos.webp")}
#page-home .home-wallpaper--mix span:nth-child(4){background-image:url("../image/cake.webp")}
#page-home .home-wallpaper span:nth-child(1){top:11%;left:3.5%}
#page-home .home-wallpaper span:nth-child(2){top:15%;right:4%}
#page-home .home-wallpaper span:nth-child(3){bottom:10%;left:8%}
#page-home .home-wallpaper span:nth-child(4){bottom:8%;right:8%}
#page-home .home-wallpaper span:nth-child(2),
#page-home .home-wallpaper span:nth-child(4){animation-delay:-2.2s}
@keyframes homePackagedAccent{to{transform:translateY(-3px) rotate(4deg)}}
@media(max-width:640px){#page-home .home-wallpaper span{width:28px;height:28px}#page-home .home-wallpaper span:nth-child(3),#page-home .home-wallpaper span:nth-child(4){display:none}}

/* Pastel flat background stickers, kept sparse and separated */
#page-home .home-wallpaper span{
  width:44px;
  height:44px;
  border:0;
  border-radius:12px;
  overflow:hidden;
  background-color:transparent;
  background-image:url("../image/snack-sticker-sheet.png");
  background-repeat:no-repeat;
  background-size:calc(44px * 20) auto;
  background-position:calc(var(--sx) * 44px) calc(var(--sy) * 44px);
  box-shadow:none;
  opacity:.84;
  filter:drop-shadow(0 8px 12px rgba(23,0,43,.14));
  animation:homePackagedAccent 5s ease-in-out infinite alternate;
}
#page-home .home-wallpaper span:nth-child(n+3){display:none}
#page-home .home-wallpaper--snacks span:nth-child(1){--sx:-11.05;--sy:-1.55;top:11%;left:3.5%}
#page-home .home-wallpaper--snacks span:nth-child(2){--sx:-4.7;--sy:-1.3;top:auto;bottom:11%;right:4%}
#page-home .home-wallpaper--drinks span:nth-child(1){--sx:-14.58;--sy:-5.86;top:16%;left:4%}
#page-home .home-wallpaper--drinks span:nth-child(2){--sx:-7.05;--sy:-4.68;top:auto;bottom:12%;right:6%}
#page-home .home-wallpaper--mix span:nth-child(1){--sx:-8.3;--sy:-1.55;top:10%;left:6%}
#page-home .home-wallpaper--mix span:nth-child(2){--sx:-14.45;--sy:-1.55;top:auto;bottom:10%;right:7%}
@media(max-width:640px){#page-home .home-wallpaper span{width:32px;height:32px;background-size:calc(32px * 20) auto;background-position:calc(var(--sx) * 32px) calc(var(--sy) * 32px)}}

/* Remove decorative background snack icons outside the hero product orbit */
#page-home .home-wallpaper,
#page-home .home-wallpaper span{
  display:none !important;
}

/* Premium interactive demo cart */
#page-home .demo-copy::after{
  animation:homeLivePulse 1.8s ease-in-out infinite;
}

@keyframes homeLivePulse{
  0%,100%{transform:rotate(7deg) scale(1);box-shadow:3px 3px 0 var(--home-ink),0 0 0 rgba(183,255,66,0)}
  50%{transform:rotate(7deg) scale(1.035);box-shadow:3px 3px 0 var(--home-ink),0 0 22px rgba(183,255,66,.42)}
}

#page-home .machine-cart-toggle{
  position:absolute;
  top:72px;
  right:34px;
  z-index:8;
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:7px 11px;
  border:2px solid rgba(253,200,52,.85);
  border-radius:999px;
  background:rgba(23,0,43,.86);
  color:var(--home-amber);
  box-shadow:0 10px 24px rgba(23,0,43,.28),0 0 18px rgba(253,200,52,.16);
  font-family:var(--font-mono);
  font-size:.67rem;
  font-weight:800;
  transition:transform .2s ease, box-shadow .2s ease;
}

#page-home .machine-cart-toggle:hover,
#page-home .machine-cart-toggle.is-updating{
  transform:translateY(-2px) scale(1.035);
  box-shadow:0 14px 30px rgba(23,0,43,.32),0 0 24px rgba(253,200,52,.24);
}

#page-home .slot{
  will-change:transform;
}

#page-home .slot.in-cart{
  box-shadow:inset 0 -8px 0 rgba(23,0,43,.05),0 0 0 3px rgba(183,255,66,.38),0 12px 22px rgba(23,0,43,.14);
}

#page-home .slot-qty-badge{
  position:absolute;
  top:7px;
  right:7px;
  display:none;
  min-width:26px;
  height:22px;
  padding:3px 6px;
  border:2px solid var(--home-ink);
  border-radius:999px;
  background:var(--home-lime);
  color:var(--home-ink);
  font-size:.62rem;
  font-weight:950;
  line-height:1;
  box-shadow:2px 2px 0 var(--home-ink);
}

#page-home .slot.in-cart .slot-qty-badge{
  display:grid;
  place-items:center;
}

#page-home .slot.dispensing{
  animation:slotPressGlow .72s cubic-bezier(.2,.8,.2,1);
}

@keyframes slotPressGlow{
  0%{transform:translateY(0) scale(1)}
  18%{transform:translateY(3px) scale(.97)}
  46%{transform:translateY(-6px) scale(1.045);box-shadow:0 0 0 4px rgba(183,255,66,.5),0 0 30px rgba(253,200,52,.36)}
  100%{transform:translateY(0) scale(1)}
}

#tapCount.is-counting{
  display:inline-block;
  animation:tapCountPop .28s ease;
}

@keyframes tapCountPop{
  0%{transform:translateY(0) scale(1)}
  55%{transform:translateY(-3px) scale(1.18);color:var(--home-lime)}
  100%{transform:translateY(0) scale(1)}
}

#page-home .machine-tray.tray-glow{
  animation:trayDispenseGlow .76s ease;
}

@keyframes trayDispenseGlow{
  0%,100%{box-shadow:none}
  35%{box-shadow:0 0 0 4px rgba(253,200,52,.3),0 0 34px rgba(254,124,1,.58);filter:saturate(1.18)}
}

.dispense-flyer{
  position:fixed;
  z-index:160;
  width:44px;
  height:44px;
  object-fit:contain;
  pointer-events:none;
  filter:drop-shadow(0 14px 16px rgba(23,0,43,.24));
  transition:transform .72s cubic-bezier(.2,.8,.2,1), opacity .72s ease;
  will-change:transform,opacity;
}

.slot-success-tick{
  position:absolute;
  left:50%;
  top:50%;
  z-index:5;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:2px solid var(--home-ink);
  border-radius:50%;
  background:var(--home-lime);
  color:var(--home-ink);
  font-weight:950;
  box-shadow:3px 3px 0 var(--home-ink);
  transform:translate(-50%,-50%) scale(.6);
  animation:successTickPop .58s ease forwards;
}

@keyframes successTickPop{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.45)}
  38%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(.95)}
}

.demo-cart-backdrop{
  position:fixed;
  inset:0;
  z-index:130;
  display:none;
  background:rgba(23,0,43,.28);
  backdrop-filter:blur(4px);
  opacity:0;
  transition:opacity .22s ease;
}

.demo-cart-backdrop.is-open{
  display:block;
  opacity:1;
}

.demo-cart-drawer{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  z-index:131;
  width:min(420px,100vw);
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:24px;
  border-left:var(--border);
  background:#fff;
  box-shadow:-24px 0 70px rgba(23,0,43,.22);
  transform:translateX(105%);
  transition:transform .28s cubic-bezier(.2,.8,.2,1);
}

.demo-cart-drawer.is-open{
  transform:translateX(0);
}

.demo-cart-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
}

.demo-cart-head h3{
  margin:0 0 4px;
  font-size:1.45rem;
}

.demo-cart-head p{
  margin:0;
  color:var(--ink-soft);
  font-size:.9rem;
}

.demo-cart-close{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:var(--border-size) solid var(--ink);
  border-radius:12px;
  background:var(--mist);
  color:var(--ink);
  font-weight:950;
}

.demo-cart-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  overflow:auto;
  padding-right:4px;
}

.demo-cart-item{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:12px;
  align-items:center;
  padding:12px;
  border:2px solid rgba(23,0,43,.12);
  border-radius:18px;
  background:var(--amber-tint);
}

.demo-cart-item img{
  width:54px;
  height:54px;
  object-fit:contain;
  filter:drop-shadow(0 9px 10px rgba(23,0,43,.18));
}

.demo-cart-item strong{
  display:block;
  color:var(--ink);
  font-weight:950;
}

.demo-cart-item span{
  color:var(--ink-soft);
  font-size:.76rem;
  font-weight:800;
}

.demo-cart-controls{
  grid-column:1 / -1;
  display:flex;
  gap:8px;
}

.demo-cart-controls button{
  display:grid;
  place-items:center;
  min-width:34px;
  height:32px;
  padding:0 10px;
  border:2px solid rgba(23,0,43,.18);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  font-weight:950;
}

.demo-cart-controls button:last-child{
  margin-left:auto;
  font-size:.74rem;
}

.demo-cart-controls button:disabled{
  opacity:.4;
  cursor:not-allowed;
}

.demo-cart-total{
  padding:14px;
  border:2px dashed rgba(23,0,43,.22);
  border-radius:18px;
  background:var(--mist);
  color:var(--ink);
  font-weight:900;
}

.demo-cart-cta{
  justify-content:center;
  width:100%;
}

.demo-cart-cta:disabled{
  opacity:.5;
  cursor:not-allowed;
  transform:none;
}

.demo-cart-empty{
  display:grid;
  place-items:center;
  gap:14px;
  min-height:250px;
  padding:24px;
  border:2px dashed rgba(23,0,43,.18);
  border-radius:20px;
  background:var(--mist);
  text-align:center;
  color:var(--ink-soft);
  font-weight:800;
}

.demo-cart-machine{
  width:74px;
  height:96px;
  border:3px solid var(--ink);
  border-radius:18px;
  background:linear-gradient(180deg,var(--purple),#4d1265);
  box-shadow:5px 6px 0 var(--ink);
  position:relative;
}

.demo-cart-machine::before{
  content:"";
  position:absolute;
  left:13px;
  right:13px;
  top:14px;
  height:18px;
  border-radius:8px;
  background:var(--ink);
  box-shadow:0 38px 0 var(--orange);
}

@media(max-width:640px){
  #page-home .machine-cart-toggle{top:58px;right:22px;font-size:.58rem;padding:6px 9px;}
  .demo-cart-drawer{padding:20px;border-left:0;}
}

/* Connected, conversational polish inspired by the reference snack sites */
#page-home{
  background:
    radial-gradient(circle at 8% 18%, rgba(37,213,255,.12), transparent 22rem),
    radial-gradient(circle at 92% 36%, rgba(253,200,52,.16), transparent 24rem),
    linear-gradient(180deg,#fff 0%,#fffaf0 48%,#fff 100%);
}

#page-home .story-marquee--home{
  background:linear-gradient(90deg,var(--ink),#3a104d,var(--ink));
}

#page-home .story-marquee--home b:nth-of-type(2n){
  background:var(--cyan);
}

#page-home .section{
  overflow:visible;
}

#page-home .home-wallpaper-section::before{
  content:"";
  position:absolute;
  left:50%;
  top:-28px;
  z-index:0;
  width:min(860px,86vw);
  height:52px;
  border:var(--border-size) dashed rgba(23,0,43,.16);
  border-top:0;
  border-radius:0 0 999px 999px;
  transform:translateX(-50%);
  pointer-events:none;
}

#page-home .feature-card,
#page-home .preview-card{
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(10px);
}

#page-home .feature-card:nth-child(2),
#page-home .preview-card:nth-child(2){
  transform:translateY(14px) rotate(.7deg);
}

#page-home .feature-card:nth-child(3),
#page-home .preview-card:nth-child(3){
  transform:rotate(-.7deg);
}

#page-home .feature-card:hover,
#page-home .preview-card:hover{
  transform:translateY(-8px) rotate(0deg);
}

#page-home .promise-banner{
  background:
    radial-gradient(circle at 18% 28%, rgba(253,200,52,.28), transparent 18rem),
    radial-gradient(circle at 82% 70%, rgba(37,213,255,.18), transparent 20rem),
    linear-gradient(135deg,#1d0430,#4b155f 62%,#17002b);
  isolation:isolate;
}

#page-home .promise-banner::after{
  content:"";
  position:absolute;
  inset:auto -4vw -28px;
  height:58px;
  border-top:var(--border);
  background:var(--amber-tint);
  transform:rotate(1.2deg);
  z-index:0;
}

#page-home .split-panel{
  background:linear-gradient(135deg,#20102b,#3c174d);
}

#page-home .final-cta{
  background:
    radial-gradient(circle at 14% 18%, rgba(37,213,255,.18), transparent 14rem),
    radial-gradient(circle at 88% 26%, rgba(255,79,154,.16), transparent 15rem),
    linear-gradient(135deg,#fff,var(--amber-tint));
}

#page-home .final-cta::after{
  content:"Ready when your people are.";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:calc(100% - 32px);
  margin:18px auto 0;
  padding:8px 16px;
  border:var(--border-size) solid var(--ink);
  border-radius:999px;
  background:#fff;
  color:var(--purple);
  font-family:var(--font-mono);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:var(--shadow-sm);
  transform:rotate(-1deg);
}

@media(max-width:760px){
  #page-home .feature-card:nth-child(2),
  #page-home .preview-card:nth-child(2),
  #page-home .feature-card:nth-child(3),
  #page-home .preview-card:nth-child(3){
    transform:none;
  }
}

/* Stronger reference-site direction: one connected pastel snack story */
#page-home{
  --home-orange:#ff6f61;
  --home-purple:#6a3d86;
  background:
    radial-gradient(circle at 10% 8%, rgba(255,237,159,.75), transparent 23rem),
    radial-gradient(circle at 92% 18%, rgba(223,255,214,.9), transparent 25rem),
    radial-gradient(circle at 18% 72%, rgba(223,248,255,.78), transparent 24rem),
    linear-gradient(180deg,#fff8e8 0%,#fff 42%,#fff8e8 100%);
}

#page-home::before{
  content:"";
  position:absolute;
  left:50%;
  top:620px;
  bottom:260px;
  z-index:0;
  width:min(72vw,860px);
  border:4px dashed rgba(23,0,43,.12);
  border-left:0;
  border-bottom:0;
  border-radius:0 120px 0 0;
  transform:translateX(-50%);
  pointer-events:none;
}

#page-home .snap-hero{
  background:
    radial-gradient(circle at 76% 34%, rgba(255,225,239,.9), transparent 18rem),
    radial-gradient(circle at 62% 66%, rgba(223,255,214,.75), transparent 21rem);
}

#page-home .snap-hero::after{
  content:"";
  position:absolute;
  left:-4vw;
  right:-4vw;
  bottom:-34px;
  height:84px;
  z-index:1;
  border-top:var(--border);
  background:#fff;
  border-radius:50% 50% 0 0 / 100% 100% 0 0;
}

#page-home .home-glow,
#page-home .blob{
  opacity:.12 !important;
  filter:blur(70px);
}

#page-home .hero-copy h1 .accent{
  color:var(--ink);
  background:linear-gradient(transparent 58%, var(--snap-butter) 58%);
  text-shadow:none;
}

#page-home .home-proof,
#page-home .badge,
#page-home .feature-card,
#page-home .preview-card,
#page-home .split-col{
  background:rgba(255,255,255,.92) !important;
}

#page-home .story-marquee--home,
#page-home .story-marquee--soft{
  background:var(--snap-butter);
  color:var(--ink);
}

#page-home .story-marquee--home b:nth-of-type(2n){
  background:var(--snap-mint);
}

#page-home .section{
  margin-top:-1px;
  padding-top:clamp(64px,7vw,96px);
  padding-bottom:clamp(64px,7vw,96px);
}

#page-home .section-alt,
#page-home .home-wallpaper-section:nth-of-type(odd){
  background:
    radial-gradient(circle at 7% 24%, rgba(255,225,239,.55), transparent 17rem),
    radial-gradient(circle at 92% 66%, rgba(223,248,255,.7), transparent 19rem),
    #fff8e8;
}

#page-home .home-wallpaper-section:nth-of-type(even){
  background:
    radial-gradient(circle at 12% 70%, rgba(223,255,214,.75), transparent 18rem),
    radial-gradient(circle at 88% 24%, rgba(255,237,159,.65), transparent 18rem),
    #fff;
}

#page-home .home-wallpaper-section::before{
  top:-38px;
  height:78px;
  width:110vw;
  border:var(--border-size) solid var(--ink);
  border-bottom:0;
  border-radius:50% 50% 0 0 / 100% 100% 0 0;
  background:inherit;
}

#page-home .home-wallpaper span{
  opacity:.2 !important;
  transform:rotate(var(--decor-rotate, -8deg)) scale(1.35);
}

#page-home .home-wallpaper span:nth-child(2){
  --decor-rotate:10deg;
}

#page-home .home-wallpaper span:nth-child(3){
  --decor-rotate:-14deg;
}

#page-home .machine{
  background:linear-gradient(180deg,#dff8ff,#f0e8ff) !important;
  box-shadow:8px 8px 0 var(--ink),0 24px 70px rgba(23,0,43,.12);
}

#page-home .machine-screen{
  border-color:var(--ink);
  background:#fff !important;
  color:var(--ink) !important;
}

#page-home .machine-tray{
  background:var(--snap-mint) !important;
}

#page-home .promise-banner{
  padding:82px 0;
  background:
    radial-gradient(circle at 18% 32%, rgba(255,111,97,.16), transparent 18rem),
    radial-gradient(circle at 82% 70%, rgba(37,213,255,.18), transparent 20rem),
    linear-gradient(135deg,var(--snap-lilac),var(--snap-aqua),#fff) !important;
}

#page-home .promise-banner::after{
  background:#fff8e8;
}

#page-home .promise-banner p{
  color:var(--ink) !important;
}

#page-home .split-panel{
  overflow:visible;
  gap:22px;
  padding:22px;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,237,159,.7), transparent 15rem),
    linear-gradient(135deg,#fff,var(--snap-lilac)) !important;
}

#page-home .split-col{
  border:var(--border);
  border-radius:22px;
  color:var(--ink);
}

#page-home .final-cta{
  background:
    radial-gradient(circle at 14% 20%, rgba(223,255,214,.9), transparent 17rem),
    radial-gradient(circle at 86% 28%, rgba(255,225,239,.75), transparent 17rem),
    #fff !important;
  box-shadow:8px 8px 0 var(--ink);
}

#page-home .final-cta::before{
  content:"";
  position:absolute;
  inset:-20px auto auto 8%;
  width:120px;
  height:120px;
  background:url("../image/kurkurre.webp") center/contain no-repeat;
  transform:rotate(-16deg);
  filter:drop-shadow(0 16px 18px rgba(23,0,43,.18));
}

#page-home .final-cta::after{
  background:var(--snap-butter);
  color:var(--ink);
}

@media(max-width:760px){
  #page-home::before{display:none;}
  #page-home .section{padding-top:58px;padding-bottom:58px;}
  #page-home .snap-hero::after{height:48px;bottom:-22px;}
  #page-home .home-wallpaper-section::before{height:44px;top:-22px;}
  #page-home .final-cta::before{width:82px;height:82px;left:auto;right:10px;top:-26px;}
}

/* Mr Makhana-inspired moving snake text strip */
#page-home .snake-flow{
  position:relative;
  min-height:210px;
  display:block;
  padding:18px 0;
  border:0 !important;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 10%, rgba(254,124,1,.18), transparent 20rem),
    radial-gradient(circle at 80% 82%, rgba(113,36,138,.16), transparent 22rem),
    radial-gradient(circle at 56% 46%, rgba(253,200,52,.36), transparent 18rem),
    linear-gradient(120deg,#fff8e8,#fff,#f0e8ff) !important;
}

#page-home .snake-ribbon-bg{
  position:absolute;
  left:-8vw;
  right:-8vw;
  top:50%;
  z-index:1;
  height:104px;
  border:2px solid rgba(23,0,43,.14);
  border-left:0;
  border-right:0;
  background:
    repeating-linear-gradient(90deg,rgba(253,200,52,.22) 0 18px,transparent 18px 42px),
    linear-gradient(90deg,rgba(254,124,1,.16),rgba(253,200,52,.28),rgba(113,36,138,.12));
  transform:translateY(-50%) skewY(-2deg);
  border-radius:50% 42% 48% 52% / 48% 54% 46% 52%;
  clip-path:polygon(0 18%, 12% 8%, 26% 16%, 42% 5%, 58% 18%, 74% 8%, 90% 17%, 100% 9%, 100% 82%, 88% 92%, 70% 82%, 55% 95%, 38% 83%, 22% 93%, 8% 82%, 0 90%);
  filter:drop-shadow(0 18px 30px rgba(23,0,43,.08));
}

#page-home .snake-ribbon-bg::before{
  content:"";
  position:absolute;
  inset:14px 0;
  border-top:2px dashed rgba(113,36,138,.2);
  border-bottom:2px dashed rgba(113,36,138,.16);
}

#page-home .snake-flow::before{
  display:none !important;
  content:none !important;
}

#page-home .snake-flow::before,
#page-home .snake-flow::after{
  pointer-events:none;
}

#page-home .snake-flow::after{
  display:none !important;
  content:none !important;
}

#page-home .snake-river-track{
  position:absolute;
  left:0;
  top:50%;
  z-index:4;
  display:flex;
  align-items:center;
  gap:22px;
  width:max-content;
  white-space:nowrap;
  transform:translateY(-50%);
  animation:snakeRiverMove 18s linear infinite;
  will-change:transform;
}

#page-home .snake-sticker{
  position:absolute;
  z-index:5;
  display:grid;
  place-items:center;
  width:68px;
  height:68px;
  border:var(--border-size) solid var(--ink);
  border-radius:22px;
  background:rgba(255,255,255,.82);
  box-shadow:5px 6px 0 var(--ink),0 18px 35px rgba(23,0,43,.13);
  pointer-events:none;
  animation:snakeStickerFloat 3s ease-in-out infinite alternate;
}

#page-home .snake-sticker img{
  width:54px;
  height:54px;
  object-fit:contain;
  filter:drop-shadow(0 9px 10px rgba(23,0,43,.18));
}

#page-home .snake-sticker--chips{
  left:7%;
  top:18px;
  transform:rotate(-12deg);
}

#page-home .snake-sticker--drink{
  right:10%;
  top:20px;
  transform:rotate(10deg);
  animation-delay:-1.2s;
}

#page-home .snake-sticker--choco{
  right:30%;
  bottom:16px;
  width:58px;
  height:58px;
  border-radius:19px;
  transform:rotate(-8deg);
  animation-delay:-2s;
}

@keyframes snakeStickerFloat{
  to{translate:0 -10px;}
}

#page-home .snake-river-track span{
  display:inline-block;
  color:var(--purple);
  font-family:var(--font-display);
  font-size:clamp(1.9rem,3.1vw,3.65rem);
  font-weight:800;
  line-height:1;
  letter-spacing:.01em;
  text-transform:uppercase;
  -webkit-text-stroke:2.5px var(--amber);
  paint-order:stroke fill;
  filter:drop-shadow(3px 4px 0 rgba(254,124,1,.44));
  transform-origin:center;
  will-change:transform;
}

#page-home .snake-char{
  display:inline-block;
  transform-origin:50% 72%;
  animation:snakeCharWalk 1.65s ease-in-out infinite;
  animation-delay:calc((var(--char-index, 0) * -.045s) + (var(--i, 0) * -.14s));
  will-change:transform;
}

#page-home .snake-river-track b{
  display:inline-block;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--orange);
  box-shadow:0 0 0 4px rgba(253,200,52,.28);
  animation:snakeDotSlither 2.4s ease-in-out infinite;
  animation-delay:calc(var(--i, 0) * -.18s);
}

@keyframes snakeRiverMove{
  from{transform:translate3d(0,-50%,0);}
  to{transform:translate3d(-50%,-50%,0);}
}

@keyframes snakeWordSlither{
  0%,100%{transform:translateY(0) rotate(-3deg);}
  25%{transform:translateY(-76px) rotate(8deg);}
  50%{transform:translateY(0) rotate(-2deg);}
  75%{transform:translateY(76px) rotate(8deg);}
}

@keyframes snakeCharWalk{
  0%,100%{transform:translateY(0) rotate(-2deg);}
  22%{transform:translateY(-18px) rotate(3deg);}
  44%{transform:translateY(-4px) rotate(1deg);}
  68%{transform:translateY(16px) rotate(-3deg);}
  86%{transform:translateY(4px) rotate(-1deg);}
}

@keyframes snakeDotSlither{
  0%,100%{transform:translateY(0) scale(1);}
  25%{transform:translateY(-14px) scale(.85);}
  75%{transform:translateY(14px) scale(.85);}
}

@media(max-width:980px){
  #page-home .snake-river-track span{font-size:clamp(1.7rem,6vw,3rem);}
  #page-home .snake-sticker{width:54px;height:54px;border-radius:18px;}
  #page-home .snake-sticker img{width:42px;height:42px;}
}

#page-home .snake-flow + .home-wallpaper-section::before{
  display:none !important;
  content:none !important;
}

@media(max-width:760px){
  #page-home .snake-flow{min-height:150px;padding:14px 0;}
  #page-home .snake-ribbon-bg{height:72px;}
  #page-home .snake-sticker--choco{display:none;}
  #page-home .snake-river-track{gap:18px;}
  #page-home .snake-river-track span{-webkit-text-stroke:2px var(--amber);}
  #page-home .snake-river-track b{width:8px;height:8px;}
  @keyframes snakeCharWalk{
    0%,100%{transform:translateY(0) rotate(-2deg);}
    22%{transform:translateY(-18px) rotate(4deg);}
    44%{transform:translateY(-4px) rotate(1deg);}
    68%{transform:translateY(16px) rotate(-4deg);}
    86%{transform:translateY(4px) rotate(-1deg);}
  }
  @keyframes snakeWordSlither{
    0%,100%{transform:translateY(0) rotate(-3deg);}
    25%{transform:translateY(-36px) rotate(7deg);}
    50%{transform:translateY(0) rotate(-2deg);}
    75%{transform:translateY(36px) rotate(7deg);}
  }
}

/* Banner-only reset: remove broken top curve and tighten first viewport */
body[data-page="home"]{
  --sg-ink:#260033;
  --sg-purple:#7a2a91;
  --sg-orange:#b72888;
  --home-orange:#b72888;
  --orange:#b72888;
  --amber:#c7a6d8;
}

body[data-page="home"]{
  --sg-ink:#260033;
  --sg-purple:#7a2a91;
  --sg-orange:#b72888;
  --home-orange:#b72888;
  --orange:#b72888;
  --amber:#c7a6d8;
}

body[data-page="home"] .site-header{
  background:#fffdf7;
  border-bottom:1px solid rgba(23,0,43,.08);
  box-shadow:0 12px 34px rgba(23,0,43,.05);
}

body[data-page="home"] .nav{
  min-height:118px;
  max-width:1640px;
  padding:10px clamp(42px,7vw,120px);
}

body[data-page="home"] .brand{
  width:250px !important;
  flex:0 0 250px !important;
}

body[data-page="home"] .brand img{
  width:210px !important;
}

body[data-page="home"] .brand span{
  margin-top:-6px !important;
  color:#5b2c87 !important;
  font-size:11px !important;
  letter-spacing:.08em !important;
}

body[data-page="home"] .nav-links{
  gap:34px;
}

body[data-page="home"] .nav-link{
  font-size:1.08rem;
}

body[data-page="home"] .nav-cta .btn{
  background:linear-gradient(135deg,#dfffd6,#fff1a8);
  box-shadow:5px 6px 0 var(--ink);
  padding:15px 28px;
}

#page-home .snap-hero{
  min-height:calc(100vh - 118px) !important;
  padding:clamp(34px,4.5vw,58px) 0 clamp(30px,4vw,48px) !important;
  overflow:hidden;
  background:
    linear-gradient(rgba(23,0,43,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23,0,43,.055) 1px, transparent 1px),
    radial-gradient(circle at 18% 38%, rgba(255,237,159,.7), transparent 23rem),
    radial-gradient(circle at 83% 34%, rgba(255,225,239,.75), transparent 26rem),
    radial-gradient(circle at 54% 78%, rgba(223,255,214,.72), transparent 24rem),
    #fff8e8 !important;
  background-size:42px 42px,42px 42px,auto,auto,auto,auto;
}

#page-home .snap-hero::before,
#page-home .snap-hero::after{
  display:none !important;
  content:none !important;
}

#page-home .hero-grid{
  max-width:1680px;
  margin:0 auto;
  padding:0 clamp(42px,7vw,120px);
  grid-template-columns:minmax(560px, .92fr) minmax(520px, .88fr) !important;
  gap:clamp(30px,4vw,70px) !important;
  align-items:center;
}

#page-home .hero-copy{
  padding-top:0;
}

#page-home .home-kicker{
  margin-bottom:18px !important;
  background:#fff !important;
}

#page-home .badge-row{
  margin-bottom:24px !important;
  gap:14px !important;
}

#page-home .badge{
  background:#fff !important;
  box-shadow:4px 5px 0 var(--ink);
}

#page-home .hero-copy h1{
  max-width:720px !important;
  font-size:clamp(3.2rem,4.8vw,5.8rem) !important;
  line-height:.98 !important;
  margin-bottom:22px !important;
}

#page-home .hero-copy h1 .accent{
  color:var(--ink) !important;
  background:linear-gradient(transparent 58%, #fdc834 58%) !important;
}

#page-home .hero-copy .lead{
  max-width:720px !important;
  font-size:clamp(1.08rem,1.32vw,1.34rem) !important;
  line-height:1.55 !important;
  margin-bottom:26px !important;
  color:#5b4a69 !important;
}

#page-home .hero-ctas,
#page-home .home-proof-row,
#page-home .scroll-cue{
  display:none !important;
}

#page-home .hero-visual{
  min-height:600px !important;
  align-self:stretch;
}

#page-home .hero-video-machine{
  width:clamp(350px,22vw,445px) !important;
  top:51% !important;
}

#page-home .hero-machine-art{
  filter:drop-shadow(0 34px 50px rgba(23,0,43,.25)) !important;
}

#page-home .snack-orbit{
  --orbit-size:min(35vw,610px) !important;
  --orbit-radius:min(16vw,275px) !important;
  width:var(--orbit-size) !important;
  min-width:520px !important;
  border-color:rgba(23,0,43,.16) !important;
  background:radial-gradient(circle,rgba(255,255,255,.22),transparent 62%) !important;
}

#page-home .snack-orbit::after{
  content:"";
  position:absolute;
  inset:clamp(26px,4vw,58px);
  border:2px dashed rgba(23,0,43,.13);
  border-radius:50%;
  animation:homeBannerReverseOrbit 18s linear infinite reverse;
}

@keyframes homeBannerReverseOrbit{
  to{transform:rotate(360deg);}
}

#page-home .float-snack{
  background:rgba(255,255,255,.72) !important;
}

@media(max-width:980px){
  body[data-page="home"] .nav{min-height:78px;padding:8px 20px;}
  body[data-page="home"] .brand{width:170px !important;flex-basis:170px !important;}
  body[data-page="home"] .brand img{width:155px !important;}
  body[data-page="home"] .brand span{font-size:8px !important;}
  #page-home .snap-hero{min-height:auto !important;padding:42px 0 54px !important;}
  #page-home .hero-grid{grid-template-columns:1fr !important;padding:0 24px;gap:28px !important;}
  #page-home .hero-copy h1{font-size:clamp(2.5rem,9vw,4.1rem) !important;}
  #page-home .hero-visual{min-height:440px !important;}
  #page-home .hero-video-machine{width:min(67vw,315px) !important;}
  #page-home .snack-orbit{min-width:0 !important;width:min(82vw,460px) !important;--orbit-radius:min(36vw,198px) !important;}
}

/* Premium machine intelligence bridge */
#page-home .section-bridge--snack{
  padding:clamp(42px,5vw,64px) 0;
  border-top:3px solid var(--ink);
  border-bottom:3px solid var(--ink);
  background:
    radial-gradient(circle at 14% 28%, rgba(223,255,214,.9), transparent 20rem),
    radial-gradient(circle at 86% 72%, rgba(223,248,255,.8), transparent 20rem),
    linear-gradient(100deg,#fff8e8,#fff,#f7ecff) !important;
}

#page-home .section-bridge--snack::before,
#page-home .section-bridge--snack::after{
  display:none !important;
}

#page-home .machine-intel-card{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(330px,.62fr);
  gap:clamp(24px,4vw,56px);
  align-items:center;
  padding:clamp(28px,4vw,48px);
  border:var(--border);
  border-radius:32px;
  background:rgba(255,255,255,.78);
  box-shadow:10px 12px 0 var(--ink),0 30px 80px rgba(23,0,43,.11);
  overflow:hidden;
  backdrop-filter:blur(16px);
}

#page-home .machine-intel-card::before{
  content:"";
  position:absolute;
  inset:-40% auto auto -8%;
  width:280px;
  height:280px;
  border-radius:50%;
  background:rgba(255,237,159,.58);
  filter:blur(10px);
}

#page-home .machine-intel-copy{
  position:relative;
  z-index:1;
}

#page-home .machine-intel-kicker{
  display:inline-flex;
  margin-bottom:12px;
  padding:8px 14px;
  border:var(--border-size) solid var(--ink);
  border-radius:999px;
  background:var(--snap-mint);
  color:var(--ink);
  box-shadow:4px 5px 0 var(--ink);
  font-family:var(--font-mono);
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  transform:rotate(-1.5deg);
}

#page-home .machine-intel-copy h2{
  max-width:760px;
  margin:0 0 12px;
  font-size:clamp(2rem,3.6vw,3.65rem);
  line-height:1;
  letter-spacing:0;
}

#page-home .machine-intel-copy p{
  max-width:680px;
  margin:0;
  color:#5b4a69;
  font-size:clamp(1rem,1.25vw,1.15rem);
  line-height:1.55;
  font-weight:700;
  text-align:left;
}

#page-home .machine-intel-visual{
  position:relative;
  min-height:260px;
  display:grid;
  place-items:center;
}

#page-home .intel-screen{
  position:relative;
  z-index:2;
  width:min(100%,360px);
  display:grid;
  gap:12px;
  padding:18px;
  border:var(--border);
  border-radius:26px;
  background:
    radial-gradient(circle at 18% 12%, rgba(255,237,159,.7), transparent 8rem),
    linear-gradient(180deg,#fff,#f0e8ff);
  box-shadow:8px 9px 0 var(--ink),0 24px 55px rgba(23,0,43,.13);
  color:var(--ink);
}

#page-home .intel-screen div{
  display:grid;
  grid-template-columns:82px 1fr;
  align-items:center;
  gap:14px;
  padding:12px 14px;
  border:2px solid rgba(23,0,43,.14);
  border-radius:16px;
  background:rgba(255,255,255,.74);
}

#page-home .intel-screen b{
  color:#6a3d86;
  font-family:var(--font-display);
  font-size:2rem;
  line-height:1;
}

#page-home .intel-screen span{
  color:#4e3c60;
  font-family:var(--font-mono);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

#page-home .intel-product{
  position:absolute;
  z-index:3;
  display:grid;
  place-items:center;
  width:82px;
  height:82px;
  border:var(--border-size) solid var(--ink);
  border-radius:24px;
  background:rgba(255,255,255,.82);
  box-shadow:5px 6px 0 var(--ink),0 18px 36px rgba(23,0,43,.14);
  animation:intelFloat 3.4s ease-in-out infinite alternate;
}

#page-home .intel-product img{
  width:64px;
  height:64px;
  object-fit:contain;
  filter:drop-shadow(0 10px 12px rgba(23,0,43,.18));
}

#page-home .intel-product--one{
  left:-8%;
  top:-8%;
  transform:rotate(-12deg);
}

#page-home .intel-product--two{
  right:-5%;
  top:-7%;
  transform:rotate(10deg);
  animation-delay:-1.1s;
}

#page-home .intel-product--three{
  right:4%;
  bottom:-2%;
  transform:rotate(-7deg);
  animation-delay:-2s;
}

@keyframes intelFloat{
  to{translate:0 -12px;}
}

@media(max-width:820px){
  #page-home .machine-intel-card{
    grid-template-columns:1fr;
    border-radius:24px;
  }

  #page-home .machine-intel-visual{
    min-height:230px;
  }
}

/* Unique snack river section: animated vending circuit */
#page-home .snack-river{
  position:relative;
  min-height:360px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:0 !important;
  background:
    radial-gradient(circle at 12% 28%, rgba(253,200,52,.42), transparent 20rem),
    radial-gradient(circle at 88% 66%, rgba(113,36,138,.15), transparent 22rem),
    radial-gradient(circle at 50% 50%, rgba(254,124,1,.1), transparent 18rem),
    linear-gradient(115deg,#fff8e8,#fff,#f0e8ff) !important;
}

#page-home .snack-river::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:min(1120px,88vw);
  height:220px;
  border:3px dashed rgba(113,36,138,.28);
  border-radius:50%;
  transform:translate(-50%,-50%) rotate(-4deg);
}

#page-home .snack-river::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:min(880px,72vw);
  height:124px;
  border-radius:999px;
  background:rgba(255,255,255,.64);
  box-shadow:0 28px 80px rgba(23,0,43,.1);
  transform:translate(-50%,-50%) rotate(-4deg);
  backdrop-filter:blur(14px);
}

#page-home .snack-river-copy{
  position:relative;
  z-index:5;
  display:grid;
  justify-items:center;
  gap:8px;
  text-align:center;
}

#page-home .snack-river-copy span{
  display:inline-flex;
  padding:7px 13px;
  border:var(--border-size) solid var(--ink);
  border-radius:999px;
  background:linear-gradient(135deg,var(--snap-butter),#fff);
  color:var(--purple);
  box-shadow:3px 4px 0 var(--ink);
  font-family:var(--font-mono);
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

#page-home .snack-river-copy strong{
  color:var(--ink);
  font-family:var(--font-display);
  font-size:clamp(2rem,4vw,4.1rem);
  line-height:.95;
  text-shadow:3px 3px 0 rgba(253,200,52,.55);
}

#page-home .river-slang{
  position:absolute;
  z-index:5;
  display:inline-flex;
  padding:8px 13px;
  border:1px solid rgba(23,0,43,.16);
  border-radius:999px;
  background:rgba(255,255,255,.76);
  color:var(--purple);
  box-shadow:0 14px 30px rgba(23,0,43,.1);
  font-family:var(--font-mono);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  backdrop-filter:blur(12px);
  animation:riverSlangFloat 3.2s ease-in-out infinite alternate;
}

#page-home .river-slang--one{
  left:12%;
  top:18%;
  transform:rotate(-8deg);
}

#page-home .river-slang--two{
  right:12%;
  top:20%;
  transform:rotate(7deg);
  animation-delay:-1.1s;
}

#page-home .river-slang--three{
  left:18%;
  bottom:18%;
  transform:rotate(5deg);
  animation-delay:-2s;
}

@keyframes riverSlangFloat{
  to{translate:0 -10px;}
}

#page-home .river-orbit{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
}

#page-home .river-pod{
  position:absolute;
  left:50%;
  top:50%;
  display:grid;
  place-items:center;
  min-width:88px;
  height:58px;
  padding:0 18px;
  border:var(--border-size) solid var(--ink);
  border-radius:22px;
  background:#fff;
  box-shadow:5px 6px 0 var(--ink),0 18px 34px rgba(23,0,43,.14);
  color:var(--purple);
  font-family:var(--font-mono);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  offset-path:path("M -560 0 C -360 -150 -180 -150 0 0 C 180 150 360 150 560 0 C 360 -150 180 -150 0 0 C -180 150 -360 150 -560 0");
  offset-rotate:0deg;
  animation:riverPodFlow 17.6s linear infinite;
  animation-delay:var(--delay);
}

#page-home .river-pod--text{
  background:linear-gradient(135deg,#fff,var(--snap-butter));
}

#page-home .snack-river + .home-wallpaper-section::before{
  display:none !important;
  content:none !important;
}

#page-home .river-pod--image{
  min-width:62px;
  width:62px;
  height:62px;
  padding:6px;
  border-radius:20px;
  background:rgba(255,255,255,.88);
}

#page-home .river-pod img{
  width:48px;
  height:48px;
  object-fit:contain;
  filter:drop-shadow(0 8px 9px rgba(23,0,43,.16));
}

@keyframes riverPodFlow{
  from{offset-distance:0%;}
  to{offset-distance:100%;}
}

@media(max-width:760px){
  #page-home .snack-river{min-height:280px;}
  #page-home .snack-river::before{width:760px;height:160px;}
  #page-home .snack-river::after{width:min(88vw,560px);height:104px;}
  #page-home .river-pod{min-width:72px;height:48px;padding:0 12px;font-size:.62rem;}
  #page-home .river-pod--image{width:50px;height:50px;min-width:50px;}
  #page-home .river-pod img{width:38px;height:38px;}
}

/* Campus drop: Gen-Z snack moment without boring floating orbit */
#page-home .campus-drop{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);
  align-items:center;
  gap:clamp(28px,5vw,72px);
  min-height:380px;
  padding:clamp(42px,5vw,70px) clamp(28px,8vw,130px);
  overflow:hidden;
  border:0 !important;
  background:
    radial-gradient(circle at 12% 20%, rgba(253,200,52,.45), transparent 20rem),
    radial-gradient(circle at 88% 78%, rgba(113,36,138,.14), transparent 24rem),
    linear-gradient(120deg,#fff8e8 0%,#fff 48%,#f0e8ff 100%) !important;
}

#page-home .campus-drop::before{
  content:none !important;
  display:none !important;
}

#page-home .campus-drop::after{
  display:none !important;
  content:none !important;
}

#page-home .campus-drop-copy{
  position:relative;
  z-index:2;
  max-width:760px;
}

#page-home .campus-kicker{
  display:inline-flex;
  margin-bottom:14px;
  padding:8px 14px;
  border:1px solid rgba(113,36,138,.18);
  border-radius:999px;
  background:var(--snap-butter);
  color:var(--purple);
  box-shadow:0 12px 28px rgba(23,0,43,.1);
  font-family:var(--font-mono);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}

#page-home .campus-drop h2{
  margin:0 0 14px;
  color:var(--ink);
  font-size:clamp(2.5rem,5vw,5.6rem);
  line-height:.95;
  text-shadow:4px 4px 0 rgba(253,200,52,.55);
}

#page-home .campus-drop p{
  max-width:620px;
  margin:0;
  color:#5b4a69;
  font-size:clamp(1rem,1.35vw,1.2rem);
  line-height:1.55;
  font-weight:750;
}

#page-home .campus-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

#page-home .campus-chip-row span{
  display:inline-flex;
  padding:9px 14px;
  border-radius:999px;
  background:#fff;
  color:var(--purple);
  box-shadow:0 12px 28px rgba(23,0,43,.1);
  font-family:var(--font-mono);
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  transform:rotate(var(--chip-tilt,-2deg));
}

#page-home .campus-chip-row span:nth-child(2){--chip-tilt:2deg;background:#dfffd6;}
#page-home .campus-chip-row span:nth-child(3){--chip-tilt:-1deg;background:#ffe1ef;}
#page-home .campus-chip-row span:nth-child(4){--chip-tilt:1.5deg;background:#dff8ff;}

#page-home .campus-chat-card{
  position:relative;
  z-index:2;
  min-height:300px;
  padding:22px;
  border:1px solid rgba(23,0,43,.14);
  border-radius:34px;
  background:rgba(255,255,255,.78);
  box-shadow:0 34px 90px rgba(23,0,43,.14);
  backdrop-filter:blur(16px);
  transform:rotate(1.5deg);
}

#page-home .chat-topbar{
  display:flex;
  align-items:center;
  gap:7px;
  padding:12px 14px;
  border-radius:18px;
  background:#17002b;
  color:#fff;
}

#page-home .chat-topbar span{
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--orange);
}

#page-home .chat-topbar span:nth-child(2){background:var(--amber);}
#page-home .chat-topbar span:nth-child(3){background:var(--lime);}

#page-home .chat-topbar strong{
  margin-left:8px;
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

#page-home .chat-bubble{
  width:max-content;
  max-width:82%;
  margin-top:16px;
  padding:13px 16px;
  border-radius:20px;
  color:var(--ink);
  font-weight:900;
  box-shadow:0 14px 30px rgba(23,0,43,.1);
}

#page-home .chat-bubble--one{
  background:#fff;
}

#page-home .chat-bubble--two{
  margin-left:auto;
  background:var(--snap-butter);
}

#page-home .chat-bubble--three{
  background:#dfffd6;
  transform:rotate(-2deg);
}

#page-home .chat-products{
  position:absolute;
  right:18px;
  bottom:-24px;
  display:flex;
  gap:10px;
  padding:12px;
  border-radius:24px;
  background:rgba(255,255,255,.86);
  box-shadow:0 22px 55px rgba(23,0,43,.16);
}

#page-home .chat-products img{
  width:62px;
  height:62px;
  object-fit:contain;
  filter:drop-shadow(0 10px 12px rgba(23,0,43,.18));
  animation:campusProductPop 2.8s ease-in-out infinite alternate;
}

#page-home .chat-products img:nth-child(2){animation-delay:-.8s;}
#page-home .chat-products img:nth-child(3){animation-delay:-1.6s;}

@keyframes campusProductPop{
  to{transform:translateY(-8px) rotate(4deg);}
}

@media(max-width:900px){
  #page-home .campus-drop{
    grid-template-columns:1fr;
    padding:38px 24px 58px;
  }

  #page-home .campus-chat-card{
    transform:none;
  }
}

/* Premium readable operations cards */
#page-home .ops-flow-panel{
  position:relative;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

#page-home .ops-flow-panel{
  margin-bottom:clamp(18px,2vw,28px);
}

#page-home .ops-flow-panel + *{
  margin-top:0;
}

#page-home .home-wallpaper-section:has(.ops-flow-panel){
  padding-bottom:clamp(26px,3vw,42px) !important;
}

#page-home .home-wallpaper-section:has(.final-cta){
  padding-top:clamp(24px,3vw,40px) !important;
}

#page-home .ops-flow-panel::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  z-index:0;
  width:min(760px,72vw);
  height:120px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(253,200,52,.22),rgba(223,255,214,.3),rgba(240,232,255,.42));
  transform:translate(-50%,-50%) rotate(-2deg);
  filter:blur(.2px);
}

#page-home .ops-card{
  position:relative;
  z-index:1;
  padding:clamp(26px,3vw,38px) !important;
  border:1px solid rgba(23,0,43,.12);
  border-radius:28px;
  background:
    radial-gradient(circle at 14% 12%, rgba(253,200,52,.22), transparent 12rem),
    rgba(255,255,255,.88) !important;
  box-shadow:0 28px 80px rgba(23,0,43,.1);
  backdrop-filter:blur(14px);
  color:var(--ink);
}

#page-home .ops-card--payment{
  background:
    radial-gradient(circle at 86% 14%, rgba(223,248,255,.5), transparent 13rem),
    rgba(255,255,255,.88) !important;
}

#page-home .ops-card + .ops-card{
  border-left:1px solid rgba(23,0,43,.12) !important;
}

#page-home .ops-tag{
  display:inline-flex;
  margin-bottom:14px;
  padding:7px 12px;
  border:1px solid rgba(113,36,138,.18);
  border-radius:999px;
  background:var(--snap-butter);
  color:var(--purple);
  font-family:var(--font-mono);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}

#page-home .ops-card h3{
  margin:0 0 22px;
  color:var(--ink) !important;
  font-size:clamp(1.35rem,2vw,1.85rem);
}

#page-home .ops-card .feature-row{
  position:relative;
  display:grid;
  grid-template-columns:58px 1fr;
  gap:16px;
  align-items:start;
  margin:0 0 16px;
  padding:16px;
  border:1px solid rgba(23,0,43,.08);
  border-radius:20px;
  background:rgba(255,255,255,.68);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}

#page-home .ops-card .feature-row:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 42px rgba(23,0,43,.1);
  background:#fff;
}

#page-home .ops-card .feature-row-icon{
  position:relative;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(135deg,var(--snap-butter),#fff);
  color:var(--ink);
  font-size:1.25rem;
  box-shadow:0 10px 24px rgba(23,0,43,.1);
}

#page-home .ops-card .feature-row-icon span{
  position:absolute;
  left:-6px;
  top:-7px;
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:var(--purple);
  color:#fff;
  font-family:var(--font-mono);
  font-size:.58rem;
  font-weight:900;
}

#page-home .ops-card .feature-row-title{
  color:#fe7c01 !important;
  font-size:1rem;
  font-weight:900;
}

#page-home .ops-card .feature-row-text{
  margin-top:4px;
  color:#5b4a69 !important;
  font-size:.94rem;
  line-height:1.55;
  font-weight:650;
}

@media(max-width:820px){
  #page-home .ops-flow-panel{
    grid-template-columns:1fr;
  }

  #page-home .ops-card + .ops-card{
    border-left:1px solid rgba(23,0,43,.12) !important;
    border-top:1px solid rgba(23,0,43,.12) !important;
  }
}

/* Home width rhythm: reduce side squeeze on large screens */
body[data-page="home"] .container{
  max-width:1360px;
}

#page-home .section > .container,
#page-home .section-bridge > .container{
  max-width:1360px;
}

#page-home .machine-intel-card,
#page-home .ops-flow-panel,
#page-home .final-cta{
  width:min(100%,1280px);
  margin-left:auto;
  margin-right:auto;
}

#page-home .grid-3{
  gap:clamp(20px,2.2vw,34px);
}

@media(min-width:1440px){
  body[data-page="home"] .container,
  #page-home .section > .container,
  #page-home .section-bridge > .container{
    max-width:1480px;
  }

  #page-home .machine-intel-card,
  #page-home .ops-flow-panel,
  #page-home .final-cta{
    width:min(100%,1380px);
  }
}

/* Home flow polish: remove hard black section breaks */
#page-home .section-bridge,
#page-home .section-bridge--snack,
#page-home .story-marquee,
#page-home .snack-river,
#page-home .promise-banner{
  border-top:0 !important;
  border-bottom:0 !important;
}

#page-home .home-wallpaper-section::before,
#page-home .section-bridge::before,
#page-home .section-bridge::after,
#page-home .snack-river + .home-wallpaper-section::before{
  display:none !important;
  content:none !important;
}

#page-home .machine-intel-card{
  border:1px solid rgba(23,0,43,.12) !important;
  box-shadow:0 30px 90px rgba(23,0,43,.12) !important;
}

#page-home .machine-intel-kicker,
#page-home .intel-screen,
#page-home .intel-product,
#page-home .river-pod,
#page-home .snake-sticker{
  border-color:rgba(23,0,43,.2) !important;
  box-shadow:0 18px 38px rgba(23,0,43,.14) !important;
}

#page-home .section-bridge--snack{
  background:
    radial-gradient(circle at 14% 28%, rgba(223,255,214,.9), transparent 20rem),
    radial-gradient(circle at 86% 72%, rgba(223,248,255,.8), transparent 20rem),
    linear-gradient(100deg,#fff8e8,#fff,#f7ecff) !important;
}

/* Tighter Home vertical rhythm */
#page-home{
  --section-space:clamp(38px,4.4vw,58px);
}

#page-home .section{
  padding-top:clamp(38px,4.4vw,58px) !important;
  padding-bottom:clamp(38px,4.4vw,58px) !important;
}

#page-home .section-head{
  margin-bottom:clamp(18px,2vw,24px);
}

#page-home .grid-3,
#page-home .ops-flow-panel{
  gap:clamp(16px,1.8vw,24px);
}

#page-home .story-marquee-track{
  padding:9px 0;
}

#page-home .section-bridge--snack{
  padding-top:clamp(32px,3.5vw,46px) !important;
  padding-bottom:clamp(32px,3.5vw,46px) !important;
}

#page-home .snack-river{
  min-height:300px;
}

#page-home .final-cta{
  padding:clamp(38px,4vw,52px) clamp(24px,4vw,40px) !important;
}

@media(max-width:760px){
  #page-home .section{
    padding-top:34px !important;
    padding-bottom:34px !important;
  }
}

/* Smart Vending in Action hero */
#page-home .snap-hero{
  min-height:calc(100vh - 96px) !important;
  padding:clamp(42px,5vw,72px) 0 92px !important;
  overflow:hidden;
  background:
    linear-gradient(rgba(113,36,138,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(113,36,138,.045) 1px,transparent 1px),
    radial-gradient(circle at 84% 40%,rgba(253,200,52,.34),transparent 24rem),
    radial-gradient(circle at 8% 12%,rgba(223,248,255,.9),transparent 25rem),
    radial-gradient(circle at 36% 88%,rgba(240,232,255,.72),transparent 28rem),
    linear-gradient(145deg,#fff 0%,#fffaf0 58%,#fff6dc 100%) !important;
  background-size:44px 44px,44px 44px,auto,auto,auto,auto !important;
}

#page-home .snap-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(105deg,rgba(255,255,255,.2),transparent 58%);
}

#page-home .hero-grid{
  position:relative;
  z-index:2;
  grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr) !important;
  gap:clamp(28px,5vw,76px) !important;
  align-items:center !important;
}

#page-home .hero-copy{max-width:720px !important;}
#page-home .home-kicker{color:#21002f !important;background:var(--home-lime) !important;border-color:#21002f !important;box-shadow:4px 4px 0 rgba(23,0,43,.24) !important;}
#page-home .badge-row{display:flex !important;margin-bottom:22px !important;}
#page-home .badge{background:rgba(255,255,255,.78) !important;color:#21002f !important;border-color:rgba(23,0,43,.18) !important;box-shadow:0 9px 22px rgba(23,0,43,.08) !important;backdrop-filter:blur(10px);}

#page-home .hero-copy h1{
  max-width:760px !important;
  margin-bottom:22px !important;
  color:#21002f !important;
  font-size:clamp(3.4rem,5.5vw,6.4rem) !important;
  line-height:.92 !important;
  letter-spacing:-.065em !important;
  text-shadow:none;
}

#page-home .hero-copy h1 .accent{
  display:inline-block;
  margin-top:10px;
  color:var(--home-amber) !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}

#page-home .hero-copy .lead{max-width:650px !important;color:#62506b !important;font-size:clamp(1.04rem,1.25vw,1.25rem) !important;}
#page-home .hero-ctas{display:flex !important;margin:0 0 22px !important;}
#page-home .hero-ctas .btn-primary{background:var(--home-amber) !important;color:#21002f !important;border-color:#21002f !important;box-shadow:6px 7px 0 #17001f !important;}
#page-home .hero-ctas .btn-secondary{background:rgba(255,255,255,.82) !important;color:#21002f !important;border-color:#21002f !important;}

#page-home .hero-trust-line{display:flex;flex-wrap:wrap;gap:18px 26px;color:#67556f;font-size:.82rem;font-weight:800;}
#page-home .hero-trust-line span{display:flex;align-items:center;gap:7px;}
#page-home .hero-trust-line b{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--home-lime);color:#21002f;font-size:.68rem;}

#page-home .hero-visual{min-height:610px !important;position:relative;isolation:isolate;}
#page-home .snack-orbit{display:none !important;}
#page-home .hero-video-machine{width:clamp(350px,22vw,445px) !important;top:51% !important;z-index:4;}
#page-home .hero-machine-art{filter:drop-shadow(0 42px 48px rgba(0,0,0,.46)) !important;}

#page-home .hero-visual::before{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:500px;height:500px;
  border:1px solid rgba(113,36,138,.14);
  border-radius:50%;
  transform:translate(-50%,-50%);
  box-shadow:0 0 0 42px rgba(113,36,138,.025),0 0 0 84px rgba(253,200,52,.035);
}

#page-home .hero-live-card{
  position:absolute;
  z-index:7;
  display:flex;
  align-items:center;
  gap:11px;
  min-width:190px;
  padding:12px 15px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:16px;
  background:rgba(255,255,255,.91);
  color:#21002f;
  box-shadow:0 18px 44px rgba(15,0,25,.26);
  backdrop-filter:blur(16px);
  animation:heroDashboardFloat 4s ease-in-out infinite;
}
#page-home .hero-live-card small{display:block;margin-bottom:2px;color:#78657e;font-family:var(--font-mono);font-size:.57rem;font-weight:900;letter-spacing:.1em;}
#page-home .hero-live-card strong{display:block;font-size:.82rem;white-space:nowrap;}
#page-home .hero-live-card em{color:#2b9d41;font-style:normal;}
#page-home .hero-live-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:#eaffdf;color:#24883a;font-weight:950;}
#page-home .hero-live-card--payment{left:-4%;top:17%;}
#page-home .hero-live-card--stock{right:-9%;top:30%;animation-delay:-1.1s;}
#page-home .hero-live-card--refill{left:-8%;bottom:19%;animation-delay:-2.1s;}
#page-home .hero-live-card--refill .hero-live-icon{background:#fff3cc;color:#c86a00;}
#page-home .hero-live-card--online{right:-5%;bottom:13%;animation-delay:-3s;}
#page-home .hero-live-card--online i{width:12px;height:12px;border-radius:50%;background:#35c85a;box-shadow:0 0 0 6px rgba(53,200,90,.14);animation:heroOnlinePulse 1.6s infinite;}

#page-home .hero-dispense-product{position:absolute;z-index:6;left:50%;bottom:8%;width:58px;transform:translateX(-50%);animation:heroProductDrop 3.2s ease-in-out infinite;}
#page-home .hero-dispense-product img{width:100%;filter:drop-shadow(0 12px 12px rgba(0,0,0,.3));}

#page-home .hero-activity{position:absolute;z-index:10;left:50%;bottom:18px;width:min(1180px,calc(100% - 48px));display:flex;align-items:center;overflow:hidden;border:1px solid rgba(23,0,43,.13);border-radius:14px;background:rgba(255,255,255,.76);color:#21002f;box-shadow:0 16px 42px rgba(23,0,43,.1);transform:translateX(-50%);backdrop-filter:blur(14px);}
#page-home .hero-activity-label{position:relative;z-index:2;display:flex;align-items:center;gap:9px;flex:0 0 auto;padding:14px 18px;background:var(--home-lime);color:#21002f;font-family:var(--font-mono);font-size:.68rem;font-weight:950;letter-spacing:.08em;}
#page-home .hero-activity-label i{width:8px;height:8px;border-radius:50%;background:#238f3c;animation:heroOnlinePulse 1.6s infinite;}
#page-home .hero-activity-window{overflow:hidden;}
#page-home .hero-activity-track{display:flex;align-items:center;gap:24px;width:max-content;padding-left:24px;animation:heroActivityMove 23s linear infinite;}
#page-home .hero-activity-track span{white-space:nowrap;color:#6b5973;font-size:.76rem;font-weight:700;}
#page-home .hero-activity-track b{margin-left:6px;color:var(--home-purple);}
#page-home .hero-activity-track i{width:5px;height:5px;border-radius:50%;background:var(--home-orange);}

@keyframes heroDashboardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes heroOnlinePulse{50%{opacity:.45;transform:scale(.82)}}
@keyframes heroProductDrop{0%,46%{opacity:0;transform:translate(-50%,-35px) rotate(-8deg) scale(.75)}60%,84%{opacity:1;transform:translate(-50%,0) rotate(5deg) scale(1)}100%{opacity:0;transform:translate(-50%,12px) rotate(5deg) scale(.94)}}
@keyframes heroActivityMove{to{transform:translateX(-50%)}}

@media(max-width:1100px){
  #page-home .hero-grid{grid-template-columns:minmax(0,1fr) minmax(390px,.8fr) !important;gap:22px !important;}
  #page-home .hero-live-card--stock,#page-home .hero-live-card--online{right:0;}
  #page-home .hero-live-card--payment,#page-home .hero-live-card--refill{left:0;}
}

@media(max-width:980px){
  #page-home .snap-hero{padding:46px 0 104px !important;}
  #page-home .hero-grid{grid-template-columns:1fr !important;}
  #page-home .hero-copy{text-align:center;margin-inline:auto;}
  #page-home .badge-row,#page-home .hero-ctas,#page-home .hero-trust-line{justify-content:center;}
  #page-home .hero-copy h1{font-size:clamp(3.1rem,10vw,5rem) !important;}
  #page-home .hero-copy .lead{margin-inline:auto;}
  #page-home .hero-visual{min-height:540px !important;width:min(620px,100%);margin-inline:auto;}
}

@media(max-width:640px){
  #page-home .snap-hero{padding-top:34px !important;}
  #page-home .hero-grid{padding:0 18px !important;}
  #page-home .badge-row{gap:7px !important;}
  #page-home .badge{font-size:.58rem !important;padding:6px 8px !important;}
  #page-home .hero-copy h1{font-size:clamp(2.7rem,13vw,4rem) !important;}
  #page-home .hero-ctas{flex-direction:column;align-items:stretch;}
  #page-home .hero-trust-line{gap:10px 14px;font-size:.7rem;}
  #page-home .hero-visual{min-height:460px !important;}
  #page-home .hero-video-machine{width:min(68vw,300px) !important;}
  #page-home .hero-visual::before{width:340px;height:340px;}
  #page-home .hero-live-card{min-width:145px;padding:9px 10px;gap:7px;border-radius:12px;}
  #page-home .hero-live-card small{font-size:.46rem;}
  #page-home .hero-live-card strong{font-size:.65rem;}
  #page-home .hero-live-icon{flex-basis:27px;width:27px;height:27px;border-radius:8px;font-size:.72rem;}
  #page-home .hero-live-card--payment{top:12%;left:0;}
  #page-home .hero-live-card--stock{top:28%;right:0;}
  #page-home .hero-live-card--refill{bottom:18%;left:0;}
  #page-home .hero-live-card--online{bottom:7%;right:0;}
  #page-home .hero-activity{bottom:12px;width:calc(100% - 24px);}
  #page-home .hero-activity-label{padding:12px 11px;font-size:.56rem;}
}

@media(prefers-reduced-motion:reduce){
  #page-home .hero-live-card,#page-home .hero-dispense-product,#page-home .hero-activity-track{animation:none !important;}
}

/* Snack Portal hero: playful, ownable SnapGo composition */
#page-home .hero-copy h1{
  font-size:clamp(3rem,4.8vw,5.5rem) !important;
  line-height:.94 !important;
  letter-spacing:-.055em !important;
}

#page-home .hero-copy h1 .accent{
  position:relative;
  z-index:1;
  margin-top:12px;
  padding:0 .06em .06em;
  color:var(--home-purple) !important;
  background:none !important;
  transform:rotate(-1deg);
  white-space:nowrap;
}

#page-home .hero-copy h1 .accent::after{
  content:"";
  position:absolute;
  z-index:-1;
  left:-.03em;
  right:-.06em;
  bottom:-.01em;
  height:.24em;
  border-radius:52% 48% 44% 56%;
  background:var(--home-amber);
  transform:rotate(-1.2deg);
  clip-path:polygon(0 22%,100% 0,98% 78%,3% 100%);
}

#page-home .hero-visual{
  min-height:620px !important;
  transform:rotate(1deg);
}

#page-home .hero-visual::before{
  width:520px;
  height:570px;
  border:3px solid var(--home-ink);
  border-radius:46% 54% 43% 57% / 39% 43% 57% 61%;
  background:
    radial-gradient(circle at 68% 22%,rgba(255,255,255,.7),transparent 12rem),
    linear-gradient(145deg,#ffe69b,#ffc52e 52%,#ff9d30);
  box-shadow:18px 20px 0 rgba(113,36,138,.16),0 32px 90px rgba(113,36,138,.18);
  transform:translate(-50%,-50%) rotate(-4deg);
}

#page-home .hero-visual::after{
  content:"";
  position:absolute;
  z-index:1;
  left:50%;
  top:50%;
  width:600px;
  height:600px;
  border:2px dashed rgba(113,36,138,.34);
  border-radius:50%;
  transform:translate(-50%,-50%);
  animation:portalSpin 40s linear infinite;
  pointer-events:none;
}

#page-home .hero-portal-copy{
  position:absolute;
  z-index:2;
  left:50%;
  top:50%;
  color:rgba(255,255,255,.34);
  font-family:var(--font-display);
  font-size:clamp(5rem,8vw,8rem);
  font-weight:950;
  line-height:.72;
  letter-spacing:-.08em;
  text-align:center;
  transform:translate(-50%,-50%) rotate(-7deg);
  pointer-events:none;
}

#page-home .hero-install-sticker{
  position:absolute;
  z-index:9;
  right:-2%;
  top:5%;
  display:flex;
  align-items:center;
  gap:8px;
  width:132px;
  height:132px;
  padding:20px;
  border:3px solid var(--home-ink);
  border-radius:50%;
  background:var(--home-lime);
  color:var(--home-ink);
  box-shadow:7px 8px 0 var(--home-ink);
  transform:rotate(9deg);
  animation:stickerBob 3.4s ease-in-out infinite;
}
#page-home .hero-install-sticker strong{font-family:var(--font-display);font-size:2.1rem;line-height:1;}
#page-home .hero-install-sticker span{font-family:var(--font-mono);font-size:.55rem;font-weight:950;line-height:1.15;}

#page-home .snack-orbit{
  --orbit-size:590px !important;
  --orbit-radius:278px !important;
  position:absolute !important;
  z-index:8 !important;
  left:50% !important;
  top:50% !important;
  display:block !important;
  width:var(--orbit-size) !important;
  min-width:0 !important;
  aspect-ratio:1 !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  transform:translate(-50%,-50%) !important;
  animation:none !important;
  pointer-events:none;
}
#page-home .snack-orbit::before,#page-home .snack-orbit::after{display:none !important;}
#page-home .float-snack{
  width:62px !important;
  height:62px !important;
  border:2px solid var(--home-ink) !important;
  border-radius:19px !important;
  background:#fff !important;
  box-shadow:5px 6px 0 var(--home-ink),0 18px 30px rgba(23,0,43,.14) !important;
}
#page-home .float-snack img{width:51px !important;height:51px !important;animation:none !important;}

#page-home .hero-video-machine{z-index:5 !important;width:clamp(340px,21vw,420px) !important;top:52% !important;}
#page-home .hero-machine-art{animation:homeMachineShowcase 5.8s cubic-bezier(.42,0,.2,1) infinite alternate !important;}

#page-home .hero-live-card{
  z-index:10;
  border:2px solid var(--home-ink);
  border-radius:8px 18px 8px 18px;
  box-shadow:5px 6px 0 var(--home-ink),0 18px 38px rgba(23,0,43,.13);
}
#page-home .hero-live-card--payment{left:-8%;top:20%;transform:rotate(-3deg);}
#page-home .hero-live-card--stock{right:-10%;top:38%;transform:rotate(3deg);}
#page-home .hero-live-card--refill{left:-7%;bottom:13%;transform:rotate(2deg);}
#page-home .hero-live-card--online{display:none;}
#page-home .hero-dispense-product{display:none;}

@keyframes portalSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes stickerBob{50%{transform:rotate(5deg) translateY(-8px)}}

@media(max-width:1100px){
  #page-home .hero-visual::before{width:450px;height:520px;}
  #page-home .hero-visual::after{width:520px;height:520px;}
  #page-home .snack-orbit{--orbit-size:520px !important;--orbit-radius:244px !important;}
  #page-home .float-snack{width:52px !important;height:52px !important;}
  #page-home .float-snack img{width:42px !important;height:42px !important;}
}

@media(max-width:980px){
  #page-home .hero-visual{width:min(650px,100%);transform:none;}
  #page-home .hero-live-card--payment{left:2%;}
  #page-home .hero-live-card--stock{right:2%;}
  #page-home .hero-live-card--refill{left:4%;}
  #page-home .hero-install-sticker{right:3%;}
}

@media(max-width:640px){
  #page-home .hero-copy h1 .accent{white-space:normal;}
  #page-home .hero-visual{min-height:500px !important;}
  #page-home .hero-visual::before{width:300px;height:390px;}
  #page-home .hero-visual::after{width:350px;height:350px;}
  #page-home .hero-portal-copy{font-size:4.4rem;}
  #page-home .hero-video-machine{width:min(65vw,285px) !important;}
  #page-home .snack-orbit{--orbit-size:360px !important;--orbit-radius:168px !important;}
  #page-home .float-snack{width:38px !important;height:38px !important;border-radius:12px !important;box-shadow:3px 4px 0 var(--home-ink) !important;}
  #page-home .float-snack img{width:31px !important;height:31px !important;}
  #page-home .hero-install-sticker{width:92px;height:92px;padding:11px;right:0;top:7%;box-shadow:4px 5px 0 var(--home-ink);}
  #page-home .hero-install-sticker strong{font-size:1.5rem;}
  #page-home .hero-install-sticker span{font-size:.42rem;}
  #page-home .hero-live-card--payment{left:0;top:19%;}
  #page-home .hero-live-card--stock{right:0;top:44%;}
  #page-home .hero-live-card--refill{left:0;bottom:6%;}
}

/* Premium machine stage: keep the product clear and uncluttered */
#page-home .hero-visual{
  min-height:610px !important;
  overflow:visible;
  transform:none !important;
}

#page-home .hero-visual::before{
  width:min(94%,520px);
  height:550px;
  border:1px solid rgba(113,36,138,.16);
  border-radius:58px 160px 58px 160px;
  background:
    radial-gradient(circle at 72% 18%,rgba(255,255,255,.94),transparent 12rem),
    linear-gradient(145deg,#f6edff 0%,#ebdcff 54%,#ffe9bc 100%);
  box-shadow:18px 20px 0 rgba(113,36,138,.09),0 36px 80px rgba(61,14,82,.14);
  transform:translate(-50%,-50%) rotate(2deg);
}

#page-home .hero-visual::after{
  content:"";
  position:absolute;
  z-index:3;
  left:50%;
  bottom:42px;
  width:330px;
  height:44px;
  border:2px solid rgba(23,0,43,.16);
  border-radius:50%;
  background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(113,36,138,.12));
  box-shadow:0 24px 28px rgba(23,0,43,.18);
  transform:translateX(-50%);
  animation:none;
}

#page-home .hero-portal-copy{
  z-index:2;
  top:48%;
  color:rgba(113,36,138,.075);
  font-size:clamp(5.5rem,8vw,8.5rem);
  line-height:.74;
  transform:translate(-50%,-50%) rotate(-7deg);
}

#page-home .hero-stage-orbits{
  position:absolute;
  z-index:3;
  left:50%;
  top:50%;
  width:500px;
  height:500px;
  transform:translate(-50%,-50%);
  pointer-events:none;
}

#page-home .hero-stage-orbits i{
  position:absolute;
  border-radius:50%;
}

#page-home .hero-stage-orbits i:first-child{
  inset:0;
  border:2px dashed rgba(113,36,138,.32);
  border-top-color:var(--home-purple);
  border-right-color:rgba(254,124,1,.68);
  animation:heroOrbitClockwise 18s linear infinite;
}

#page-home .hero-stage-orbits i:last-child{
  inset:48px;
  border:2px solid rgba(253,200,52,.42);
  border-top-style:dashed;
  border-left-color:rgba(113,36,138,.5);
  animation:heroOrbitAnticlockwise 13s linear infinite;
}

#page-home .hero-stage-orbits i::after{
  content:"";
  position:absolute;
  left:50%;
  top:-7px;
  width:12px;
  height:12px;
  border:2px solid #fff;
  border-radius:50%;
  background:var(--home-orange);
  box-shadow:0 4px 10px rgba(23,0,43,.2);
}

#page-home .hero-stage-orbits i:last-child::after{
  top:auto;
  bottom:-7px;
  background:var(--home-purple);
}

#page-home .hero-product-ring span{
  position:absolute;
  z-index:2;
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border:1px solid rgba(23,0,43,.14);
  border-radius:16px;
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 24px rgba(23,0,43,.15);
}

#page-home .hero-product-ring span img{
  width:43px;
  height:43px;
  object-fit:contain;
  filter:drop-shadow(0 6px 6px rgba(23,0,43,.18));
}

#page-home .hero-product-ring span:nth-child(1){left:50%;top:0;transform:translate(-50%,-50%)}
#page-home .hero-product-ring span:nth-child(2){right:0;top:50%;transform:translate(50%,-50%)}
#page-home .hero-product-ring span:nth-child(3){left:50%;bottom:0;transform:translate(-50%,50%)}
#page-home .hero-product-ring span:nth-child(4){left:0;top:50%;transform:translate(-50%,-50%)}

#page-home .hero-product-ring--outer span img{animation:heroProductCounterClockwise 18s linear infinite;}
#page-home .hero-product-ring--inner span img{animation:heroProductCounterClockwise 13s linear infinite reverse;}

@keyframes heroOrbitClockwise{to{transform:rotate(360deg)}}
@keyframes heroOrbitAnticlockwise{to{transform:rotate(-360deg)}}
@keyframes heroProductCounterClockwise{to{transform:rotate(-360deg)}}

#page-home .snack-orbit,
#page-home .hero-install-sticker,
#page-home .hero-live-card--refill,
#page-home .hero-live-card--online,
#page-home .hero-dispense-product{
  display:none !important;
}

#page-home .hero-video-machine{
  z-index:5 !important;
  width:clamp(300px,19vw,365px) !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
}

#page-home .hero-video-machine::before{
  bottom:-4px;
  width:82%;
  height:25px;
  background:rgba(23,0,43,.22);
  filter:blur(16px);
}

#page-home .hero-video-machine::after{
  inset:8% -12% 4%;
  background:radial-gradient(circle,rgba(255,255,255,.78),rgba(253,200,52,.13) 48%,transparent 72%);
  filter:blur(30px);
}

#page-home .hero-machine-art{
  filter:drop-shadow(0 30px 34px rgba(23,0,43,.3)) !important;
  animation:premiumMachineFloat 5s ease-in-out infinite !important;
}

#page-home .hero-live-card{
  min-width:178px;
  padding:11px 13px;
  border:1px solid rgba(23,0,43,.16);
  border-radius:16px;
  background:rgba(255,255,255,.9);
  box-shadow:0 16px 38px rgba(23,0,43,.14);
  transform:none;
  animation:premiumStatusFloat 4s ease-in-out infinite;
}

#page-home .hero-live-card--payment{
  left:-1%;
  top:24%;
}

#page-home .hero-live-card--stock{
  right:-2%;
  top:auto;
  bottom:22%;
  animation-delay:-2s;
}

@keyframes premiumMachineFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}

@keyframes premiumStatusFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-7px)}
}

@media(max-width:980px){
  #page-home .hero-visual{min-height:570px !important;}
  #page-home .hero-visual::before{width:500px;height:530px;}
  #page-home .hero-video-machine{width:min(55vw,350px) !important;}
  #page-home .hero-live-card--payment{left:3%;}
  #page-home .hero-live-card--stock{right:3%;}
  #page-home .hero-stage-orbits{width:470px;height:470px;}
}

@media(max-width:640px){
  #page-home .hero-visual{min-height:480px !important;}
  #page-home .hero-visual::before{width:310px;height:430px;border-radius:40px 100px 40px 100px;}
  #page-home .hero-visual::after{bottom:28px;width:220px;height:30px;}
  #page-home .hero-video-machine{width:min(61vw,275px) !important;}
  #page-home .hero-portal-copy{font-size:4rem;}
  #page-home .hero-live-card{min-width:138px;padding:8px 9px;}
  #page-home .hero-live-card--payment{left:0;top:22%;}
  #page-home .hero-live-card--stock{right:0;bottom:17%;}
  #page-home .hero-stage-orbits{width:330px;height:330px;}
  #page-home .hero-stage-orbits i:last-child{inset:34px;}
  #page-home .hero-product-ring span{width:38px;height:38px;border-radius:11px;}
  #page-home .hero-product-ring span img{width:31px;height:31px;}
}

@media(prefers-reduced-motion:reduce){
  #page-home .hero-stage-orbits i,
  #page-home .hero-product-ring span img{animation:none !important;}
}

/* Home palette system: flat lavender canvas + SnapGo logo accents */
#page-home{
  --sg-classic-lavender:#e6e6fa;
  --sg-light-lavender:#f3e8f5;
  --sg-white:#fffdfd;
  --sg-ink:#260033;
  --sg-purple:#7a2a91;
  --sg-magenta:#b72888;
  --sg-coral:#f23d72;
  --sg-orange:#b72888;
  color:var(--sg-ink);
  background:var(--sg-classic-lavender) !important;
}

#page-home.page *,
#page-home.page *::before,
#page-home.page *::after{
  background-image:none !important;
}

/* No gradients on the Home page */
#page-home .snap-hero,
#page-home .snap-hero::before,
#page-home .home-glow,
#page-home .badge,
#page-home .btn,
#page-home .hero-visual::before,
#page-home .hero-visual::after,
#page-home .hero-video-machine::after,
#page-home .hero-live-card,
#page-home .hero-activity,
#page-home .story-marquee--home,
#page-home #demo,
#page-home .machine,
#page-home .machine-screen,
#page-home .slot,
#page-home .section-bridge--snack,
#page-home .machine-intel-card,
#page-home .intel-screen,
#page-home .section,
#page-home .section-alt,
#page-home .home-wallpaper-section,
#page-home .feature-card,
#page-home .promise-banner,
#page-home .promise-banner::before,
#page-home .promise-banner::after,
#page-home .ops-flow-panel,
#page-home .ops-card,
#page-home .final-cta,
#page-home .final-cta::before,
#page-home .final-cta::after{
  background-image:none !important;
}

#page-home .snap-hero{
  background-color:var(--sg-classic-lavender) !important;
}

#page-home .snap-hero::before{
  background-color:transparent !important;
}

#page-home .home-glow,
#page-home .food-sprinkles{
  display:none !important;
}

#page-home .hero-copy h1,
#page-home .section-head h2,
#page-home .demo-copy h2,
#page-home .machine-intel-copy h2,
#page-home .promise-banner h2,
#page-home .final-cta h2{
  color:var(--sg-ink) !important;
  text-shadow:none !important;
}

#page-home .hero-copy h1 .accent{
  color:var(--sg-purple) !important;
  background:none !important;
}

#page-home .hero-copy h1 .accent::after{
  background:var(--sg-orange) !important;
}

#page-home .hero-copy .lead,
#page-home .section-head .lead,
#page-home .demo-copy .lead,
#page-home .machine-intel-copy p,
#page-home .final-cta .lead{
  color:#5f496a !important;
}

#page-home .home-kicker,
#page-home .eyebrow,
#page-home .machine-intel-kicker,
#page-home .ops-tag{
  border-color:var(--sg-purple) !important;
  background:var(--sg-white) !important;
  color:var(--sg-purple) !important;
  box-shadow:3px 3px 0 var(--sg-purple) !important;
}

#page-home .badge{
  border-color:rgba(38,0,51,.16) !important;
  background-color:rgba(255,253,253,.76) !important;
  color:var(--sg-ink) !important;
  box-shadow:none !important;
}

#page-home .hero-ctas .btn-primary,
#page-home .final-cta .btn{
  border-color:var(--sg-ink) !important;
  background-color:var(--sg-orange) !important;
  color:#fff !important;
  box-shadow:5px 6px 0 var(--sg-purple) !important;
}

#page-home .hero-ctas .btn-secondary{
  border-color:var(--sg-purple) !important;
  background-color:var(--sg-white) !important;
  color:var(--sg-purple) !important;
  box-shadow:4px 5px 0 var(--sg-purple) !important;
}

#page-home .hero-trust-line{color:#604b69 !important;}
#page-home .hero-trust-line b{background:var(--sg-coral) !important;color:#fff !important;}

#page-home .hero-visual::before{
  border-color:rgba(122,42,145,.22) !important;
  background-color:var(--sg-light-lavender) !important;
  box-shadow:18px 20px 0 rgba(122,42,145,.12),0 30px 70px rgba(38,0,51,.11) !important;
}

#page-home .hero-visual::after{
  background-color:rgba(122,42,145,.12) !important;
}

#page-home .hero-portal-copy{color:rgba(122,42,145,.08) !important;}
#page-home .hero-stage-orbits i:first-child{border-color:rgba(122,42,145,.38) !important;border-top-color:var(--sg-purple) !important;border-right-color:var(--sg-orange) !important;}
#page-home .hero-stage-orbits i:last-child{border-color:rgba(183,40,136,.34) !important;border-left-color:var(--sg-magenta) !important;}
#page-home .hero-stage-orbits i::after{background:var(--sg-orange) !important;}
#page-home .hero-stage-orbits i:last-child::after{background:var(--sg-purple) !important;}

#page-home .hero-product-ring span,
#page-home .hero-live-card{
  border-color:rgba(122,42,145,.2) !important;
  background-color:var(--sg-white) !important;
}

#page-home .hero-live-icon{background:var(--sg-light-lavender) !important;color:var(--sg-purple) !important;}

#page-home .hero-activity{
  border-color:rgba(122,42,145,.2) !important;
  background-color:rgba(255,253,253,.88) !important;
}

#page-home .hero-activity-label{
  background:var(--sg-purple) !important;
  color:#fff !important;
}

#page-home .hero-activity-track b{color:var(--sg-magenta) !important;}
#page-home .hero-activity-track i{background:var(--sg-orange) !important;}

#page-home .story-marquee--home{
  background-color:var(--sg-purple) !important;
  color:#fff !important;
}
#page-home .story-marquee--home b{background:var(--sg-orange) !important;}
#page-home .story-marquee--home b:nth-of-type(2n){background:var(--sg-coral) !important;}

#page-home #demo,
#page-home .section.home-wallpaper-section,
#page-home .section:not(.section-alt){
  background-color:var(--sg-light-lavender) !important;
}

#page-home .section-bridge--snack,
#page-home .section-alt,
#page-home .home-section-shell.section-alt{
  background-color:var(--sg-classic-lavender) !important;
}

#page-home .machine{
  border-color:var(--sg-ink) !important;
  background-color:var(--sg-purple) !important;
  box-shadow:10px 12px 0 var(--sg-ink) !important;
}

#page-home .machine-screen{
  background-color:var(--sg-ink) !important;
  color:#fff !important;
}

#page-home .slot{
  border-color:rgba(38,0,51,.24) !important;
  background-color:var(--sg-white) !important;
}

#page-home .slot.in-cart{box-shadow:inset 0 -8px 0 rgba(38,0,51,.05),0 0 0 3px rgba(242,61,114,.35),0 12px 22px rgba(38,0,51,.14) !important;}
#page-home .slot-qty-badge{background:var(--sg-coral) !important;color:#fff !important;}

#page-home .machine-intel-card,
#page-home .feature-card,
#page-home .ops-flow-panel,
#page-home .ops-card{
  border-color:rgba(122,42,145,.2) !important;
  background-color:var(--sg-white) !important;
  box-shadow:0 18px 46px rgba(38,0,51,.09) !important;
}

#page-home .feature-card:nth-child(1),
#page-home .ops-card:nth-child(1){border-top:5px solid var(--sg-orange) !important;}
#page-home .feature-card:nth-child(2),
#page-home .ops-card:nth-child(2){border-top:5px solid var(--sg-magenta) !important;}
#page-home .feature-card:nth-child(3){border-top:5px solid var(--sg-purple) !important;}

#page-home .promise-banner{
  border-color:var(--sg-purple) !important;
  background-color:var(--sg-classic-lavender) !important;
  color:var(--sg-ink) !important;
  box-shadow:8px 9px 0 var(--sg-purple) !important;
}

#page-home .promise-banner p{color:#5f496a !important;}

#page-home .final-cta{
  border-color:var(--sg-purple) !important;
  background-color:var(--sg-light-lavender) !important;
  box-shadow:8px 9px 0 var(--sg-purple) !important;
}

#page-home .section-head h2::after{
  background:var(--sg-coral) !important;
}

body[data-page="home"] .site-header{
  border-bottom-color:rgba(122,42,145,.16) !important;
  background:#fffdfd !important;
}

body[data-page="home"] .nav-link::after,
body[data-page="home"] .nav-links a::after{
  background:var(--sg-purple) !important;
}

body[data-page="home"] .nav-cta .btn,
body[data-page="home"] .mobile-menu .btn{
  border-color:var(--sg-ink) !important;
  background:var(--sg-orange) !important;
  background-image:none !important;
  color:#fff !important;
  box-shadow:4px 5px 0 var(--sg-purple) !important;
}

body[data-page="home"] .site-footer{
  background:#260033 !important;
  background-image:none !important;
}

/* Restore the subtle boxed grid without introducing a color gradient */
#page-home .snap-hero{
  background-color:var(--sg-classic-lavender) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Cpath d='M44 0H0V44' fill='none' stroke='%237a2a91' stroke-opacity='.09' stroke-width='1'/%3E%3C/svg%3E") !important;
  background-size:44px 44px !important;
}

/* Home section composition and hierarchy */
#page-home .section,
#page-home .section-bridge{
  position:relative;
  margin:0 !important;
  border:0 !important;
  overflow:hidden;
}

#page-home .section + .section,
#page-home .section-bridge + .section,
#page-home .promise-banner + .section{
  border-top:1px solid rgba(122,42,145,.1) !important;
}

#page-home .section > .container,
#page-home .section-bridge > .container{
  position:relative;
  z-index:2;
}

#page-home .section-head{
  max-width:780px;
  margin-bottom:34px !important;
}

#page-home .section-head.center{
  margin-left:auto;
  margin-right:auto;
}

#page-home .section-head h2,
#page-home .demo-copy h2,
#page-home .machine-intel-copy h2{
  margin-top:13px;
  font-size:clamp(2.25rem,4vw,4rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}

#page-home .section-head h2::after{
  content:"";
  display:block;
  width:68px;
  height:6px;
  margin-top:15px;
  border-radius:999px;
}

#page-home .section-head.center h2::after{margin-left:auto;margin-right:auto;}

/* Interactive demo: copy panel + product machine */
#page-home #demo{
  padding-top:clamp(52px,6vw,78px) !important;
  padding-bottom:clamp(52px,6vw,78px) !important;
}

#page-home #demo .blob{display:none !important;}

#page-home .demo-wrap{
  grid-template-columns:minmax(300px,.78fr) minmax(430px,1.22fr) !important;
  gap:clamp(36px,6vw,88px) !important;
  align-items:center;
}

#page-home .demo-copy{
  padding:clamp(26px,3vw,42px);
  border:1px solid rgba(122,42,145,.18);
  border-left:7px solid var(--sg-orange);
  border-radius:26px;
  background:rgba(255,253,253,.72) !important;
  box-shadow:0 20px 48px rgba(38,0,51,.08);
}

#page-home .demo-copy::after{
  top:-16px !important;
  right:22px !important;
  border-color:var(--sg-purple) !important;
  background:var(--sg-coral) !important;
  color:#fff !important;
  box-shadow:3px 4px 0 var(--sg-purple) !important;
}

#page-home .demo-counter{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:4px;
  border:1px solid rgba(122,42,145,.2) !important;
  background:var(--sg-classic-lavender) !important;
  color:var(--sg-purple) !important;
}

#page-home .demo-hint{color:#66516f !important;}

/* Intelligence bridge */
#page-home .section-bridge--snack{
  padding:44px 0 !important;
}

#page-home .machine-intel-card{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,.8fr) !important;
  min-height:330px;
  padding:clamp(30px,4vw,54px) !important;
  border-left:8px solid var(--sg-magenta) !important;
  border-radius:30px !important;
}

#page-home .machine-intel-card::before{
  display:none !important;
  content:none !important;
  background:transparent !important;
}

#page-home .machine-intel-copy{align-self:center;max-width:680px;}
#page-home .machine-intel-visual{min-height:230px;}
#page-home .intel-screen{
  border:2px solid var(--sg-purple) !important;
  background:var(--sg-light-lavender) !important;
  box-shadow:7px 8px 0 var(--sg-purple) !important;
}
#page-home .intel-screen b{color:var(--sg-purple) !important;}
#page-home .intel-product{border-color:var(--sg-purple) !important;background:var(--sg-white) !important;}

/* Benefit and audience card systems */
#page-home .grid-3{
  align-items:stretch;
  gap:24px !important;
}

#page-home .feature-card,
#page-home .preview-card{
  position:relative;
  min-height:250px;
  padding:30px !important;
  border:1px solid rgba(122,42,145,.18) !important;
  border-radius:24px !important;
  background:var(--sg-white) !important;
  box-shadow:0 14px 34px rgba(38,0,51,.07) !important;
  transition:transform .22s ease,box-shadow .22s ease;
}

#page-home .feature-card:hover,
#page-home .preview-card:hover{
  transform:translateY(-7px) !important;
  box-shadow:0 23px 44px rgba(38,0,51,.12) !important;
}

#page-home .feature-card::before,
#page-home .preview-card::before{
  content:"0" counter(homeCard);
  position:absolute;
  right:22px;
  top:18px;
  color:rgba(122,42,145,.16);
  font-family:var(--font-display);
  font-size:2.2rem;
  font-weight:950;
}

#page-home .grid-3{counter-reset:homeCard;}
#page-home .feature-card,
#page-home .preview-card{counter-increment:homeCard;}

#page-home .card-icon{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  margin-bottom:22px;
  border:2px solid var(--sg-purple) !important;
  border-radius:18px !important;
  background:var(--sg-classic-lavender) !important;
  box-shadow:4px 5px 0 var(--sg-purple) !important;
}

#page-home .feature-card:nth-child(2) .card-icon,
#page-home .preview-card:nth-child(2) .card-icon{background:var(--sg-light-lavender) !important;box-shadow:4px 5px 0 var(--sg-magenta) !important;}
#page-home .feature-card:nth-child(3) .card-icon,
#page-home .preview-card:nth-child(3) .card-icon{background:var(--sg-classic-lavender) !important;box-shadow:4px 5px 0 var(--sg-magenta) !important;}

#page-home .card-title{font-size:1.2rem !important;color:var(--sg-ink) !important;}
#page-home .card-text{color:#68546f !important;line-height:1.65 !important;}

/* Campus story: editorial split card */
#page-home .promise-banner{
  width:min(1320px,calc(100% - 48px)) !important;
  min-height:410px !important;
  margin:48px auto !important;
  padding:clamp(34px,5vw,68px) !important;
  border-width:1px !important;
  border-left:9px solid var(--sg-orange) !important;
  border-radius:32px !important;
  box-shadow:0 22px 54px rgba(38,0,51,.1) !important;
}

#page-home .campus-drop-copy{max-width:620px;}
#page-home .campus-kicker{background:var(--sg-purple) !important;color:#fff !important;border-color:var(--sg-purple) !important;}
#page-home .campus-chip-row span{
  border-color:rgba(122,42,145,.2) !important;
  background:var(--sg-white) !important;
  color:var(--sg-purple) !important;
  box-shadow:none !important;
}
#page-home .campus-chat-card{
  border-color:var(--sg-purple) !important;
  background:var(--sg-white) !important;
  box-shadow:8px 9px 0 var(--sg-purple) !important;
}
#page-home .chat-topbar{background:var(--sg-purple) !important;color:#fff !important;}
#page-home .chat-bubble{border-color:rgba(122,42,145,.16) !important;background:var(--sg-light-lavender) !important;}
#page-home .chat-bubble--two{background:var(--sg-classic-lavender) !important;}

/* Secondary location marquee */
#page-home .story-marquee--soft{
  margin:0 !important;
  border:0 !important;
  background:var(--sg-magenta) !important;
  color:#fff !important;
  transform:none !important;
}
#page-home .story-marquee--soft b{background:var(--sg-orange) !important;}

/* Operations: two clear workstreams */
#page-home .ops-flow-panel{
  gap:22px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

#page-home .ops-card{
  padding:clamp(26px,3vw,40px) !important;
  border:1px solid rgba(122,42,145,.18) !important;
  border-radius:28px !important;
}

#page-home .ops-card--machine{border-top:7px solid var(--sg-purple) !important;}
#page-home .ops-card--payment{border-top:7px solid var(--sg-orange) !important;}
#page-home .ops-card h3{color:var(--sg-ink) !important;font-size:clamp(1.3rem,2vw,1.7rem) !important;}
#page-home .ops-card .feature-row-title{color:var(--sg-magenta) !important;}

#page-home .feature-row{
  margin-top:14px;
  padding:18px !important;
  border:1px solid rgba(122,42,145,.12) !important;
  border-radius:18px !important;
  background:var(--sg-light-lavender) !important;
}
#page-home .ops-card--payment .feature-row{background:var(--sg-classic-lavender) !important;}
#page-home .feature-row-icon{background:var(--sg-white) !important;border-color:var(--sg-purple) !important;}
#page-home .feature-row-icon span{background:var(--sg-purple) !important;color:#fff !important;}
#page-home .ops-card--payment .feature-row-icon span{background:var(--sg-orange) !important;}

/* Closing CTA */
#page-home .section:last-of-type{background-color:var(--sg-classic-lavender) !important;}
#page-home .final-cta{
  min-height:300px !important;
  padding:clamp(40px,5vw,66px) !important;
  border:0 !important;
  border-radius:32px !important;
  background:var(--sg-purple) !important;
  box-shadow:12px 13px 0 var(--sg-orange) !important;
}
#page-home .final-cta .blob{display:none !important;}
#page-home .final-cta h2,
#page-home .final-cta .lead{color:#fff !important;}
#page-home .final-cta .btn{background:var(--sg-orange) !important;box-shadow:5px 6px 0 var(--sg-ink) !important;}

@media(max-width:980px){
  #page-home .demo-wrap{grid-template-columns:1fr !important;}
  #page-home .demo-copy{max-width:720px;margin-inline:auto;}
  #page-home .machine-intel-card{grid-template-columns:1fr !important;gap:30px;}
  #page-home .promise-banner{width:min(92%,760px) !important;}
}

@media(max-width:640px){
  #page-home .section-head h2,
  #page-home .demo-copy h2,
  #page-home .machine-intel-copy h2{font-size:clamp(2rem,10vw,2.8rem) !important;}
  #page-home .demo-copy{padding:24px 20px;border-left-width:5px;}
  #page-home .machine-intel-card{padding:26px 20px !important;border-left-width:5px !important;}
  #page-home .feature-card,#page-home .preview-card{min-height:0;padding:24px !important;}
  #page-home .promise-banner{width:calc(100% - 28px) !important;margin:28px auto !important;padding:28px 20px !important;border-left-width:5px !important;}
  #page-home .ops-card{padding:24px 18px !important;}
  #page-home .feature-row{padding:15px 12px !important;}
  #page-home .final-cta{border-radius:24px !important;box-shadow:7px 8px 0 var(--sg-orange) !important;}
}

/* Normalize section headers: compact labels, consistent rhythm */
#page-home .section-head{
  width:100%;
  max-width:900px;
  margin-bottom:30px !important;
}

#page-home .section-head.center{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}

#page-home .section-head .eyebrow,
#page-home .demo-copy .eyebrow{
  display:inline-flex !important;
  width:max-content !important;
  max-width:100%;
  justify-content:center !important;
  align-items:center;
  margin:0 0 14px !important;
  padding:8px 14px !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--sg-purple) !important;
  color:#fff !important;
  box-shadow:none !important;
  font-size:.7rem !important;
  line-height:1 !important;
  letter-spacing:.11em !important;
  transform:none !important;
}

#page-home .section-head.center .eyebrow{
  margin-left:auto !important;
  margin-right:auto !important;
}

#page-home .section-head h2{
  max-width:940px;
  margin:0 !important;
  font-size:clamp(2.35rem,3.7vw,3.7rem) !important;
  line-height:1.04 !important;
}

#page-home .section-head h2::after{
  width:58px;
  height:5px;
  margin-top:16px;
  background:var(--sg-magenta) !important;
}

#page-home .home-section-shell,
#page-home .home-wallpaper-section{
  padding-top:clamp(48px,5vw,68px) !important;
  padding-bottom:clamp(48px,5vw,68px) !important;
}

#page-home .section-head + .grid-3{
  margin-top:0 !important;
}

@media(max-width:640px){
  #page-home .section-head{margin-bottom:24px !important;}
  #page-home .section-head h2{font-size:clamp(2rem,9vw,2.75rem) !important;}
  #page-home .section-head .eyebrow,
  #page-home .demo-copy .eyebrow{font-size:.62rem !important;padding:7px 12px !important;}
  #page-home .home-section-shell,
  #page-home .home-wallpaper-section{padding-top:42px !important;padding-bottom:42px !important;}
}

/* Premium editorial finish */
#page-home [data-home-section]{
  isolation:isolate;
}

#page-home [data-home-section]::after{
  content:attr(data-home-section);
  position:absolute;
  z-index:0;
  right:clamp(22px,5vw,86px);
  top:clamp(18px,3vw,42px);
  color:rgba(122,42,145,.07);
  font-family:var(--font-display);
  font-size:clamp(5rem,10vw,10rem);
  font-weight:950;
  line-height:.75;
  letter-spacing:-.08em;
  pointer-events:none;
}

#page-home .section[data-home-section]::before,
#page-home .section-bridge[data-home-section]::before{
  content:"" !important;
  position:absolute;
  z-index:1;
  left:50%;
  top:0;
  display:block !important;
  width:min(1380px,calc(100% - 48px));
  height:1px;
  background:rgba(122,42,145,.13) !important;
  transform:translateX(-50%);
}

#page-home .section[data-home-section] > .container::after,
#page-home .section-bridge[data-home-section] > .container::after{
  content:"";
  position:absolute;
  right:0;
  top:-1px;
  width:38px;
  height:4px;
  border-radius:999px;
  background:var(--sg-magenta) !important;
}

#page-home .section-head .eyebrow::before,
#page-home .demo-copy .eyebrow::before{
  content:"";
  width:6px;
  height:6px;
  margin-right:7px;
  border:2px solid rgba(255,255,255,.65);
  border-radius:50%;
  background:var(--sg-coral) !important;
}

#page-home .section-head h2{
  text-wrap:balance;
}

/* More intentional demo stage */
#page-home .demo-wrap::before{
  content:"LIVE MACHINE";
  position:absolute;
  z-index:0;
  right:1%;
  bottom:-4%;
  color:rgba(122,42,145,.055);
  font-family:var(--font-display);
  font-size:clamp(4rem,8vw,8rem);
  font-weight:950;
  letter-spacing:-.07em;
  white-space:nowrap;
  transform:rotate(-4deg);
}

#page-home .demo-copy,
#page-home .machine{
  position:relative;
  z-index:2;
}

#page-home .demo-copy{
  border:0 !important;
  border-radius:30px 30px 30px 8px !important;
  box-shadow:0 25px 70px rgba(38,0,51,.11),inset 6px 0 0 var(--sg-magenta) !important;
}

#page-home .demo-counter{
  min-height:42px;
  padding:9px 14px !important;
  border-radius:999px !important;
  font-weight:900 !important;
}

#page-home .demo-counter span{
  display:grid;
  place-items:center;
  min-width:25px;
  height:25px;
  padding:0 6px;
  border-radius:50%;
  background:var(--sg-magenta) !important;
  color:#fff !important;
}

#page-home .machine{
  outline:10px solid rgba(255,255,255,.32);
  outline-offset:9px;
}

/* Intelligence card: quieter, more executive */
#page-home .machine-intel-card{
  border:0 !important;
  border-radius:36px 36px 12px 36px !important;
  box-shadow:0 28px 75px rgba(38,0,51,.11),inset 7px 0 0 var(--sg-magenta) !important;
}

#page-home .machine-intel-card::after{
  content:"LIVE DATA";
  position:absolute;
  right:26px;
  top:20px;
  color:rgba(122,42,145,.16);
  font-family:var(--font-mono);
  font-size:.63rem;
  font-weight:950;
  letter-spacing:.16em;
}

#page-home .intel-screen{
  padding:13px !important;
  border:0 !important;
  border-radius:24px !important;
  box-shadow:7px 8px 0 var(--sg-purple),0 20px 40px rgba(38,0,51,.12) !important;
}

#page-home .intel-screen div{
  border:1px solid rgba(122,42,145,.13) !important;
  background:rgba(255,253,253,.8) !important;
}

/* Premium card language */
#page-home .feature-card,
#page-home .preview-card{
  overflow:hidden;
  border:0 !important;
  border-radius:30px 30px 12px 30px !important;
  box-shadow:0 22px 55px rgba(38,0,51,.09),inset 0 0 0 1px rgba(122,42,145,.12) !important;
}

#page-home .feature-card::after,
#page-home .preview-card::after{
  content:"";
  position:absolute;
  right:-36px;
  bottom:-36px;
  width:104px;
  height:104px;
  border:18px solid rgba(122,42,145,.055);
  border-radius:50%;
  background:transparent !important;
}

#page-home .feature-card:nth-child(2),
#page-home .preview-card:nth-child(2){
  transform:translateY(14px);
}

#page-home .feature-card:hover,
#page-home .preview-card:hover{
  transform:translateY(-8px) !important;
  box-shadow:0 30px 66px rgba(38,0,51,.15),inset 0 0 0 1px rgba(122,42,145,.18) !important;
}

#page-home .card-icon{
  border:0 !important;
  border-radius:20px 20px 8px 20px !important;
  box-shadow:4px 5px 0 var(--sg-purple) !important;
}

#page-home .card-title{
  margin-bottom:10px !important;
  font-size:1.28rem !important;
  letter-spacing:-.025em;
}

/* Campus conversation feature */
#page-home .promise-banner{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:0 !important;
  border-radius:42px 42px 14px 42px !important;
  box-shadow:0 30px 80px rgba(38,0,51,.12),inset 8px 0 0 var(--sg-magenta) !important;
}

#page-home .promise-banner::before{
  content:"CAMPUS MODE" !important;
  position:absolute;
  z-index:0;
  right:-12px;
  bottom:-12px;
  display:block !important;
  color:rgba(122,42,145,.06);
  font-family:var(--font-display);
  font-size:clamp(4rem,8vw,8rem);
  font-weight:950;
  letter-spacing:-.07em;
  white-space:nowrap;
}

#page-home .promise-banner::after{
  top:24px;
  right:28px;
  color:rgba(122,42,145,.1);
  font-size:5rem;
}

#page-home .campus-drop-copy,
#page-home .campus-chat-card{position:relative;z-index:2;}

#page-home .campus-chat-card{
  border:0 !important;
  border-radius:24px 24px 8px 24px !important;
  box-shadow:8px 9px 0 var(--sg-purple),0 25px 50px rgba(38,0,51,.13) !important;
}

/* Operations feel like a premium control system */
#page-home .ops-card{
  position:relative;
  overflow:hidden;
  border:0 !important;
  border-radius:32px 32px 12px 32px !important;
  box-shadow:0 24px 64px rgba(38,0,51,.1),inset 0 0 0 1px rgba(122,42,145,.12) !important;
}

#page-home .ops-card--machine{box-shadow:0 24px 64px rgba(38,0,51,.1),inset 7px 0 0 var(--sg-purple) !important;}
#page-home .ops-card--payment{box-shadow:0 24px 64px rgba(38,0,51,.1),inset 7px 0 0 var(--sg-magenta) !important;}

#page-home .feature-row{
  border:0 !important;
  border-radius:20px 20px 8px 20px !important;
  box-shadow:inset 0 0 0 1px rgba(122,42,145,.1);
  transition:transform .2s ease,box-shadow .2s ease;
}

#page-home .feature-row:hover{
  transform:translateX(6px);
  box-shadow:inset 0 0 0 1px rgba(122,42,145,.2),0 12px 28px rgba(38,0,51,.08);
}

/* High-impact but restrained finish */
#page-home .final-cta{
  position:relative;
  overflow:hidden;
  border-radius:44px 44px 14px 44px !important;
  box-shadow:14px 15px 0 var(--sg-magenta),0 30px 75px rgba(38,0,51,.18) !important;
}

#page-home .final-cta::before{
  content:"LET'S TALK" !important;
  position:absolute;
  right:-10px;
  bottom:-18px;
  display:block !important;
  color:rgba(255,255,255,.07);
  font-family:var(--font-display);
  font-size:clamp(4.5rem,9vw,9rem);
  font-weight:950;
  letter-spacing:-.08em;
  white-space:nowrap;
}

#page-home .final-cta h2,
#page-home .final-cta p,
#page-home .final-cta .btn{position:relative;z-index:2;}

#page-home .final-cta .btn{
  background:var(--sg-coral) !important;
  box-shadow:5px 6px 0 var(--sg-ink) !important;
}

@media(max-width:980px){
  #page-home .feature-card:nth-child(2),
  #page-home .preview-card:nth-child(2){transform:none;}
  #page-home [data-home-section]::after{font-size:6rem;}
}

@media(max-width:640px){
  #page-home [data-home-section]::after{right:14px;top:20px;font-size:4rem;}
  #page-home .section[data-home-section]::before,
  #page-home .section-bridge[data-home-section]::before{width:calc(100% - 28px);}
  #page-home .demo-wrap::before{display:none;}
  #page-home .demo-copy{border-radius:24px 24px 24px 8px !important;}
  #page-home .machine{outline-width:5px;outline-offset:5px;}
  #page-home .machine-intel-card,
  #page-home .feature-card,
  #page-home .preview-card,
  #page-home .ops-card{border-radius:24px 24px 9px 24px !important;}
  #page-home .promise-banner,
  #page-home .final-cta{border-radius:28px 28px 10px 28px !important;}
  #page-home .feature-row:hover{transform:none;}
}

/* Refined final conversion panel */
#page-home .final-cta{
  min-height:270px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  align-items:center;
  column-gap:clamp(36px,6vw,90px);
  row-gap:15px;
  padding:clamp(42px,5vw,68px) clamp(36px,6vw,82px) !important;
  text-align:left !important;
  border-radius:36px 36px 12px 36px !important;
  background:var(--sg-purple) !important;
  box-shadow:12px 13px 0 var(--sg-magenta),0 28px 65px rgba(38,0,51,.16) !important;
}

#page-home .final-cta::after{
  display:none !important;
  content:none !important;
}

#page-home .final-cta::before{
  content:"SNAPGO" !important;
  right:36%;
  bottom:-25px;
  color:rgba(255,255,255,.055);
  font-size:clamp(5rem,9vw,9rem);
}

#page-home .final-cta h2{
  grid-column:1;
  grid-row:1;
  max-width:820px;
  margin:0 !important;
  font-size:clamp(2.5rem,4vw,4.25rem) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  text-wrap:balance;
}

#page-home .final-cta .lead{
  grid-column:1;
  grid-row:2;
  max-width:750px;
  margin:0 !important;
  font-size:clamp(1rem,1.25vw,1.15rem) !important;
  line-height:1.6 !important;
  color:rgba(255,255,255,.76) !important;
}

#page-home .final-cta .btn{
  grid-column:2;
  grid-row:1 / 3;
  align-self:center;
  justify-self:end;
  width:max-content !important;
  min-width:220px;
  min-height:58px;
  padding:16px 25px !important;
  border:2px solid var(--sg-ink) !important;
  border-radius:999px !important;
  background:var(--sg-coral) !important;
  color:#fff !important;
  box-shadow:5px 6px 0 var(--sg-ink) !important;
  white-space:nowrap;
}

@media(max-width:820px){
  #page-home .final-cta{
    grid-template-columns:1fr;
    grid-template-rows:auto;
    gap:18px;
    text-align:center !important;
  }
  #page-home .final-cta h2,
  #page-home .final-cta .lead,
  #page-home .final-cta .btn{
    grid-column:1;
    grid-row:auto;
    justify-self:center;
  }
  #page-home .final-cta .btn{margin-top:5px;}
}

@media(max-width:640px){
  #page-home .final-cta{padding:36px 22px !important;border-radius:27px 27px 10px 27px !important;}
  #page-home .final-cta h2{font-size:clamp(2.15rem,10vw,3rem) !important;}
  #page-home .final-cta .btn{width:100% !important;min-width:0;}
}

/* Refined live-demo proportions */
#page-home #demo{
  padding-top:clamp(62px,6vw,82px) !important;
  padding-bottom:clamp(62px,6vw,82px) !important;
}

#page-home .demo-wrap{
  grid-template-columns:minmax(320px,.9fr) minmax(480px,1.1fr) !important;
  gap:clamp(42px,6vw,88px) !important;
  align-items:center !important;
}

#page-home .demo-copy{
  max-width:620px;
  padding:clamp(30px,3.5vw,48px) !important;
}

#page-home .demo-copy::after,
#page-home .machine-slang--demo{
  display:none !important;
  content:none !important;
}

#page-home .demo-copy h2{
  max-width:520px;
  font-size:clamp(2.8rem,4.3vw,4.5rem) !important;
  line-height:.98 !important;
}

#page-home .demo-copy .lead{
  max-width:560px;
  font-size:clamp(1rem,1.3vw,1.16rem) !important;
  line-height:1.65 !important;
}

#page-home .machine{
  width:min(100%,540px) !important;
  max-width:540px !important;
  padding:22px !important;
  border-radius:30px !important;
  animation:none !important;
  transform:none !important;
}

#page-home .machine-screen{
  min-height:58px;
  display:grid;
  place-items:center;
  margin-bottom:16px;
  border-radius:15px !important;
}

#page-home .machine-grid{
  gap:10px !important;
  margin-bottom:14px !important;
}

#page-home .slot{
  min-height:86px !important;
  padding:8px 6px !important;
  border-radius:15px !important;
}

#page-home .slot-product{
  max-width:54px;
  max-height:43px !important;
}

#page-home .slot-name{
  margin-top:4px;
  font-size:.7rem !important;
}

#page-home .machine-cart-toggle{
  top:74px !important;
  right:22px !important;
}

#page-home .machine-tray{
  min-height:48px !important;
  margin-bottom:7px !important;
  border-radius:13px !important;
  background:var(--sg-classic-lavender) !important;
}

#page-home .machine-label{
  color:rgba(255,255,255,.68) !important;
  font-size:.61rem !important;
  letter-spacing:.1em;
}

@media(max-width:980px){
  #page-home .demo-wrap{grid-template-columns:1fr !important;}
  #page-home .demo-copy{max-width:680px;margin-inline:auto;}
  #page-home .machine{width:min(100%,540px) !important;}
}

@media(max-width:640px){
  #page-home #demo{padding-top:48px !important;padding-bottom:48px !important;}
  #page-home .demo-copy{padding:26px 20px !important;}
  #page-home .demo-copy h2{font-size:clamp(2.4rem,12vw,3.2rem) !important;}
  #page-home .machine{padding:16px !important;border-radius:24px !important;}
  #page-home .machine-grid{grid-template-columns:repeat(2,1fr) !important;}
  #page-home .slot{min-height:82px !important;}
  #page-home .machine-cart-toggle{top:65px !important;right:14px !important;}
}

/* Creative three-card trios */
#page-home .grid-3:has(.feature-card),
#page-home .grid-3:has(.preview-card){
  gap:clamp(22px,2.3vw,34px) !important;
  padding:12px 4px 20px;
  perspective:1200px;
}

#page-home .feature-card,
#page-home .preview-card{
  min-height:285px;
  padding:34px 30px 30px !important;
  border:1px solid rgba(122,42,145,.13) !important;
  background:var(--sg-white) !important;
  transform-origin:center bottom;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .25s ease !important;
}

#page-home .feature-card:nth-child(1),
#page-home .preview-card:nth-child(1){
  border-radius:42px 18px 42px 18px !important;
  transform:rotate(-1.15deg) translateY(7px);
  box-shadow:8px 9px 0 rgba(122,42,145,.2),0 24px 52px rgba(38,0,51,.09) !important;
}

#page-home .feature-card:nth-child(2),
#page-home .preview-card:nth-child(2){
  border-radius:18px 42px 18px 42px !important;
  transform:translateY(-5px);
  box-shadow:8px 9px 0 rgba(183,40,136,.22),0 24px 52px rgba(38,0,51,.09) !important;
}

#page-home .feature-card:nth-child(3),
#page-home .preview-card:nth-child(3){
  border-radius:42px 18px 18px 42px !important;
  transform:rotate(1.15deg) translateY(7px);
  box-shadow:8px 9px 0 rgba(242,61,114,.2),0 24px 52px rgba(38,0,51,.09) !important;
}

#page-home .feature-card::before,
#page-home .preview-card::before{
  right:24px;
  top:20px;
  color:rgba(122,42,145,.16);
  font-size:2.7rem;
  transition:color .3s ease,transform .35s ease;
}

#page-home .feature-card::after,
#page-home .preview-card::after{
  right:-48px;
  bottom:-48px;
  width:142px;
  height:142px;
  border-width:22px;
  border-color:rgba(122,42,145,.07);
  transition:transform .5s cubic-bezier(.2,.8,.2,1),border-color .3s ease;
}

#page-home .feature-card:nth-child(2)::after,
#page-home .preview-card:nth-child(2)::after{border-color:rgba(183,40,136,.075);}
#page-home .feature-card:nth-child(3)::after,
#page-home .preview-card:nth-child(3)::after{border-color:rgba(242,61,114,.075);}

#page-home .feature-card .card-icon,
#page-home .preview-card .card-icon{
  position:relative;
  z-index:2;
  width:64px;
  height:64px;
  font-size:1.65rem;
  transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease;
}

#page-home .feature-card:nth-child(1) .card-icon,
#page-home .preview-card:nth-child(1) .card-icon{background:var(--sg-classic-lavender) !important;box-shadow:5px 6px 0 var(--sg-purple) !important;}
#page-home .feature-card:nth-child(2) .card-icon,
#page-home .preview-card:nth-child(2) .card-icon{background:var(--sg-light-lavender) !important;box-shadow:5px 6px 0 var(--sg-magenta) !important;}
#page-home .feature-card:nth-child(3) .card-icon,
#page-home .preview-card:nth-child(3) .card-icon{background:#f9e4ef !important;box-shadow:5px 6px 0 var(--sg-coral) !important;}

#page-home .feature-card .card-title,
#page-home .preview-card .card-title{
  position:relative;
  z-index:2;
  display:inline-block;
  padding-bottom:9px;
}

#page-home .feature-card .card-title::after,
#page-home .preview-card .card-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:34px;
  height:4px;
  border-radius:999px;
  background:var(--sg-purple) !important;
  transition:width .32s ease;
}

#page-home .feature-card:nth-child(2) .card-title::after,
#page-home .preview-card:nth-child(2) .card-title::after{background:var(--sg-magenta) !important;}
#page-home .feature-card:nth-child(3) .card-title::after,
#page-home .preview-card:nth-child(3) .card-title::after{background:var(--sg-coral) !important;}

#page-home .feature-card .card-text,
#page-home .preview-card .card-text{
  position:relative;
  z-index:2;
  margin-top:7px;
}

#page-home .feature-card:hover,
#page-home .preview-card:hover{
  z-index:4;
  border-color:rgba(122,42,145,.26) !important;
  transform:translateY(-14px) rotate(0) scale(1.018) !important;
  box-shadow:12px 14px 0 rgba(122,42,145,.2),0 34px 72px rgba(38,0,51,.16) !important;
}

#page-home .feature-card:nth-child(2):hover,
#page-home .preview-card:nth-child(2):hover{box-shadow:12px 14px 0 rgba(183,40,136,.22),0 34px 72px rgba(38,0,51,.16) !important;}
#page-home .feature-card:nth-child(3):hover,
#page-home .preview-card:nth-child(3):hover{box-shadow:12px 14px 0 rgba(242,61,114,.2),0 34px 72px rgba(38,0,51,.16) !important;}

#page-home .feature-card:hover .card-icon,
#page-home .preview-card:hover .card-icon{
  transform:translateY(-5px) rotate(-7deg) scale(1.09);
}

#page-home .feature-card:hover::before,
#page-home .preview-card:hover::before{
  color:rgba(122,42,145,.3);
  transform:translateY(-3px) rotate(5deg);
}

#page-home .feature-card:hover::after,
#page-home .preview-card:hover::after{
  border-color:rgba(122,42,145,.13);
  transform:translate(-12px,-12px) rotate(28deg) scale(1.08);
}

#page-home .feature-card:hover .card-title::after,
#page-home .preview-card:hover .card-title::after{width:100%;}

@media(max-width:980px){
  #page-home .feature-card:nth-child(n),
  #page-home .preview-card:nth-child(n){transform:none;}
}

@media(max-width:640px){
  #page-home .grid-3:has(.feature-card),
  #page-home .grid-3:has(.preview-card){padding-inline:0;}
  #page-home .feature-card,
  #page-home .preview-card{min-height:0;padding:28px 24px !important;}
  #page-home .feature-card:hover,
  #page-home .preview-card:hover{transform:translateY(-6px) !important;}
}

@media(prefers-reduced-motion:reduce){
  #page-home .feature-card,
  #page-home .preview-card,
  #page-home .feature-card *,
  #page-home .preview-card *{transition:none !important;}
}

/* Curved editorial story break inspired by the reference energy */
#page-home .home-curve-break{
  position:relative;
  z-index:3;
  min-height:390px;
  overflow:hidden;
  background:var(--sg-ink) !important;
  color:#fff;
}

#page-home .home-curve-break::before{
  content:"";
  position:absolute;
  left:5%;
  top:34px;
  width:58px;
  height:9px;
  border-radius:999px;
  background:var(--sg-coral) !important;
  box-shadow:72px 0 0 var(--sg-magenta);
}

#page-home .curve-message{
  position:absolute;
  z-index:2;
  left:50%;
  top:28px;
  width:max(1280px,105vw);
  height:280px;
  overflow:visible;
  transform:translateX(-50%);
}

#page-home .curve-message text{
  fill:var(--sg-classic-lavender);
  font-family:var(--font-display);
  font-size:64px;
  font-weight:950;
  letter-spacing:-2px;
  text-transform:uppercase;
}

#page-home .curve-guide{
  fill:none;
  stroke:rgba(230,230,250,.14);
  stroke-width:2;
  stroke-dasharray:8 13;
}

#page-home .curve-scallops{
  position:absolute;
  z-index:4;
  left:0;
  right:0;
  bottom:-1px;
  width:100%;
  height:112px;
}

#page-home .curve-scallops circle{
  fill:var(--sg-classic-lavender);
}

#page-home .curve-product{
  position:absolute;
  z-index:3;
  display:grid;
  place-items:center;
  width:78px;
  height:78px;
  border:2px solid var(--sg-classic-lavender);
  border-radius:24px 24px 8px 24px;
  background:var(--sg-purple) !important;
  box-shadow:7px 8px 0 var(--sg-magenta);
  animation:curveProductFloat 4.5s ease-in-out infinite;
}

#page-home .curve-product img{
  width:66px;
  height:66px;
  object-fit:contain;
  filter:drop-shadow(0 9px 10px rgba(0,0,0,.25));
}

#page-home .curve-product--one{left:9%;bottom:90px;transform:rotate(-9deg);}
#page-home .curve-product--two{right:19%;bottom:72px;transform:rotate(8deg);animation-delay:-1.4s;}
#page-home .curve-product--three{right:6%;top:44px;transform:rotate(10deg);animation-delay:-2.6s;}

#page-home .curve-sticker{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:60px;
  display:grid;
  place-items:center;
  width:92px;
  height:92px;
  border:2px solid var(--sg-classic-lavender);
  border-radius:50%;
  background:var(--sg-magenta) !important;
  color:#fff;
  box-shadow:7px 8px 0 var(--sg-purple);
  font-family:var(--font-mono);
  font-size:.65rem;
  font-weight:900;
  line-height:1;
  text-align:center;
  letter-spacing:.12em;
  transform:translateX(-50%) rotate(-7deg);
}

#page-home .curve-sticker b{
  display:block;
  margin-top:3px;
  font-family:var(--font-display);
  font-size:1.55rem;
  letter-spacing:-.03em;
}

@keyframes curveProductFloat{
  0%,100%{margin-top:0}
  50%{margin-top:-12px}
}

@media(max-width:900px){
  #page-home .home-curve-break{min-height:350px;}
  #page-home .curve-message{left:46%;width:1350px;}
  #page-home .curve-product{width:64px;height:64px;border-radius:19px 19px 7px 19px;}
  #page-home .curve-product img{width:54px;height:54px;}
  #page-home .curve-product--two{right:10%;}
  #page-home .curve-product--three{display:none;}
}

@media(max-width:640px){
  #page-home .home-curve-break{min-height:300px;}
  #page-home .curve-message{left:30%;top:18px;width:1120px;height:220px;}
  #page-home .curve-message text{font-size:54px;}
  #page-home .curve-scallops{height:72px;}
  #page-home .curve-product{width:52px;height:52px;border-radius:16px 16px 6px 16px;box-shadow:4px 5px 0 var(--sg-magenta);}
  #page-home .curve-product img{width:44px;height:44px;}
  #page-home .curve-product--one{left:7%;bottom:55px;}
  #page-home .curve-product--two{right:7%;bottom:50px;}
  #page-home .curve-sticker{width:70px;height:70px;bottom:38px;font-size:.52rem;}
  #page-home .curve-sticker b{font-size:1.15rem;}
}

@media(prefers-reduced-motion:reduce){
  #page-home .curve-product{animation:none !important;}
}

/* Kinetic two-way snack marquee */
#page-home .home-motion-strip{
  position:relative;
  z-index:3;
  display:flex;
  flex-direction:column;
  gap:16px;
  min-height:270px;
  padding:38px 0;
  overflow:hidden;
  border-top:1px solid rgba(230,230,250,.2);
  border-bottom:1px solid rgba(230,230,250,.2);
  background:var(--sg-ink) !important;
}

#page-home .motion-row{
  width:100%;
  overflow:hidden;
}

#page-home .motion-track{
  display:flex;
  align-items:center;
  width:max-content;
  will-change:transform;
}

#page-home .motion-row--primary .motion-track{
  gap:28px;
  animation:motionTrackLeft 22s linear infinite;
}

#page-home .motion-row--primary strong{
  color:var(--sg-classic-lavender);
  font-family:var(--font-display);
  font-size:clamp(2.5rem,4.2vw,5rem);
  font-weight:950;
  line-height:1;
  letter-spacing:-.055em;
  white-space:nowrap;
}

#page-home .motion-row--primary strong:nth-of-type(3n+2){color:var(--sg-coral);}
#page-home .motion-row--primary strong:nth-of-type(3n+3){color:#d6b9e4;}

#page-home .motion-product{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:76px;
  height:76px;
  border:2px solid var(--sg-classic-lavender);
  border-radius:22px 22px 7px 22px;
  background:var(--sg-purple) !important;
  box-shadow:6px 7px 0 var(--sg-magenta);
  transform:rotate(-5deg);
}

#page-home .motion-product:nth-of-type(even){transform:rotate(6deg);}

#page-home .motion-product img{
  width:64px;
  height:64px;
  object-fit:contain;
  filter:drop-shadow(0 8px 9px rgba(0,0,0,.24));
}

#page-home .motion-dot{
  flex:0 0 auto;
  width:18px;
  height:18px;
  border:4px solid var(--sg-classic-lavender);
  border-radius:50%;
  background:var(--sg-magenta) !important;
}

#page-home .motion-row--secondary{
  padding:10px 0;
  border-top:1px solid rgba(230,230,250,.14);
  border-bottom:1px solid rgba(230,230,250,.14);
  background:var(--sg-purple) !important;
  transform:rotate(-.7deg) scaleX(1.01);
}

#page-home .motion-row--secondary .motion-track{
  gap:24px;
  animation:motionTrackRight 28s linear infinite;
}

#page-home .motion-row--secondary span:not(.motion-product){
  color:#fff;
  font-family:var(--font-mono);
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.11em;
  white-space:nowrap;
}

#page-home .motion-row--secondary b{color:var(--sg-coral);font-size:1.2rem;}

#page-home .motion-product--small{
  width:45px;
  height:45px;
  border-width:1px;
  border-radius:13px 13px 5px 13px;
  box-shadow:4px 4px 0 var(--sg-magenta);
}

#page-home .motion-product--small img{width:37px;height:37px;}

#page-home .home-motion-strip:hover .motion-track{
  animation-play-state:paused;
}

@keyframes motionTrackLeft{
  to{transform:translateX(-50%)}
}

@keyframes motionTrackRight{
  from{transform:translateX(-50%)}
  to{transform:translateX(0)}
}

@media(max-width:640px){
  #page-home .home-motion-strip{min-height:220px;padding:28px 0;gap:13px;}
  #page-home .motion-row--primary .motion-track{gap:18px;animation-duration:17s;}
  #page-home .motion-row--primary strong{font-size:2.4rem;}
  #page-home .motion-product{width:56px;height:56px;border-radius:17px 17px 6px 17px;box-shadow:4px 5px 0 var(--sg-magenta);}
  #page-home .motion-product img{width:47px;height:47px;}
  #page-home .motion-row--secondary .motion-track{gap:18px;animation-duration:22s;}
  #page-home .motion-row--secondary span:not(.motion-product){font-size:.68rem;}
  #page-home .motion-product--small{width:38px;height:38px;}
  #page-home .motion-product--small img{width:31px;height:31px;}
}

@media(prefers-reduced-motion:reduce){
  #page-home .home-motion-strip .motion-track{animation-play-state:paused !important;}
}

/* Animated ocean-flow story */
#page-home .home-ocean-flow{
  position:relative;
  z-index:3;
  min-height:430px;
  overflow:hidden;
  border-top:1px solid rgba(122,42,145,.12);
  border-bottom:1px solid rgba(122,42,145,.12);
  background:var(--sg-light-lavender) !important;
  isolation:isolate;
}

#page-home .ocean-current{
  position:absolute;
  z-index:0;
  left:50%;
  top:48%;
  width:115%;
  height:250px;
  border:1px solid rgba(122,42,145,.09);
  border-radius:50%;
  transform:translate(-50%,-50%) rotate(-3deg);
  animation:oceanCurrentSway 12s ease-in-out infinite alternate;
}

#page-home .ocean-message{
  position:absolute;
  z-index:3;
  left:-4%;
  top:16px;
  width:112%;
  height:250px;
  overflow:visible;
  animation:oceanMessageDrift 13s ease-in-out infinite alternate;
}

#page-home .ocean-message text{
  fill:var(--sg-purple);
  font-family:var(--font-display);
  font-size:61px;
  font-weight:950;
  letter-spacing:-2px;
}

#page-home .ocean-text-guide{
  fill:none;
  stroke:rgba(122,42,145,.13);
  stroke-width:2;
  stroke-dasharray:4 16;
  stroke-linecap:round;
}

#page-home .ocean-wave{
  position:absolute;
  left:0;
  width:150%;
  pointer-events:none;
  will-change:transform;
}

#page-home .ocean-wave path{stroke:none;}

#page-home .ocean-wave--rear{
  z-index:4;
  bottom:0;
  height:180px;
  animation:oceanRearFlow 14s linear infinite;
}

#page-home .ocean-wave--rear path{fill:#d8c1e4;}

#page-home .ocean-wave--front{
  z-index:5;
  bottom:-20px;
  height:155px;
  animation:oceanFrontFlow 10s linear infinite reverse;
}

#page-home .ocean-wave--front path{fill:var(--sg-classic-lavender);}

#page-home .ocean-product{
  position:absolute;
  z-index:6;
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  border:1px solid rgba(122,42,145,.22);
  border-radius:22px 22px 7px 22px;
  background:var(--sg-white) !important;
  box-shadow:6px 7px 0 rgba(183,40,136,.24),0 16px 32px rgba(38,0,51,.11);
  animation:oceanProductBob 5.4s cubic-bezier(.45,0,.55,1) infinite;
}

#page-home .ocean-product img{
  width:61px;
  height:61px;
  object-fit:contain;
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.24));
}

#page-home .ocean-product--coffee{right:8%;top:54px;--ocean-rotate:9deg;animation-delay:-1.1s;}
#page-home .ocean-product--chocolate{right:24%;bottom:91px;--ocean-rotate:7deg;animation-delay:-2.3s;}
#page-home .ocean-product--biscuit{left:30%;bottom:78px;--ocean-rotate:-5deg;animation-delay:-3s;}

#page-home .ocean-status{
  position:absolute;
  z-index:7;
  left:50%;
  bottom:76px;
  display:grid;
  grid-template-columns:auto auto;
  gap:1px 8px;
  align-items:center;
  padding:12px 17px;
  border:1px solid rgba(122,42,145,.2);
  border-radius:999px;
  background:var(--sg-purple) !important;
  color:#fff;
  box-shadow:6px 7px 0 var(--sg-magenta),0 16px 30px rgba(38,0,51,.13);
  transform:translateX(-50%);
  animation:oceanStatusBob 5.8s cubic-bezier(.45,0,.55,1) infinite;
}

#page-home .ocean-status i{
  grid-row:1 / 3;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff !important;
  box-shadow:0 0 0 5px rgba(255,255,255,.16);
}

#page-home .ocean-status span{
  font-family:var(--font-mono);
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.12em;
}

#page-home .ocean-status b{font-size:.78rem;}

@keyframes oceanRearFlow{
  from{transform:translateX(-12.5%)}
  to{transform:translateX(0)}
}

@keyframes oceanFrontFlow{
  from{transform:translateX(-10%)}
  to{transform:translateX(0)}
}

@keyframes oceanProductBob{
  0%,100%{transform:translateY(0) rotate(var(--ocean-rotate))}
  50%{transform:translateY(-15px) rotate(calc(var(--ocean-rotate) + 5deg))}
}

@keyframes oceanStatusBob{
  0%,100%{transform:translate(-50%,0) rotate(-2deg)}
  50%{transform:translate(-50%,-10px) rotate(2deg)}
}

@keyframes oceanCurrentSway{
  to{transform:translate(-50%,-47%) rotate(2deg) scaleX(1.03)}
}

@keyframes oceanMessageDrift{
  from{transform:translateX(-2%)}
  to{transform:translateX(2%)}
}

@media(max-width:800px){
  #page-home .home-ocean-flow{min-height:370px;}
  #page-home .ocean-message{left:-25%;width:155%;}
  #page-home .ocean-message text{font-size:55px;}
  #page-home .ocean-product--biscuit{display:none;}
  #page-home .ocean-product--chocolate{right:17%;}
}

@media(max-width:640px){
  #page-home .home-ocean-flow{min-height:320px;}
  #page-home .ocean-message{left:-63%;top:0;width:230%;height:210px;}
  #page-home .ocean-message text{font-size:48px;}
  #page-home .ocean-wave--rear{height:135px;}
  #page-home .ocean-wave--front{height:115px;}
  #page-home .ocean-product{width:51px;height:51px;border-radius:16px 16px 6px 16px;box-shadow:4px 5px 0 var(--sg-magenta);}
  #page-home .ocean-product img{width:43px;height:43px;}
  #page-home .ocean-product--coffee{right:7%;top:35px;}
  #page-home .ocean-product--chocolate{right:15%;bottom:60px;}
  #page-home .ocean-status{bottom:53px;padding:9px 12px;}
}

@media(prefers-reduced-motion:reduce){
  #page-home .ocean-current,
  #page-home .ocean-message,
  #page-home .ocean-wave,
  #page-home .ocean-product,
  #page-home .ocean-status{animation:none !important;}
}

/* Premium ocean-flow cleanup */
#page-home .home-ocean-flow{
  min-height:420px;
  border:0 !important;
}

#page-home .home-ocean-flow + .section[data-home-section]::before,
#page-home .home-ocean-flow + .section[data-home-section] > .container::after{
  display:none !important;
  content:none !important;
}

#page-home .ocean-kicker{
  position:absolute;
  z-index:8;
  left:50%;
  top:26px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border:1px solid rgba(122,42,145,.18);
  border-radius:999px;
  background:rgba(255,253,253,.88) !important;
  color:var(--sg-purple);
  box-shadow:0 10px 24px rgba(38,0,51,.08);
  font-family:var(--font-mono);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  transform:translateX(-50%);
}

#page-home .ocean-kicker i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--sg-magenta) !important;
  box-shadow:0 0 0 4px rgba(183,40,136,.12);
}

#page-home .ocean-message{
  left:0;
  top:62px;
  width:100%;
  height:220px;
}

#page-home .ocean-message text{
  font-size:53px;
  letter-spacing:-1.5px;
}

#page-home .ocean-text-guide{
  stroke:rgba(122,42,145,.1);
  stroke-width:1.5;
  stroke-dasharray:3 18;
}

#page-home .ocean-current{
  top:57%;
  width:106%;
  height:210px;
  border-color:rgba(122,42,145,.07);
}

#page-home .ocean-wave--rear{
  height:165px;
  opacity:.9;
}

#page-home .ocean-wave--front{
  bottom:-28px;
  height:142px;
}

#page-home .ocean-product{
  width:66px;
  height:66px;
  border-radius:20px 20px 7px 20px;
  box-shadow:5px 6px 0 rgba(183,40,136,.22),0 16px 32px rgba(38,0,51,.1);
}

#page-home .ocean-product img{width:56px;height:56px;}
#page-home .ocean-product--coffee{right:9%;top:auto;bottom:116px;}
#page-home .ocean-product--chocolate{right:27%;bottom:82px;}
#page-home .ocean-product--biscuit{left:31%;bottom:86px;}

#page-home .ocean-status{
  bottom:72px;
  border:0;
  padding:11px 16px;
  box-shadow:5px 6px 0 var(--sg-magenta),0 16px 30px rgba(38,0,51,.12);
}

@media(max-width:800px){
  #page-home .ocean-message{left:-18%;width:136%;}
}

@media(max-width:640px){
  #page-home .home-ocean-flow{min-height:315px;}
  #page-home .ocean-kicker{top:18px;font-size:.55rem;padding:7px 11px;}
  #page-home .ocean-message{left:-48%;top:48px;width:205%;height:180px;}
  #page-home .ocean-message text{font-size:45px;}
  #page-home .ocean-current{display:none;}
  #page-home .ocean-wave--rear{height:125px;}
  #page-home .ocean-wave--front{height:105px;}
  #page-home .ocean-product--coffee{right:6%;bottom:75px;}
  #page-home .ocean-product--chocolate{right:19%;bottom:50px;}
  #page-home .ocean-status{bottom:44px;}
}

/* Smart vending conveyor: compact creative transition */
#page-home .home-conveyor{
  position:relative;
  z-index:4;
  padding:26px 0 18px;
  overflow:hidden;
  border-top:1px solid rgba(122,42,145,.12);
  border-bottom:1px solid rgba(122,42,145,.12);
  background:var(--sg-light-lavender) !important;
}

#page-home .conveyor-head,
#page-home .conveyor-foot{
  width:min(1360px,calc(100% - 48px));
  margin-inline:auto;
}

#page-home .conveyor-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:16px;
}

#page-home .conveyor-head > span{
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 13px;
  border-radius:999px;
  background:var(--sg-purple) !important;
  color:#fff;
  font-family:var(--font-mono);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}

#page-home .conveyor-head i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#fff !important;
  box-shadow:0 0 0 4px rgba(255,255,255,.14);
  animation:conveyorLivePulse 1.5s ease-in-out infinite;
}

#page-home .conveyor-head strong{
  color:var(--sg-purple);
  font-size:.86rem;
  letter-spacing:.01em;
}

#page-home .conveyor-window{
  position:relative;
  height:148px;
  overflow:hidden;
  border-top:2px solid var(--sg-purple);
  border-bottom:2px solid var(--sg-purple);
  background:rgba(255,253,253,.52) !important;
}

#page-home .conveyor-window::before{
  content:"";
  position:absolute;
  z-index:0;
  left:0;
  right:0;
  bottom:15px;
  height:18px;
  border-top:2px solid var(--sg-purple);
  border-bottom:2px solid var(--sg-purple);
  background-color:#d8c1e4 !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='18' viewBox='0 0 34 18'%3E%3Ccircle cx='9' cy='9' r='5' fill='none' stroke='%237a2a91' stroke-opacity='.45' stroke-width='2'/%3E%3C/svg%3E") !important;
  background-size:34px 18px !important;
}

#page-home .conveyor-track{
  position:absolute;
  z-index:2;
  left:0;
  top:10px;
  display:flex;
  width:max-content;
  animation:conveyorMove 24s linear infinite;
  will-change:transform;
}

#page-home .conveyor-group{
  display:flex;
  gap:18px;
  padding-right:18px;
}

#page-home .conveyor-item{
  position:relative;
  display:grid;
  grid-template-columns:62px minmax(88px,auto);
  grid-template-rows:1fr 1fr;
  align-items:center;
  column-gap:10px;
  width:190px;
  height:104px;
  padding:10px 13px;
  border:1px solid rgba(122,42,145,.18);
  border-radius:20px 20px 7px 20px;
  background:var(--sg-white) !important;
  box-shadow:5px 6px 0 rgba(183,40,136,.18),0 12px 24px rgba(38,0,51,.08);
}

#page-home .conveyor-item img{
  grid-row:1 / 3;
  width:60px;
  height:76px;
  object-fit:contain;
  filter:drop-shadow(0 7px 7px rgba(38,0,51,.16));
}

#page-home .conveyor-item b{
  align-self:end;
  color:var(--sg-ink);
  font-size:.78rem;
  white-space:nowrap;
}

#page-home .conveyor-item small{
  align-self:start;
  margin-top:3px;
  color:var(--sg-magenta);
  font-family:var(--font-mono);
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

#page-home .conveyor-scanner{
  position:absolute;
  z-index:5;
  left:50%;
  top:0;
  bottom:0;
  width:3px;
  background:var(--sg-coral) !important;
  box-shadow:0 0 0 7px rgba(242,61,114,.08),0 0 22px rgba(242,61,114,.35);
  pointer-events:none;
}

#page-home .conveyor-scanner span{
  position:absolute;
  left:50%;
  top:8px;
  padding:5px 8px;
  border-radius:999px;
  background:var(--sg-coral) !important;
  color:#fff;
  font-family:var(--font-mono);
  font-size:.48rem;
  font-weight:900;
  letter-spacing:.1em;
  transform:translateX(-50%);
}

#page-home .conveyor-foot{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(18px,4vw,58px);
  padding-top:13px;
  color:#725f7b;
  font-family:var(--font-mono);
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

#page-home .conveyor-foot b{color:var(--sg-purple);}

#page-home .home-conveyor:hover .conveyor-track{animation-play-state:paused;}

#page-home .home-conveyor + .section[data-home-section]::before,
#page-home .home-conveyor + .section[data-home-section] > .container::after{
  display:none !important;
  content:none !important;
}

@keyframes conveyorMove{
  to{transform:translateX(-50%)}
}

@keyframes conveyorLivePulse{
  50%{opacity:.45;transform:scale(.75)}
}

@media(max-width:640px){
  #page-home .home-conveyor{padding-top:20px;}
  #page-home .conveyor-head,#page-home .conveyor-foot{width:calc(100% - 28px);}
  #page-home .conveyor-head{align-items:flex-start;flex-direction:column;gap:8px;}
  #page-home .conveyor-head strong{font-size:.72rem;}
  #page-home .conveyor-window{height:132px;}
  #page-home .conveyor-item{grid-template-columns:52px 82px;width:158px;height:91px;padding:8px 10px;}
  #page-home .conveyor-item img{width:49px;height:64px;}
  #page-home .conveyor-track{animation-duration:19s;}
  #page-home .conveyor-foot{justify-content:flex-start;overflow:auto;gap:22px;white-space:nowrap;}
}

@media(prefers-reduced-motion:reduce){
  #page-home .conveyor-track,
  #page-home .conveyor-head i{animation-play-state:paused !important;}
}
