/*
Theme Name: NaturaQ
Theme URI: https://1stgenix.com
Author: 1stGenix
Author URI: https://1stgenix.com
Description: Cinematic, shoppable plant-powered botanical drink theme for NaturaQ. Light-first design with a flavour-switching hero, a five-flavour storytelling lab, and a build-your-own pack system.
Version: 1.0.0
Requires at least: 5.8
Requires PHP: 7.4
Tested up to: 6.6
License: Proprietary
Text Domain: naturaq
*/


:root{
  --paper:#f7f4ea; --paper2:#fffdf6; --ink:#0a2e12; --ink2:#0d3b18;
  --lime:#aaff00; --lime-d:#79c400; --teal:#46ccb4;
  --litchi:#d66080; --blue:#5b41d6;
  --nq-display:clamp(44px,6.5vw,86px);
  --nq-section:clamp(30px,4.8vw,58px);
  --nq-card-title:clamp(24px,3vw,34px);
  --nq-body:clamp(14.5px,1.35vw,17px);
  --nq-eyebrow:12px;
  --nq-card-radius:22px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Nunito',sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}
.dh{font-family:'Black Han Sans',sans-serif;font-weight:400;line-height:.95}
img[src*="/litchi-master-transparent.png"],
img[src*="/blueberry-master-transparent.png"],
img[src*="/assets/images/litchi-master-transparent.png"],
img[src*="/assets/images/blueberry-master-transparent.png"],
img[src*="/litchi-1.png"],
img[src*="/blueberry-1.png"]{
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* cursor */
#cur,#cur-r{position:fixed;top:0;left:0;border-radius:50%;pointer-events:none;z-index:9999;mix-blend-mode:difference;transition:transform .12s ease}
#cur{width:8px;height:8px;background:var(--lime);transform:translate(-50%,-50%)}
#cur-r{width:36px;height:36px;border:1.5px solid var(--lime);transform:translate(-50%,-50%)}
@media (hover:none){#cur,#cur-r{display:none}}

/* progress */
#prog{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--lime),var(--teal));z-index:1000}

/* loader */
#loader{position:fixed;inset:0;z-index:10000;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;transition:opacity .5s,visibility .5s}
#loader.gone{opacity:0;visibility:hidden}
.ld-word{font-family:'Black Han Sans';font-size:clamp(38px,8vw,76px);color:var(--ink)}
.ld-word b{color:var(--lime-d)}
.ld-bar{width:min(240px,56vw);height:5px;background:rgba(10,46,18,.1);border-radius:99px;overflow:hidden}
.ld-fill{height:100%;width:0;background:var(--lime-d);border-radius:99px;animation:fill 1.1s ease forwards}
@keyframes fill{to{width:100%}}

/* nav */
#nav{position:fixed;top:0;left:0;right:0;z-index:900;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(18px,4vw,54px);transition:.35s}
#nav.scrolled{background:rgba(255,253,246,.8);backdrop-filter:blur(16px);padding-top:12px;padding-bottom:12px;box-shadow:0 1px 0 rgba(10,46,18,.08)}
.nav-logo{font-family:'Black Han Sans';font-size:26px;letter-spacing:.5px;color:var(--ink)}
.nav-logo b{color:var(--lime-d)}
.nav-links{display:flex;gap:28px;align-items:center;list-style:none}
.nav-links a{font-family:'Space Grotesk';font-weight:500;font-size:14px;letter-spacing:.3px;color:var(--ink);opacity:.8;transition:.25s;position:relative}
.nav-links a:not(.nav-cart):after{content:"";position:absolute;left:0;bottom:-5px;height:2px;width:0;background:var(--lime-d);transition:.28s}
.nav-links a:not(.nav-cart):hover:after{width:100%}
.nav-cart{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:#fff!important;font-weight:700;padding:10px 18px;border-radius:99px;opacity:1!important;transition:.25s}
.nav-cart:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(10,46,18,.25)}
.nav-cart .nc{min-width:21px;height:21px;border-radius:99px;background:var(--lime);color:var(--ink);font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}
.nav-ham{display:none;flex-direction:column;gap:5px;background:none;border:0}
.nav-ham span{width:25px;height:2.5px;background:var(--ink);border-radius:2px}
/* Mobile navigation — isolated fix only */
@media (max-width: 880px) {
  #nav {
    z-index: 1000;
  }

  .nav-links {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: auto;

    width: min(78vw, 320px);
    margin: 0;
    padding: 96px 30px 34px;

    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;

    list-style: none;
    background: var(--paper2);
    box-shadow: -20px 0 60px rgba(10, 46, 18, 0.18);

    transform: translate3d(110%, 0, 0);
    visibility: hidden;
    pointer-events: none;

    transition:
      transform 0.4s cubic-bezier(.16, 1, .3, 1),
      visibility 0s linear 0.4s;

    z-index: 1001;
  }

  .nav-links.open {
    transform: translate3d(0, 0, 0);
    visibility: visible;
    pointer-events: auto;

    transition: transform 0.4s cubic-bezier(.16, 1, .3, 1);
  }

  .nav-links li {
    width: 100%;
  }

  .nav-links a {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 54px;
    padding: 12px 0;

    border-bottom: 1px solid rgba(10, 46, 18, 0.1);
    font-size: 18px;
    font-weight: 700;
    opacity: 1;
  }

  .nav-links a:not(.nav-cart)::after {
    display: none;
  }

  .nav-links li:last-child {
    margin-top: 18px;
  }

  .nav-links .nav-cart {
    justify-content: center;
    min-height: 54px;
    border: 0;
  }

  .nav-ham {
    display: flex;
    position: relative;
    z-index: 1002;
  }
}

/* ════ HERO (light cinematic) ════ */
/* Mobile navigation - final cross-browser overlay rules */
@media (max-width: 880px) {
  #nav {
    z-index: 1000;
    min-height: 72px;
    padding: 14px clamp(18px, 5vw, 28px);
  }

  .nav-links {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    min-height: 100vh;
    margin: 0;
    padding: calc(84px + env(safe-area-inset-top, 0px)) 24px calc(34px + env(safe-area-inset-bottom, 0px));
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    list-style: none;
    text-align: center;
    background: rgba(255, 253, 246, 0.97);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: none;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    transform: translate3d(0, -105%, 0);
    visibility: hidden;
    pointer-events: none;
    transition: transform .4s cubic-bezier(.16,1,.3,1), opacity .28s ease, visibility 0s linear .4s;
    z-index: 1001;
  }

  .nav-links.open {
    transform: translate3d(0, 0, 0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: transform .4s cubic-bezier(.16,1,.3,1), opacity .28s ease;
  }

  .nav-links li {
    width: 100%;
    max-width: 340px;
  }

  .nav-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 56px;
    padding: 12px 18px;
    border: 0;
    border-radius: 18px;
    font-size: clamp(22px, 7vw, 32px);
    font-weight: 800;
    line-height: 1.1;
    opacity: 1;
  }

  .nav-links a:not(.nav-cart)::after {
    display: none;
  }

  .nav-links li:last-child {
    margin-top: 10px;
  }

  .nav-links .nav-cart {
    justify-content: center;
    min-height: 66px;
    border: 0;
    border-radius: 999px;
    font-size: 22px;
    box-shadow: 0 18px 42px rgba(10, 46, 18, .22);
  }

  .nav-ham {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    gap: 6px;
    border: 1px solid rgba(10, 46, 18, .18);
    border-radius: 14px;
    background: rgba(255, 253, 246, .72);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    z-index: 1002;
  }

  .nav-ham span {
    display: block;
    width: 22px;
    height: 2.5px;
    transition: transform .24s ease, opacity .2s ease;
    transform-origin: center;
  }

  body.nav-open {
    overflow: hidden;
    touch-action: none;
  }

  body.nav-open #nav {
    background: rgba(255, 253, 246, .88);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow: 0 1px 0 rgba(10, 46, 18, .08);
  }

  body.nav-open .nav-ham span:nth-child(1) {
    transform: translateY(8.5px) rotate(45deg);
  }

  body.nav-open .nav-ham span:nth-child(2) {
    opacity: 0;
  }

  body.nav-open .nav-ham span:nth-child(3) {
    transform: translateY(-8.5px) rotate(-45deg);
  }
}

@supports (height: 100dvh) {
  @media (max-width: 880px) {
    .nav-links {
      height: 100dvh;
      min-height: 100dvh;
    }
  }
}

#hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;
  padding:108px clamp(18px,4.5vw,64px) 64px;
  background:
   radial-gradient(90% 70% at 80% 12%,var(--fxsoft,rgba(214,96,128,.16)),transparent 60%),
   radial-gradient(70% 60% at 8% 90%,rgba(170,255,0,.14),transparent 60%),
   linear-gradient(165deg,#fffdf4,#f6f3e6 55%,#f1eedd)}
.aur{position:absolute;border-radius:50%;filter:blur(70px);z-index:0;will-change:transform;transition:background 1s}
.aur1{width:56vw;height:56vw;top:-20%;right:-12%;background:radial-gradient(circle,var(--fxsoft,rgba(214,96,128,.3)),transparent 65%);animation:aur1 17s ease-in-out infinite}
.aur2{width:44vw;height:44vw;bottom:-16%;left:-10%;background:radial-gradient(circle,rgba(170,255,0,.28),transparent 65%);animation:aur2 21s ease-in-out infinite}
@keyframes aur1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-5%,6%) scale(1.12)}}
@keyframes aur2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(7%,-5%) scale(1.09)}}
#fizz{position:absolute;inset:0;z-index:1;pointer-events:none}
#ghostWord{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-52%);font-family:'Black Han Sans';font-size:clamp(110px,23vw,340px);letter-spacing:8px;color:transparent;-webkit-text-stroke:1.5px rgba(10,46,18,.07);white-space:nowrap;pointer-events:none;user-select:none;transition:opacity .5s}
.hero-grid{position:relative;z-index:5;width:100%;max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(18px,3.4vw,54px)}
.hero-copy{max-width:620px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:'Space Grotesk';font-size:12px;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--ink);border:1px solid rgba(10,46,18,.18);background:rgba(255,255,255,.6);padding:8px 16px;border-radius:99px;opacity:0;animation:fadeUp .7s ease .15s forwards;backdrop-filter:blur(8px)}
.hero-eyebrow .pip{width:7px;height:7px;border-radius:50%;background:var(--lime-d);animation:pulse 2.2s ease-out infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(121,196,0,.55)}70%{box-shadow:0 0 0 11px rgba(121,196,0,0)}100%{box-shadow:0 0 0 0 rgba(121,196,0,0)}}
.hero-hl{margin:22px 0 0}
.hero-hl .ln{display:block;overflow:hidden}
.hero-hl .ln i{display:inline-block;transform:translateY(112%);animation:rise 1s cubic-bezier(.16,1,.3,1) forwards;font-style:normal}
.hero-hl .ln:nth-child(1) i{animation-delay:.28s}.hero-hl .ln:nth-child(2) i{animation-delay:.42s}.hero-hl .ln:nth-child(3) i{animation-delay:.56s}
@keyframes rise{to{transform:translateY(0)}}
.hlA{font-family:'Black Han Sans';font-size:clamp(44px,6.5vw,86px);color:var(--ink);letter-spacing:-.5px}
.hlB{font-family:'Black Han Sans';font-size:clamp(44px,6.5vw,86px);letter-spacing:-.5px;color:transparent;-webkit-text-stroke:2px var(--ink)}
.hlC{font-family:'Black Han Sans';font-size:clamp(44px,6.5vw,86px);letter-spacing:-.5px;color:var(--fx,var(--litchi));transition:color .8s}
.hero-sub{max-width:430px;margin:20px 0 0;font-size:clamp(14.5px,1.35vw,17px);font-weight:600;color:rgba(10,46,18,.66);line-height:1.62;opacity:0;animation:fadeUp .8s ease .74s forwards}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.flav-pick{display:flex;align-items:center;gap:12px;margin-top:30px;opacity:0;animation:fadeUp .8s ease .9s forwards}
.fp-lbl{font-family:'Space Grotesk';font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(10,46,18,.45);margin-right:2px}
.fdot{width:38px;height:38px;border-radius:50%;border:2px solid transparent;position:relative;transition:.3s cubic-bezier(.16,1,.3,1);background:none;padding:0}
.fdot span{position:absolute;inset:5px;border-radius:50%;background:var(--c);box-shadow:inset 0 -4px 8px rgba(0,0,0,.25),inset 0 3px 6px rgba(255,255,255,.5)}
.fdot:hover{transform:translateY(-4px) scale(1.08)}
.fdot.on{border-color:var(--ink);transform:scale(1.12)}
.fdot.on:after{content:attr(data-name);position:absolute;top:-30px;left:50%;transform:translateX(-50%);font-family:'Space Grotesk';font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink);background:rgba(255,255,255,.85);box-shadow:0 4px 14px rgba(10,46,18,.12);padding:4px 10px;border-radius:99px;white-space:nowrap;animation:popIn .35s cubic-bezier(.16,1,.3,1)}
.buy-row{display:flex;align-items:center;gap:16px;margin-top:26px;flex-wrap:wrap;opacity:0;animation:fadeUp .8s ease 1.04s forwards}
.price-tag{display:flex;flex-direction:column}
.price-tag b{font-family:'Black Han Sans';font-size:30px;color:var(--ink);line-height:1}
.price-tag b small{font-size:16px;color:var(--lime-d);vertical-align:top}
.price-tag span{font-family:'Space Grotesk';font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:rgba(10,46,18,.45);margin-top:4px}
.btn{font-family:'Space Grotesk';font-weight:700;font-size:15px;padding:16px 30px;border-radius:99px;transition:.3s cubic-bezier(.16,1,.3,1);border:1.5px solid transparent;display:inline-flex;align-items:center;gap:9px;position:relative;overflow:hidden}
.btn-ink{background:var(--ink);color:#fff;box-shadow:0 10px 30px rgba(10,46,18,.22)}
.btn-ink:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 18px 44px rgba(10,46,18,.32)}
.btn-ink:after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(105deg,transparent,rgba(170,255,0,.45),transparent);transform:skewX(-20deg);animation:btnsheen 3.8s ease-in-out 2s infinite}
@keyframes btnsheen{0%,60%{left:-80%}100%{left:160%}}
.btn-line{background:rgba(255,255,255,.5);color:var(--ink);border-color:rgba(10,46,18,.22);backdrop-filter:blur(8px)}
.btn-line:hover{background:var(--ink);color:#fff;transform:translateY(-3px)}
.btn.added{background:var(--lime);color:var(--ink)}
.hero-trust{display:flex;align-items:center;gap:clamp(14px,2.2vw,28px);margin-top:34px;flex-wrap:wrap;opacity:0;animation:fadeUp .8s ease 1.16s forwards}
.hero-trust .ht{display:flex;flex-direction:column}
.hero-trust .ht b{font-family:'Black Han Sans';font-size:21px;color:var(--lime-d);line-height:1}
.hero-trust .ht span{font-family:'Space Grotesk';font-size:11px;letter-spacing:.8px;text-transform:uppercase;color:rgba(10,46,18,.5);margin-top:5px}
.hero-trust .sep{width:1px;height:32px;background:rgba(10,46,18,.12)}
.hero-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:clamp(430px,60vh,640px);perspective:1100px}
.stage-tilt{position:relative;transform-style:preserve-3d;will-change:transform;display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.stage-halo{position:absolute;width:108%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--fxsoft,rgba(214,96,128,.3)),transparent 60%);filter:blur(14px);animation:breathe 7s ease-in-out infinite;transition:background 1s;z-index:1}
@keyframes breathe{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.1);opacity:1}}
.stage-ring{position:absolute;width:72%;aspect-ratio:1;border:1.5px dashed rgba(10,46,18,.18);border-radius:50%;z-index:1;animation:orbit 26s linear infinite}
.stage-ring:after{content:"";position:absolute;top:-5px;left:50%;width:9px;height:9px;border-radius:50%;background:var(--fx,var(--litchi));transform:translateX(-50%);box-shadow:0 0 14px var(--fx,var(--litchi));transition:background .8s}
.stage-ring.r2{width:92%;animation-duration:40s;animation-direction:reverse;border-color:rgba(121,196,0,.25)}
.stage-ring.r2:after{background:var(--lime-d);box-shadow:0 0 14px var(--lime-d)}
@keyframes orbit{to{transform:rotate(360deg)}}
.can-wrap{position:relative;z-index:3;transform:translateZ(70px)}
.stage-can{height:clamp(380px,55vh,550px);width:auto;filter:drop-shadow(0 46px 50px rgba(10,46,18,.32)) drop-shadow(0 0 56px var(--fxsoft,rgba(214,96,128,.3)));animation:floatCan 5.6s ease-in-out infinite;will-change:transform;transition:filter 1s}
@keyframes floatCan{0%,100%{transform:translateY(0) rotate(-2.5deg)}50%{transform:translateY(-22px) rotate(-2.5deg)}}
.stage-can.swapping{animation:swapCan .55s cubic-bezier(.16,1,.3,1)}
@keyframes swapCan{0%{opacity:0;transform:translateY(46px) scale(.86) rotate(6deg);filter:blur(8px)}100%{opacity:1;transform:translateY(0) scale(1) rotate(-2.5deg);filter:blur(0)}}
.can-shadow{position:absolute;bottom:-8%;left:50%;transform:translateX(-50%);width:60%;height:24px;border-radius:50%;background:radial-gradient(ellipse,rgba(10,46,18,.4),transparent 70%);filter:blur(6px);animation:shGrow 5.6s ease-in-out infinite;z-index:2}
@keyframes shGrow{0%,100%{transform:translateX(-50%) scale(1);opacity:.75}50%{transform:translateX(-50%) scale(.8);opacity:.45}}
.stage-badge{position:absolute;z-index:4;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:13.5px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(10,46,18,.13);color:var(--ink,#0a2e12);padding:9px 15px;border-radius:999px;display:flex;align-items:center;gap:8px;box-shadow:0 8px 22px rgba(10,46,18,.12);opacity:0;transform:translateZ(110px)}
.stage-badge .e{font-size:16px}
.stage-badge.b1{top:12%;right:1%;animation:popIn .6s cubic-bezier(.16,1,.3,1) 1.2s forwards,floatB1 5s ease-in-out 1.9s infinite}
.stage-badge.b2{bottom:22%;left:-1%;animation:popIn .6s cubic-bezier(.16,1,.3,1) 1.4s forwards,floatB2 5.6s ease-in-out 2.1s infinite}
@keyframes popIn{from{opacity:0;transform:scale(.7) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}
@keyframes floatB1{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes floatB2{0%,100%{transform:translateY(0)}50%{transform:translateY(10px)}}
.hero-scroll{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:6}
.hs-line{width:1.5px;height:36px;background:linear-gradient(var(--lime-d),transparent);animation:scrolld 1.8s ease-in-out infinite}
@keyframes scrolld{0%,100%{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}
.hs-txt{font-family:'Space Grotesk';font-size:11px;letter-spacing:3px;text-transform:uppercase;color:rgba(10,46,18,.5)}
@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;text-align:center;gap:6px}
  .hero-copy{max-width:560px;margin:0 auto;order:2}
  .hero-stage{order:1;min-height:clamp(320px,44vh,440px)}
  .stage-can{height:clamp(270px,37vh,360px)}
  .hero-sub{margin-left:auto;margin-right:auto}
  .buy-row,.hero-trust,.flav-pick{justify-content:center}
  .hero-eyebrow{margin:0 auto}
  #ghostWord{font-size:clamp(86px,24vw,190px)}
  .stage-badge{font-size:11px;padding:8px 12px}
  .stage-badge.b1{right:0;top:5%}.stage-badge.b2{left:0;bottom:8%}
  .flav-pick{margin-top:36px}
}

/* marquee */
.marquee{overflow:hidden;white-space:nowrap;padding:16px 0}
.marquee.lime{background:var(--lime);color:var(--ink)}
.marquee.ink{background:var(--ink);color:var(--lime)}
.mi{display:inline-block;animation:scrollX 26s linear infinite}
.marquee:hover .mi{animation-play-state:paused}
@keyframes scrollX{to{transform:translateX(-50%)}}
.m-it{font-family:'Black Han Sans';font-size:clamp(19px,2.2vw,28px);display:inline-flex;align-items:center;margin:0 8px}
.m-dot{width:8px;height:8px;border-radius:50%;background:currentColor;display:inline-block;margin:0 17px}

/* cinematic product band */
#ls-band{position:relative;overflow:hidden;min-height:clamp(430px,68vh,660px);background:radial-gradient(circle at 78% 40%,rgba(255,92,139,.32),transparent 0 18%,transparent 39%),linear-gradient(112deg,#193a24 0%,#637a66 42%,#f3dbe4 68%,#fff8ef 100%);isolation:isolate}
#ls-band:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,38,14,.62) 0%,rgba(4,38,14,.38) 37%,rgba(255,255,255,.1) 66%,rgba(255,255,255,.35) 100%);z-index:1}
#ls-band .ovl{position:absolute;inset:0;z-index:4;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 42%,rgba(2,30,10,.2));pointer-events:none}
#ls-band .cap{position:absolute;left:clamp(18px,5vw,64px);bottom:clamp(30px,8vh,78px);max-width:640px;z-index:5;color:#fff}
#ls-band .cap .k{font-family:'Space Grotesk';font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--lime);font-weight:600}
#ls-band .cap h2{font-family:'Black Han Sans';font-size:clamp(38px,6.2vw,78px);line-height:.96;margin-top:10px;text-shadow:0 4px 30px rgba(0,0,0,.45)}
#ls-band .ls-product{position:absolute;right:clamp(52px,10vw,170px);top:50%;z-index:3;width:clamp(190px,22vw,330px);height:72%;transform:translateY(-50%);display:grid;place-items:center;filter:drop-shadow(0 34px 48px rgba(28,17,20,.34))}
#ls-band .ls-product:before{content:"";position:absolute;width:155%;height:74%;border-radius:999px;background:radial-gradient(circle,rgba(170,255,0,.28),rgba(255,83,134,.16) 42%,transparent 70%);filter:blur(4px);animation:lsPulse 4.8s ease-in-out infinite}
#ls-band .ls-product:after{display:none!important}
#ls-band img.ls-litchi-feature{position:relative;z-index:1;width:auto;height:100%;max-width:100%;object-fit:contain;animation:lsFloatCan 5.8s ease-in-out infinite;will-change:transform}
#ls-band .ls-glow{position:absolute;border-radius:999px;z-index:0;pointer-events:none}
#ls-band .ls-glow-a{width:34vw;height:34vw;right:6vw;top:8%;background:rgba(170,255,0,.22);filter:blur(34px)}
#ls-band .ls-glow-b{width:28vw;height:28vw;right:24vw;bottom:-8vw;background:rgba(255,70,124,.22);filter:blur(38px)}
@keyframes lsFloatCan{0%,100%{transform:translateY(0) rotate(1.2deg)}50%{transform:translateY(-16px) rotate(-1.2deg)}}
@keyframes lsPulse{0%,100%{transform:scale(.96);opacity:.74}50%{transform:scale(1.05);opacity:1}}
@media(max-width:760px){
  #ls-band{min-height:540px;background:linear-gradient(180deg,#f9dce6 0%,#fff9ef 48%,#def8b8 100%);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:32px 18px 24px}
  #ls-band:before{background:linear-gradient(180deg,rgba(4,38,14,.08),rgba(4,38,14,.22))}
  #ls-band .cap{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:100%;max-width:100%;text-align:center;color:var(--ink);z-index:5;margin-bottom:12px}
  #ls-band .cap .k{font-size:11px;letter-spacing:2.5px}
  #ls-band .cap h2{font-size:clamp(24px,6.8vw,35px);line-height:1.08;margin-top:8px;text-shadow:none;word-break:normal;overflow-wrap:normal}
  #ls-band .ls-product{position:relative;right:auto;top:auto;left:auto;width:min(50vw,200px);height:280px;max-height:44vh;transform:none;margin:0 auto;z-index:3}
  #ls-band .ls-product:after{display:none!important}
}

/* base sections */
section{position:relative}
.wrap{max-width:1200px;margin:0 auto;padding:clamp(66px,8.6vw,120px) clamp(18px,4vw,40px)}
.kicker{font-family:'Space Grotesk';font-size:12.5px;letter-spacing:3px;text-transform:uppercase;font-weight:700;color:var(--lime-d)}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:none}

/* mission */
#mission{background:var(--paper2)}
#mission h2{font-family:'Black Han Sans';font-size:clamp(30px,4.8vw,58px);margin:14px 0 18px;max-width:900px}
#mission .lead{font-size:16.5px;color:rgba(10,46,18,.62);max-width:560px;margin-bottom:54px;font-weight:600}
.mgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:820px){.mgrid{grid-template-columns:repeat(2,1fr)}}
.mcard{background:#fff;border-radius:24px;padding:30px 26px;box-shadow:0 14px 38px rgba(10,46,18,.07);transition:.4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}
.mcard:hover{transform:translateY(-10px);box-shadow:0 26px 56px rgba(10,46,18,.13)}
.mcard:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--mc,var(--lime))}
.mcard .me{font-size:38px;margin-bottom:14px}
.mcard h4{font-family:'Space Grotesk';font-weight:700;font-size:17px;margin-bottom:7px}
.mcard p{font-size:14px;color:rgba(10,46,18,.6);line-height:1.55}

/* flavour lab — light pastel panels */
.fp{min-height:92vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:70px clamp(18px,5vw,80px)}
.fp .ghost{position:absolute;font-family:'Black Han Sans';font-size:clamp(130px,28vw,400px);opacity:.55;color:#fff;white-space:nowrap;left:-2%;top:50%;transform:translateY(-50%);pointer-events:none;text-shadow:0 2px 0 rgba(10,46,18,.04)}
.fp .inner{max-width:1200px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;gap:clamp(26px,4vw,70px);position:relative;z-index:2}
.fp .num{font-family:'Space Grotesk';font-weight:700;font-size:13px;letter-spacing:2px;color:rgba(10,46,18,.4)}
.fp .fname{font-family:'Black Han Sans';font-size:clamp(50px,8.6vw,112px);line-height:.92;color:var(--ink);margin-top:8px}
.fp .fname em{font-style:normal;color:var(--fc)}
.fp .fbody{font-size:16.5px;line-height:1.62;color:rgba(10,46,18,.66);margin:18px 0 20px;max-width:470px;font-weight:600}
.fp .ftags{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:26px}
.fp .ftags span{font-family:'Space Grotesk';font-size:12px;font-weight:600;background:rgba(255,255,255,.75);color:var(--ink);padding:7px 14px;border-radius:99px;box-shadow:0 4px 14px rgba(10,46,18,.07)}
.fp .fbuy{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.fp .fprice{font-family:'Black Han Sans';font-size:26px}
.fp .fprice small{font-size:14px;vertical-align:top}
.fp .fpack-badge{font-family:'Space Grotesk';font-size:14px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;background:rgba(255,255,255,.78);color:var(--ink);padding:12px 18px;border-radius:99px;box-shadow:0 8px 22px rgba(10,46,18,.08);line-height:1}
.fp .fcta{font-family:'Space Grotesk';font-weight:700;background:var(--ink);color:#fff;padding:14px 26px;border-radius:99px;display:inline-flex;gap:8px;align-items:center;transition:.3s;border:0;font-size:14.5px}
.fp .fcta:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(10,46,18,.28)}
.fp .fcta.added{background:var(--fc);color:#fff}
.fp .can-col{position:relative;display:flex;align-items:center;justify-content:center}
.fp .fcan{height:clamp(330px,52vh,520px);width:auto;filter:drop-shadow(0 40px 44px rgba(10,46,18,.3));transition:transform .7s cubic-bezier(.16,1,.3,1);position:relative;z-index:2}
.fp:hover .fcan{transform:rotate(-5deg) translateY(-14px) scale(1.03)}
.fp .blob{position:absolute;width:120%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--fcsoft),transparent 62%);filter:blur(10px);z-index:1}
.fp.litchi{background:linear-gradient(150deg,#fff0f4,#ffe0e8);--fc:var(--litchi);--fcsoft:rgba(214,96,128,.34)}
.fp.blue{background:linear-gradient(150deg,#efecff,#dfd9fb);--fc:var(--blue);--fcsoft:rgba(91,65,214,.3)}
@media(max-width:820px){
  .fp{min-height:auto;padding:60px 22px}
  .fp .inner{grid-template-columns:1fr;text-align:center;gap:8px}
  .fp .can-col{order:-1}
  .fp .fcan{height:clamp(250px,36vh,340px)}
  .fp .fbody{margin-left:auto;margin-right:auto}
  .fp .ftags,.fp .fbuy{justify-content:center}
}

/* ingredients — dark lab */
#ingredients{background:radial-gradient(110% 90% at 50% 0%,#0e3a1a,#07210e 70%);color:#fff}
#ingredients .kicker{color:var(--lime)}
#ingredients h2{font-family:'Black Han Sans';font-size:clamp(30px,4.8vw,58px);margin:14px 0 14px;color:#fff}
#ingredients .lead{color:rgba(255,255,255,.6);max-width:540px;margin-bottom:50px;font-weight:600}
.igrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:760px){.igrid{grid-template-columns:1fr}}
.icard{background:rgba(255,255,255,.045);border:1px solid rgba(170,255,0,.16);border-radius:22px;padding:30px;transition:.35s;position:relative;overflow:hidden}
.icard:hover{background:rgba(170,255,0,.08);transform:translateY(-7px);border-color:rgba(170,255,0,.5)}
.icard .ie{font-size:40px;margin-bottom:14px}
.icard h3{font-family:'Space Grotesk';font-weight:700;font-size:19px;margin-bottom:8px;color:#fff}
.icard p{font-size:14.5px;color:rgba(255,255,255,.66);line-height:1.55}
.icard .tag{position:absolute;top:20px;right:20px;font-family:'Space Grotesk';font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--lime);border:1px solid rgba(170,255,0,.35);padding:4px 9px;border-radius:99px}

/* flavour roadmap */
#lifestyle{background:var(--paper);overflow:hidden}
.flavour-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:36px;margin-bottom:44px}
#lifestyle h2{font-family:'Black Han Sans';font-size:clamp(38px,5.4vw,68px);line-height:.94;margin:14px 0 16px}
#lifestyle .lead{font-size:17px;line-height:1.6;color:rgba(10,46,18,.64);max-width:650px;margin:0;font-weight:700}
.drop-note{min-width:220px;padding:20px 22px;border:1px solid rgba(10,46,18,.14);border-radius:18px;background:rgba(255,255,255,.64);box-shadow:0 14px 34px rgba(10,46,18,.07)}
.drop-note span{float:left;margin-right:14px;font-family:'Black Han Sans';font-size:44px;line-height:.9;color:var(--lime-d)}
.drop-note b,.drop-note small{display:block;font-family:'Space Grotesk'}
.drop-note b{font-size:14px;text-transform:uppercase;letter-spacing:1.4px}.drop-note small{margin-top:5px;font-size:12px;color:rgba(10,46,18,.55)}
.flavour-roadmap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}
.flavour-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(10,46,18,.12);border-radius:22px;box-shadow:0 18px 42px rgba(10,46,18,.1);transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s ease}
.flavour-card:hover{transform:translateY(-8px);box-shadow:0 28px 56px rgba(10,46,18,.16)}
.flavour-card:after{content:"";position:absolute;inset:auto -12% -38% 28%;height:74%;border:1px solid rgba(10,46,18,.09);border-radius:50%;z-index:-1}
.flavour-card img{position:absolute;width:auto;max-width:none;object-fit:contain;filter:drop-shadow(0 24px 24px rgba(10,46,18,.2));transition:transform .7s cubic-bezier(.16,1,.3,1)}
.flavour-card:hover img{transform:translateY(-9px) rotate(1deg) scale(1.025)}
.flavour-live{grid-column:span 6;height:430px}
.flavour-live img{right:3%;bottom:0;height:95%;max-width:48%}
.flavour-litchi{background:linear-gradient(145deg,#fff7f9 0%,#ffdce7 100%)}
.flavour-litchi img{height:95%;right:3%;bottom:0;max-width:48%}
.flavour-blueberry{background:linear-gradient(145deg,#f9f8ff 0%,#ddd8ff 100%)}
.flavour-blueberry img{height:95%;right:2%;bottom:0;max-width:48%}
.flavour-future{grid-column:span 3;height:310px;background:#fff}
.flavour-future img{inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) drop-shadow(0 18px 22px rgba(10,46,18,.15))}
.flavour-future:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(255,255,255,.02) 32%,rgba(10,46,18,.84) 100%)}
.future-orange{background:#ffefd4}.future-pomegranate{background:#ffe1e9}.future-pineapple{background:#fff4bd}.future-secret{background:#ddf4ee}
.flavour-status{position:absolute;top:20px;left:20px;z-index:4;padding:8px 11px;border-radius:99px;background:#fff;border:1px solid rgba(10,46,18,.16);font-family:'Space Grotesk';font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink)}
.flavour-status.is-live{background:var(--ink);border-color:var(--ink);color:var(--lime)}
.flavour-index{position:absolute;top:22px;right:22px;z-index:4;font-family:'Black Han Sans';font-size:18px;color:rgba(10,46,18,.32)}
.flavour-future .flavour-index{color:rgba(255,255,255,.8)}
.flavour-copy{position:absolute;left:28px;bottom:26px;z-index:5;max-width:44%}
.flavour-copy>span{font-family:'Space Grotesk';font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--lime-d)}
.flavour-copy h3{font-family:'Black Han Sans';font-size:clamp(28px,3.2vw,40px);line-height:.92;margin-top:6px;color:var(--ink);letter-spacing:-.5px;white-space:nowrap}
.flavour-copy p{margin-top:10px;font-size:13px;line-height:1.48;font-weight:700;color:rgba(10,46,18,.62);max-width:220px}
.flavour-future .flavour-copy{max-width:none}.flavour-future .flavour-copy>span{color:var(--lime)}.flavour-future .flavour-copy h3{font-size:27px;color:#fff;white-space:normal}
@media(max-width:900px){
  .flavour-heading{grid-template-columns:1fr}.drop-note{display:none}
  .flavour-live{height:390px}.flavour-future{grid-column:span 6}
}
@media(max-width:620px){
  .flavour-roadmap{gap:14px}.flavour-live,.flavour-future{grid-column:1/-1}
  .flavour-live{
    height:auto;
    min-height:0;
    padding:56px 20px 28px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
  }
  .flavour-live img,
  .flavour-litchi img,
  .flavour-blueberry img{
    position:relative;
    inset:auto;
    right:auto;
    bottom:auto;
    height:300px;
    max-height:48vh;
    margin:4px auto 22px;
    transform:none!important;
  }
  .flavour-copy{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    width:100%;
    max-width:100%;
    text-align:left;
  }
  .flavour-copy h3{font-size:38px}
  .flavour-copy p{display:block;font-size:15px;line-height:1.55}
  .flavour-future{height:280px}
}

/* ═══ FAQ ACCORDION ═══ */
#faq{background:var(--paper);position:relative;padding:90px clamp(18px,4vw,54px)}
#faq .wrap{max-width:960px;margin:0 auto}
#faq h2{font-family:'Black Han Sans',sans-serif;font-size:clamp(32px,5vw,58px);margin:14px 0 40px;color:var(--ink)}
#faq .kicker{color:var(--lime-d);font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:12px;letter-spacing:2px;text-transform:uppercase}
.fitems{display:flex;flex-direction:column;gap:14px}
.fi{background:#fff;border-radius:18px;border:1px solid rgba(10,46,18,.09);overflow:hidden;transition:box-shadow .3s,border-color .3s;box-shadow:0 6px 20px rgba(10,46,18,.04)}
.fi:hover{border-color:rgba(10,46,18,.2);box-shadow:0 12px 30px rgba(10,46,18,.08)}
.fq{width:100%;text-align:left;background:none;border:none;padding:22px 26px;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(15.5px,1.8vw,18px);color:var(--ink);display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:16px}
.fq .ic{font-size:24px;font-weight:700;color:var(--lime-d);transition:transform .3s ease;line-height:1;flex-shrink:0}
.fi.open .fq .ic{transform:rotate(45deg)}
.fa{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.16,1,.3,1),padding .35s ease;padding:0 26px}
.fi.open .fa{max-height:300px;padding:0 26px 24px}
.fa p{font-size:15px;line-height:1.65;color:rgba(10,46,18,.75);margin:0;font-weight:600}

/* reviews */
#reviews{background:var(--paper2);overflow:hidden}
#reviews h2{font-family:'Black Han Sans';font-size:clamp(30px,4.8vw,58px);text-align:center;margin:14px 0 46px}
#reviews .kicker{display:block;text-align:center}
.rv-track{display:flex;gap:20px;width:max-content;animation:scrollX 38s linear infinite}
#reviews:hover .rv-track{animation-play-state:paused}
.rv{width:340px;background:#fff;border-radius:22px;padding:28px;box-shadow:0 12px 36px rgba(10,46,18,.08)}
.rv .stars{color:#ffb800;font-size:16px;margin-bottom:12px}
.rv p{font-size:15px;line-height:1.6;margin-bottom:18px;color:rgba(10,46,18,.8)}
.rv .who{display:flex;align-items:center;gap:12px}
.rv .av{width:42px;height:42px;border-radius:50%;background:var(--ink);color:var(--lime);display:flex;align-items:center;justify-content:center;font-family:'Black Han Sans';font-size:17px}
.rv .who b{font-family:'Space Grotesk';font-weight:700;font-size:14.5px}
.rv .who span{font-size:12.5px;color:rgba(10,46,18,.5);display:block}

/* pack builder */
#pack{background:linear-gradient(160deg,#f3ffd6,#eaf7c4)}
#pack h2{font-family:'Black Han Sans';font-size:clamp(30px,5vw,60px);margin:14px 0 10px}
#pack .lead{font-size:16px;color:rgba(10,46,18,.62);max-width:560px;margin-bottom:42px;font-weight:600}
.pack-sizes{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:34px}
.psize{font-family:'Space Grotesk';font-weight:700;font-size:14.5px;background:#fff;border:2px solid transparent;border-radius:18px;padding:16px 22px;display:flex;flex-direction:column;gap:3px;transition:.3s;box-shadow:0 8px 24px rgba(10,46,18,.08);min-width:128px;text-align:left}
.psize small{font-weight:600;font-size:12px;color:rgba(10,46,18,.5)}
.psize .save{color:var(--lime-d);font-size:11.5px;font-weight:800}
.psize:hover{transform:translateY(-4px)}
.psize.on{border-color:var(--ink);box-shadow:0 14px 34px rgba(10,46,18,.16)}
.mixer{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:30px}
.mixer-two{grid-template-columns:repeat(2,minmax(0,220px));max-width:470px}
@media(max-width:880px){.mixer,.mixer-two{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.mixer{grid-template-columns:1fr 1fr}}
.mx{background:#fff;border-radius:20px;padding:18px 14px;text-align:center;box-shadow:0 8px 24px rgba(10,46,18,.07);transition:.3s}
.mx:hover{transform:translateY(-4px)}
.mx img{height:108px;width:auto;margin:0 auto 10px;filter:drop-shadow(0 10px 14px rgba(10,46,18,.2))}
.mx h5{font-family:'Space Grotesk';font-weight:700;font-size:13.5px;margin-bottom:10px}
.mx .step{display:inline-flex;align-items:center;gap:12px;background:var(--paper);border-radius:99px;padding:5px}
.mx .step button{width:30px;height:30px;border-radius:50%;border:0;background:var(--ink);color:#fff;font-size:16px;font-weight:800;display:flex;align-items:center;justify-content:center;transition:.2s}
.mx .step button:hover{background:var(--lime-d)}
.mx .step b{min-width:20px;font-family:'Space Grotesk';font-size:15px}
.pack-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;background:#fff;border-radius:22px;padding:22px 26px;box-shadow:0 16px 40px rgba(10,46,18,.1)}
.pack-foot .pf-l{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.pf-count{font-family:'Space Grotesk';font-weight:700;font-size:14px;color:rgba(10,46,18,.6)}
.pf-count b{color:var(--ink);font-size:16px}
.pf-total{font-family:'Black Han Sans';font-size:32px}
.pf-total small{font-size:16px;vertical-align:top}
.pf-total .strike{font-size:15px;color:rgba(10,46,18,.4);text-decoration:line-through;font-family:'Nunito';font-weight:700;margin-left:8px}
#packAdd:disabled{opacity:.45;pointer-events:none}

/* footer */
footer{background:var(--ink);color:#fff;padding:68px clamp(18px,4vw,54px) 0}
.fgrid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px}
@media(max-width:820px){.fgrid{grid-template-columns:1fr 1fr}}
.fbrand .flogo{font-family:'Black Han Sans';font-size:32px;margin-bottom:14px}
.fbrand .flogo b{color:var(--lime)}
.fbrand p{font-size:14.5px;color:rgba(255,255,255,.66);line-height:1.6;max-width:300px;margin-bottom:20px}
.fjoin{display:flex;gap:8px;max-width:320px}
.fjoin input{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:99px;padding:12px 18px;color:#fff;font-family:'Nunito'}
.fjoin button{background:var(--lime);color:var(--ink);border:0;border-radius:99px;padding:0 22px;font-family:'Space Grotesk';font-weight:700}
.fcol h5{font-family:'Space Grotesk';font-size:12.5px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:16px}
.fcol a{display:block;font-size:14.5px;color:rgba(255,255,255,.78);margin-bottom:11px;transition:.2s}
.fcol a:hover{color:var(--lime);transform:translateX(3px)}
.fbot{max-width:1200px;margin:52px auto 0;border-top:1px solid rgba(255,255,255,.1);padding:22px 0 28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:rgba(255,255,255,.5)}
.fstrip{background:var(--lime);color:var(--ink);text-align:center;font-family:'Black Han Sans';font-size:clamp(15px,2.2vw,24px);padding:15px;letter-spacing:1px}

/* floating cart bar */
#cartBar{position:fixed;left:50%;bottom:18px;transform:translate(-50%,140%);z-index:950;display:flex;align-items:center;gap:16px;background:var(--ink);color:#fff;border-radius:99px;padding:10px 12px 10px 22px;box-shadow:0 22px 60px rgba(10,46,18,.4);transition:transform .5s cubic-bezier(.16,1,.3,1);max-width:92vw}
#cartBar.show{transform:translate(-50%,0)}
#cartBar .cb-info{font-family:'Space Grotesk';font-weight:600;font-size:14px;white-space:nowrap}
#cartBar .cb-info b{color:var(--lime)}
#cartBar .cb-cans{display:flex}
#cartBar .cb-cans img{height:34px;width:auto;margin-left:-8px;filter:drop-shadow(0 3px 5px rgba(0,0,0,.4))}
#cartBar button{font-family:'Space Grotesk';font-weight:700;font-size:14px;background:var(--lime);color:var(--ink);border:0;border-radius:99px;padding:12px 22px;transition:.25s;white-space:nowrap}
#cartBar button:hover{transform:scale(1.04)}
#cartBar button.done{background:#fff}
/* fly-to-cart dot */
.fly{position:fixed;width:14px;height:14px;border-radius:50%;background:var(--lime-d);z-index:9998;pointer-events:none;box-shadow:0 0 10px rgba(121,196,0,.8)}

/* ═══ CAUGHT IN THE WILD ═══ */
#wild{background:var(--paper2);position:relative;overflow:hidden}
#wild h2{font-family:'Black Han Sans';font-size:clamp(30px,5vw,60px);margin:14px 0 12px}
#wild .lead{font-size:16px;color:rgba(10,46,18,.6);max-width:580px;margin-bottom:38px;font-weight:600}
.wild-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
@media(max-width:1080px){.wild-grid{grid-template-columns:repeat(3,1fr);gap:10px}}
@media(max-width:520px){.wild-grid{grid-template-columns:repeat(2,1fr);gap:8px}}
.wild-tile{position:relative;overflow:hidden;border-radius:20px;aspect-ratio:.65;cursor:pointer;group:hover;box-shadow:0 20px 50px rgba(10,46,18,.15);transition:.5s cubic-bezier(.16,1,.3,1)}
.wild-tile img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.wild-tile:hover img{transform:scale(1.15)}
.wild-tile .wov{position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(10,46,18,.8));display:flex;flex-direction:column;justify-content:flex-end;padding:20px;opacity:0;transition:.4s;color:#fff}
.wild-tile:hover .wov{opacity:1}
.wild-tile .wk{font-family:'Space Grotesk';font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--lime);font-weight:600;margin-bottom:6px}
.wild-tile h4{font-family:'Black Han Sans';font-size:18px;line-height:1.1}
.wild-tag{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.9);color:var(--ink);font-family:'Space Grotesk';font-weight:700;font-size:10px;padding:6px 11px;border-radius:99px;opacity:0;transition:.3s;z-index:2}
.wild-tile:hover .wild-tag{opacity:1}

/* ═══ VIBE PICKER ═══ */
#vibes{background:linear-gradient(160deg,#fff9f0,#fff5e6);position:relative}
#vibes h2{font-family:'Black Han Sans';font-size:clamp(30px,5vw,60px);margin:14px 0 10px}
#vibes .lead{font-size:16px;color:rgba(10,46,18,.62);max-width:580px;margin-bottom:42px;font-weight:600}
.vibe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:880px){.vibe-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.vibe-grid{grid-template-columns:1fr}}
.vibe-card{background:#fff;border-radius:24px;padding:28px;box-shadow:0 12px 36px rgba(10,46,18,.08);text-align:center;transition:.4s cubic-bezier(.16,1,.3,1);cursor:pointer;border:2px solid transparent;position:relative;overflow:hidden}
.vibe-card:hover{transform:translateY(-8px);box-shadow:0 24px 56px rgba(10,46,18,.16);border-color:var(--vc)}
.vibe-card .ve{font-size:50px;margin-bottom:14px}
.vibe-card h4{font-family:'Black Han Sans';font-size:22px;margin-bottom:8px;color:var(--ink)}
.vibe-card p{font-size:14px;color:rgba(10,46,18,.6);line-height:1.55;margin-bottom:16px}
.vibe-card .flavs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.vibe-card .flav-dot{width:24px;height:24px;border-radius:50%;background:var(--c);box-shadow:0 4px 12px rgba(10,46,18,.2);transition:.3s}
.vibe-card:hover .flav-dot{transform:scale(1.2)}
.vibe-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(170,255,0,.2),transparent);transition:.5s;z-index:1}
.vibe-card:hover:before{left:100%}
.vc-study{--vc:#5b41d6}.vc-gym{--vc:#d66080}.vc-chill{--vc:#46ccb4}.vc-night{--vc:#5b41d6}

/* ═══ CRAVING METER ═══ */
#meter{background:var(--paper2);position:relative}
#meter h2{font-family:'Black Han Sans';font-size:clamp(30px,5vw,60px);margin:14px 0 10px;text-align:center}
#meter .lead{font-size:16px;color:rgba(10,46,18,.62);max-width:580px;margin:0 auto 50px;font-weight:600;text-align:center}
.meter-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-bottom:36px;max-width:700px;margin-left:auto;margin-right:auto}
@media(max-width:640px){.meter-row{grid-template-columns:1fr;text-align:center;gap:12px}}
.meter-row .mk{font-family:'Space Grotesk';font-weight:700;font-size:13.5px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(10,46,18,.5);white-space:nowrap}
.meter-row .bar{height:12px;border-radius:99px;background:rgba(10,46,18,.08);overflow:hidden}
.meter-row .fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--mf),var(--mf2));animation:fillBar 1.8s cubic-bezier(.16,1,.3,1) forwards;opacity:0}
@keyframes fillBar{from{width:0;opacity:1}to{width:var(--pw);opacity:1}}
.meter-row .stat{font-family:'Black Han Sans';font-size:22px;color:var(--mf);text-align:right;white-space:nowrap}
.m-study{--mf:#5b41d6;--mf2:#6a4cff;--pw:94%}.m-gym{--mf:#ff7a1a;--mf2:#ffb34d;--pw:98%}
.m-chill{--mf:#46ccb4;--mf2:#7eded8;--pw:87%}.m-night{--mf:#c4183c;--mf2:#ff3b6b;--pw:99%}
.m-social{--mf:#6fbe1f;--mf2:#aaff00;--pw:91%}
.meter-note{text-align:center;font-family:'Space Grotesk';font-size:13px;color:rgba(10,46,18,.5);margin-top:26px;font-weight:600}

/* ═══ FOMO BAND ═══ */
#fomo{background:var(--ink);color:#fff;position:relative;overflow:hidden;padding:50px clamp(18px,4vw,54px)}
#fomo .wrap{max-width:1100px;margin:0 auto}
#fomo h2{font-family:'Black Han Sans';font-size:clamp(24px,4.4vw,52px);margin-bottom:18px;color:#fff}
#fomo .fomo-txt{font-size:15.5px;color:rgba(255,255,255,.8);max-width:600px;line-height:1.65;margin-bottom:22px;font-weight:600}
#fomo .fomo-cta{display:inline-flex;align-items:center;gap:10px;background:var(--lime);color:var(--ink);font-family:'Space Grotesk';font-weight:700;padding:15px 32px;border-radius:99px;transition:.3s;border:0;font-size:15px;cursor:pointer}
#fomo .fomo-cta:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(170,255,0,.4)}
#fomo .fomo-ghost{position:absolute;right:-5%;top:50%;transform:translateY(-50%);font-family:'Black Han Sans';font-size:clamp(80px,18vw,280px);color:rgba(170,255,0,.08);white-space:nowrap;pointer-events:none}



/* ═══ INNER PAGE TEMPLATES (page.php / single.php / index.php / 404.php) ═══ */
.page-hero{background:linear-gradient(160deg,#fffdf4,#f6f3e3 60%,#f0eddb);padding:170px clamp(18px,4vw,54px) 70px;text-align:left}
.page-hero h1{font-family:'BHS','Black Han Sans',sans-serif;font-size:clamp(34px,5.6vw,64px);color:var(--ink);line-height:1.02;margin-top:14px}
.page-hero .meta{font-family:'SG','Space Grotesk',sans-serif;font-size:12.5px;letter-spacing:2px;text-transform:uppercase;color:rgba(10,46,18,.5);font-weight:700}
.page-body{background:var(--paper2)}
.prose{max-width:760px;font-size:17px;line-height:1.75;color:rgba(10,46,18,.78)}
.prose h2{font-family:'BHS','Black Han Sans',sans-serif;font-size:clamp(26px,3.4vw,38px);color:var(--ink);margin:42px 0 16px;line-height:1.05}
.prose h3{font-family:'SG','Space Grotesk',sans-serif;font-weight:700;font-size:21px;color:var(--ink);margin:32px 0 12px}
.prose p{margin-bottom:20px}
.prose a{color:var(--lime-d);text-decoration:underline;text-decoration-color:rgba(121,196,0,.4)}
.prose a:hover{text-decoration-color:var(--lime-d)}
.prose ul,.prose ol{margin:0 0 20px 22px}
.prose li{margin-bottom:8px}
.prose img{border-radius:18px;margin:24px 0;box-shadow:0 16px 40px rgba(10,46,18,.12)}
.prose blockquote{border-left:3px solid var(--lime-d);padding:4px 0 4px 22px;margin:24px 0;font-weight:700;color:var(--ink);font-style:normal}
.post-thumb{margin-bottom:34px;border-radius:22px;overflow:hidden;box-shadow:0 20px 50px rgba(10,46,18,.14)}
.post-thumb img{width:100%;display:block}
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:900px){.post-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.post-grid{grid-template-columns:1fr}}
.post-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 14px 36px rgba(10,46,18,.08);transition:.35s cubic-bezier(.16,1,.3,1)}
.post-card:hover{transform:translateY(-6px);box-shadow:0 24px 52px rgba(10,46,18,.14)}
.pc-thumb{display:block;aspect-ratio:1.4;overflow:hidden}
.pc-thumb img{width:100%;height:100%;object-fit:cover;transition:.5s}
.post-card:hover .pc-thumb img{transform:scale(1.08)}
.post-card h3{font-family:'SG','Space Grotesk',sans-serif;font-size:18px;padding:20px 20px 8px;line-height:1.3}
.post-card h3 a{color:var(--ink)}
.post-card p{padding:0 20px 22px;font-size:14.5px;color:rgba(10,46,18,.6);line-height:1.55}
.pagination{display:flex;gap:10px;margin-top:50px}
.pagination a,.pagination span{font-family:'SG','Space Grotesk',sans-serif;font-weight:700;padding:10px 16px;border-radius:99px;background:#fff;box-shadow:0 8px 22px rgba(10,46,18,.08)}
.pagination .current{background:var(--ink);color:#fff}

/* ═══ ABOUT / MISSION / CONTACT PAGE EXTRAS ═══ */
.stat-strip{display:flex;align-items:center;gap:clamp(16px,3vw,34px);flex-wrap:wrap;margin-top:40px;padding-top:34px;border-top:1px solid rgba(10,46,18,.1)}
.stat-strip .st{display:flex;flex-direction:column}
.stat-strip .st b{font-family:'BHS','Black Han Sans',sans-serif;font-size:26px;color:var(--lime-d);line-height:1}
.stat-strip .st span{font-family:'SG','Space Grotesk',sans-serif;font-size:11.5px;letter-spacing:1px;text-transform:uppercase;color:rgba(10,46,18,.5);margin-top:5px}

.promise-list{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:30px 0 0}
@media(max-width:680px){.promise-list{grid-template-columns:1fr}}
.promise-list li{display:flex;align-items:flex-start;gap:12px;font-family:'NN','Nunito',sans-serif;font-weight:700;font-size:15.5px;color:rgba(10,46,18,.78);background:#fff;border-radius:16px;padding:16px 18px;box-shadow:0 10px 28px rgba(10,46,18,.06)}
.promise-list .ck{flex:0 0 26px;height:26px;border-radius:50%;background:var(--lime);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900}

.cta-band{background:linear-gradient(150deg,#0e3a1a,#07210e);color:#fff;text-align:center}
.cta-band h2{font-family:'BHS','Black Han Sans',sans-serif;font-size:clamp(28px,4.4vw,48px);margin-bottom:18px;color:#fff}
.cta-band p{font-family:'NN','Nunito',sans-serif;font-weight:700;color:rgba(255,255,255,.7);max-width:520px;margin:0 auto 28px}
.cta-band .btn-lime{background:var(--lime);color:var(--ink);font-family:'SG','Space Grotesk',sans-serif;font-weight:700;padding:16px 32px;border-radius:99px;display:inline-flex;transition:.3s}
.cta-band .btn-lime:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(170,255,0,.3)}

.contact-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:start}
@media(max-width:880px){.contact-wrap{grid-template-columns:1fr;gap:40px}}
.cf-field{margin-bottom:18px}
.cf-field label{display:block;font-family:'SG','Space Grotesk',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:1px;text-transform:uppercase;color:rgba(10,46,18,.55);margin-bottom:8px}
.cf-field input,.cf-field textarea{width:100%;font-family:'NN','Nunito',sans-serif;font-size:15.5px;font-weight:600;color:var(--ink);background:#fff;border:1.5px solid rgba(10,46,18,.14);border-radius:14px;padding:14px 16px;transition:.25s}
.cf-field input:focus,.cf-field textarea:focus{outline:none;border-color:var(--lime-d);box-shadow:0 0 0 4px rgba(170,255,0,.16)}
.cf-field textarea{resize:vertical;min-height:140px}
.cf-hp{position:absolute;left:-9999px;opacity:0}
.cf-submit{font-family:'SG','Space Grotesk',sans-serif;font-weight:700;font-size:15px;background:var(--ink);color:#fff;border:0;padding:16px 32px;border-radius:99px;cursor:pointer;transition:.3s}
.cf-submit:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(10,46,18,.26)}
.cf-msg{font-family:'NN','Nunito',sans-serif;font-weight:700;font-size:14.5px;padding:16px 18px;border-radius:14px;margin-bottom:22px}
.cf-msg.ok{background:rgba(170,255,0,.16);color:#3c6300;border:1px solid rgba(121,196,0,.35)}
.cf-msg.err{background:rgba(255,59,107,.1);color:#a3123c;border:1px solid rgba(255,59,107,.3)}
.contact-card{background:#fff;border-radius:22px;padding:26px;box-shadow:0 14px 36px rgba(10,46,18,.07);margin-bottom:16px}
.contact-card .cc-k{font-family:'SG','Space Grotesk',sans-serif;font-weight:600;font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--lime-d);margin-bottom:8px;display:block}
.contact-card .cc-v{font-family:'BHS','Black Han Sans',sans-serif;font-size:21px;color:var(--ink)}
.contact-card a.cc-v{color:var(--ink);transition:.25s}
.contact-card a.cc-v:hover{color:var(--lime-d)}
.contact-card p{font-family:'NN','Nunito',sans-serif;font-weight:600;font-size:13.5px;color:rgba(10,46,18,.55);margin-top:6px}

/* Generic spacing fix: on About/Mission pages, h2 is followed directly by a
   card grid with no .lead paragraph in between (unlike homepage sections),
   so it needs its own bottom margin. Lower specificity than #id h2 rules
   above, so homepage sections are unaffected. */
.wrap h2.dh{margin:14px 0 40px}


/* Two-flavour About / Contact additions */
.about-duo-original{background:linear-gradient(155deg,#fff5f8,#f4f0ff)}
.about-duo-original h2{font-family:'Black Han Sans';font-size:clamp(32px,5vw,60px);margin:14px 0 42px;line-height:.96}
.about-can-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.about-can-card{min-height:360px;border-radius:28px;padding:30px;position:relative;overflow:hidden;display:flex;align-items:flex-end;box-shadow:0 18px 40px rgba(10,46,18,.1)}
.about-can-card>span{position:absolute;top:24px;left:28px;font-family:'Space Grotesk';font-size:12px;letter-spacing:2px;font-weight:700;opacity:.48}
.about-can-card h3{font-size:clamp(34px,4vw,52px);margin-bottom:10px}.about-can-card p{max-width:250px;font-size:15px;line-height:1.55;font-weight:700;color:rgba(10,46,18,.66)}
.about-can-card img{position:absolute;right:8%;bottom:-9%;height:92%;width:auto;filter:drop-shadow(0 25px 25px rgba(10,46,18,.28));transition:transform .45s cubic-bezier(.16,1,.3,1)}
.about-can-card:hover img{transform:translateY(-12px) rotate(-4deg)}
.about-litchi-card{background:linear-gradient(150deg,#fff0f4,#ffdbe6)}.about-blue-card{background:linear-gradient(150deg,#efecff,#ded8fc)}
.about-litchi-card img{height:92%!important;bottom:-9%!important;right:8%!important}
.about-blue-card img{height:104%!important;bottom:-15%!important;right:8%!important}
.contact-intro{max-width:620px;font-size:17px;line-height:1.65;color:rgba(10,46,18,.65);font-weight:700;margin-bottom:34px}
.cf-select{width:100%;font-family:'Nunito',sans-serif;font-size:15.5px;font-weight:600;color:var(--ink);background:#fff;border:1.5px solid rgba(10,46,18,.14);border-radius:14px;padding:14px 16px;transition:.25s}.cf-select:focus{outline:none;border-color:var(--lime-d);box-shadow:0 0 0 4px rgba(170,255,0,.16)}
@media(max-width:720px){.about-can-grid{grid-template-columns:1fr}.about-can-card{min-height:330px}.about-can-card img{height:88%;right:5%}}




/* Client fixes: restrained homepage content support */
#hero #fizz,
#hero .nq-fruit-layer{display:none!important}
.hero-eyebrow.nq-tagline{background:rgba(255,255,255,.7);border-color:rgba(10,46,18,.14);box-shadow:0 8px 22px rgba(10,46,18,.06)}
.hero-eyebrow.nq-tagline .pip{border-radius:100% 0 100% 0;transform:rotate(-18deg);box-shadow:none}
.hero-trust{gap:12px}
.hero-trust .sep{display:none}
.hero-trust .ht{min-width:112px;padding:12px 14px;border:1px solid rgba(10,46,18,.1);border-radius:16px;background:rgba(255,255,255,.72);box-shadow:0 8px 24px rgba(10,46,18,.06)}
.hero-trust .ht b{color:var(--ink)}
.feature-flash{background:var(--paper);padding:20px clamp(18px,4vw,54px);border-top:1px solid rgba(10,46,18,.08);border-bottom:1px solid rgba(10,46,18,.08);overflow:hidden}
.feature-flash-track{max-width:1240px;margin:0 auto;display:flex;gap:10px;overflow-x:auto;padding:4px 0 10px;scrollbar-width:thin}
.flash-card{flex:0 0 auto;min-width:156px;min-height:88px;border-radius:16px;padding:14px 15px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(255,255,255,.78);border:1px solid rgba(10,46,18,.1);box-shadow:0 8px 22px rgba(10,46,18,.06);transition:transform .25s,box-shadow .25s}
.flash-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(10,46,18,.1)}
.flash-card span{font-family:'Space Grotesk';font-size:10px;letter-spacing:1.8px;font-weight:900;color:rgba(10,46,18,.45)}
.flash-card b{font-family:'Space Grotesk';font-size:15px;line-height:1.15;font-weight:900;color:var(--ink)}
.flash-card small{font-family:'Space Grotesk';font-size:11px;font-weight:800;color:rgba(10,46,18,.58)}
#pack{background:#eefbd1}
#pack .wrap{padding-top:clamp(54px,7vw,86px);padding-bottom:clamp(54px,7vw,86px)}
#pack h2{font-size:clamp(34px,4.6vw,58px)}
.mixer-two{max-width:560px}
.mx{border-radius:16px}.mx img{height:92px}.pack-foot{max-width:780px}
#mission .wrap{padding-top:clamp(58px,7vw,88px);padding-bottom:clamp(58px,7vw,88px)}
#mission h2{font-size:clamp(30px,4.2vw,50px)}
.mcard{border-radius:16px;padding:22px 20px}.mcard .me{font-family:'Space Grotesk';font-size:13px;font-weight:900;color:var(--mc);letter-spacing:2px}
#ingredients .icard .ie,
#vibes .vibe-card .ve{font-family:'Space Grotesk';font-size:14px;font-weight:900;letter-spacing:2px;width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px}
#ingredients .icard .ie{color:var(--lime);background:rgba(170,255,0,.1);border:1px solid rgba(170,255,0,.24)}
#vibes .vibe-card .ve{color:var(--ink);background:rgba(170,255,0,.18);border:1px solid rgba(10,46,18,.1);margin-left:auto;margin-right:auto}
.flavour-future{min-height:270px;display:flex;align-items:flex-end;background:linear-gradient(160deg,#f7f4ea,#fff);border-style:dashed}
.flavour-future img{display:none}.future-teaser{position:absolute;right:13%;top:20%;width:130px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.95),rgba(214,96,128,.18) 42%,rgba(91,65,214,.14) 70%,transparent);filter:drop-shadow(0 18px 28px rgba(10,46,18,.12))}.future-deep .future-teaser{background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.95),rgba(91,65,214,.2) 42%,rgba(70,204,180,.13) 70%,transparent)}
@media(max-width:900px){.hero-trust{justify-content:center}.feature-flash-track{display:grid;grid-template-columns:repeat(3,1fr)}.flash-card{min-width:0}}

/* WooCommerce Hero Cans & Cart Thumbnails Safety Fallbacks */
.nq-hero-can {
  width: auto !important;
  max-width: none !important;
  height: clamp(250px, 27vw, 370px) !important;
  object-fit: contain !important;
}
.nq-hero-can-litchi {
  right: clamp(112px, 15vw, 190px);
  z-index: 3;
}
.nq-hero-can-blue {
  right: clamp(8px, 3vw, 38px);
  z-index: 2;
}
.woocommerce-cart .product-thumbnail img,
.woocommerce-checkout .product-thumbnail img,
.cart .product-thumbnail img,
.cart_item .product-thumbnail img,
.woocommerce-cart-form__cart-item .product-thumbnail img {
  width: 80px !important;
  height: 80px !important;
  max-width: 80px !important;
  max-height: 80px !important;
  object-fit: contain !important;
  border-radius: 12px;
}
@media(max-width:620px){.feature-flash-track{grid-template-columns:1fr 1fr}.hero-trust .ht{min-width:0}.hero-trust{display:grid;grid-template-columns:repeat(2,1fr)}}

/* ==========================================
   NATURAQ WOOCOMMERCE STYLES
   ========================================== */

/* NaturaQ WooCommerce cart/checkout presentation only. */
body.admin-bar.woocommerce-cart #nav,
body.admin-bar.woocommerce-checkout #nav {
  top: 32px;
}

body.woocommerce-cart .page-hero,
body.woocommerce-checkout .page-hero {
  padding-top: clamp(118px, 12vw, 148px);
  padding-bottom: clamp(46px, 5vw, 64px);
}

body.woocommerce-cart .page-body,
body.woocommerce-checkout .page-body {
  background: var(--paper2);
}

body.woocommerce-cart .page-body > .wrap,
body.woocommerce-checkout .page-body > .wrap {
  max-width: 1120px;
  padding-top: clamp(42px, 5.8vw, 76px);
  padding-bottom: clamp(84px, 9vw, 132px);
}

body.woocommerce-cart .prose,
body.woocommerce-checkout .prose {
  max-width: none;
  width: 100%;
  color: rgba(10, 46, 18, .74);
}

body.woocommerce-cart .prose img,
body.woocommerce-checkout .prose img {
  margin: 0;
  border-radius: 12px;
  box-shadow: none;
}

body.woocommerce-cart img[src*="/litchi-master-transparent.png"],
body.woocommerce-cart img[src*="/blueberry-master-transparent.png"],
body.woocommerce-checkout img[src*="/litchi-master-transparent.png"],
body.woocommerce-checkout img[src*="/blueberry-master-transparent.png"],
body.woocommerce-cart img[src*="/assets/images/litchi-master-transparent.png"],
body.woocommerce-cart img[src*="/assets/images/blueberry-master-transparent.png"],
body.woocommerce-checkout img[src*="/assets/images/litchi-master-transparent.png"],
body.woocommerce-checkout img[src*="/assets/images/blueberry-master-transparent.png"] {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-cart .prose a,
body.woocommerce-checkout .prose a {
  color: var(--ink);
  text-decoration: none;
}

body.woocommerce-cart .wc-block-cart,
body.woocommerce-checkout .wc-block-checkout,
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce {
  font-family: 'Nunito', sans-serif;
}

body.woocommerce-cart .wc-block-cart {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 370px);
  align-items: start;
  gap: clamp(28px, 4vw, 54px);
}

body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .woocommerce-cart-form {
  width: 100%;
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-checkout .wc-block-checkout__sidebar,
body.woocommerce-checkout .woocommerce-checkout-review-order {
  background: #fff;
  border: 1px solid rgba(10, 46, 18, .1);
  border-radius: 18px;
  box-shadow: 0 18px 44px rgba(10, 46, 18, .06);
  overflow: hidden;
}

body.woocommerce-cart .wc-block-cart-items,
body.woocommerce-cart table.shop_table {
  border-collapse: collapse;
  border-color: rgba(10, 46, 18, .1);
}

body.woocommerce-cart .wc-block-cart-items__header,
body.woocommerce-cart table.shop_table th,
body.woocommerce-checkout .wc-block-components-title,
body.woocommerce-checkout h3 {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(10, 46, 18, .66);
}

body.woocommerce-cart .wc-block-cart-items__row,
body.woocommerce-cart table.shop_table td,
body.woocommerce-checkout .wc-block-components-order-summary-item {
  border-color: rgba(10, 46, 18, .1);
}

body.woocommerce-cart .wc-block-components-product-name,
body.woocommerce-cart .product-name a,
body.woocommerce-checkout .wc-block-components-product-name {
  color: var(--lime-d);
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 800;
}

body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-checkout .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-details {
  color: rgba(10, 46, 18, .68);
  font-size: 13.5px;
  line-height: 1.45;
}

body.woocommerce-cart .wc-block-components-quantity-selector,
body.woocommerce-cart .quantity {
  border-color: rgba(10, 46, 18, .18);
  border-radius: 8px;
}

body.woocommerce-cart .wc-block-components-totals-wrapper,
body.woocommerce-checkout .wc-block-components-totals-wrapper,
body.woocommerce-cart .cart_totals > *,
body.woocommerce-checkout .woocommerce-checkout-review-order > * {
  border-color: rgba(10, 46, 18, .1);
}

body.woocommerce-cart .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-item__label,
body.woocommerce-cart .cart_totals th,
body.woocommerce-checkout .shop_table th {
  color: rgba(10, 46, 18, .7);
  font-weight: 700;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.woocommerce-cart .order-total,
body.woocommerce-checkout .order-total {
  color: var(--ink);
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(19px, 2vw, 24px);
  font-weight: 800;
}

body.woocommerce-cart .wc-block-components-button,
body.woocommerce-checkout .wc-block-components-button,
body.woocommerce-cart .button,
body.woocommerce-checkout .button,
body.woocommerce-checkout #place_order {
  min-height: 54px;
  border: 0;
  border-radius: 10px;
  background: #262b31 !important;
  color: #fff !important;
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 800;
  text-decoration: none !important;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}

body.woocommerce-cart .wc-block-components-button__text,
body.woocommerce-checkout .wc-block-components-button__text {
  color: #fff;
}

body.woocommerce-cart .wc-block-components-button:hover,
body.woocommerce-checkout .wc-block-components-button:hover,
body.woocommerce-cart .button:hover,
body.woocommerce-checkout .button:hover,
body.woocommerce-checkout #place_order:hover {
  background: var(--ink) !important;
  box-shadow: 0 14px 34px rgba(10, 46, 18, .2);
  transform: translateY(-2px);
}

body.woocommerce-checkout .wc-block-checkout {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-checkout .wc-block-components-sidebar-layout {
  width: 100% !important;
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.woocommerce-checkout .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: minmax(430px, 1fr) minmax(320px, 360px) !important;
  gap: clamp(30px, 4vw, 54px) !important;
  align-items: start !important;
}

body.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main,
body.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar {
  width: auto !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.woocommerce-checkout .wc-block-checkout__main,
body.woocommerce-checkout form.checkout {
  width: 100%;
  min-width: 0;
}

body.woocommerce-checkout .wc-block-checkout__sidebar {
  width: 100%;
  min-width: 320px;
}

body.woocommerce-checkout .wc-block-components-order-summary-item {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image {
  width: 58px;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description {
  min-width: 0;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
  white-space: nowrap;
}

body.woocommerce-checkout .wc-block-components-checkout-step,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields {
  margin-bottom: 26px;
}

body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-text-input textarea,
body.woocommerce-checkout .input-text,
body.woocommerce-checkout select {
  border: 1.5px solid rgba(10, 46, 18, .2) !important;
  border-radius: 8px !important;
  background: #fffdf8 !important;
  color: var(--ink);
  font-family: 'Nunito', sans-serif;
}

body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-text-input textarea:focus,
body.woocommerce-checkout .input-text:focus,
body.woocommerce-checkout select:focus {
  border-color: var(--ink) !important;
  box-shadow: 0 0 0 4px rgba(170, 255, 0, .16) !important;
  outline: none;
}

body.woocommerce-checkout .wc-block-components-radio-control__option,
body.woocommerce-checkout .wc-block-components-checkout-step__container,
body.woocommerce-checkout .woocommerce-checkout-payment,
body.woocommerce-checkout .woocommerce-checkout-review-order {
  border-color: rgba(10, 46, 18, .16);
}

@media (max-width: 782px) {
  body.admin-bar.woocommerce-cart #nav,
  body.admin-bar.woocommerce-checkout #nav {
    top: 46px;
  }
}

@media (max-width: 880px) {
  body.woocommerce-cart .page-hero,
  body.woocommerce-checkout .page-hero {
    padding-top: 104px;
    padding-bottom: 42px;
  }

  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-checkout .wc-block-components-sidebar-layout {
    display: block !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-checkout .wc-block-checkout__sidebar {
    margin-top: 28px;
    min-width: 0;
  }
}

/* Final cart/checkout polish: richer hero, full can art, and stable Woo block columns. */
body.woocommerce-cart .page-hero,
body.woocommerce-checkout .page-hero {
  position: relative;
  min-height: clamp(330px, 32vw, 430px);
  display: flex;
  align-items: center;
  overflow: hidden;
  background:
    linear-gradient(115deg, rgba(255, 239, 245, .92) 0%, rgba(255, 253, 246, .82) 38%, rgba(235, 231, 255, .88) 100%),
    linear-gradient(90deg, rgba(214, 96, 128, .26), rgba(170, 255, 0, .18) 46%, rgba(91, 65, 214, .22));
}

body.woocommerce-cart .page-hero::before,
body.woocommerce-checkout .page-hero::before,
body.woocommerce-cart .page-hero::after,
body.woocommerce-checkout .page-hero::after {
  content: "";
  position: absolute;
  top: 50%;
  right: clamp(48px, 12vw, 210px);
  width: clamp(92px, 10vw, 148px);
  height: clamp(220px, 24vw, 330px);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  filter: drop-shadow(0 28px 34px rgba(10, 46, 18, .24));
  pointer-events: none;
  z-index: 1;
}

body.woocommerce-cart .page-hero::before,
body.woocommerce-checkout .page-hero::before {
  background-image: url("../images/litchi-master-transparent.png?v=20260826-master");
  transform: translateY(-45%) rotate(-8deg);
}

body.woocommerce-cart .page-hero::after,
body.woocommerce-checkout .page-hero::after {
  right: clamp(12px, 5.5vw, 96px);
  background-image: url("../images/blueberry-master-transparent.png?v=20260826-master");
  transform: translateY(-50%) rotate(8deg);
}

body.woocommerce-cart .page-hero .wrap,
body.woocommerce-checkout .page-hero .wrap {
  position: relative;
  z-index: 2;
  width: min(100%, 1120px);
}

body.woocommerce-cart .page-hero h1,
body.woocommerce-checkout .page-hero h1 {
  max-width: 560px;
  text-shadow: 0 2px 0 rgba(255, 255, 255, .35);
}

body.woocommerce-cart .page-body > .wrap,
body.woocommerce-checkout .page-body > .wrap {
  max-width: 1180px;
}

body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-components-sidebar-layout {
  width: 100% !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 390px) !important;
  gap: clamp(34px, 4.4vw, 58px) !important;
  align-items: start !important;
}

body.woocommerce-cart .wc-block-components-main,
body.woocommerce-checkout .wc-block-components-main,
body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-components-sidebar {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-checkout .wc-block-checkout__sidebar,
body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-components-sidebar {
  min-width: 340px !important;
}

body.woocommerce-cart .wc-block-cart-items__row {
  grid-template-columns: 116px minmax(0, 1fr) 96px !important;
  column-gap: 24px !important;
}

body.woocommerce-cart .wc-block-cart-item__image,
body.woocommerce-cart .wc-block-cart-item__image img {
  width: 96px !important;
  min-width: 96px !important;
}

body.woocommerce-cart .wc-block-cart-item__image img,
body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  height: auto !important;
  max-height: 118px !important;
  object-fit: contain !important;
  object-position: center !important;
  background: transparent !important;
}

body.woocommerce-cart .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-product-name {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  line-height: 1.18;
}

body.woocommerce-checkout .wc-block-components-order-summary-item {
  grid-template-columns: 68px minmax(0, 1fr) auto !important;
  gap: 16px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image {
  width: 68px !important;
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-checkout .wc-block-checkout__sidebar {
  border-radius: 18px;
  box-shadow: 0 22px 54px rgba(10, 46, 18, .08);
}

body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
  width: 100%;
}

@media (max-width: 980px) {
  body.woocommerce-cart .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-components-sidebar-layout {
    display: block !important;
    max-width: 760px !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-checkout .wc-block-checkout__sidebar,
  body.woocommerce-cart .wc-block-components-sidebar,
  body.woocommerce-checkout .wc-block-components-sidebar {
    min-width: 0 !important;
    margin-top: 30px;
  }
}

@media (max-width: 760px) {
  body.woocommerce-cart .page-hero,
  body.woocommerce-checkout .page-hero {
    min-height: 300px;
    padding-top: 112px;
  }

  body.woocommerce-cart .page-hero::before,
  body.woocommerce-checkout .page-hero::before {
    right: 76px;
    width: 78px;
    height: 190px;
    opacity: .46;
  }

  body.woocommerce-cart .page-hero::after,
  body.woocommerce-checkout .page-hero::after {
    right: 18px;
    width: 78px;
    height: 190px;
    opacity: .46;
  }

  body.woocommerce-cart .wc-block-cart-items__row {
    grid-template-columns: 76px minmax(0, 1fr) !important;
    column-gap: 16px !important;
  }
}

/* Animated Bag / Checkout hero and final formatting pass. */
@keyframes nqWooHeroWash {
  0%, 100% { background-position: 0% 50%, 100% 50%, 50% 50%; }
  50% { background-position: 100% 50%, 0% 50%, 50% 50%; }
}

@keyframes nqWooCanFloatA {
  0%, 100% { transform: translate3d(0, -46%, 0) rotate(-8deg); }
  50% { transform: translate3d(-10px, -53%, 0) rotate(-3deg); }
}

@keyframes nqWooCanFloatB {
  0%, 100% { transform: translate3d(0, -50%, 0) rotate(8deg); }
  50% { transform: translate3d(12px, -56%, 0) rotate(3deg); }
}

@keyframes nqWooIconBob {
  0%, 100% { transform: translateY(0) rotate(var(--nq-r, 0deg)); }
  50% { transform: translateY(-14px) rotate(calc(var(--nq-r, 0deg) + 5deg)); }
}

body.woocommerce-cart .page-hero,
body.woocommerce-checkout .page-hero {
  min-height: clamp(390px, 38vw, 500px);
  background:
    radial-gradient(circle at 82% 26%, rgba(91, 65, 214, .22), transparent 28%),
    radial-gradient(circle at 64% 74%, rgba(214, 96, 128, .2), transparent 30%),
    linear-gradient(112deg, #fff1f6 0%, #fffdf6 38%, #eff0ff 68%, #f4ffe1 100%);
  background-size: 130% 130%, 140% 140%, 200% 200%;
  animation: nqWooHeroWash 12s ease-in-out infinite;
}

body.woocommerce-cart .page-hero::before,
body.woocommerce-checkout .page-hero::before,
body.woocommerce-cart .page-hero::after,
body.woocommerce-checkout .page-hero::after {
  width: clamp(118px, 10.5vw, 170px);
  height: clamp(270px, 25vw, 380px);
  filter: drop-shadow(0 30px 32px rgba(10, 46, 18, .24));
}

body.woocommerce-cart .page-hero::before,
body.woocommerce-checkout .page-hero::before {
  right: clamp(110px, 13vw, 250px);
  animation: nqWooCanFloatA 5.8s ease-in-out infinite;
}

body.woocommerce-cart .page-hero::after,
body.woocommerce-checkout .page-hero::after {
  right: clamp(24px, 5.5vw, 110px);
  animation: nqWooCanFloatB 6.4s ease-in-out infinite;
}

body.woocommerce-cart .page-hero .wrap::before,
body.woocommerce-checkout .page-hero .wrap::before,
body.woocommerce-cart .page-hero .wrap::after,
body.woocommerce-checkout .page-hero .wrap::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  z-index: 1;
  filter: drop-shadow(0 14px 18px rgba(10, 46, 18, .18));
  animation: nqWooIconBob 4.8s ease-in-out infinite;
}

body.woocommerce-cart .page-hero .wrap::before,
body.woocommerce-checkout .page-hero .wrap::before {
  --nq-r: -14deg;
  right: clamp(280px, 31vw, 430px);
  top: clamp(30px, 6vw, 86px);
  width: clamp(52px, 5vw, 82px);
  height: clamp(118px, 11vw, 170px);
  background-image: url("../images/litchi-master-transparent.png?v=20260826-master");
}

body.woocommerce-cart .page-hero .wrap::after,
body.woocommerce-checkout .page-hero .wrap::after {
  --nq-r: 12deg;
  right: clamp(18px, 2.8vw, 50px);
  bottom: clamp(20px, 4vw, 58px);
  width: clamp(48px, 4.7vw, 78px);
  height: clamp(112px, 10.5vw, 160px);
  background-image: url("../images/blueberry-master-transparent.png?v=20260826-master");
  animation-delay: -1.6s;
}

body.woocommerce-cart .page-hero h1::after,
body.woocommerce-checkout .page-hero h1::after {
  display: block;
  max-width: 470px;
  margin-top: 18px;
  font-family: 'Nunito', sans-serif;
  font-size: clamp(15px, 1.35vw, 18px);
  font-weight: 800;
  line-height: 1.55;
  color: rgba(10, 46, 18, .66);
}

body.woocommerce-cart .page-hero h1::after {
  content: "Your cans are packed with plant-powered refresh. Review the bag, then roll into checkout.";
}

body.woocommerce-checkout .page-hero h1::after {
  content: "Almost there. Confirm your delivery, choose payment, and your NaturaQ pack is ready to move.";
}

body.woocommerce-cart .wc-block-components-sidebar-layout {
  grid-template-columns: minmax(560px, 1fr) minmax(380px, 430px) !important;
  max-width: 1140px !important;
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-cart .wc-block-components-sidebar {
  min-width: 380px !important;
}

body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text {
  white-space: nowrap;
}

body.woocommerce-cart .wc-block-cart__submit-button {
  min-height: 58px;
  padding-left: 22px;
  padding-right: 22px;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.08;
}

body.woocommerce-cart .wc-block-cart-item__image img,
body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(255, 255, 255, .92), rgba(255, 253, 246, .72)) !important;
  padding: 5px;
}

@media (prefers-reduced-motion: reduce) {
  body.woocommerce-cart .page-hero,
  body.woocommerce-checkout .page-hero,
  body.woocommerce-cart .page-hero::before,
  body.woocommerce-checkout .page-hero::before,
  body.woocommerce-cart .page-hero::after,
  body.woocommerce-checkout .page-hero::after,
  body.woocommerce-cart .page-hero .wrap::before,
  body.woocommerce-checkout .page-hero .wrap::before,
  body.woocommerce-cart .page-hero .wrap::after,
  body.woocommerce-checkout .page-hero .wrap::after {
    animation: none !important;
  }
}

@media (max-width: 980px) {
  body.woocommerce-cart .wc-block-components-sidebar-layout {
    display: block !important;
    max-width: 760px !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-cart .wc-block-components-sidebar {
    min-width: 0 !important;
  }
}

@media (max-width: 760px) {
  body.woocommerce-cart .page-hero,
  body.woocommerce-checkout .page-hero {
    min-height: 340px;
  }

  body.woocommerce-cart .page-hero h1::after,
  body.woocommerce-checkout .page-hero h1::after {
    max-width: min(360px, 62vw);
  }

  body.woocommerce-cart .page-hero::before,
  body.woocommerce-checkout .page-hero::before {
    right: 68px;
    width: 72px;
    height: 170px;
    opacity: .7;
  }

  body.woocommerce-cart .page-hero::after,
  body.woocommerce-checkout .page-hero::after {
    right: 18px;
    width: 70px;
    height: 168px;
    opacity: .7;
  }

  body.woocommerce-cart .page-hero .wrap::before,
  body.woocommerce-checkout .page-hero .wrap::before,
  body.woocommerce-cart .page-hero .wrap::after,
  body.woocommerce-checkout .page-hero .wrap::after {
    display: none;
  }
}

/* Once-and-for-all Cart/Checkout treatment: real hero markup, full can thumbnails, fixed formatting. */
@keyframes nqWooPulseBg {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

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

@keyframes nqWooCanStageB {
  0%, 100% { transform: translateY(8px) rotate(9deg); }
  50% { transform: translateY(-16px) rotate(3deg); }
}

@keyframes nqWooFloatPill {
  0%, 100% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(0, -12px, 0); }
}

@keyframes nqWooOrbit {
  from { transform: rotate(0deg) translateX(10px) rotate(0deg); }
  to { transform: rotate(360deg) translateX(10px) rotate(-360deg); }
}

body.woocommerce-cart .page-hero,
body.woocommerce-checkout .page-hero {
  display: none;
}

.nq-woo-hero {
  position: relative;
  overflow: hidden;
  min-height: clamp(390px, 38vw, 520px);
  padding: clamp(118px, 10vw, 152px) clamp(18px, 4vw, 54px) clamp(54px, 6vw, 78px);
  border-bottom: 1px solid rgba(10, 46, 18, .08);
  isolation: isolate;
}

.nq-woo-hero-bag {
  background: linear-gradient(115deg, #fff1f6 0%, #fffdf6 42%, #f1ffe5 100%);
}

.nq-woo-hero-checkout {
  background: linear-gradient(115deg, #eef0ff 0%, #fffdf6 45%, #e9fff7 100%);
}

.nq-woo-hero-bg {
  position: absolute;
  inset: -30%;
  z-index: -1;
  background:
    radial-gradient(circle at 18% 26%, rgba(214, 96, 128, .24), transparent 24%),
    radial-gradient(circle at 82% 22%, rgba(91, 65, 214, .26), transparent 26%),
    radial-gradient(circle at 68% 78%, rgba(170, 255, 0, .22), transparent 24%),
    linear-gradient(100deg, rgba(255, 255, 255, .28), rgba(255, 255, 255, 0));
  background-size: 140% 140%;
  animation: nqWooPulseBg 12s ease-in-out infinite;
}

.nq-woo-hero-inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(330px, .8fr);
  align-items: center;
  gap: clamp(34px, 6vw, 86px);
  max-width: 1180px;
  margin: 0 auto;
  padding: 0;
}

.nq-woo-hero-copy {
  max-width: 620px;
}

.nq-woo-hero-copy .meta {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(10, 46, 18, .52);
  font-weight: 800;
}

.nq-woo-hero-copy h1 {
  margin-top: 12px;
  font-size: clamp(48px, 7.2vw, 92px);
  color: var(--ink);
  line-height: .9;
}

.nq-woo-hero-copy p {
  max-width: 540px;
  margin-top: 22px;
  font-size: clamp(16px, 1.45vw, 20px);
  line-height: 1.55;
  font-weight: 800;
  color: rgba(10, 46, 18, .68);
}

.nq-woo-hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.nq-woo-hero-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  border: 1px solid rgba(10, 46, 18, .1);
  border-radius: 999px;
  background: rgba(255, 255, 255, .72);
  color: var(--ink);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.nq-woo-hero-art {
  position: relative;
  min-height: clamp(280px, 30vw, 390px);
}

.nq-hero-can {
  position: absolute;
  bottom: 0;
  width: auto;
  height: clamp(250px, 27vw, 370px);
  max-width: none;
  object-fit: contain;
  filter: drop-shadow(0 32px 34px rgba(10, 46, 18, .25));
}

.nq-hero-can-litchi {
  right: clamp(112px, 15vw, 190px);
  z-index: 3;
  animation: nqWooCanStageA 5.2s ease-in-out infinite;
}

.nq-hero-can-blue {
  right: clamp(8px, 3vw, 38px);
  z-index: 2;
  animation: nqWooCanStageB 5.8s ease-in-out infinite;
}

.nq-float-pill {
  position: absolute;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  background: var(--ink);
  color: #fff;
  box-shadow: 0 16px 32px rgba(10, 46, 18, .2);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  animation: nqWooFloatPill 4s ease-in-out infinite;
}

.nq-pill-one {
  top: 2%;
  right: clamp(260px, 28vw, 370px);
}

.nq-pill-two {
  right: 0;
  bottom: 20%;
  animation-delay: -1.4s;
  background: var(--lime);
  color: var(--ink);
}

.nq-orbit {
  position: absolute;
  z-index: 1;
  width: clamp(56px, 6vw, 88px);
  height: clamp(56px, 6vw, 88px);
  border: 2px solid rgba(91, 65, 214, .28);
  border-radius: 50%;
  animation: nqWooOrbit 7s linear infinite;
}

.nq-orbit-one {
  right: 28%;
  top: 8%;
}

.nq-orbit-two {
  right: 8%;
  bottom: 8%;
  width: clamp(34px, 4vw, 54px);
  height: clamp(34px, 4vw, 54px);
  border-color: rgba(214, 96, 128, .34);
  animation-duration: 5.6s;
  animation-direction: reverse;
}

body.woocommerce-cart .page-body > .wrap,
body.woocommerce-checkout .page-body > .wrap {
  max-width: 1180px;
  padding-top: clamp(58px, 6vw, 84px);
}

body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(390px, 430px) !important;
  gap: clamp(40px, 5vw, 72px) !important;
  max-width: 1140px !important;
}

body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-components-sidebar {
  min-width: 390px !important;
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-checkout .wc-block-checkout__sidebar,
body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-components-sidebar {
  border-radius: 20px !important;
  background: rgba(255, 255, 255, .9) !important;
  box-shadow: 0 24px 58px rgba(10, 46, 18, .1) !important;
}

body.woocommerce-cart .wc-block-cart-items__row {
  grid-template-columns: 128px minmax(0, 1fr) 110px !important;
  gap: 24px !important;
  min-height: 170px;
}

body.woocommerce-cart .wc-block-cart-item__image,
body.woocommerce-cart .wc-block-cart-item__image a,
body.woocommerce-cart .wc-block-cart-item__image img {
  width: 112px !important;
  min-width: 112px !important;
}

body.woocommerce-cart .wc-block-cart-item__image img,
body.woocommerce-checkout .wc-block-components-order-summary-item__image img,
body.woocommerce-cart img.nq-cart-full-can {
  display: block !important;
  height: 150px !important;
  max-height: 150px !important;
  width: 92px !important;
  max-width: 92px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item {
  grid-template-columns: 82px minmax(0, 1fr) auto !important;
  gap: 18px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image,
body.woocommerce-checkout .wc-block-components-order-summary-item__image > div {
  width: 82px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  height: 112px !important;
  max-height: 112px !important;
  width: 68px !important;
  max-width: 68px !important;
}

body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text {
  width: 100%;
  white-space: nowrap !important;
  font-size: clamp(15px, 1.25vw, 17px) !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item {
  align-items: center !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-size: clamp(22px, 2vw, 28px) !important;
  line-height: 1.05 !important;
}

@media (prefers-reduced-motion: reduce) {
  .nq-woo-hero-bg,
  .nq-hero-can,
  .nq-float-pill,
  .nq-orbit {
    animation: none !important;
  }
}

@media (max-width: 980px) {
  .nq-woo-hero-inner {
    grid-template-columns: 1fr;
  }

  .nq-woo-hero-art {
    min-height: 270px;
  }

  body.woocommerce-cart .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-components-sidebar-layout {
    display: block !important;
    max-width: 760px !important;
  }

  body.woocommerce-cart .wc-block-components-sidebar,
  body.woocommerce-checkout .wc-block-components-sidebar {
    min-width: 0 !important;
    margin-top: 32px;
  }
}

@media (max-width: 700px) {
  .nq-woo-hero {
    min-height: auto;
    padding-top: 106px;
  }

  .nq-woo-hero-copy h1 {
    font-size: clamp(42px, 16vw, 64px);
  }

  .nq-woo-hero-copy p {
    max-width: 100%;
  }

  .nq-hero-can {
    height: 230px;
  }

  .nq-hero-can-litchi {
    right: 88px;
  }

  .nq-hero-can-blue {
    right: 18px;
  }

  .nq-float-pill,
  .nq-orbit {
    display: none;
  }

  body.woocommerce-cart .wc-block-cart-items__row {
    grid-template-columns: 96px minmax(0, 1fr) !important;
    min-height: 150px;
  }

  body.woocommerce-cart .wc-block-cart-item__image img,
  body.woocommerce-cart img.nq-cart-full-can {
    height: 128px !important;
    max-height: 128px !important;
    width: 78px !important;
    max-width: 78px !important;
  }
}

/* Final hard lock: hero cans are icon-scale full cans, never oversized crops. */
.nq-woo-hero {
  min-height: clamp(330px, 31vw, 430px) !important;
  padding-top: clamp(108px, 8vw, 132px) !important;
  padding-bottom: clamp(42px, 5vw, 64px) !important;
}

.nq-woo-hero-inner {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 390px) !important;
  gap: clamp(24px, 4vw, 56px) !important;
}

.nq-woo-hero-copy h1 {
  font-size: clamp(48px, 6.2vw, 78px) !important;
}

.nq-woo-hero-copy p {
  max-width: 520px !important;
}

.nq-woo-hero-art {
  align-self: center;
  min-height: clamp(210px, 20vw, 285px) !important;
  overflow: visible;
}

.nq-hero-can {
  top: 50% !important;
  bottom: auto !important;
  display: block !important;
  width: auto !important;
  height: clamp(165px, 17vw, 230px) !important;
  max-width: 42vw !important;
  max-height: 230px !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: drop-shadow(0 22px 24px rgba(10, 46, 18, .22)) !important;
}

.nq-hero-can-litchi {
  right: clamp(92px, 12vw, 150px) !important;
  transform: translateY(-50%) rotate(-8deg);
  animation: nqWooCanStageA 5.2s ease-in-out infinite !important;
}

.nq-hero-can-blue {
  right: clamp(6px, 2vw, 24px) !important;
  transform: translateY(-48%) rotate(8deg);
  animation: nqWooCanStageB 5.8s ease-in-out infinite !important;
}

@keyframes nqWooCanStageA {
  0%, 100% { transform: translateY(-50%) rotate(-8deg); }
  50% { transform: translateY(-58%) rotate(-3deg); }
}

@keyframes nqWooCanStageB {
  0%, 100% { transform: translateY(-48%) rotate(8deg); }
  50% { transform: translateY(-56%) rotate(3deg); }
}

.nq-pill-one {
  top: 1% !important;
  right: clamp(260px, 28vw, 380px) !important;
}

.nq-pill-two {
  right: 0 !important;
  bottom: 8% !important;
}

.nq-orbit-one {
  right: 52% !important;
  top: 14% !important;
}

.nq-orbit-two {
  right: 6% !important;
  bottom: 0 !important;
}

body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-components-sidebar-layout {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 410px) !important;
  gap: clamp(36px, 4vw, 64px) !important;
  max-width: 1120px !important;
}

body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-components-sidebar {
  min-width: 360px !important;
}

body.woocommerce-cart .wc-block-cart-items__row {
  grid-template-columns: 116px minmax(0, 1fr) 96px !important;
  min-height: 156px !important;
}

body.woocommerce-cart .wc-block-cart-item__image,
body.woocommerce-cart .wc-block-cart-item__image a,
body.woocommerce-cart .wc-block-cart-item__image img {
  width: 96px !important;
  min-width: 96px !important;
}

body.woocommerce-cart .wc-block-cart-item__image img,
body.woocommerce-checkout .wc-block-components-order-summary-item__image img,
body.woocommerce-cart img.nq-cart-full-can {
  height: 132px !important;
  max-height: 132px !important;
  width: 76px !important;
  max-width: 76px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  height: 102px !important;
  max-height: 102px !important;
  width: 60px !important;
  max-width: 60px !important;
}

body.woocommerce-cart .wc-block-cart__submit-button {
  min-height: 56px !important;
  border-radius: 12px !important;
}

body.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text {
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

@media (max-width: 980px) {
  .nq-woo-hero-inner {
    grid-template-columns: 1fr !important;
  }

  .nq-woo-hero-art {
    min-height: 220px !important;
    max-width: 360px;
    width: 100%;
    margin: 0 auto;
  }

  body.woocommerce-cart .wc-block-components-sidebar,
  body.woocommerce-checkout .wc-block-components-sidebar {
    min-width: 0 !important;
  }
}

@media (max-width: 700px) {
  .nq-woo-hero {
    padding-top: 96px !important;
  }

  .nq-woo-hero-copy h1 {
    font-size: clamp(40px, 14vw, 58px) !important;
  }

  .nq-hero-can {
    height: 178px !important;
    max-height: 178px !important;
  }

  .nq-hero-can-litchi {
    right: 78px !important;
  }

  .nq-hero-can-blue {
    right: 12px !important;
  }

  body.woocommerce-cart .wc-block-cart-items__row {
    grid-template-columns: 88px minmax(0, 1fr) !important;
  }
}

/* Final layout lock for the exact broken sections: Checkout summary + Bag totals. */
body.woocommerce-checkout .wc-block-checkout__sidebar,
body.woocommerce-checkout .wc-block-components-sidebar {
  width: 100% !important;
  min-width: 390px !important;
  max-width: 430px !important;
  overflow: hidden !important;
}

body.woocommerce-checkout .wc-block-components-order-summary {
  padding: 0 !important;
}

body.woocommerce-checkout .wc-block-components-order-summary__content {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) 64px !important;
  align-items: start !important;
  gap: 16px !important;
  width: 100% !important;
  padding: 18px 20px !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(10, 46, 18, .1) !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image {
  position: relative !important;
  width: 76px !important;
  min-width: 76px !important;
  margin: 0 !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image > div {
  width: 76px !important;
  min-width: 76px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  display: block !important;
  width: 54px !important;
  max-width: 54px !important;
  height: 104px !important;
  max-height: 104px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  border-radius: 0 !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
  position: absolute !important;
  top: -7px !important;
  right: 2px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  background: var(--ink) !important;
  color: #fff !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  transform: none !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description {
  min-width: 0 !important;
  padding-top: 4px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description,
body.woocommerce-checkout .wc-block-components-product-metadata {
  max-width: 100% !important;
}

body.woocommerce-checkout .wc-block-components-product-name {
  display: block !important;
  max-width: 100% !important;
  color: var(--lime-d) !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  letter-spacing: .06em !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

body.woocommerce-checkout .wc-block-components-product-metadata,
body.woocommerce-checkout .wc-block-components-product-metadata p,
body.woocommerce-checkout .wc-block-components-product-details {
  margin-top: 6px !important;
  color: rgba(10, 46, 18, .62) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
  justify-self: end !important;
  width: 64px !important;
  padding-top: 4px !important;
  color: var(--ink) !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body.woocommerce-checkout .wc-block-components-totals-wrapper,
body.woocommerce-checkout .wc-block-components-totals-coupon,
body.woocommerce-checkout .wc-block-components-totals-item {
  width: 100% !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

body.woocommerce-checkout .wc-block-components-totals-footer-item {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 22px 20px !important;
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-cart .wc-block-components-sidebar {
  width: 100% !important;
  min-width: 390px !important;
  max-width: 430px !important;
  overflow: hidden !important;
}

body.woocommerce-cart .wc-block-cart__totals-title {
  padding: 16px 20px !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(10, 46, 18, .1) !important;
}

body.woocommerce-cart .wc-block-components-totals-wrapper,
body.woocommerce-cart .wc-block-components-totals-coupon,
body.woocommerce-cart .wc-block-components-totals-item {
  width: 100% !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

body.woocommerce-cart .wc-block-components-totals-item {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item {
  padding-top: 22px !important;
  padding-bottom: 22px !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  color: var(--ink) !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: clamp(23px, 1.8vw, 28px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  white-space: nowrap !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  margin-left: auto !important;
  text-align: right !important;
}

body.woocommerce-cart .wc-block-cart__submit-container,
body.woocommerce-cart .wc-block-cart__submit {
  width: 100% !important;
  padding: 0 20px 20px !important;
  margin: 0 !important;
}

body.woocommerce-cart .wc-block-cart__submit-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 58px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
}

body.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text {
  display: block !important;
  width: auto !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

@media (max-width: 980px) {
  body.woocommerce-checkout .wc-block-checkout__sidebar,
  body.woocommerce-checkout .wc-block-components-sidebar,
  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-cart .wc-block-components-sidebar {
    min-width: 0 !important;
    max-width: none !important;
  }
}

/* Checkout summary thumbnail fix: small circular qty badge, full can centered. */
body.woocommerce-checkout .wc-block-components-order-summary-item {
  grid-template-columns: 74px minmax(0, 1fr) 64px !important;
  padding: 18px 20px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image,
body.woocommerce-checkout .wc-block-components-order-summary-item__image > div {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 74px !important;
  min-width: 74px !important;
  max-width: 74px !important;
  height: 118px !important;
  min-height: 118px !important;
  margin: 0 !important;
  overflow: visible !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  display: block !important;
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  height: 112px !important;
  min-height: 112px !important;
  max-height: 112px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
  position: absolute !important;
  top: -8px !important;
  right: 2px !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 5 !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  inline-size: 24px !important;
  width: 24px !important;
  min-width: 24px !important;
  max-width: 24px !important;
  block-size: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--ink) !important;
  color: #fff !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align: center !important;
  transform: none !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

/* Higher-specificity correction: the badge is a child div inside the image cell. */
body.woocommerce-checkout .wc-block-components-order-summary-item__image > .wc-block-components-order-summary-item__quantity,
body.woocommerce-checkout .wc-block-components-order-summary-item__image .wc-block-components-order-summary-item__quantity {
  position: absolute !important;
  top: 2px !important;
  right: 6px !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 10 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  min-width: 24px !important;
  max-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  inline-size: 24px !important;
  block-size: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--ink) !important;
  color: #fff !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 24px !important;
  text-align: center !important;
  transform: none !important;
  overflow: hidden !important;
}

/* Empty Bag view: replace Woo default with NaturaQ product-card vibe. */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
  position: relative;
  max-width: 1120px;
  margin: 0 auto !important;
  padding: clamp(54px, 7vw, 86px) 0 clamp(70px, 8vw, 104px);
  text-align: center;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > svg,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before {
  display: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block::before {
  content: "";
  display: block;
  width: min(360px, 82vw);
  height: 250px;
  margin: 0 auto 28px;
  border: 1px solid rgba(10, 46, 18, .1);
  border-radius: 30px;
  background:
    url("../images/litchi-master-transparent.png?v=20260826-master") calc(50% - 52px) 50% / auto 190px no-repeat,
    url("../images/blueberry-master-transparent.png?v=20260826-master") calc(50% + 54px) 52% / auto 184px no-repeat,
    radial-gradient(circle at 25% 24%, rgba(214, 96, 128, .18), transparent 32%),
    radial-gradient(circle at 78% 72%, rgba(91, 65, 214, .16), transparent 34%),
    linear-gradient(145deg, rgba(255, 255, 255, .78), rgba(244, 255, 225, .82));
  box-shadow: 0 26px 70px rgba(10, 46, 18, .1);
  animation: nqWooFloatPill 4.8s ease-in-out infinite;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block::after {
  content: "Your next sip is waiting. Build a pack, pick a flavour, and get the fridge looking dangerous.";
  display: block;
  max-width: 560px;
  margin: 12px auto 34px;
  color: rgba(10, 46, 18, .66);
  font-family: 'Nunito', sans-serif;
  font-size: clamp(15px, 1.35vw, 18px);
  font-weight: 800;
  line-height: 1.55;
}

body.woocommerce-cart .wc-block-cart__empty-cart__title,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:first-of-type {
  max-width: 760px;
  margin: 0 auto !important;
  color: var(--ink);
  font-family: 'Black Han Sans', sans-serif !important;
  font-size: clamp(34px, 4.8vw, 56px) !important;
  font-weight: 400 !important;
  line-height: .95 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(:first-of-type),
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-heading:not(:first-child) {
  margin: clamp(42px, 6vw, 72px) auto 24px !important;
  color: var(--ink);
  font-family: 'Black Han Sans', sans-serif !important;
  font-size: clamp(28px, 3.8vw, 44px) !important;
  font-weight: 400 !important;
  line-height: .98 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new {
  max-width: 1060px;
  margin: 0 auto !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
  position: relative;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  margin: 0 !important;
  padding: 14px 14px 18px !important;
  border: 1px solid rgba(10, 46, 18, .08);
  border-radius: 18px;
  background: rgba(255, 255, 255, .78);
  box-shadow: 0 18px 44px rgba(10, 46, 18, .07);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover {
  transform: translateY(-6px);
  border-color: rgba(121, 196, 0, .34);
  box-shadow: 0 28px 64px rgba(10, 46, 18, .12);
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image a {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  margin: 0 0 14px !important;
  border-radius: 14px;
  overflow: hidden;
  background:
    radial-gradient(circle at 28% 20%, rgba(255, 255, 255, .9), transparent 34%),
    linear-gradient(145deg, rgba(255, 241, 246, .82), rgba(239, 240, 255, .78));
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center !important;
  padding: 12px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: transform .35s cubic-bezier(.16, 1, .3, 1);
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover .wc-block-grid__product-image img {
  transform: scale(1.06) rotate(-2deg);
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
  min-height: 38px;
  margin: 0 0 8px !important;
  color: var(--ink);
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
  margin: 0 0 16px !important;
  color: rgba(10, 46, 18, .62);
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
  margin-top: auto !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .add_to_cart_button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 124px;
  min-height: 42px;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--ink) !important;
  color: #fff !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  opacity: 1 !important;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .add_to_cart_button:hover {
  background: var(--lime) !important;
  color: var(--ink) !important;
  box-shadow: 0 14px 32px rgba(121, 196, 0, .24);
  transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block::before,
  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product,
  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
    animation: none !important;
    transition: none !important;
  }
}

@media (max-width: 920px) {
  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
    padding-top: 42px;
  }

  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block::before {
    height: 220px;
    background-size: auto 168px, auto 164px, auto, auto, auto;
  }

  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
    grid-template-columns: 1fr !important;
  }
}

/* Empty Bag safety overrides for alternate Woo block class names. */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block svg,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__icon,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-empty-cart__image,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__image {
  display: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-product-image,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-post-featured-image {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  margin: 0 0 14px !important;
  border-radius: 14px;
  overflow: hidden;
  background:
    radial-gradient(circle at 28% 20%, rgba(255, 255, 255, .9), transparent 34%),
    linear-gradient(145deg, rgba(255, 241, 246, .82), rgba(239, 240, 255, .78));
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-product-image img,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-post-featured-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  padding: 12px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Empty Bag final correction: real card grid, no skinny Woo columns, message in the right place. */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
  display: block !important;
  max-width: 1180px !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block::after {
  display: none !important;
  content: none !important;
}

body.woocommerce-cart .wc-block-cart__empty-cart__title::after,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:first-of-type::after {
  content: "Your next sip is waiting. Build a pack, pick a flavour, and get the fridge looking dangerous.";
  display: block;
  max-width: 560px;
  margin: 18px auto 0;
  color: rgba(10, 46, 18, .66);
  font-family: 'Nunito', sans-serif;
  font-size: clamp(15px, 1.25vw, 18px);
  font-weight: 800;
  line-height: 1.55;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-heading:not(:first-child),
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(:first-of-type) {
  margin-top: clamp(48px, 6vw, 72px) !important;
  margin-bottom: 26px !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(210px, 1fr)) !important;
  gap: clamp(18px, 2.2vw, 28px) !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid.has-4-columns .wc-block-grid__product,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid.has-3-columns .wc-block-grid__product,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid.has-5-columns .wc-block-grid__product {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  flex-basis: auto !important;
  margin: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
  min-height: 390px !important;
  padding: 16px 16px 20px !important;
  border-radius: 22px !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image a,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-product-image,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-post-featured-image {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 1.08 / 1 !important;
  margin-bottom: 16px !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-product-image img,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-post-featured-image img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  padding: 16px !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-product-name,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-post-title {
  min-height: 0 !important;
  max-width: 100% !important;
  margin: 0 0 10px !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  text-align: center !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-components-product-price {
  margin-bottom: 18px !important;
  font-size: 15px !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .add_to_cart_button {
  min-width: 132px !important;
  min-height: 44px !important;
  color: #fff !important;
}

@media (max-width: 1080px) {
  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
    grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
    max-width: 680px !important;
  }
}

@media (max-width: 560px) {
  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
    grid-template-columns: 1fr !important;
    max-width: 320px !important;
  }
}

/* Final Bag rebuild: custom-rendered cart page, independent of Woo block layout. */
body.woocommerce-cart .page-body > .wrap {
  max-width: 1240px;
  padding-top: clamp(56px, 6vw, 86px);
}

.nq-cart-page-body {
  background: var(--paper, #f7f4ea) !important;
  padding-top: 36px !important;
  padding-bottom: 58px !important;
  min-height: auto !important;
}

body.woocommerce-cart .nq-bag-shell {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding-bottom: 54px !important;
  color: var(--ink);
}

body.woocommerce-cart .nq-eyebrow,
body.woocommerce-cart .nq-bag-section-head > span {
  display: inline-block;
  margin-bottom: 10px;
  color: rgba(10, 46, 18, .62);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .11em;
  line-height: 1;
  text-transform: uppercase;
}

body.woocommerce-cart .nq-bag-section-head h2,
body.woocommerce-cart .nq-bag-section-head h3,
body.woocommerce-cart .nq-empty-bag h2,
body.woocommerce-cart .nq-bag-summary h2 {
  margin: 0;
  color: var(--ink);
  letter-spacing: 0;
}

body.woocommerce-cart .nq-bag-primary,
body.woocommerce-cart .nq-bag-secondary,
body.woocommerce-cart .nq-product-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 24px;
  border: 0;
  border-radius: 999px;
  background: var(--ink);
  color: #fff !important;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none !important;
  box-shadow: 0 18px 38px rgba(10, 46, 18, .16);
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}

body.woocommerce-cart .nq-bag-primary:hover,
body.woocommerce-cart .nq-bag-secondary:hover,
body.woocommerce-cart .nq-product-add:hover {
  background: var(--lime);
  color: var(--ink) !important;
  box-shadow: 0 20px 42px rgba(121, 196, 0, .25);
  transform: translateY(-2px);
}

body.woocommerce-cart .nq-bag-primary.wide {
  width: 100%;
  min-height: 58px;
  margin-top: 18px;
  border-radius: 14px;
  font-size: 16px;
}

body.woocommerce-cart .nq-bag-secondary,
body.woocommerce-cart .nq-bag-update-btn {
  display: none !important;
}

body.woocommerce-cart .nq-bag-link {
  display: block;
  margin-top: 16px;
  color: rgba(10, 46, 18, .7);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 14px;
  font-weight: 800;
  text-align: center;
  text-decoration: none !important;
}

body.woocommerce-cart .nq-empty-bag {
  position: relative;
  max-width: 820px;
  margin: 0 auto clamp(52px, 7vw, 78px);
  padding: clamp(34px, 5vw, 56px);
  overflow: hidden;
  border: 1px solid rgba(10, 46, 18, .1);
  border-radius: 28px;
  background:
    radial-gradient(circle at 22% 18%, rgba(214, 96, 128, .18), transparent 34%),
    radial-gradient(circle at 82% 28%, rgba(91, 65, 214, .16), transparent 34%),
    linear-gradient(145deg, rgba(255, 255, 255, .92), rgba(247, 255, 232, .66));
  box-shadow: 0 28px 70px rgba(10, 46, 18, .08);
  text-align: center;
}

body.woocommerce-cart .nq-empty-art {
  position: relative;
  height: clamp(340px, 42vw, 460px);
  max-width: 720px;
  margin: 0 auto 36px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body.woocommerce-cart .nq-empty-art .nq-empty-aura {
  position: absolute;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(170, 255, 0, .42) 0%, rgba(236, 77, 114, .26) 45%, transparent 70%);
  filter: blur(48px);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

body.woocommerce-cart .nq-empty-art img {
  position: absolute;
  bottom: 20px;
  left: 50%;
  width: auto;
  height: clamp(310px, 36vw, 420px);
  max-width: none;
  object-fit: contain;
  border-radius: 0;
  transform-origin: 50% 100%;
}

body.woocommerce-cart .nq-empty-art img.empty-can-litchi {
  transform: translateX(-88%) rotate(-12deg);
  filter: drop-shadow(0 32px 42px rgba(10, 46, 18, .28)) drop-shadow(0 0 38px rgba(236, 77, 114, .4));
  animation: nqEmptyLitchiFloat 5.6s ease-in-out infinite;
  z-index: 2;
}

body.woocommerce-cart .nq-empty-art img.empty-can-blue {
  transform: translateX(-12%) rotate(12deg);
  filter: drop-shadow(0 32px 42px rgba(10, 46, 18, .28)) drop-shadow(0 0 38px rgba(91, 65, 214, .4));
  animation: nqEmptyBlueFloat 5.6s ease-in-out infinite;
  z-index: 1;
}

@keyframes nqEmptyLitchiFloat {
  0%, 100% { transform: translateX(-88%) rotate(-12deg) translateY(0); }
  50% { transform: translateX(-88%) rotate(-8deg) translateY(-18px); }
}

@keyframes nqEmptyBlueFloat {
  0%, 100% { transform: translateX(-12%) rotate(12deg) translateY(0); }
  50% { transform: translateX(-12%) rotate(8deg) translateY(-18px); }
}

body.woocommerce-cart .nq-empty-spark {
  position: absolute;
  border-radius: 50%;
  border: 2px solid rgba(91, 65, 214, .22);
  animation: nqBagOrbit 7s linear infinite;
}

body.woocommerce-cart .nq-empty-spark.s1 {
  left: 8%;
  top: 10%;
  width: 84px;
  height: 84px;
}

body.woocommerce-cart .nq-empty-spark.s2 {
  right: 4%;
  bottom: 8%;
  width: 60px;
  height: 60px;
  border-color: rgba(214, 96, 128, .22);
  animation-duration: 8.2s;
}

body.woocommerce-cart .nq-empty-bag h2 {
  max-width: 680px;
  margin-inline: auto;
  font-size: clamp(38px, 5.1vw, 62px);
  line-height: .94;
}

body.woocommerce-cart .nq-empty-bag p {
  max-width: 560px;
  margin: 18px auto 26px;
  color: rgba(10, 46, 18, .68);
  font-size: clamp(16px, 1.4vw, 19px);
  font-weight: 800;
  line-height: 1.5;
}

body.woocommerce-cart .nq-bag-recs {
  width: 100%;
}

body.woocommerce-cart .nq-bag-recs .nq-bag-section-head {
  margin-bottom: 24px;
  text-align: center;
}

body.woocommerce-cart .nq-bag-recs .nq-bag-section-head h3 {
  font-size: clamp(32px, 4vw, 48px);
}

body.woocommerce-cart .nq-product-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 26px);
}

body.woocommerce-cart .nq-product-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 450px;
  padding: 24px 18px;
  border: 1px solid rgba(10, 46, 18, .1);
  border-radius: 26px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 22px 54px rgba(10, 46, 18, .07);
  text-align: center;
  position: relative;
  transition: transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s ease, border-color .35s ease;
}

body.woocommerce-cart .nq-product-card:hover {
  transform: translateY(-8px);
  border-color: rgba(10, 46, 18, .24);
  box-shadow: 0 32px 70px rgba(10, 46, 18, .14);
}

body.woocommerce-cart .nq-product-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin-bottom: 14px;
  padding: 6px 16px;
  border-radius: 999px;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: .5px;
  text-transform: uppercase;
}

body.woocommerce-cart .nq-product-badge.badge-starter {
  background: rgba(170, 255, 0, .24);
  color: #0a2e12;
  border: 1px solid rgba(121, 196, 0, .45);
}

body.woocommerce-cart .nq-product-badge.badge-combo {
  background: linear-gradient(135deg, rgba(236, 77, 114, .2), rgba(91, 65, 214, .2));
  color: #0a2e12;
  border: 1px solid rgba(157, 78, 221, .38);
}

body.woocommerce-cart .nq-product-badge.badge-save100 {
  background: var(--lime);
  color: var(--ink);
  border: 1px solid #79c400;
  font-weight: 900;
}

body.woocommerce-cart .nq-product-badge.badge-save250 {
  background: linear-gradient(135deg, #ffe066 0%, #aaff00 100%);
  color: var(--ink);
  border: 1px solid #d4a017;
  box-shadow: 0 4px 14px rgba(212, 160, 23, .25);
  font-weight: 900;
}

body.woocommerce-cart .nq-product-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 280px;
  margin-bottom: 18px;
  overflow: hidden;
  border-radius: 20px;
  position: relative;
}

body.woocommerce-cart .card-pack-6 .nq-product-image {
  background:
    radial-gradient(circle at 50% 40%, rgba(236, 77, 114, .32), transparent 62%),
    linear-gradient(150deg, #fff0f4 0%, #ffffff 100%);
}

body.woocommerce-cart .card-pack-33 .nq-product-image {
  background:
    radial-gradient(circle at 30% 40%, rgba(91, 65, 214, .26), transparent 58%),
    radial-gradient(circle at 70% 40%, rgba(236, 77, 114, .26), transparent 58%),
    linear-gradient(150deg, #f4f0ff 0%, #fff0f6 100%);
}

body.woocommerce-cart .card-pack-12 .nq-product-image {
  background:
    radial-gradient(circle at 50% 35%, rgba(170, 255, 0, .32), transparent 62%),
    radial-gradient(circle at 50% 80%, rgba(91, 65, 214, .18), transparent 60%),
    linear-gradient(150deg, #f7ffea 0%, #ffffff 100%);
}

body.woocommerce-cart .card-pack-24 .nq-product-image {
  background:
    radial-gradient(circle at 50% 30%, rgba(170, 255, 0, .42), transparent 65%),
    radial-gradient(circle at 80% 70%, rgba(236, 77, 114, .22), transparent 58%),
    linear-gradient(150deg, #eefbe4 0%, #fff7ea 100%);
}

body.woocommerce-cart .nq-can-stage {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

body.woocommerce-cart .nq-can-glow {
  position: absolute;
  width: 190px;
  height: 190px;
  border-radius: 50%;
  filter: blur(34px);
  pointer-events: none;
  opacity: .8;
}
body.woocommerce-cart .glow-pink { background: rgba(236, 77, 114, .45); }
body.woocommerce-cart .glow-blue { background: rgba(91, 65, 214, .45); }
body.woocommerce-cart .glow-duo  { background: radial-gradient(circle, rgba(91,65,214,.4) 0%, rgba(236,77,114,.4) 100%); }
body.woocommerce-cart .glow-lime { background: rgba(170, 255, 0, .5); }
body.woocommerce-cart .glow-gold { background: radial-gradient(circle, rgba(255,215,0,.5) 0%, rgba(170,255,0,.45) 100%); }

/* Card pack pill indicator */
body.woocommerce-cart .nq-pack-pill {
  position: absolute;
  bottom: 10px;
  right: 10px;
  background: rgba(10, 46, 18, .88);
  backdrop-filter: blur(8px);
  color: #fff;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .6px;
  padding: 3px 9px;
  border-radius: 999px;
  z-index: 10;
}
body.woocommerce-cart .card-pack-12 .nq-pack-pill {
  background: var(--ink);
  color: var(--lime);
}
body.woocommerce-cart .card-pack-24 .nq-pack-pill {
  background: linear-gradient(135deg, #13381b, #0a2e12);
  color: #ffe066;
  border: 1px solid rgba(255, 224, 102, .4);
}

/* Flavor Selector on Card */
body.woocommerce-cart .nq-flavor-selector {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  background: rgba(10, 46, 18, .06);
  padding: 3px 4px;
  border-radius: 999px;
  margin: 2px auto 8px;
  border: 1px solid rgba(10, 46, 18, .08);
}

body.woocommerce-cart .nq-flavor-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(10, 46, 18, .68);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  transition: all .22s ease;
  line-height: 1;
}

body.woocommerce-cart .nq-flavor-btn .dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  display: inline-block;
}

body.woocommerce-cart .nq-flavor-btn .dot-litchi {
  background: #ec4d72;
}

body.woocommerce-cart .nq-flavor-btn .dot-blue {
  background: #5b41d6;
}

body.woocommerce-cart .nq-flavor-btn:hover {
  color: var(--ink);
}

body.woocommerce-cart .nq-flavor-btn.is-active {
  background: #ffffff;
  color: var(--ink);
  font-weight: 900;
  box-shadow: 0 2px 8px rgba(10, 46, 18, .12);
}

body.woocommerce-cart .card-pack-6.is-flavor-blue .nq-product-image {
  background:
    radial-gradient(circle at 50% 40%, rgba(91, 65, 214, .32), transparent 62%),
    linear-gradient(150deg, #f2f0ff 0%, #ffffff 100%);
}

/* Cluster base */
body.woocommerce-cart .nq-can-cluster,
body.woocommerce-cart .nq-can-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 1. Single Can (6-Pack) - Perfectly centered with breathing room */
body.woocommerce-cart .can-wrap-single .can-hero {
  height: 84%;
  max-height: 235px;
  width: auto;
  object-fit: contain;
  filter: drop-shadow(0 20px 22px rgba(10, 46, 18, .22)) drop-shadow(0 0 26px rgba(236, 77, 114, .3));
  transform: perspective(700px) rotateY(-6deg) rotateZ(-2deg) translateY(0);
  transition: transform .45s cubic-bezier(.16,1,.3,1), filter .45s ease;
}
body.woocommerce-cart .card-pack-6:hover .can-wrap-single .can-hero {
  transform: perspective(700px) rotateY(-10deg) rotateZ(-4deg) translateY(-8px) scale(1.05);
  filter: drop-shadow(0 28px 30px rgba(10, 46, 18, .28)) drop-shadow(0 0 34px rgba(236, 77, 114, .45));
}

/* 2. Duo Pair (3+3 Pack) - Standing together with elegant card padding */
body.woocommerce-cart .cluster-duo img {
  position: absolute;
  width: auto;
  object-fit: contain;
  transition: transform .45s cubic-bezier(.16,1,.3,1), filter .45s ease;
}
body.woocommerce-cart .cluster-duo .can-duo-back {
  height: 79%;
  max-height: 218px;
  transform: perspective(700px) rotateY(10deg) rotateZ(-6deg) translateX(-32px) translateY(-6px);
  z-index: 1;
  filter: drop-shadow(0 16px 18px rgba(10, 46, 18, .2)) drop-shadow(0 0 20px rgba(91, 65, 214, .25));
}
body.woocommerce-cart .cluster-duo .can-duo-front {
  height: 83%;
  max-height: 230px;
  transform: perspective(700px) rotateY(-8deg) rotateZ(5deg) translateX(24px) translateY(8px);
  z-index: 2;
  filter: drop-shadow(0 22px 24px rgba(10, 46, 18, .24)) drop-shadow(0 0 24px rgba(236, 77, 114, .3));
}
body.woocommerce-cart .card-pack-33:hover .cluster-duo .can-duo-back {
  transform: perspective(700px) rotateY(15deg) rotateZ(-9deg) translateX(-40px) translateY(-12px) scale(1.04);
}
body.woocommerce-cart .card-pack-33:hover .cluster-duo .can-duo-front {
  transform: perspective(700px) rotateY(-13deg) rotateZ(8deg) translateX(32px) translateY(0px) scale(1.05);
}

/* 3. Trio Pyramid Stack (12-Pack) - Balanced pyramid inside borders */
body.woocommerce-cart .cluster-trio img {
  position: absolute;
  width: auto;
  object-fit: contain;
  transition: transform .45s cubic-bezier(.16,1,.3,1), filter .45s ease;
}
body.woocommerce-cart .cluster-trio .can-trio-back-l {
  height: 73%;
  max-height: 202px;
  transform: perspective(700px) rotateY(14deg) rotateZ(-12deg) translateX(-52px) translateY(-8px);
  z-index: 1;
  opacity: .92;
  filter: drop-shadow(0 14px 16px rgba(10, 46, 18, .18));
}
body.woocommerce-cart .cluster-trio .can-trio-back-r {
  height: 73%;
  max-height: 202px;
  transform: perspective(700px) rotateY(-14deg) rotateZ(12deg) translateX(52px) translateY(-8px);
  z-index: 1;
  opacity: .92;
  filter: drop-shadow(0 14px 16px rgba(10, 46, 18, .18));
}
body.woocommerce-cart .cluster-trio .can-trio-front {
  height: 84%;
  max-height: 235px;
  transform: perspective(700px) rotateY(0deg) translateY(8px);
  z-index: 3;
  filter: drop-shadow(0 24px 26px rgba(10, 46, 18, .24)) drop-shadow(0 0 28px rgba(170, 255, 0, .32));
}
body.woocommerce-cart .card-pack-12:hover .cluster-trio .can-trio-back-l {
  transform: perspective(700px) rotateY(18deg) rotateZ(-15deg) translateX(-62px) translateY(-14px) scale(1.03);
}
body.woocommerce-cart .card-pack-12:hover .cluster-trio .can-trio-back-r {
  transform: perspective(700px) rotateY(-18deg) rotateZ(15deg) translateX(62px) translateY(-14px) scale(1.03);
}
body.woocommerce-cart .card-pack-12:hover .cluster-trio .can-trio-front {
  transform: perspective(700px) translateY(-4px) scale(1.05);
}

/* 4. Quad Case Block (24-Pack Bulk Master Case) - Fits neatly inside borders */
body.woocommerce-cart .cluster-quad img {
  position: absolute;
  width: auto;
  object-fit: contain;
  transition: transform .45s cubic-bezier(.16,1,.3,1), filter .45s ease;
}
body.woocommerce-cart .cluster-quad .can-quad-back-l {
  height: 68%;
  max-height: 190px;
  transform: perspective(700px) rotateY(12deg) rotateZ(-10deg) translateX(-52px) translateY(-24px);
  z-index: 1;
  opacity: .88;
  filter: drop-shadow(0 12px 14px rgba(10, 46, 18, .16));
}
body.woocommerce-cart .cluster-quad .can-quad-back-r {
  height: 68%;
  max-height: 190px;
  transform: perspective(700px) rotateY(-12deg) rotateZ(10deg) translateX(52px) translateY(-24px);
  z-index: 1;
  opacity: .88;
  filter: drop-shadow(0 12px 14px rgba(10, 46, 18, .16));
}
body.woocommerce-cart .cluster-quad .can-quad-front-l {
  height: 77%;
  max-height: 215px;
  transform: perspective(700px) rotateY(7deg) rotateZ(-4deg) translateX(-26px) translateY(12px);
  z-index: 2;
  filter: drop-shadow(0 20px 22px rgba(10, 46, 18, .22));
}
body.woocommerce-cart .cluster-quad .can-quad-front-r {
  height: 79%;
  max-height: 220px;
  transform: perspective(700px) rotateY(-7deg) rotateZ(4deg) translateX(24px) translateY(8px);
  z-index: 3;
  filter: drop-shadow(0 24px 26px rgba(10, 46, 18, .25)) drop-shadow(0 0 24px rgba(170, 255, 0, .36));
}
body.woocommerce-cart .card-pack-24:hover .cluster-quad .can-quad-back-l {
  transform: perspective(700px) rotateY(16deg) rotateZ(-13deg) translateX(-62px) translateY(-32px) scale(1.02);
}
body.woocommerce-cart .card-pack-24:hover .cluster-quad .can-quad-back-r {
  transform: perspective(700px) rotateY(-16deg) rotateZ(13deg) translateX(62px) translateY(-32px) scale(1.02);
}
body.woocommerce-cart .card-pack-24:hover .cluster-quad .can-quad-front-l {
  transform: perspective(700px) rotateY(10deg) rotateZ(-6deg) translateX(-34px) translateY(5px) scale(1.04);
}
body.woocommerce-cart .card-pack-24:hover .cluster-quad .can-quad-front-r {
  transform: perspective(700px) rotateY(-10deg) rotateZ(6deg) translateX(32px) translateY(0px) scale(1.05);
}

body.woocommerce-cart .nq-product-card h4 {
  min-height: 38px;
  margin: 0 0 8px;
  color: var(--ink);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.25;
}

body.woocommerce-cart .nq-product-price {
  margin-bottom: 16px;
  color: var(--ink);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 18px;
  font-weight: 900;
}

body.woocommerce-cart .nq-product-add {
  width: 100%;
  margin-top: auto;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--ink);
  color: #fff;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid var(--ink);
  transition: all .25s ease;
}

body.woocommerce-cart .nq-product-add:hover {
  background: var(--lime);
  color: var(--ink);
  border-color: var(--lime);
  transform: translateY(-2px);
}

body.woocommerce-cart .nq-bag-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 430px);
  gap: clamp(30px, 4vw, 58px);
  align-items: start;
}

body.woocommerce-cart .nq-bag-items,
body.woocommerce-cart .nq-bag-summary {
  min-width: 0;
  border: 1px solid rgba(10, 46, 18, .1);
  border-radius: 24px;
  background: rgba(255, 255, 255, .76);
  box-shadow: 0 26px 64px rgba(10, 46, 18, .07);
}

body.woocommerce-cart .nq-bag-items {
  padding: clamp(22px, 3vw, 34px);
}

body.woocommerce-cart .nq-bag-items .nq-bag-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 22px;
  border-bottom: 1px solid rgba(10, 46, 18, .1);
}

body.woocommerce-cart .nq-bag-items .nq-bag-section-head h2 {
  font-size: clamp(34px, 4.4vw, 54px);
}

body.woocommerce-cart .nq-bag-item {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr) 118px;
  gap: 22px;
  align-items: center;
  padding: 26px 0;
  border-bottom: 1px solid rgba(10, 46, 18, .1);
}

body.woocommerce-cart .nq-bag-item-image {
  display: grid;
  place-items: center;
  width: 132px;
  min-height: 168px;
  overflow: hidden;
  border-radius: 18px;
  position: relative;
  background:
    radial-gradient(circle at 30% 18%, rgba(255, 255, 255, .9), transparent 32%),
    linear-gradient(145deg, rgba(255, 234, 241, .82), rgba(238, 243, 255, .74));
}

body.woocommerce-cart .nq-bag-item-image img.nq-cart-full-can {
  width: auto;
  height: 88%;
  max-height: 154px;
  max-width: 96px;
  object-fit: contain;
  border-radius: 0;
  filter: drop-shadow(0 16px 18px rgba(10, 46, 18, .18));
}

body.woocommerce-cart .nq-bag-thumb-duo {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

body.woocommerce-cart .nq-bag-thumb-duo img {
  position: absolute;
  height: 80%;
  max-height: 140px;
  width: auto;
  object-fit: contain;
}

body.woocommerce-cart .nq-bag-thumb-duo img.blue {
  transform: rotate(-8deg) translateX(-14px);
  z-index: 1;
  filter: drop-shadow(0 10px 12px rgba(10, 46, 18, .14));
}

body.woocommerce-cart .nq-bag-thumb-duo img.litchi {
  transform: rotate(6deg) translateX(14px);
  z-index: 2;
  filter: drop-shadow(0 12px 14px rgba(10, 46, 18, .18));
}

body.woocommerce-cart .nq-bag-item-main {
  min-width: 0;
}

body.woocommerce-cart .nq-bag-item-main h3 {
  margin: 0 0 8px;
  color: var(--ink);
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(17px, 1.5vw, 21px);
  font-weight: 900;
  line-height: 1.2;
}

body.woocommerce-cart .nq-bag-item-meta {
  max-width: 540px;
  color: rgba(10, 46, 18, .66);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}

body.woocommerce-cart .nq-bag-item-meta:empty {
  display: none;
}

body.woocommerce-cart .nq-bag-qty-wrap,
body.woocommerce-cart .nq-bag-qty {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-top: 14px !important;
}

body.woocommerce-cart .nq-bag-qty-label,
body.woocommerce-cart .nq-bag-qty label {
  color: rgba(10, 46, 18, 0.6) !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .nq-bag-qty-control {
  display: inline-flex !important;
  align-items: center !important;
  background: #ffffff !important;
  border: 1.5px solid rgba(10, 46, 18, 0.13) !important;
  border-radius: 999px !important;
  padding: 3px !important;
  height: 44px !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s !important;
}

body.woocommerce-cart .nq-bag-qty-control:focus-within {
  border-color: var(--lime-d, #79c400) !important;
  box-shadow: 0 0 0 3px rgba(170, 255, 0, 0.2) !important;
}

body.woocommerce-cart .nq-bag-qty-btn {
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  background: #f4f1e6 !important;
  color: var(--ink, #0a2e12) !important;
  border: none !important;
  border-radius: 50% !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
  padding: 0 !important;
  user-select: none !important;
}

body.woocommerce-cart .nq-bag-qty-btn:hover {
  background: var(--ink, #0a2e12) !important;
  color: var(--lime, #aaff00) !important;
  transform: scale(1.06) !important;
}

body.woocommerce-cart .nq-bag-qty-btn:active {
  transform: scale(0.95) !important;
}

body.woocommerce-cart .nq-bag-qty-input,
body.woocommerce-cart .nq-bag-qty input {
  width: 44px !important;
  min-width: 44px !important;
  height: 36px !important;
  line-height: 36px !important;
  border: none !important;
  background: transparent !important;
  color: var(--ink, #0a2e12) !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
  -moz-appearance: textfield !important;
  appearance: textfield !important;
}

body.woocommerce-cart .nq-bag-qty-input::-webkit-outer-spin-button,
body.woocommerce-cart .nq-bag-qty-input::-webkit-inner-spin-button,
body.woocommerce-cart .nq-bag-qty input::-webkit-outer-spin-button,
body.woocommerce-cart .nq-bag-qty input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

body.woocommerce-cart .nq-bag-item-side {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 14px;
  min-width: 0;
}

body.woocommerce-cart .nq-bag-item-side strong {
  color: var(--ink);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 18px;
  font-weight: 900;
  white-space: nowrap;
}

body.woocommerce-cart .nq-bag-remove {
  min-height: 34px;
  padding: 0 14px;
  border: 1px solid rgba(10, 46, 18, .12);
  border-radius: 999px;
  background: rgba(255, 255, 255, .72);
  color: rgba(10, 46, 18, .68);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 12px;
  font-weight: 900;
}

body.woocommerce-cart .nq-bag-summary {
  position: sticky;
  top: 98px;
  overflow: hidden;
  padding: clamp(24px, 3vw, 34px);
  background:
    radial-gradient(circle at 88% 12%, rgba(170, 255, 0, .16), transparent 34%),
    linear-gradient(150deg, rgba(255, 255, 255, .94), rgba(255, 252, 245, .86));
}

body.woocommerce-cart .nq-bag-summary h2 {
  margin-bottom: 20px;
  font-size: clamp(34px, 4vw, 50px);
}

body.woocommerce-cart .nq-total-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 0;
  border-top: 1px solid rgba(10, 46, 18, .1);
  color: rgba(10, 46, 18, .72);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 15px;
  font-weight: 800;
}

body.woocommerce-cart .nq-total-row strong {
  color: var(--ink);
  font-weight: 900;
  text-align: right;
}

body.woocommerce-cart .nq-total-row.total {
  margin-top: 6px;
  padding-top: 22px;
  color: var(--ink);
  font-size: clamp(22px, 2vw, 30px);
}

body.woocommerce-cart .nq-total-row.total strong {
  font-size: inherit;
}

/* Checkout order summary correction: small badge, full can, readable text. */
body.woocommerce-checkout .wc-block-components-order-summary-item {
  display: grid !important;
  grid-template-columns: 92px minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 18px 0 !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image,
body.woocommerce-checkout .wc-block-components-order-summary-item__image > div {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  width: 92px !important;
  min-width: 92px !important;
  max-width: 92px !important;
  height: 132px !important;
  min-height: 132px !important;
  max-height: 132px !important;
  overflow: visible !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  width: auto !important;
  min-width: 0 !important;
  max-width: 72px !important;
  height: 118px !important;
  min-height: 0 !important;
  max-height: 118px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  filter: drop-shadow(0 12px 14px rgba(10, 46, 18, .14));
}

body.woocommerce-checkout .wc-block-components-order-summary-item__quantity,
body.woocommerce-checkout .wc-block-components-order-summary-item__image > .wc-block-components-order-summary-item__quantity,
body.woocommerce-checkout .wc-block-components-order-summary-item__image .wc-block-components-order-summary-item__quantity {
  position: absolute !important;
  top: 6px !important;
  right: 4px !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 20 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  min-width: 28px !important;
  max-width: 28px !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: var(--ink) !important;
  color: #fff !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  transform: none !important;
  overflow: hidden !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description {
  min-width: 0 !important;
  padding-top: 0 !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
  display: block !important;
  max-width: 260px !important;
  color: var(--lime-d) !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: .04em !important;
  overflow-wrap: break-word !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
  color: var(--ink) !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

@keyframes nqBagCanFloat {
  0%, 100% { translate: 0 0; }
  50% { translate: 0 -10px; }
}

@keyframes nqBagOrbit {
  0% { transform: translate3d(0, 0, 0) rotate(0deg); }
  50% { transform: translate3d(8px, -10px, 0) rotate(180deg); }
  100% { transform: translate3d(0, 0, 0) rotate(360deg); }
}

@media (max-width: 1020px) {
  body.woocommerce-cart .nq-bag-layout {
    grid-template-columns: 1fr;
  }

  body.woocommerce-cart .nq-bag-summary {
    position: relative;
    top: auto;
  }

  body.woocommerce-cart .nq-product-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  body.woocommerce-cart .nq-bag-shell {
    padding-top: 16px;
    padding-bottom: 36px;
  }

  body.woocommerce-cart .nq-empty-bag {
    padding: 22px 14px 26px;
    margin-bottom: 28px;
    border-radius: 20px;
  }

  body.woocommerce-cart .nq-empty-art {
    height: 190px;
    margin: 0 auto 12px;
  }

  body.woocommerce-cart .nq-empty-art .nq-empty-aura {
    width: 210px;
    height: 210px;
    filter: blur(26px);
  }

  body.woocommerce-cart .nq-empty-art img {
    height: 175px;
    bottom: 0;
  }

  body.woocommerce-cart .nq-empty-art img.empty-can-litchi {
    transform: translateX(-80%) rotate(-10deg);
  }

  body.woocommerce-cart .nq-empty-art img.empty-can-blue {
    transform: translateX(-20%) rotate(10deg);
  }

  body.woocommerce-cart .nq-empty-bag h2 {
    font-size: clamp(24px, 6.5vw, 32px);
    line-height: 1.05;
    margin-top: 4px;
    margin-bottom: 6px;
  }

  body.woocommerce-cart .nq-empty-bag p {
    font-size: 13.5px;
    line-height: 1.4;
    margin: 4px auto 16px;
  }

  body.woocommerce-cart .nq-empty-bag .nq-bag-primary {
    min-height: 42px;
    padding: 0 22px;
    font-size: 13.5px;
  }

  body.woocommerce-cart .nq-bag-section-head {
    margin-bottom: 16px;
  }

  body.woocommerce-cart .nq-bag-section-head h3 {
    font-size: clamp(26px, 6vw, 34px);
  }

  body.woocommerce-cart .nq-product-cards {
    grid-template-columns: 1fr;
    gap: 16px;
    max-width: 320px;
    margin-inline: auto;
  }

  body.woocommerce-cart .nq-product-card {
    min-height: 0;
    padding: 16px 14px;
    border-radius: 18px;
  }

  body.woocommerce-cart .nq-product-image {
    height: 200px;
    margin-bottom: 10px;
    border-radius: 14px;
  }

  body.woocommerce-cart .nq-product-card h4 {
    font-size: 15px;
    min-height: auto;
    margin-bottom: 4px;
  }

  body.woocommerce-cart .nq-flavor-selector {
    margin: 2px auto 6px;
  }

  body.woocommerce-cart .nq-product-price {
    font-size: 16px;
    margin-bottom: 10px;
  }

  body.woocommerce-cart .nq-product-add {
    min-height: 42px;
    font-size: 13px;
  }

  body.woocommerce-cart .nq-bag-item {
    grid-template-columns: 96px minmax(0, 1fr);
  }

  body.woocommerce-cart .nq-bag-item-image {
    width: 96px;
    min-height: 130px;
  }

  body.woocommerce-cart .nq-bag-item-image img {
    height: 116px;
    max-width: 80px;
  }

  body.woocommerce-cart .nq-bag-item-side {
    grid-column: 2;
    align-items: flex-start;
  }

  body.woocommerce-checkout .wc-block-components-order-summary-item {
    grid-template-columns: 78px minmax(0, 1fr) auto !important;
  }

  body.woocommerce-checkout .wc-block-components-order-summary-item__image,
  body.woocommerce-checkout .wc-block-components-order-summary-item__image > div {
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.woocommerce-cart .nq-empty-art img,
  body.woocommerce-cart .nq-empty-spark,
  body.woocommerce-cart .nq-product-image img {
    animation: none !important;
    transition: none !important;
  }
}

/* Final hero vibe pass: richer Bag/Checkout headers with moving real cans. */
@keyframes nqHeroSweep {
  0%, 100% { transform: translate3d(0, 0, 0) scale(1); opacity: .72; }
  50% { transform: translate3d(18px, -16px, 0) scale(1.04); opacity: .95; }
}

@keyframes nqHeroCanLivelyA {
  0%, 100% { transform: translateY(-50%) rotate(-9deg); }
  45% { transform: translateY(-61%) rotate(-3deg); }
  70% { transform: translateY(-54%) rotate(-11deg); }
}

@keyframes nqHeroCanLivelyB {
  0%, 100% { transform: translateY(-47%) rotate(8deg); }
  45% { transform: translateY(-59%) rotate(3deg); }
  70% { transform: translateY(-51%) rotate(11deg); }
}

.nq-woo-hero {
  min-height: clamp(430px, 42vw, 590px) !important;
  padding-top: clamp(124px, 9vw, 154px) !important;
  padding-bottom: clamp(58px, 7vw, 92px) !important;
}

.nq-woo-hero-bag {
  background:
    radial-gradient(circle at 8% 20%, rgba(214,96,128,.2), transparent 28%),
    radial-gradient(circle at 93% 20%, rgba(170,255,0,.32), transparent 26%),
    linear-gradient(112deg, #fff1f6 0%, #fffdf6 45%, #ecffd5 100%) !important;
}

.nq-woo-hero-checkout {
  background:
    radial-gradient(circle at 12% 24%, rgba(91,65,214,.16), transparent 28%),
    radial-gradient(circle at 90% 20%, rgba(170,255,0,.24), transparent 26%),
    linear-gradient(112deg, #eef0ff 0%, #fffdf6 46%, #e7fff4 100%) !important;
}

.nq-woo-hero-bg {
  inset: -22% !important;
  background:
    radial-gradient(circle at 20% 26%, rgba(214,96,128,.24), transparent 22%),
    radial-gradient(circle at 70% 22%, rgba(91,65,214,.24), transparent 24%),
    radial-gradient(circle at 76% 78%, rgba(170,255,0,.28), transparent 22%),
    linear-gradient(95deg, rgba(255,255,255,.62), rgba(255,255,255,0)) !important;
  animation: nqHeroSweep 9s ease-in-out infinite !important;
}

.nq-woo-hero-inner {
  grid-template-columns: minmax(0, .92fr) minmax(380px, 520px) !important;
  max-width: 1240px !important;
  gap: clamp(42px, 6vw, 94px) !important;
}

.nq-woo-hero-copy h1 {
  font-size: clamp(58px, 7.8vw, 112px) !important;
  line-height: .86 !important;
}

.nq-woo-hero-copy p {
  max-width: 600px !important;
  font-size: clamp(17px, 1.55vw, 22px) !important;
}

.nq-woo-hero-art {
  min-height: clamp(280px, 32vw, 430px) !important;
}

.nq-hero-can {
  height: clamp(230px, 28vw, 390px) !important;
  max-height: 390px !important;
  max-width: none !important;
  filter: drop-shadow(0 36px 38px rgba(10,46,18,.25)) !important;
}

.nq-hero-can-litchi {
  right: clamp(140px, 17vw, 230px) !important;
  animation: nqHeroCanLivelyA 5.8s ease-in-out infinite !important;
}

.nq-hero-can-blue {
  right: clamp(8px, 3vw, 46px) !important;
  animation: nqHeroCanLivelyB 6.4s ease-in-out infinite !important;
}

.nq-float-pill {
  display: inline-flex !important;
}

.nq-orbit {
  display: block !important;
}

.nq-pill-one {
  top: 1% !important;
  right: clamp(260px, 28vw, 380px) !important;
}

.nq-pill-two {
  right: clamp(6px, 2vw, 22px) !important;
  bottom: 16% !important;
}

.nq-orbit-one {
  width: clamp(72px, 7vw, 112px) !important;
  height: clamp(72px, 7vw, 112px) !important;
  right: 54% !important;
  top: 11% !important;
}

.nq-orbit-two {
  right: 10% !important;
  bottom: 2% !important;
}

@media (max-width: 980px) {
  .nq-woo-hero-inner {
    grid-template-columns: 1fr !important;
  }

  .nq-woo-hero-art {
    max-width: 470px !important;
    min-height: 300px !important;
  }

  .nq-hero-can {
    height: clamp(210px, 42vw, 310px) !important;
  }
}

@media (max-width: 700px) {
  .nq-woo-hero {
    min-height: auto !important;
    padding-top: 104px !important;
  }

  .nq-woo-hero-copy h1 {
    font-size: clamp(46px, 14vw, 68px) !important;
  }

  .nq-woo-hero-art {
    min-height: 245px !important;
  }

  .nq-hero-can {
    height: 218px !important;
    max-height: 218px !important;
  }

  .nq-hero-can-litchi {
    right: 110px !important;
  }

  .nq-hero-can-blue {
    right: 26px !important;
  }

  .nq-pill-one,
  .nq-pill-two {
    display: none !important;
  }
}


/* ==========================================
   NATURAQ ABOUT PAGE STYLES
   ========================================== */

/* NaturaQ About: deliberately reuses the homepage design system. */
.nq-about-reference{background:var(--paper);overflow:hidden}

/* HERO — same #hero system as the homepage, with only the two-can composition added. */
#hero.about-reference-hero{min-height:clamp(680px,92vh,900px)}
.about-reference-hero #ghostWord{font-size:clamp(104px,19vw,280px);letter-spacing:5px;opacity:.88}
.about-reference-hero .hero-copy{max-width:610px}
.about-reference-hero .hero-sub{max-width:490px}
.about-reference-hero .about-hero-actions{margin-top:28px}
.about-reference-hero .about-hero-actions .btn{min-height:51px}
#aboutFizz{position:absolute;inset:0;z-index:1;pointer-events:none}

.about-hero-stage .stage-halo{width:104%;background:radial-gradient(circle,rgba(214,96,128,.30),transparent 60%)}
.about-can-pair{position:relative;z-index:3;width:min(100%,570px);height:clamp(430px,58vh,580px);transform:translateZ(80px)}
.about-stage-can{position:absolute;width:auto;will-change:transform;filter:drop-shadow(0 40px 44px rgba(10,46,18,.28));transition:filter .4s ease}
img[src*="/litchi-master-transparent.png"],img[src*="/blueberry-master-transparent.png"],img[src*="/assets/images/litchi-master-transparent.png"],img[src*="/assets/images/blueberry-master-transparent.png"]{background:transparent!important;background-color:transparent!important;border:0!important;box-shadow:none!important}
.about-stage-litchi{z-index:3;left:6%;bottom:0;height:clamp(390px,56vh,570px);animation:aboutLitchiFloat 6s ease-in-out infinite}
.about-stage-blueberry{z-index:2;right:6%;top:8%;height:clamp(320px,44vh,470px);animation:aboutBlueFloat 6.8s ease-in-out .4s infinite}
.about-can-shadow{position:absolute;bottom:5%;height:24px;border-radius:50%;background:radial-gradient(ellipse,rgba(10,46,18,.4),transparent 70%);filter:blur(6px);z-index:1}
.about-can-shadow-l{left:13%;width:45%;animation:aboutShadow 6s ease-in-out infinite}
.about-can-shadow-b{right:7%;width:43%;animation:aboutShadow 6.8s ease-in-out .4s infinite}
.about-stage-sticker{position:absolute;z-index:6;font-family:'Black Han Sans',sans-serif;font-size:clamp(10px,1.1vw,13px);line-height:1.02;letter-spacing:.1px;color:var(--ink);background:#fffdf6;border:1px solid rgba(10,46,18,.12);box-shadow:0 15px 30px rgba(10,46,18,.15);padding:13px 15px;transform:rotate(-8deg);animation:aboutSticker 4.6s ease-in-out infinite}
.about-stage-sticker b{color:var(--litchi);font-weight:400}.about-stage-sticker.s1{left:-1%;top:15%}.about-stage-sticker.s2{right:-3%;bottom:9%;transform:rotate(7deg);animation-delay:1.1s}.about-stage-sticker.s2{color:var(--blue)}
.about-reference-hero .stage-badge.b1{right:-3%;top:5%}.about-reference-hero .stage-badge.b2{left:-4%;bottom:15%}

/* HOMEPAGE MISSION SYSTEM, made slightly tighter for the About page. */
.about-mission .wrap{padding-top:clamp(70px,8vw,106px);padding-bottom:clamp(70px,8vw,106px)}
.about-mission .lead{max-width:650px}.about-mission .mgrid{margin-top:0}

/* Existing homepage photo-band style, just shorter and with an extra line of copy. */
.about-photo-band img{height:clamp(340px,56vh,560px)!important}
.about-photo-band .cap{max-width:650px}.about-photo-band .cap p{font-family:'Nunito',sans-serif;font-size:16px;font-weight:700;line-height:1.55;color:rgba(255,255,255,.84);margin-top:13px;max-width:440px}

/* Dark section: exactly the homepage's ingredient-card grammar. */
.about-promise .wrap{padding-top:clamp(70px,8vw,108px);padding-bottom:clamp(70px,8vw,108px)}
.about-promise-grid{grid-template-columns:repeat(3,1fr)}
.about-promise .icard .ie{font-family:'Black Han Sans',sans-serif;color:var(--lime);font-size:34px;line-height:1;margin-bottom:18px}
@media(max-width:760px){.about-promise-grid{grid-template-columns:1fr}}

/* Compact flavour line-up: same pastel, ghost-word, big-can language as the home flavour sections. */
.about-duo{background:var(--paper2)}
.about-duo .wrap{padding-top:clamp(68px,8vw,108px);padding-bottom:clamp(72px,8vw,112px)}
.about-duo-heading{display:grid;grid-template-columns:1.02fr .7fr;align-items:end;gap:50px}
.about-duo-heading h2{font-family:'Black Han Sans',sans-serif;font-size:clamp(36px,5.5vw,68px);line-height:.91;margin:13px 0 0}.about-duo-heading h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1.8px var(--ink)}
.about-duo-heading>p{font-size:16px;line-height:1.63;color:rgba(10,46,18,.63);font-weight:700;max-width:400px;margin-bottom:5px}
.about-duo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:44px}
.about-duo-card{position:relative;min-height:clamp(340px,40vw,430px);border-radius:0;overflow:hidden;padding:28px;isolation:isolate;box-shadow:0 18px 38px rgba(10,46,18,.10);transform-style:preserve-3d;transition:box-shadow .35s ease}
.about-duo-card:hover{box-shadow:0 28px 54px rgba(10,46,18,.16)}
.about-duo-card:before{position:absolute;z-index:-1;top:-3%;right:-3%;font-family:'Black Han Sans',sans-serif;font-size:clamp(88px,13vw,176px);line-height:1;color:rgba(255,255,255,.43);letter-spacing:-7px;pointer-events:none}
.about-duo-card>span{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:11px;letter-spacing:1.8px;color:rgba(10,46,18,.5)}
.about-duo-card h3{position:relative;z-index:2;font-size:clamp(31px,4.2vw,52px);line-height:.88;margin:48px 0 0;max-width:60%}.about-duo-card h3 em{font-style:normal}
.about-duo-card p{position:relative;z-index:2;max-width:49%;font-size:14px;font-weight:700;line-height:1.55;color:rgba(10,46,18,.63);margin-top:16px}
.about-duo-card img{position:absolute;z-index:1;right:5%;bottom:-13%;height:108%;width:auto;filter:drop-shadow(0 27px 24px rgba(10,46,18,.25));transition:transform .55s cubic-bezier(.16,1,.3,1)}
.about-duo-card:hover img{transform:translateY(-13px) rotate(-4deg) scale(1.02)}
.about-duo-card a{position:absolute;z-index:4;left:28px;bottom:24px;font-family:'Space Grotesk',sans-serif;font-size:12px;letter-spacing:1.2px;text-transform:uppercase;font-weight:700}.about-duo-card a b{font-size:16px}
.about-duo-litchi{background:linear-gradient(140deg,#fff1f5,#ffdce7)}.about-duo-litchi:before{content:'LITCHI';left:-2%;right:auto}.about-duo-litchi h3 em{color:var(--litchi)}
.about-duo-blueberry{background:linear-gradient(140deg,#efedff,#ddd8ff)}.about-duo-blueberry:before{content:'BERRY'}.about-duo-blueberry h3 em{color:var(--blue)}

/* Future flavours: retain the homepage fomo-band language. */
.about-future .kicker{display:block;color:var(--lime);margin-bottom:12px}.about-future .fomo-cta{display:inline-flex}.about-future .fomo-ghost{color:rgba(170,255,0,.09)}

@keyframes aboutLitchiFloat{0%,100%{transform:translateY(0) rotate(-9deg)}50%{transform:translateY(-20px) rotate(-6deg)}}
@keyframes aboutBlueFloat{0%,100%{transform:translateY(0) rotate(8deg)}50%{transform:translateY(-16px) rotate(11deg)}}
@keyframes aboutShadow{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(.82);opacity:.38}}
@keyframes aboutSticker{0%,100%{translate:0 0}50%{translate:4px -10px}}

@media(max-width:900px){
  #hero.about-reference-hero{min-height:auto;padding-top:98px;padding-bottom:56px}
  .about-reference-hero .hero-grid{gap:0}.about-reference-hero .hero-copy{order:2}.about-reference-hero .about-hero-stage{order:1;min-height:clamp(355px,45vh,450px)}
  .about-can-pair{height:clamp(340px,44vh,430px);max-width:480px}.about-stage-litchi{left:9%;height:clamp(300px,42vh,390px)}.about-stage-blueberry{right:9%;height:clamp(240px,33vh,320px)}
  .about-reference-hero .stage-badge.b1{right:2%;top:6%}.about-reference-hero .stage-badge.b2{left:1%;bottom:8%}.about-stage-sticker.s1{left:6%;top:18%}.about-stage-sticker.s2{right:4%;bottom:12%}
  .about-duo-heading{grid-template-columns:1fr;gap:18px}.about-duo-heading>p{max-width:560px}
}
@media(max-width:680px){
  #hero.about-reference-hero{padding-top:80px}.about-reference-hero #ghostWord{font-size:clamp(82px,21vw,145px);top:39%}.about-reference-hero .hero-sub{font-size:14px}
  .about-hero-stage .stage-ring{width:74%}.about-hero-stage .stage-ring.r2{width:98%}.about-can-pair{height:330px}.about-stage-litchi{left:6%;bottom:0;height:320px}.about-stage-blueberry{right:4%;top:8%;height:250px}.about-stage-sticker{font-size:9px;padding:9px 10px}.about-stage-sticker.s1{left:0;top:14%}.about-stage-sticker.s2{right:0;bottom:8%}
  .about-photo-band img{height:360px!important}.about-photo-band .cap p{font-size:14px}
  .about-duo-grid{grid-template-columns:1fr;gap:14px;margin-top:30px}.about-duo-card{min-height:325px;padding:22px}.about-duo-card h3{margin-top:42px;font-size:37px}.about-duo-card p{font-size:12.5px;max-width:52%}.about-duo-card a{left:22px;bottom:20px}.about-duo-card img{right:5%;height:106%}
}
@media(prefers-reduced-motion:reduce){.about-stage-can,.about-can-shadow,.about-stage-sticker{animation:none!important}}

/* Sitewide: Remove scroll indicator completely */
.hero-scroll, .hs-line, .hs-txt, #hero .hero-scroll, .about-reference-hero .hero-scroll {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Checkout Quantity Controls (+ and -) */
.nq-checkout-qty-control {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(10, 46, 18, 0.06) !important;
  padding: 4px 10px !important;
  border-radius: 99px !important;
  border: 1px solid rgba(10, 46, 18, 0.12) !important;
  margin-left: 8px !important;
  vertical-align: middle !important;
}
.nq-checkout-qty-btn {
  background: #ffffff !important;
  border: 1px solid rgba(10, 46, 18, 0.18) !important;
  color: var(--ink, #0a2e12) !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 50% !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: all 0.2s ease !important;
}
.nq-checkout-qty-btn:hover {
  background: var(--lime, #aaff00) !important;
  border-color: var(--ink, #0a2e12) !important;
  transform: scale(1.1) !important;
}
.nq-checkout-qty-val {
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  min-width: 18px !important;
  text-align: center !important;
  color: var(--ink, #0a2e12) !important;
}

/* ══════════════════════════════════════════════════════════════════
   NATURAQ PREMIUM 2-COLUMN CHECKOUT REDESIGN (58% / 42%)
   ══════════════════════════════════════════════════════════════════ */
.nq-checkout-page-body {
  background: var(--paper, #f7f4ea) !important;
  padding: 44px 0 76px !important;
  min-height: auto !important;
}

.nq-checkout-page-body .nq-woo-page-container,
.nq-checkout-page-body .wrap {
  width: 100% !important;
  max-width: 1220px !important;
  margin: 0 auto !important;
  padding: 0 clamp(16px, 3vw, 36px) !important;
  box-sizing: border-box !important;
}

.nq-checkout-page-body .nq-woo-page-content,
.nq-checkout-page-body .prose {
  max-width: 100% !important;
  width: 100% !important;
  color: var(--ink, #0a2e12) !important;
}

.nq-checkout-form-root,
form.woocommerce-checkout {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* 58% / 42% Balanced Desktop Grid with 44px Gap */
.nq-checkout-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.38fr) minmax(380px, 1fr) !important;
  gap: 44px !important;
  align-items: start !important;
  width: 100% !important;
}

.nq-checkout-col-main {
  min-width: 0 !important;
}

.nq-checkout-col-side {
  min-width: 0 !important;
  position: sticky !important;
  top: 110px !important;
  align-self: start !important;
  z-index: 10 !important;
}

.nq-checkout-sticky-wrap {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}

/* ══════════════════════════════════════════════════════════════════
   OUTER CHECKOUT CARDS (GENEROUS 32px/30px INNER GUTTERS)
   ══════════════════════════════════════════════════════════════════ */
.nq-checkout-card {
  background: #ffffff !important;
  border-radius: 22px !important;
  border: 1px solid rgba(10, 46, 18, 0.08) !important;
  box-shadow: 0 10px 30px rgba(10, 46, 18, 0.03) !important;
  padding: 34px 30px !important;
  box-sizing: border-box !important;
}

.nq-checkout-customer-card {
  padding: 36px 32px !important;
}

.nq-checkout-summary-card {
  padding: 34px 30px !important;
}

.nq-checkout-card-head {
  margin-bottom: 24px !important;
  border-bottom: 1px solid rgba(10, 46, 18, 0.07) !important;
  padding-bottom: 16px !important;
}

.nq-checkout-eyebrow {
  display: inline-block !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  color: rgba(10, 46, 18, 0.5) !important;
  margin-bottom: 4px !important;
}

.nq-eyebrow--lime {
  color: #588f00 !important;
}

.nq-checkout-card-title {
  font-family: 'Black Han Sans', sans-serif !important;
  font-size: clamp(22px, 2.3vw, 28px) !important;
  color: var(--ink, #0a2e12) !important;
  line-height: 1.1 !important;
  margin: 0 !important;
}

/* Col2-set reset inside customer card */
.nq-checkout-customer-card .col2-set {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

.nq-checkout-customer-card .col2-set .col-1,
.nq-checkout-customer-card .col2-set .col-2 {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Form Fields */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-additional-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px 18px !important;
}

.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--ink, #0a2e12) !important;
  margin: 18px 0 12px !important;
}

.woocommerce-checkout p.form-row {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
}

#billing_first_name_field { grid-column: 1 !important; }
#billing_last_name_field  { grid-column: 2 !important; }
#billing_company_field    { grid-column: 1 / -1 !important; }
#billing_country_field    { grid-column: 1 / -1 !important; }
#billing_address_1_field  { grid-column: 1 / -1 !important; }
#billing_address_2_field  { grid-column: 1 / -1 !important; }
#billing_city_field       { grid-column: 1 !important; }
#billing_state_field      { grid-column: 2 !important; }
#billing_postcode_field   { grid-column: 1 !important; }
#billing_phone_field      { grid-column: 2 !important; }
#billing_email_field      { grid-column: 1 / -1 !important; }

.woocommerce-checkout p.form-row-wide,
.woocommerce-checkout p.notes,
.woocommerce-checkout .woocommerce-additional-fields {
  grid-column: 1 / -1 !important;
}

.woocommerce-checkout label {
  display: block !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--ink, #0a2e12) !important;
  margin-bottom: 5px !important;
}

.woocommerce-checkout label .required {
  color: #e53935 !important;
  text-decoration: none !important;
  font-weight: 800 !important;
}

.woocommerce-checkout label .optional {
  color: rgba(10, 46, 18, 0.45) !important;
  font-weight: 500 !important;
  font-size: 12px !important;
}

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-container .select2-selection--single {
  width: 100% !important;
  height: 50px !important;
  line-height: 50px !important;
  padding: 0 16px !important;
  background: #fffdf8 !important;
  border: 1.5px solid rgba(10, 46, 18, 0.13) !important;
  border-radius: 14px !important;
  font-family: 'Nunito', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--ink, #0a2e12) !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s !important;
  outline: none !important;
}

.woocommerce-checkout textarea {
  height: 84px !important;
  line-height: 1.4 !important;
  padding: 12px 16px !important;
  resize: vertical !important;
}

.woocommerce-checkout input:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout .select2-container--open .select2-selection--single {
  border-color: var(--lime-d, #79c400) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(170, 255, 0, 0.2) !important;
}

/* ══════════════════════════════════════════════════════════════════
   VISUAL PRODUCT CARDS IN ORDER SUMMARY (GENEROUS PADDING & CLEARANCE)
   ══════════════════════════════════════════════════════════════════ */
.nq-checkout-items-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  margin-bottom: 22px !important;
}

.nq-checkout-item-card {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  background: #faf8f2 !important;
  border: 1px solid rgba(10, 46, 18, 0.08) !important;
  border-radius: 18px !important;
  padding: 18px 20px !important;
  box-sizing: border-box !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
}

.nq-checkout-item-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(10, 46, 18, 0.06) !important;
}

/* 80px–110px Prominent Thumbnail Stage */
.nq-checkout-item-thumb {
  flex-shrink: 0 !important;
  width: 90px !important;
  min-width: 90px !important;
  max-width: 90px !important;
  height: 104px !important;
  min-height: 104px !important;
  max-height: 104px !important;
  background: #ffffff !important;
  border-radius: 16px !important;
  border: 1px solid rgba(10, 46, 18, 0.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 6px !important;
  box-shadow: 0 4px 14px rgba(10, 46, 18, 0.04) !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.nq-checkout-item-thumb .can-single-img {
  height: 88px !important;
  max-height: 88px !important;
  width: auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 6px 10px rgba(10, 46, 18, 0.18)) !important;
  display: block !important;
  margin: 0 auto !important;
}

.nq-checkout-pair-stage {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.nq-checkout-pair-stage img {
  position: absolute !important;
  height: 82px !important;
  max-height: 82px !important;
  width: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  filter: drop-shadow(0 6px 10px rgba(10, 46, 18, 0.16)) !important;
}

.nq-checkout-pair-stage .can-pair-blue {
  left: 2px !important;
  z-index: 1 !important;
  transform: translateY(-50%) rotate(-7deg) scale(0.96) !important;
}

.nq-checkout-pair-stage .can-pair-litchi {
  right: 2px !important;
  z-index: 2 !important;
  transform: translateY(-50%) rotate(7deg) !important;
}

.nq-checkout-item-body {
  flex: 1 !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.nq-checkout-item-top {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.nq-checkout-item-title {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 700 !important;
  color: var(--ink, #0a2e12) !important;
  margin: 0 !important;
  line-height: 1.25 !important;
}

.nq-checkout-item-price {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  color: var(--ink, #0a2e12) !important;
  white-space: nowrap !important;
  margin-left: auto !important;
  padding-left: 14px !important;
}

.nq-checkout-item-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
}

.nq-item-pack-badge {
  display: inline-block !important;
  padding: 3px 8px !important;
  background: var(--ink, #0a2e12) !important;
  color: #ffffff !important;
  border-radius: 6px !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
}

.nq-item-mix-text {
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: rgba(10, 46, 18, 0.72) !important;
}

.nq-checkout-item-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-top: 4px !important;
}

/* ══════════════════════════════════════════════════════════════════
   INSET TOTALS BREAKDOWN BLOCK (24px/20px PADDING, CLEAN GUTTER)
   ══════════════════════════════════════════════════════════════════ */
.nq-checkout-totals-block {
  background: #fbfaf5 !important;
  border-radius: 16px !important;
  border: 1px solid rgba(10, 46, 18, 0.07) !important;
  padding: 20px 24px !important;
  margin: 18px 0 20px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  box-sizing: border-box !important;
}

.nq-checkout-summary-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: rgba(10, 46, 18, 0.72) !important;
}

.nq-checkout-summary-row .nq-row-val {
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
  color: var(--ink, #0a2e12) !important;
}

.nq-coupon-discount {
  color: #2e7d32 !important;
  font-weight: 800 !important;
}

.nq-checkout-shipping-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-top: 1px solid rgba(10, 46, 18, 0.06) !important;
  border-bottom: 1px solid rgba(10, 46, 18, 0.06) !important;
  padding: 11px 0 !important;
  margin: 2px 0 !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: rgba(10, 46, 18, 0.72) !important;
}

.nq-checkout-shipping-row .nq-row-val {
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
  color: var(--ink, #0a2e12) !important;
}

.nq-checkout-shipping-row #shipping_method,
.nq-checkout-shipping-row #shipping_method li {
  display: inline !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.nq-checkout-shipping-row #shipping_method li input {
  display: none !important;
}

.nq-checkout-grand-total {
  border-top: 1.5px solid rgba(10, 46, 18, 0.12) !important;
  padding-top: 14px !important;
  margin-top: 4px !important;
  font-size: 16.5px !important;
  font-weight: 800 !important;
  color: var(--ink, #0a2e12) !important;
}

.nq-grand-price {
  font-size: 24px !important;
  color: var(--ink, #0a2e12) !important;
  font-weight: 800 !important;
  font-family: 'Space Grotesk', sans-serif !important;
}

/* ══════════════════════════════════════════════════════════════════
   INSET PAYMENT GATEWAY SECTION (24px PADDING, INSET CARDS)
   ══════════════════════════════════════════════════════════════════ */
#payment.nq-checkout-payment-box,
#payment {
  background: #fbfaf5 !important;
  border-radius: 18px !important;
  border: 1px solid rgba(10, 46, 18, 0.07) !important;
  padding: 24px 24px 26px !important;
  margin: 20px 0 0 !important;
  box-sizing: border-box !important;
}

.nq-payment-section-head {
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: none !important;
}

.nq-payment-eyebrow {
  display: inline-block !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  color: rgba(10, 46, 18, 0.55) !important;
}

#payment ul.payment_methods {
  list-style: none !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  border: none !important;
}

#payment ul.payment_methods li.wc_payment_method {
  background: #ffffff !important;
  border: 1.5px solid rgba(10, 46, 18, 0.1) !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

#payment ul.payment_methods li.wc_payment_method:hover,
#payment ul.payment_methods li.wc_payment_method:has(input:checked) {
  border-color: var(--lime-d, #79c400) !important;
  background: #ffffff !important;
  box-shadow: 0 4px 18px rgba(121, 196, 0, 0.15) !important;
}

#payment ul.payment_methods li label {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: var(--ink, #0a2e12) !important;
  cursor: pointer !important;
  display: inline !important;
}

#payment ul.payment_methods li input[type="radio"] {
  accent-color: var(--lime-d, #79c400) !important;
  margin-right: 10px !important;
}

#payment div.payment_box {
  background: rgba(10, 46, 18, 0.04) !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  margin: 12px 0 0 !important;
  font-size: 13px !important;
  color: rgba(10, 46, 18, 0.78) !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
}

#payment div.payment_box::before {
  display: none !important;
}

/* Privacy Text */
.woocommerce-privacy-policy-text {
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  color: rgba(10, 46, 18, 0.62) !important;
  padding: 6px 4px 0 !important;
  margin: 0 0 16px !important;
}

.woocommerce-privacy-policy-text a {
  color: var(--ink, #0a2e12) !important;
  text-decoration: underline !important;
  font-weight: 700 !important;
}

/* Place Order CTA Button */
.place-order #place_order.button,
#place_order.nq-place-order-btn,
#place_order {
  width: 100% !important;
  height: 56px !important;
  background: var(--ink, #0a2e12) !important;
  color: #ffffff !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  border: none !important;
  border-radius: 99px !important;
  cursor: pointer !important;
  box-shadow: 0 8px 24px rgba(10, 46, 18, 0.22) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 16px !important;
  box-sizing: border-box !important;
}

.place-order #place_order:hover,
#place_order:hover {
  background: var(--ink2, #0d3b18) !important;
  color: var(--lime, #aaff00) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 30px rgba(10, 46, 18, 0.32) !important;
}

.nq-checkout-trust-badges {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 16px 20px !important;
  background: rgba(255, 255, 255, 0.7) !important;
  border-radius: 18px !important;
  border: 1px solid rgba(10, 46, 18, 0.06) !important;
}

.nq-trust-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 13px !important;
  color: rgba(10, 46, 18, 0.75) !important;
}

.nq-trust-item b {
  color: var(--ink, #0a2e12) !important;
}

.nq-trust-icon {
  font-size: 16px !important;
}

/* ══════════════════════════════════════════════════════════════════
   RESPONSIVE LAYOUT BREAKPOINTS (TABLET & MOBILE)
   ══════════════════════════════════════════════════════════════════ */
@media (max-width: 991px) {
  .nq-checkout-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .nq-checkout-col-side {
    position: static !important;
  }
}

@media (max-width: 820px) {
  .nq-checkout-page-body {
    padding: 24px 0 50px !important;
  }

  .nq-checkout-page-body .nq-woo-page-container,
  .nq-checkout-page-body .wrap {
    padding: 0 16px !important;
  }

  .nq-checkout-card {
    padding: 24px 18px !important;
    border-radius: 18px !important;
  }

  .nq-checkout-customer-card,
  .nq-checkout-summary-card {
    padding: 24px 18px !important;
  }

  .nq-checkout-totals-block {
    padding: 18px 18px !important;
  }

  #payment.nq-checkout-payment-box,
  #payment {
    padding: 20px 18px 22px !important;
  }
}

@media (max-width: 600px) {
  .woocommerce-billing-fields__field-wrapper,
  .woocommerce-shipping-fields__field-wrapper,
  .woocommerce-additional-fields__field-wrapper {
    grid-template-columns: 1fr !important;
  }

  #billing_first_name_field,
  #billing_last_name_field,
  #billing_city_field,
  #billing_state_field,
  #billing_postcode_field,
  #billing_phone_field,
  .woocommerce-checkout p.form-row-first,
  .woocommerce-checkout p.form-row-last {
    grid-column: 1 / -1 !important;
  }

  .nq-checkout-item-card {
    padding: 14px 16px !important;
    gap: 14px !important;
  }

  .nq-checkout-item-thumb {
    width: 76px !important;
    min-width: 76px !important;
    max-width: 76px !important;
    height: 94px !important;
    min-height: 94px !important;
    max-height: 94px !important;
  }

  .nq-checkout-item-thumb .can-single-img {
    height: 80px !important;
  }

  .nq-checkout-pair-stage img {
    height: 76px !important;
  }

  #payment ul.payment_methods li.wc_payment_method {
    padding: 14px 14px !important;
  }

  .place-order #place_order.button,
  #place_order.nq-place-order-btn,
  #place_order {
    height: 52px !important;
  }
}

/* ════ MOBILE HEADER BALANCED CENTER POLISH ════ */
@media (max-width: 880px) {
  html body #nq-fixed-header {
    position: fixed !important;
  }

  html body #nq-fixed-header #nav,
  html body #nq-fixed-header #nav.scrolled {
    position: relative !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
    gap: 0 !important;
  }

  html body #nq-fixed-header .nav-tagline {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    flex-shrink: 0 !important;
  }

  html body #nq-fixed-header .nav-logo,
  html body #nq-fixed-header #nav .nav-logo,
  html body #nq-fixed-header #nav.scrolled .nav-logo {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    flex: 1 1 auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    pointer-events: auto !important;
    text-decoration: none !important;
    line-height: 0 !important;
    text-align: center !important;
  }

  html body #nq-fixed-header .nav-logo img,
  html body #nq-fixed-header #nav .nav-logo img,
  html body #nq-fixed-header #nav.scrolled .nav-logo img {
    display: block !important;
    margin: 0 auto !important;
  }

  html body #nq-fixed-header #navHam {
    position: relative !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    flex-shrink: 0 !important;
  }
}
