/* ============================================================
   neon.css — the "Neon Tube" system, site-wide.

   Loads on every page, after app.css. Everything is scoped to
   body.lh-neon, which does double duty: it keeps the whole look
   behind one switchable class, and .lh-neon .thing (0,2,0) clears
   app.css's .thing (0,1,0) without a single !important.

   app.css still holds the layout. This file only re-lights it:
   the light surfaces (cream page bodies, white cards, pale product
   heroes) become dark panels, ink becomes cream, and accents become
   tubing. No copy, no structure.
   ============================================================ */

.lh-neon{
  --n-bg:#0A0410; --n-bg2:#120C28; --n-panel:#1A0A2E; --n-deep:#2B1160;
  --n-cream:#FFF3D6; --n-mist:#E4D9F5; --n-mist2:#A99BC6;
  --n-pink:#FF4D9D; --n-pink2:#FF2E6E; --n-purple:#7B3DF5; --n-purple2:#C23DF5;
  --n-yellow:#FFD34D; --n-teal:#3ED6D6; --n-teal2:#7DE3E3; --n-orange:#FF8A3D;
  --n-head:"Anton","Bebas Neue",Impact,sans-serif;
  /* the wall behind every neon sign */
  --n-wall:repeating-linear-gradient(115deg,rgba(255,255,255,.030) 0 2px,transparent 2px 22px);
  background:var(--n-bg);
}
.lh-neon h1,.lh-neon h2,.lh-neon h3,.lh-neon .htitle,.lh-neon .bignum{
  font-family:var(--n-head);letter-spacing:.01em;}

/* ---------- the tube treatment ---------------------------------- */
/* Hollow letterforms with a lit glass edge. -webkit-text-stroke is
   supported everywhere we care about; the @supports block below keeps
   anything else legible rather than invisible. */
.lh-neon .tube{
  color:transparent;-webkit-text-fill-color:transparent;
  -webkit-text-stroke:3px var(--n-pink);
  filter:drop-shadow(0 0 6px var(--n-pink))
         drop-shadow(0 0 22px rgba(255,77,157,.85))
         drop-shadow(0 0 52px rgba(255,77,157,.5));
  animation:n-flick 6s ease-in-out infinite;}
.lh-neon .tube-t{
  -webkit-text-stroke-color:var(--n-teal);
  filter:drop-shadow(0 0 6px var(--n-teal))
         drop-shadow(0 0 22px rgba(62,214,214,.85))
         drop-shadow(0 0 52px rgba(62,214,214,.5));
  animation-delay:-1.6s;}
.lh-neon .tube-y{
  -webkit-text-stroke-color:var(--n-yellow);
  filter:drop-shadow(0 0 6px var(--n-yellow))
         drop-shadow(0 0 22px rgba(255,211,77,.8))
         drop-shadow(0 0 52px rgba(255,211,77,.45));
  animation-delay:-3.1s;}
@keyframes n-flick{0%,92%,100%{opacity:1}94%{opacity:.35}96%{opacity:.9}98%{opacity:.5}}
@supports not ((-webkit-text-stroke:1px red) or (text-stroke:1px red)){
  .lh-neon .tube{color:var(--n-cream);-webkit-text-fill-color:var(--n-cream);}
}
/* the buzzing small caps that sit under a sign */
.lh-neon .buzz{animation:n-buzz 4.4s ease-in-out infinite;}
@keyframes n-buzz{0%,100%{opacity:.9}50%{opacity:.55}}
/* a tube arch — the shape behind a can */
.lh-neon .arch{position:absolute;left:50%;transform:translateX(-50%);
  border-radius:999px 999px 0 0;border:3px solid rgba(255,77,157,.55);border-bottom:0;
  box-shadow:0 0 18px rgba(255,77,157,.55),inset 0 0 18px rgba(255,77,157,.4);
  pointer-events:none;}

/* ---------- buttons -------------------------------------------- */
.lh-neon .btn-a{
  background:var(--n-yellow);color:#2B0A1A;
  box-shadow:0 0 24px rgba(255,211,77,.55),0 10px 26px rgba(0,0,0,.45);}
.lh-neon .btn-a:hover{box-shadow:0 0 40px rgba(255,211,77,.8),0 16px 32px rgba(0,0,0,.5);}
.lh-neon .btn-a .cartglyph{background:rgba(43,10,26,.16);}
.lh-neon .btn-o{
  color:var(--n-cream);border:2px solid var(--n-pink);
  box-shadow:0 0 14px rgba(255,77,157,.4),inset 0 0 14px rgba(255,77,157,.18);}
.lh-neon .btn-o:hover{background:var(--n-pink);border-color:var(--n-pink);color:#12030A;
  box-shadow:0 0 30px rgba(255,77,157,.7);}


/* ---------- shared line spacing --------------------------------- */
/* app.css sets line-height:.9 on every heading. That was built for
   solid type; lit tubing needs the glow off one line to clear the
   next, so every heading gets air here rather than per page. */
.lh-neon h1,.lh-neon h2{line-height:1.12;}
.lh-neon h3,.lh-neon h4{line-height:1.14;}
.lh-neon .eyebrow{display:inline-block;margin-bottom:16px;}
.lh-neon .sub{line-height:1.72;margin-top:24px;}

/* ---------- masthead, ticker, footer ---------------------------- */
.lh-neon .ticker{background:linear-gradient(100deg,var(--n-purple),var(--n-pink) 48%,var(--n-orange));
  box-shadow:0 0 26px rgba(255,77,157,.35);}
.lh-neon .nl a{color:var(--n-mist);}
.lh-neon .nl a:hover{color:var(--n-teal);opacity:1;text-shadow:0 0 12px rgba(62,214,214,.8);}
.lh-neon .navtog{background:rgba(255,77,157,.14);}
.lh-neon .navtog i{background:var(--n-cream);}
.lh-neon footer{background:#070310;color:var(--n-mist2);
  border-top:1px solid rgba(255,77,157,.16);}
.lh-neon footer :is(h2,h4){font-family:var(--n-head);color:var(--n-teal);letter-spacing:.2em;}
.lh-neon footer a{color:var(--n-mist2);}
.lh-neon footer a:hover{color:var(--n-pink);text-shadow:0 0 12px rgba(255,77,157,.7);}
.lh-neon .fmark{border-bottom-color:rgba(255,77,157,.16);}
.lh-neon .fmark .fcontact a{color:var(--n-cream);}
.lh-neon .legal{border-top-color:rgba(255,255,255,.09);color:var(--n-mist2);}
/* 11.5px legal text needs 4.5:1. The old #6C6580 on #070310 was 3.7:1. */
.lh-neon .legal .copy{color:var(--n-mist2);}
.lh-neon .legal strong{color:var(--n-mist);}
.lh-neon .pillbadge{color:var(--n-pink);border-color:var(--n-pink);
  box-shadow:0 0 14px rgba(255,77,157,.35),inset 0 0 14px rgba(255,77,157,.14);}

/* ---------- interior page header -------------------------------- */
/* 80px of header padding plus the body's own top padding left a dead
   band under every page title. Half of each, and the header carries a
   palm big enough to hold the empty side instead. */
.lh-neon .pagehead{background:radial-gradient(92% 74% at 50% 18%,#1E0A34 0%,var(--n-bg) 72%);
  padding-bottom:40px;}
.lh-neon .pagebody{padding-block:34px 76px;}
.lh-neon .pagebody.is-bleed{padding-block:0;}
.lh-neon .pagehead-in{padding-top:30px;padding-bottom:8px;}
.lh-neon .pagehead .aur{opacity:.4;filter:blur(86px);}
.lh-neon .pagehead .dots{opacity:1;background-image:var(--n-wall);background-size:auto;
  -webkit-mask:none;mask:none;}
/* One big frond behind the whole header, centred and cropped by the
   header's own overflow. inset:0 + margin:auto does the centring so
   `transform` stays free for the sway and `translate` for the drift. */
.lh-neon .pagehead .palm.ph{color:#FF9ECB;opacity:.15;aspect-ratio:auto;
  inset:0;margin:auto;
  width:min(1560px,138vw);height:min(1060px,190%);
  -webkit-mask-size:contain;mask-size:contain;
  scale:-1 1;transform-origin:50% 50%;
  animation:sway 13s ease-in-out infinite,n-drift 19s ease-in-out infinite;}
@keyframes n-drift{0%,100%{translate:0 0}50%{translate:-30px 20px}}
@media (prefers-reduced-motion:reduce){.lh-neon .pagehead .palm.ph{animation:none;}}
@media(max-width:820px){
  .lh-neon .pagehead .palm.ph{width:min(1100px,190vw);height:min(760px,150%);opacity:.11;}
}

.lh-neon .pagehead .eyebrow{font-family:var(--n-head);color:var(--n-teal);letter-spacing:.26em;}
.lh-neon .pagehead h1{
  font-size:clamp(38px,5.6vw,76px);text-shadow:none;
  color:transparent;-webkit-text-fill-color:transparent;
  -webkit-text-stroke:3px var(--n-pink);
  filter:drop-shadow(0 0 6px var(--n-pink)) drop-shadow(0 0 22px rgba(255,77,157,.85))
         drop-shadow(0 0 52px rgba(255,77,157,.5));
  animation:n-flick 6s ease-in-out infinite;}
.lh-neon .pagehead .lede{color:var(--n-mist);}
.lh-neon .crumb{color:var(--n-mist2);}
.lh-neon .crumb a{color:var(--n-mist2);}
.lh-neon .crumb a:hover{color:var(--n-teal);}

/* ---------- interior page body ---------------------------------- */
/* The cream page body was the single biggest thing breaking the
   look: every interior page went white below the fold. */
.lh-neon .pagebody{background:var(--n-bg);color:var(--n-mist);}
.lh-neon .pagebody.is-bleed{background:var(--n-bg);}
.lh-neon .pagebody::before{content:"";position:absolute;inset:0;z-index:0;
  background-image:var(--n-wall);pointer-events:none;}
.lh-neon .prose{color:var(--n-mist);}
.lh-neon .prose h2{color:var(--n-cream);text-shadow:0 0 26px rgba(255,77,157,.35);
  font-size:clamp(27px,3.4vw,40px);}
.lh-neon .prose h3{font-family:var(--n-head);color:var(--n-teal);letter-spacing:.03em;
  text-shadow:0 0 18px rgba(62,214,214,.4);}
.lh-neon .prose strong{color:var(--n-cream);}
.lh-neon .prose a{color:var(--n-teal2);text-decoration-color:rgba(62,214,214,.5);}
.lh-neon .prose a:hover{color:var(--n-pink);text-decoration-color:var(--n-pink);}
.lh-neon .prose li::marker{color:var(--n-pink);}
.lh-neon .prose hr{border-top-color:rgba(255,77,157,.22);}
.lh-neon .prose blockquote{border-left-color:var(--n-pink);color:var(--n-cream);
  box-shadow:-3px 0 14px -3px rgba(255,77,157,.7);}
.lh-neon .faq-intro{color:var(--n-mist);}
.lh-neon .faq-intro a{color:var(--n-teal2);}
.lh-neon .faq-intro a:hover{color:var(--n-pink);}
.lh-neon .fda-line{color:var(--n-mist2);}
.lh-neon .na{color:var(--n-mist2);}
.lh-neon .recall-state{color:var(--n-cream);text-shadow:0 0 30px rgba(255,77,157,.4);}

/* ---------- cards, steps, tables, callouts ---------------------- */
.lh-neon .card{background:linear-gradient(165deg,rgba(26,10,46,.9),rgba(12,6,32,.9));
  border:1px solid rgba(255,77,157,.26);box-shadow:inset 0 0 26px rgba(255,77,157,.08);}
.lh-neon .card :is(h2,h3){color:var(--n-cream);font-family:var(--n-head);letter-spacing:.02em;}
.lh-neon .card p{color:var(--n-mist2);}
.lh-neon .card .num{font-family:var(--n-head);color:var(--n-yellow);
  -webkit-text-fill-color:var(--n-yellow);background:none;
  text-shadow:0 0 22px rgba(255,211,77,.6);}
.lh-neon .card.accent{background:linear-gradient(150deg,#2B1160,#0C0520);
  border-color:rgba(62,214,214,.3);}
.lh-neon .card.accent h3{color:var(--n-teal2);}
.lh-neon .steps li{background:linear-gradient(165deg,rgba(26,10,46,.9),rgba(12,6,32,.9));
  border:1px solid rgba(62,214,214,.24);color:var(--n-mist2);
  box-shadow:inset 0 0 26px rgba(62,214,214,.07);}
.lh-neon .steps li strong{color:var(--n-cream);font-family:var(--n-head);}
.lh-neon .steps li::before{background:var(--n-teal);color:#07282C;
  box-shadow:0 0 18px rgba(62,214,214,.6);}
.lh-neon .faq{border-top-color:rgba(255,77,157,.22);}
.lh-neon .faq details{border-bottom-color:rgba(255,77,157,.18);}
.lh-neon .faq summary{color:var(--n-cream);font-family:var(--n-head);letter-spacing:.02em;}
.lh-neon .faq summary:hover{color:var(--n-teal);}
.lh-neon .faq summary::after{border-color:var(--n-pink);}
.lh-neon .faq .a{color:var(--n-mist2);}
.lh-neon .tablewrap{background:rgba(12,6,32,.86);border-color:rgba(62,214,214,.24);
  box-shadow:inset 0 0 30px rgba(62,214,214,.06);}
.lh-neon .tablewrap table th{color:var(--n-teal);font-family:var(--n-head);letter-spacing:.14em;
  border-bottom-color:rgba(62,214,214,.24);}
.lh-neon .tablewrap table td{color:var(--n-mist);border-bottom-color:rgba(255,255,255,.08);}
.lh-neon .pilllink{background:var(--n-teal);color:#07282C;box-shadow:0 0 18px rgba(62,214,214,.5);}
.lh-neon .pilllink:hover{box-shadow:0 0 30px rgba(62,214,214,.8);}
.lh-neon .callout{background:linear-gradient(140deg,#2B1160,#1A0A2E 56%,#0A0410);
  border:1px solid rgba(255,77,157,.3);box-shadow:inset 0 0 40px rgba(255,77,157,.1);}
.lh-neon .callout :is(h2,h3){font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 24px rgba(255,77,157,.5);}
.lh-neon .callout p{color:var(--n-mist);}
.lh-neon .bigcontact a{background:linear-gradient(165deg,rgba(26,10,46,.9),rgba(12,6,32,.9));
  border:1px solid rgba(62,214,214,.26);}
.lh-neon .bigcontact a:hover{box-shadow:0 0 26px rgba(62,214,214,.35);border-color:var(--n-teal);}
.lh-neon .bigcontact .k{font-family:var(--n-head);color:var(--n-teal);}
.lh-neon .bigcontact .v{font-family:var(--n-head);color:var(--n-cream);}

/* ---------- bands ----------------------------------------------- */
/* Every pale band becomes a lit panel. They alternate so a long page
   still has rhythm instead of one flat wall of dark. */
.lh-neon .band-cream{background:var(--n-bg);}
.lh-neon .band-white{background:var(--n-bg2);}
.lh-neon .band-pink{background:linear-gradient(175deg,#2B1160 0%,#12062A 100%);}
.lh-neon .band-kava{background:linear-gradient(172deg,#2A0B45 0%,#120628 100%);}
.lh-neon .band-mag{background:linear-gradient(172deg,#0D2433 0%,#0A1622 100%);}
.lh-neon .band-bolt{background:#05040A;}
.lh-neon .band-find{background:linear-gradient(100deg,#1A0A2E,#0A0410);}
.lh-neon .band-strip{background:linear-gradient(100deg,var(--n-purple),var(--n-pink));
  box-shadow:0 0 30px rgba(255,77,157,.3);}
/* 72px broke "alcohol-free" across a hyphen once the can column grew;
   this keeps the split-band headings on their own words. */
.lh-neon .band-h{color:var(--n-cream);text-shadow:0 0 28px rgba(255,77,157,.4);
  font-size:clamp(32px,4.6vw,60px);}
.lh-neon .band-eyebrow{font-family:var(--n-head);color:var(--n-teal);letter-spacing:.26em;}
.lh-neon .band p,.lh-neon .band p.band-lede{color:var(--n-mist);}
.lh-neon .band strong{color:var(--n-cream);}
.lh-neon .band p.band-kick{font-family:var(--n-head);color:var(--n-pink);
  text-shadow:0 0 20px rgba(255,77,157,.55);}
.lh-neon .band p.band-note,.lh-neon .band-find p.band-note{color:var(--n-mist2);}
.lh-neon .band-bolt .band-eyebrow{color:var(--n-pink);}
.lh-neon .band-bolt p.band-kick{color:var(--n-yellow);text-shadow:0 0 20px rgba(255,211,77,.55);}
.lh-neon .band-deco{color:var(--n-pink);opacity:.16;}
.lh-neon .band-mag .band-deco{color:var(--n-teal);}
/* the cans were 206px in a 300px column, which read as a thumbnail.
   Bigger, lit from behind, bobbing, with a ticked dial turning round
   them — the same furniture as the kava block on the home page. */
.lh-neon .splitgrid,.lh-neon .splitgrid.rev{grid-template-columns:360px minmax(0,1fr);}
.lh-neon .splitgrid.rev{grid-template-columns:minmax(0,1fr) 360px;}
.lh-neon .splitart{min-height:390px;}
.lh-neon .splitart::before{width:96%;background:radial-gradient(circle at 50% 46%,
  color-mix(in srgb,var(--n-pink) 46%,transparent),
  color-mix(in srgb,var(--n-pink) 16%,transparent) 48%,transparent 70%);
  filter:blur(2px);}
.lh-neon .splitart::after{content:"";position:absolute;z-index:0;pointer-events:none;
  width:min(340px,92%);aspect-ratio:1;border-radius:50%;
  border:1.5px solid color-mix(in srgb,var(--n-pink) 45%,transparent);
  background:repeating-conic-gradient(from 0deg,
    color-mix(in srgb,var(--n-pink) 70%,transparent) 0deg 0.5deg,transparent 0.5deg 4deg);
  -webkit-mask:radial-gradient(circle,transparent 0 46%,#000 46% 50%,transparent 50%);
          mask:radial-gradient(circle,transparent 0 46%,#000 46% 50%,transparent 50%);
  animation:spin 44s linear infinite;}
.lh-neon .band-mag .splitart::before{background:radial-gradient(circle at 50% 46%,
  color-mix(in srgb,var(--n-teal) 48%,transparent),
  color-mix(in srgb,var(--n-teal) 16%,transparent) 48%,transparent 70%);}
.lh-neon .band-mag .splitart::after{border-color:color-mix(in srgb,var(--n-teal) 45%,transparent);
  background:repeating-conic-gradient(from 0deg,
    color-mix(in srgb,var(--n-teal) 70%,transparent) 0deg 0.5deg,transparent 0.5deg 4deg);
  animation-direction:reverse;}
.lh-neon .splitart img{max-width:300px;
  filter:drop-shadow(0 0 44px rgba(255,77,157,.5)) drop-shadow(0 22px 30px rgba(0,0,0,.72));
  animation:bob 6.5s ease-in-out infinite;
  transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .4s ease;}
.lh-neon .band-mag .splitart img{filter:drop-shadow(0 0 44px rgba(62,214,214,.5))
  drop-shadow(0 22px 30px rgba(0,0,0,.72));animation-delay:-3.2s;}
.lh-neon .splitart:hover img{transform:scale(1.06) rotate(-2deg);
  filter:drop-shadow(0 0 64px rgba(255,77,157,.8)) drop-shadow(0 22px 30px rgba(0,0,0,.72));}
.lh-neon .band-mag .splitart:hover img{
  filter:drop-shadow(0 0 64px rgba(62,214,214,.85)) drop-shadow(0 22px 30px rgba(0,0,0,.72));}
@media (prefers-reduced-motion:reduce){
  .lh-neon .splitart img,.lh-neon .splitart::after{animation:none;}
}
@media(max-width:820px){
  .lh-neon .splitgrid,.lh-neon .splitgrid.rev{grid-template-columns:1fr;}
  .lh-neon .splitart{min-height:320px;}
  .lh-neon .splitart img{max-width:240px;}
  .lh-neon .splitart::after{width:min(280px,86%);}
}
.lh-neon .bigpill{box-shadow:0 0 24px rgba(255,77,157,.35);}
.lh-neon .testpills li{background:rgba(12,6,32,.8);border:1px solid rgba(62,214,214,.3);
  color:var(--n-mist);box-shadow:inset 0 0 20px rgba(62,214,214,.08);}
.lh-neon .testpills li::before{background:var(--n-teal);box-shadow:0 0 10px var(--n-teal);}
.lh-neon .findcard{background:rgba(26,10,46,.72);border-color:rgba(255,77,157,.26);
  text-align:center;align-items:center;justify-content:center;gap:12px;padding:30px 22px;}
.lh-neon .findcard span{max-width:24ch;}
.lh-neon .findcard:hover{background:rgba(43,17,96,.8);border-color:var(--n-pink);
  box-shadow:0 0 26px rgba(255,77,157,.3);}
.lh-neon .findcard b{font-family:var(--n-head);color:var(--n-cream);}
.lh-neon .findcard span{color:var(--n-mist2);}

/* ---------- forms ----------------------------------------------- */
.lh-neon .lh-form{background:linear-gradient(165deg,rgba(26,10,46,.92),rgba(10,4,16,.92));
  border:1px solid rgba(255,77,157,.28);box-shadow:inset 0 0 44px rgba(255,77,157,.07);}
.lh-neon .lh-form h2{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 24px rgba(255,77,157,.45);}
.lh-neon .lh-form-intro{color:var(--n-mist);}
.lh-neon .lh-field label{font-family:var(--n-head);color:var(--n-teal);letter-spacing:.16em;}
.lh-neon .lh-field label .opt{color:var(--n-mist2);}
.lh-neon .lh-field input,.lh-neon .lh-field textarea{
  background:rgba(10,4,16,.6);border:1.5px solid rgba(62,214,214,.3);color:var(--n-cream);}
.lh-neon .lh-field input::placeholder,.lh-neon .lh-field textarea::placeholder{color:#7E739B;}
.lh-neon .lh-field input:hover,.lh-neon .lh-field textarea:hover{border-color:rgba(62,214,214,.55);}
.lh-neon .lh-field input:focus,.lh-neon .lh-field textarea:focus{
  background:rgba(10,4,16,.85);border-color:var(--n-teal);
  box-shadow:0 0 0 4px rgba(62,214,214,.16),0 0 22px rgba(62,214,214,.35);}
.lh-neon .lh-field .hint{color:var(--n-mist2);}
.lh-neon .lh-field .err{color:#FF8AB8;}
.lh-neon .lh-field.bad input,.lh-neon .lh-field.bad textarea{
  border-color:var(--n-pink);background:rgba(60,8,32,.5);}
.lh-neon .lh-form-msg{color:var(--n-mist);}
.lh-neon .lh-form-msg.bad{color:#FF8AB8;}
.lh-neon .lh-form-small,.lh-neon .lh-form-req{color:var(--n-mist2);}
.lh-neon .lh-form-done{background:linear-gradient(150deg,#2B1160,#0A0410);
  border:1px solid rgba(62,214,214,.3);}
.lh-neon .lh-form-done h3{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 26px rgba(62,214,214,.5);}
.lh-neon .lh-form-done p{color:var(--n-mist);}
/* the club band's input lives on interior pages too */
.lh-neon .zip input{border-color:rgba(62,214,214,.45);background:rgba(10,4,16,.55);color:#fff;}
.lh-neon .zip input::placeholder{color:#7E739B;}
.lh-neon .zip input:focus{border-color:var(--n-teal);box-shadow:0 0 18px rgba(62,214,214,.4);}
.lh-neon .zip button{background:var(--n-yellow);color:#2B0A1A;
  box-shadow:0 0 24px rgba(255,211,77,.5);}

/* ---------- product page ---------------------------------------- */
/* The per-flavour hero used to be a pale wash built from --p1/--p2.
   Those custom properties are set inline per flavour, so the panel is
   rebuilt here from --acc instead: same flavour colour, now as light
   thrown on a dark room. lh_flavor_vars() supplies the dark ink set
   for every flavour to match. */
.lh-neon .pdp-bg{background:
  radial-gradient(76% 62% at 26% 22%,color-mix(in srgb,var(--acc) 30%,transparent),transparent 68%),
  radial-gradient(64% 58% at 84% 74%,color-mix(in srgb,var(--acc) 20%,transparent),transparent 66%),
  linear-gradient(165deg,#180B2E 0%,#0A0410 62%);}
.lh-neon .pdp-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background-image:var(--n-wall);}
.lh-neon .pdp-hero .wrap{z-index:2;}
.lh-neon .pdp-hero nav{padding-block:18px;}
.lh-neon .pdp-hero .nl a{color:var(--n-mist);opacity:.85;}
.lh-neon .pdp-hero .nl a:hover{color:var(--n-teal);opacity:1;}
.lh-neon .pdp-hero .navtog{background:rgba(255,77,157,.14);}
.lh-neon .pdp-hero .navtog i{background:var(--n-cream);}
.lh-neon .pdp-info h1{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 30px color-mix(in srgb,var(--acc) 70%,transparent);}
.lh-neon .pdp-info .eyebrow{font-family:var(--n-head);letter-spacing:.26em;color:var(--acc);
  text-shadow:0 0 18px color-mix(in srgb,var(--acc) 60%,transparent);}
.lh-neon .pdp-tag{color:var(--acc);}
.lh-neon .pl{font-family:var(--n-head);color:var(--n-teal);letter-spacing:.22em;}
.lh-neon .fl,.lh-neon .pk{background:rgba(10,4,16,.55);border:1.5px solid rgba(255,255,255,.16);}
.lh-neon .fl:hover,.lh-neon .pk:hover{background:rgba(43,17,96,.6);border-color:rgba(255,255,255,.3);}
.lh-neon .fl.on{border-color:var(--acc);background:rgba(43,17,96,.75);
  box-shadow:0 0 24px color-mix(in srgb,var(--acc) 45%,transparent);}
.lh-neon .pk.on{border-color:var(--n-yellow);background:rgba(43,17,96,.75);
  box-shadow:0 0 22px rgba(255,211,77,.35);}
.lh-neon .fl span,.lh-neon .pk b{font-family:var(--n-head);color:var(--n-cream);}
.lh-neon .pdp-buy .btn-o{border-color:var(--n-pink);color:var(--n-cream);}
.lh-neon .pdp-buy .btn-o:hover{background:var(--n-pink);color:#12030A;border-color:var(--n-pink);}
.lh-neon .pdp-disc{background:radial-gradient(circle at 50% 46%,
  color-mix(in srgb,var(--acc) 55%,transparent) 0%,
  color-mix(in srgb,var(--acc) 22%,transparent) 46%,transparent 70%);}
.lh-neon .pdp-can{filter:drop-shadow(0 0 40px color-mix(in srgb,var(--acc) 50%,transparent))
  drop-shadow(0 26px 34px rgba(0,0,0,.72));}
/* The spec list was flavour-coloured on a flavour-coloured panel, small,
   and pressed against the can. Cream on a lit chip instead, bigger, held
   off the can, and drifting so it reads as floating beside it. */
.lh-neon .pdp-specs{gap:14px;max-width:34%;right:-2%;}
.lh-neon .pdp-specs{justify-items:end;}
.lh-neon .pdp-specs li{font-size:15px;line-height:1.4;color:var(--n-cream);
  font-weight:600;letter-spacing:.01em;text-align:center;max-width:24ch;
  padding:10px 18px;border-radius:999px;
  background:rgba(10,4,16,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  border:1px solid color-mix(in srgb,var(--acc) 55%,transparent);
  box-shadow:0 0 20px color-mix(in srgb,var(--acc) 34%,transparent),0 10px 22px rgba(0,0,0,.5);
  text-shadow:0 0 16px color-mix(in srgb,var(--acc) 70%,transparent);
  animation:n-float 7s ease-in-out infinite;}
.lh-neon .pdp-specs li:nth-child(2){animation-delay:-1.7s;}
.lh-neon .pdp-specs li:nth-child(3){animation-delay:-3.4s;}
.lh-neon .pdp-specs li:nth-child(4){animation-delay:-5.1s;}
@keyframes n-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(min-width:1101px){
  /* a wider lane so the chips never sit on the can */
  .lh-neon .pdp-stage{padding-right:clamp(0px,19%,250px);}
}
@media(max-width:1100px){
  .lh-neon .pdp-specs{max-width:none;right:auto;gap:10px;}
  .lh-neon .pdp-specs li{font-size:14px;padding:8px 14px;animation:none;}
}
@media(max-width:880px){
  /* stacked under the can, the desktop right-alignment read as a ragged
     stagger because every chip is a different width */
  .lh-neon .pdp-specs{justify-items:center;}
  /* the club band carried its full desktop padding on every page */
  .lh-neon .club-in{padding-block:46px;}
  .lh-neon .club-in .lh-club-msg:empty{margin:0;}
}
@media (prefers-reduced-motion:reduce){.lh-neon .pdp-specs li{animation:none;}}
.lh-neon .pdp-findline a{color:var(--n-mist2);}
.lh-neon .pdp-findline a:hover{color:var(--n-teal);}

.lh-neon .pdp-say{background:var(--n-bg);}
.lh-neon .pdp-say h2{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 28px color-mix(in srgb,var(--acc) 65%,transparent);}
.lh-neon .pdp-say p{color:var(--n-mist);}
.lh-neon .pdp-detail{background:var(--n-bg);}
.lh-neon .pdp-card{background:linear-gradient(165deg,rgba(26,10,46,.9),rgba(12,6,32,.9));
  border:1px solid color-mix(in srgb,var(--acc) 34%,transparent);
  box-shadow:inset 0 0 40px color-mix(in srgb,var(--acc) 8%,transparent);}
.lh-neon .pdp-card .k{font-family:var(--n-head);color:var(--acc);}
.lh-neon .pdp-card h3{font-family:var(--n-head);color:var(--n-cream);}
.lh-neon .pdp-card>div>p{color:var(--n-mist);}
.lh-neon .pdp-card .good li{color:var(--n-mist2);}
.lh-neon .pdp-card .good li::before{box-shadow:0 0 9px var(--acc);}
.lh-neon .pdp-card .terppills span{background:rgba(255,255,255,.07);
  border:1px solid color-mix(in srgb,var(--acc) 40%,transparent);color:var(--n-mist);}

.lh-neon .pdp-good{background:var(--n-bg2);}
.lh-neon .pdp-good h2{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 26px rgba(255,77,157,.4);}
.lh-neon .pdp-good .sub{color:var(--n-mist);}
.lh-neon .gooditem .gb{background:rgba(12,6,32,.8);border:2px solid var(--n-teal);
  box-shadow:0 0 20px rgba(62,214,214,.35),inset 0 0 18px rgba(62,214,214,.14);}
.lh-neon .gooditem .gb svg{stroke:var(--n-teal);}
.lh-neon .gooditem :is(h3,h4){font-family:var(--n-head);color:var(--n-teal2);}
.lh-neon .gooditem p{color:var(--n-mist2);}

.lh-neon .pdp-stats{background:linear-gradient(180deg,var(--n-bg2),var(--n-bg));}
.lh-neon .pdp-stats h2{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 26px rgba(255,77,157,.4);}
.lh-neon .pdp-stats .cta .btn-o{border-color:var(--n-pink);color:var(--n-cream);}
.lh-neon .pdp-stats .cta .btn-o:hover{background:var(--n-pink);color:#12030A;border-color:var(--n-pink);}
.lh-neon .pdp-stats .small{color:var(--n-mist2);}
.lh-neon .pdp-stats .small strong{color:var(--n-mist);}
.lh-neon .bub{background:radial-gradient(circle at 36% 30%,rgba(43,17,96,.95),rgba(10,4,16,.95));
  border:2px solid rgba(255,211,77,.45);box-shadow:0 0 24px rgba(255,211,77,.25);}
.lh-neon .bub b{font-family:var(--n-head);color:var(--n-yellow);
  text-shadow:0 0 18px rgba(255,211,77,.6);}
.lh-neon .bub i{color:var(--n-mist2);}

/* the nutrition panel keeps its label look, inverted */
.lh-neon .pdp-facts{background:var(--n-bg);}
.lh-neon .pdp-facts h2{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 26px rgba(255,77,157,.4);}
.lh-neon .pdp-facts .sub{color:var(--n-mist);}
.lh-neon .factpanel{background:rgba(10,4,16,.9);border-color:var(--n-cream);}
.lh-neon .factpanel h3{color:var(--n-cream);border-bottom-color:var(--n-cream);}
.lh-neon .factpanel .serv{color:var(--n-mist2);}
.lh-neon .factpanel th{color:var(--n-cream);border-top-color:rgba(255,243,214,.3);}
.lh-neon .factpanel td{color:var(--n-mist);border-top-color:rgba(255,243,214,.3);}
.lh-neon .factpanel td.dv{color:var(--n-cream);}
.lh-neon .factpanel tr.cal th,.lh-neon .factpanel tr.cal td{color:var(--n-cream);
  border-top-color:var(--n-cream);}
.lh-neon .factpanel .blend{color:var(--n-mist2);}
.lh-neon .factpanel .dvnote{color:#7E739B;}
/* app.css only spaced h4+h4, so "Every can" — which follows the
   ingredients paragraph — sat flush against it on every product page. */
.lh-neon .factside h4{font-family:var(--n-head);color:var(--n-teal);margin-top:34px;}
.lh-neon .factside > h4:first-child{margin-top:0;}
.lh-neon .factside .claims{margin-top:14px;}
.lh-neon .factside > p{margin-top:10px;}
.lh-neon .factside p{color:var(--n-mist);}
.lh-neon .factside .claims li{background:rgba(12,6,32,.8);border:1px solid rgba(62,214,214,.3);
  color:var(--n-mist);}
.lh-neon .factside .advisory{color:var(--n-mist2);}
.lh-neon .factside .advisory strong{color:var(--n-mist);}
.lh-neon .pdp-facts .cta .btn-o{border-color:var(--n-pink);color:var(--n-cream);}
.lh-neon .pdp-facts .cta .btn-o:hover{background:var(--n-pink);color:#12030A;border-color:var(--n-pink);}
.lh-neon .pdp-facts .small{color:var(--n-mist2);}
.lh-neon .pdp-facts .small strong{color:var(--n-mist);}
.lh-neon .pdp-dose{color:var(--acc);}

/* ---------- shop ------------------------------------------------ */
.lh-neon .shopsec__eyebrow{font-family:var(--n-head);color:var(--n-teal);letter-spacing:.26em;}
.lh-neon .shopsec__title{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 26px rgba(255,77,157,.4);}
.lh-neon .shopsec__note{color:var(--n-mist);}
/* Every product box is a print. Only the strain and the flavour name
   are written on the lip; the hook, the specs and the buy row sit
   under the print, on the page. The print behind takes that flavour's
   own colour. */
.lh-neon .shopgrid{row-gap:54px;column-gap:34px;padding-top:14px;align-items:start;}
.lh-neon .shopcard{background:none;border:0;border-radius:0;overflow:visible;
  box-shadow:none;padding:0;display:flex;flex-direction:column;}

/* the print */
.lh-neon .shopcard__print{position:relative;border-radius:4px;padding:12px 12px 0;
  transform:rotate(-1.6deg);transform-origin:50% 94%;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.55));
  transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .4s ease;}
/* The tilt makes the print its own stacking context, so the back print
   cannot simply sit behind the card's background — it would paint over
   it. Three layers instead: back print (-1), cream (0), content (1). */
.lh-neon .shopcard__print::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:4px;
  background:color-mix(in srgb,var(--acc) 88%,#2B0A1A);
  transform:rotate(5deg) translate(11px,8px);
  transition:transform .45s cubic-bezier(.2,.8,.2,1);}
.lh-neon .shopcard__print::after{content:"";position:absolute;inset:0;z-index:0;border-radius:4px;
  background:#FFF6E4;box-shadow:0 0 28px color-mix(in srgb,var(--acc) 26%,transparent);}
.lh-neon .shopcard__print > *{position:relative;z-index:1;}
/* the prints do not all land at the same angle */
.lh-neon .shopcard:nth-child(2n) .shopcard__print{transform:rotate(2.2deg);}
.lh-neon .shopcard:nth-child(2n) .shopcard__print::before{transform:rotate(-5deg) translate(-11px,8px);}
.lh-neon .shopcard:nth-child(3n) .shopcard__print{transform:rotate(-1deg);}
.lh-neon .shopcard:hover .shopcard__print{transform:rotate(0deg) translateY(-10px);
  filter:drop-shadow(0 26px 38px rgba(0,0,0,.6));}
.lh-neon .shopcard:hover .shopcard__print::after{
  box-shadow:0 0 42px color-mix(in srgb,var(--acc) 48%,transparent);}
.lh-neon .shopcard:hover .shopcard__print::before{transform:rotate(9deg) translate(20px,10px);}
.lh-neon .shopcard:nth-child(2n):hover .shopcard__print::before{transform:rotate(-9deg) translate(-20px,10px);}

/* the photo window */
.lh-neon .shopcard__art,.lh-neon .shopcard__art.is-dark{border-radius:2px;
  background:radial-gradient(72% 64% at 50% 44%,
    color-mix(in srgb,var(--p1,#7B3DF5) 62%,#0A0410),#0A0410 78%);}
.lh-neon .shopcard__art img{filter:drop-shadow(0 0 26px color-mix(in srgb,var(--acc) 45%,transparent))
  drop-shadow(0 16px 24px rgba(0,0,0,.6));
  transition:transform .45s cubic-bezier(.2,.8,.2,1);}
.lh-neon .shopcard:hover .shopcard__art img{transform:translateY(-8px) scale(1.04);}

/* written on the lip */
.lh-neon .shopcard__cap{text-align:center;padding:16px 14px 20px;}
.lh-neon .shopcard__kicker{font-family:var(--n-head);color:#8A4A16;letter-spacing:.2em;}
.lh-neon .shopcard__name{font-family:var(--n-head);margin-top:6px;}
/* :not(.btn) so this clears .lh-neon .lh-woo a:not(.btn), which is the
   same weight and declared later in this file. */
.lh-neon .shopgrid .shopcard__name a:not(.btn){color:#2B0A1A;}
.lh-neon .shopgrid .shopcard__name a:not(.btn):hover{color:#7B1440;}

/* under the print, back on the dark page */
.lh-neon .shopcard__body{padding:24px 10px 0;flex:1;}
.lh-neon .shopcard__hook{margin-top:0;color:var(--n-mist);font-size:15px;}
.lh-neon .shopcard__specs li{background:rgba(255,255,255,.06);
  border:1px solid color-mix(in srgb,var(--acc) 40%,transparent);color:var(--n-mist);}
.lh-neon .shopcard__price{color:var(--n-mist2);}
.lh-neon .shopcard__price strong{color:var(--n-cream);}
.lh-neon .shopcard__to{color:var(--n-mist2);}
.lh-neon .shopcard__cta{background:var(--acc);color:#2B0A1A;
  box-shadow:0 0 20px color-mix(in srgb,var(--acc) 45%,transparent);}
.lh-neon .shopcard__cta:hover{box-shadow:0 0 32px color-mix(in srgb,var(--acc) 70%,transparent);}
@media (prefers-reduced-motion:reduce){
  .lh-neon .shopcard__print,.lh-neon .shopcard__print::before,
  .lh-neon .shopcard__art img{transition:none;}
}
@media(max-width:640px){
  /* the tilt and the back print both stick out; on one column that was
     enough to push the page wider than the phone */
  .lh-neon .shopgrid{grid-template-columns:minmax(0,300px);column-gap:0;row-gap:44px;}
  .lh-neon .shopcard .shopcard__print,
  .lh-neon .shopcard:nth-child(2n) .shopcard__print,
  .lh-neon .shopcard:nth-child(3n) .shopcard__print{transform:rotate(-1deg);}
  .lh-neon .shopcard__print::before{transform:rotate(3.5deg) translate(7px,6px);}
  .lh-neon .shopcard:nth-child(2n) .shopcard__print::before{transform:rotate(-3.5deg) translate(-7px,6px);}
  .lh-neon .shopcard:hover .shopcard__print::before,
  .lh-neon .shopcard:nth-child(2n):hover .shopcard__print::before{
    transform:rotate(3.5deg) translate(7px,6px);}
}
.lh-neon .shopnote{color:var(--n-mist2);}
.lh-neon .shopnote strong{color:var(--n-mist);}

/* ---------- WooCommerce ----------------------------------------- */
.lh-neon .lh-woo{color:var(--n-mist);}
.lh-neon .lh-woo a:not(.btn){color:var(--n-teal2);}
.lh-neon .lh-woo a:not(.btn):hover{color:var(--n-pink);}
.lh-neon .lh-woo h2,.lh-neon .lh-woo h3{color:var(--n-cream);font-family:var(--n-head);}
.lh-neon .lh-woo .button,.lh-neon .lh-woo button[type="submit"],
.lh-neon .lh-woo .checkout-button{background:var(--n-yellow);color:#2B0A1A;
  box-shadow:0 0 24px rgba(255,211,77,.5);}
.lh-neon .lh-woo .button:hover,.lh-neon .lh-woo button[type="submit"]:hover{
  box-shadow:0 0 38px rgba(255,211,77,.75);}
.lh-neon .lh-woo input[type="text"],.lh-neon .lh-woo input[type="email"],
.lh-neon .lh-woo input[type="tel"],.lh-neon .lh-woo input[type="password"],
.lh-neon .lh-woo input[type="number"],.lh-neon .lh-woo select,.lh-neon .lh-woo textarea{
  background:rgba(10,4,16,.6);border:1.5px solid rgba(62,214,214,.3);color:var(--n-cream);}
.lh-neon .lh-woo input:focus,.lh-neon .lh-woo select:focus,.lh-neon .lh-woo textarea:focus{
  background:rgba(10,4,16,.85);border-color:var(--n-teal);
  box-shadow:0 0 0 4px rgba(62,214,214,.16);}
.lh-neon .lh-woo table th,.lh-neon .lh-woo table td{
  border-bottom-color:rgba(255,255,255,.1);color:var(--n-mist);}
.lh-neon .lh-woo table th{color:var(--n-teal);font-family:var(--n-head);letter-spacing:.12em;}
.lh-neon .lh-woo .woocommerce-message,.lh-neon .lh-woo .woocommerce-info,
.lh-neon .lh-woo .woocommerce-error{background:rgba(26,10,46,.9);color:var(--n-mist);
  border-left-color:var(--n-teal);}
.lh-neon .lh-woo .woocommerce-error{border-left-color:var(--n-pink);}
.lh-neon .lh-woo ul.products li{background:linear-gradient(165deg,rgba(26,10,46,.92),rgba(12,6,32,.92));
  border:1px solid rgba(255,77,157,.24);}
.lh-neon .pdp-woo-form .quantity input[type="number"]{background:rgba(10,4,16,.6);
  border:1.5px solid rgba(255,255,255,.2);color:var(--n-cream);}
.lh-neon .pdp-woo-form .woocommerce-variation-price .price{font-family:var(--n-head);
  color:var(--n-cream);}
.lh-neon .pdp-woo-form button.single_add_to_cart_button{background:var(--n-yellow);color:#2B0A1A;
  box-shadow:0 0 24px rgba(255,211,77,.5);}
.lh-neon .pdp-woo-form .stock.out-of-stock{color:#FF8AB8;}
.lh-neon .lh-can-thumb{filter:drop-shadow(0 0 18px rgba(255,77,157,.28));}

/* ---------- club sign-up band (it sits on every page) ------------ */
.lh-neon .club{background:linear-gradient(110deg,#11052A,#2A0B45 54%,#07222E);}
.lh-neon .club::after{content:"";position:absolute;inset:0;background-image:var(--n-wall);pointer-events:none;}
.lh-neon .club .palm.pc{color:#FFB8DA;opacity:.08;}
.lh-neon .club .eyebrow{font-family:var(--n-head);letter-spacing:.26em;color:var(--n-teal);}
.lh-neon .club h2{color:transparent;-webkit-text-fill-color:transparent;
  -webkit-text-stroke:3px var(--n-pink);font-size:clamp(38px,6vw,76px);
  filter:drop-shadow(0 0 6px var(--n-pink)) drop-shadow(0 0 22px rgba(255,77,157,.85));
  animation:n-flick 6s ease-in-out infinite;}
.lh-neon .club .sub{color:var(--n-mist);}
.lh-neon .club .zip{position:relative;z-index:2;justify-content:center;}
.lh-neon .club .zip input{border-color:rgba(62,214,214,.45);background:rgba(10,4,16,.55);color:#fff;}
.lh-neon .club .zip input:focus{border-color:var(--n-teal);box-shadow:0 0 18px rgba(62,214,214,.4);}
.lh-neon .club .zip button{background:var(--n-yellow);color:#2B0A1A;box-shadow:0 0 24px rgba(255,211,77,.5);}
.lh-neon .club .sub{line-height:1.72;}

/* ---------- ID-check banner ------------------------------------- */
.lh-neon .lh-idvbar{background:linear-gradient(150deg,rgba(70,32,8,.9),rgba(26,10,46,.9));
  border:1px solid rgba(255,138,61,.45);box-shadow:inset 0 0 36px rgba(255,138,61,.1);}
.lh-neon .lh-idvbar__h{font-family:var(--n-head);color:var(--n-yellow);
  text-shadow:0 0 20px rgba(255,211,77,.5);}
.lh-neon .lh-idvbar__lead{color:var(--n-cream);}
.lh-neon .lh-idvbar__list li{color:var(--n-mist);}
.lh-neon .lh-idvbar__list li::marker{color:var(--n-orange);}

/* ---------- motion ---------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  .lh-neon .pagehead h1,.lh-neon .club h2,.lh-neon .tube,.lh-neon .buzz{animation:none!important;}
}
@media(max-width:900px){
  .lh-neon .pagehead h1,.lh-neon .club h2{-webkit-text-stroke-width:2px;}
}

/* ---------- the remaining light panels -------------------------- */
/* Swept from app.css: anything that still painted #fff or --cream. */
.lh-neon .flavcard{background:linear-gradient(165deg,rgba(26,10,46,.92),rgba(12,6,32,.92));
  border:1px solid rgba(255,77,157,.24);box-shadow:inset 0 0 30px rgba(255,77,157,.07);}
.lh-neon .flavcard:hover{border-color:var(--n-pink);
  box-shadow:0 18px 38px rgba(0,0,0,.55),0 0 26px rgba(255,77,157,.3);}
.lh-neon .flavcard h3{font-family:var(--n-head);color:var(--n-cream);}
.lh-neon .flavcard p{color:var(--n-mist2);}
.lh-neon .flavcard img{filter:drop-shadow(0 0 24px rgba(255,77,157,.3)) drop-shadow(0 16px 22px rgba(0,0,0,.6));}

.lh-neon .coacard{background:linear-gradient(165deg,rgba(26,10,46,.9),rgba(12,6,32,.9));
  border:1px solid rgba(62,214,214,.26);
  box-shadow:inset 0 0 30px rgba(62,214,214,.06);}
.lh-neon .coahead{border-bottom-color:rgba(62,214,214,.22);}
.lh-neon .coahead :is(h2,h3){font-family:var(--n-head);color:var(--n-cream);}
.lh-neon .coameta dt{font-family:var(--n-head);color:var(--n-teal);}
.lh-neon .coameta dd{color:var(--n-mist);}
.lh-neon .panelpill{background:rgba(12,6,32,.8);border:1px solid rgba(62,214,214,.3);
  color:var(--n-mist);font-family:var(--n-head);}
.lh-neon .panelpill::before{background:var(--n-teal);box-shadow:0 0 9px var(--n-teal);}

.lh-neon .wdbolt{background:#05040A;border:1px solid rgba(255,77,157,.22);}
.lh-neon .wdbolt-text h2{font-family:var(--n-head);color:var(--n-cream);
  text-shadow:0 0 26px rgba(255,77,157,.45);}
.lh-neon .wdbolt-text p{color:var(--n-mist);}
.lh-neon .wdbolt-kick{font-family:var(--n-head);color:var(--n-yellow);
  text-shadow:0 0 20px rgba(255,211,77,.5);}
.lh-neon .wdbolt-cans img{filter:drop-shadow(0 0 26px rgba(255,77,157,.35));}

.lh-neon .pdp-card,
.lh-neon .lh-woo .woocommerce-message,.lh-neon .lh-woo .woocommerce-info,
.lh-neon .lh-woo .woocommerce-error,
.lh-neon .pdp .woocommerce-notices-wrapper .woocommerce-message,
.lh-neon .pdp .woocommerce-notices-wrapper .woocommerce-error,
.lh-neon .pdp .woocommerce-notices-wrapper .woocommerce-info{
  background:rgba(26,10,46,.9);border-color:rgba(255,255,255,.12);color:var(--n-mist);}

/* Woo's own chrome that the theme never had a rule for */
.lh-neon .lh-woo .woocommerce-Price-amount,
.lh-neon .lh-woo .price{color:var(--n-cream);}
.lh-neon .lh-woo .cart_totals h2,.lh-neon .lh-woo .order-total .amount{color:var(--n-cream);}
.lh-neon .lh-woo fieldset,.lh-neon .lh-woo .woocommerce-additional-fields,
.lh-neon .lh-woo #order_review,.lh-neon .lh-woo .cart-collaterals .cart_totals{
  background:rgba(26,10,46,.7);border:1px solid rgba(255,77,157,.2);border-radius:18px;
  padding:20px 22px;}
.lh-neon .lh-woo label{color:var(--n-mist);}
.lh-neon .lh-woo legend,.lh-neon .lh-woo h3#order_review_heading{color:var(--n-cream);}
.lh-neon .lh-woo abbr[title]{color:var(--n-pink);text-decoration:none;}
.lh-neon .lh-woo .select2-container .select2-selection{
  background:rgba(10,4,16,.6);border:1.5px solid rgba(62,214,214,.3);color:var(--n-cream);}
.lh-neon .lh-woo .select2-container .select2-selection__rendered{color:var(--n-cream);}

/* ---------- age gate, ID check, cart pill ----------------------- */
/* These three were already dark, so they only need the type and the
   primary action brought in line with the rest of the site. */
.lh-neon .lh-gate__q,.lh-neon .lh-gate__eyebrow,.lh-neon .lh-gate__btn,
.lh-neon .lh-idv__h,.lh-neon .lh-idv__eyebrow,.lh-neon .lh-idv__btn,
.lh-neon .lh-idv__clock,.lh-neon .lh-idvbar__h,.lh-neon .lh-thanks__h,
.lh-neon .lh-thanks__close,.lh-neon .lh-fab__n{font-family:var(--n-head);}
.lh-neon .lh-gate__eyebrow,.lh-neon .lh-idv__eyebrow{color:var(--n-teal);}
.lh-neon .lh-gate__q{color:var(--n-cream);text-shadow:0 0 26px rgba(255,77,157,.45);}
.lh-neon .lh-gate__yes,.lh-neon .lh-idv__go{background:var(--n-yellow);color:#2B0A1A;
  box-shadow:0 0 26px rgba(255,211,77,.55);}
.lh-neon .lh-gate__no,.lh-neon .lh-idv__back{border-color:var(--n-pink);color:var(--n-cream);}
.lh-neon .lh-gate__no:hover,.lh-neon .lh-idv__back:hover{background:rgba(255,77,157,.16);}
.lh-neon .lh-thanks__close{background:var(--n-yellow);color:#2B0A1A;
  box-shadow:0 0 26px rgba(255,211,77,.5);}
.lh-neon .lh-thanks__tick{background:var(--n-teal);box-shadow:0 0 26px rgba(62,214,214,.6);}
.lh-neon .lh-fab{box-shadow:0 0 26px rgba(255,77,157,.5),0 12px 30px rgba(0,0,0,.5);}

/* ---------- FAQ section headings -------------------------------- */
/* Each group gets its own tube colour so the page reads as sections
   rather than one long list. The index cycles, so adding a group
   never lands two of the same colour next to each other. */
.lh-neon .faq-sec h2{color:var(--n-cream);}
.lh-neon .faq-sec--1 h2{color:var(--n-pink);text-shadow:0 0 10px rgba(255,77,157,.55),0 0 30px rgba(255,77,157,.35);}
.lh-neon .faq-sec--2 h2{color:var(--n-teal);text-shadow:0 0 10px rgba(62,214,214,.55),0 0 30px rgba(62,214,214,.35);}
.lh-neon .faq-sec--3 h2{color:var(--n-yellow);text-shadow:0 0 10px rgba(255,211,77,.5),0 0 30px rgba(255,211,77,.3);}
.lh-neon .faq-sec--4 h2{color:var(--n-purple2);text-shadow:0 0 10px rgba(194,61,245,.55),0 0 30px rgba(194,61,245,.35);}
.lh-neon .faq-sec--5 h2{color:var(--n-orange);text-shadow:0 0 10px rgba(255,138,61,.5),0 0 30px rgba(255,138,61,.3);}
.lh-neon .faq-sec--6 h2{color:#8BE04A;text-shadow:0 0 10px rgba(139,224,74,.5),0 0 30px rgba(139,224,74,.3);}

/* ------------------------------------------------ footer policy row + address
 * Payment processors want the policies, the postal address and the billing
 * descriptor visible without hunting, so they sit in the footer on every page
 * rather than only in a menu.
 */
.lh-neon .fpolicy{display:flex;flex-wrap:wrap;gap:10px 26px;
  margin-top:30px;padding-top:22px;border-top:1px solid rgba(255,255,255,.09);}
.lh-neon .fpolicy a{font-family:var(--n-head);letter-spacing:.14em;text-transform:uppercase;
  font-size:13px;color:var(--n-teal2);text-decoration:none;}
.lh-neon .fpolicy a:hover{color:#fff;text-shadow:0 0 14px rgba(62,214,214,.8);}
.lh-neon .legal{margin-top:22px;}
.lh-neon .faddress{display:block;font-style:normal;margin-top:14px;
  font-size:13.5px;line-height:1.7;color:var(--n-mist2);}
.lh-neon .faddress strong{color:var(--n-mist);}
.lh-neon .legal .descriptor{display:block;margin-top:16px;color:var(--n-yellow);
  font-weight:700;letter-spacing:.01em;}
.lh-neon .prose-address{display:block;font-style:normal;line-height:1.8;
  font-size:16px;color:var(--n-mist);}
.lh-neon .policy-date{font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--n-mist2);margin-bottom:26px;}
@media(max-width:620px){
  .lh-neon .fpolicy{gap:10px 18px;}
  .lh-neon .fpolicy a{font-size:12px;}
}

/* ===================================================== the no-THC landing ==
 * Where an 18-to-20 visitor lands. Same language as the front page, two
 * drinks, nothing that needs a 21 rule.
 */
/* the page is is-bleed, so .pagebody gives it no gutter — it carries its own */
.lh-neon .nothc{position:relative;z-index:2;max-width:1180px;margin-inline:auto;
  padding-inline:clamp(20px,4vw,40px);}
.lh-neon .nothc-row{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,5vw,72px);
  align-items:center;padding-block:clamp(40px,6vw,78px);}
.lh-neon .nothc-row+.nothc-row{border-top:1px solid rgba(255,255,255,.08);}
/* explicit order rather than direction:rtl, which drags the text out of the
   gutter and takes punctuation with it */
.lh-neon .nothc-row.is-flip{grid-template-columns:1.15fr .85fr;}
.lh-neon .nothc-row.is-flip .nothc-art{order:2;}
.lh-neon .nothc-art{position:relative;display:grid;place-items:center;}
.lh-neon .nothc-art img{position:relative;z-index:2;width:min(100%,260px);height:auto;display:block;
  filter:drop-shadow(0 0 34px color-mix(in srgb,var(--acc) 42%,transparent))
         drop-shadow(0 24px 30px rgba(0,0,0,.7));
  animation:bob 6.5s ease-in-out infinite;}
.lh-neon .nothc-glow{position:absolute;z-index:1;width:min(300px,84%);aspect-ratio:1;border-radius:999px;
  background:radial-gradient(circle,color-mix(in srgb,var(--acc) 40%,transparent),transparent 68%);
  filter:blur(6px);}
.lh-neon .nothc-txt .eyebrow{font-family:var(--n-head);letter-spacing:.26em;color:var(--acc2);}
.lh-neon .nothc-txt h2{font-family:var(--n-head);font-size:clamp(38px,5.4vw,68px);line-height:1.02;
  margin-top:10px;color:var(--n-cream);}
.lh-neon .nothc-hook{font-size:clamp(19px,2.2vw,25px);font-weight:600;color:var(--acc);margin-top:14px;}
.lh-neon .nothc-txt p{color:var(--n-mist);margin-top:14px;max-width:54ch;}
.lh-neon .nothc-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px;}
.lh-neon .nothc-pills span{border:1px solid color-mix(in srgb,var(--acc) 48%,transparent);
  border-radius:999px;padding:8px 15px;font-size:12.5px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--n-cream);background:color-mix(in srgb,var(--acc) 12%,transparent);}
.lh-neon .nothc-txt .btn{margin-top:28px;}
.lh-neon .nothc-foot{margin-top:clamp(30px,4vw,54px);
  padding-top:clamp(26px,3vw,40px);
  /* the club band used to start the moment this paragraph ended */
  padding-bottom:clamp(56px,7vw,96px);
  border-top:1px solid rgba(255,255,255,.08);}
/* it inherits .prose link styling otherwise and renders as a pink text run */
.lh-neon .nothc-again{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px;}
.lh-neon .nothc-reset{flex:none;margin:0;padding:12px 22px;font-size:14px;
  background:none;border:2px solid rgba(255,243,214,.42);color:var(--n-cream);
  box-shadow:none;text-shadow:none;}
.lh-neon .nothc-reset:hover{border-color:var(--n-teal);color:#fff;
  background:rgba(62,214,214,.14);box-shadow:0 0 22px rgba(62,214,214,.4);}
@media(max-width:860px){
  .lh-neon .nothc-row,.lh-neon .nothc-row.is-flip{grid-template-columns:1fr;direction:ltr;
    gap:24px;padding-block:34px;}
  .lh-neon .nothc-art img{width:min(62vw,215px);}
  .lh-neon .nothc-txt{text-align:center;}
  .lh-neon .nothc-txt p{margin-inline:auto;}
  .lh-neon .nothc-pills{justify-content:center;}
  .lh-neon .nothc-reset{display:block;margin:14px auto 0;}
}
@media (prefers-reduced-motion:reduce){.lh-neon .nothc-art img{animation:none;}}
