/* =========================================================
   SHROOMS · RIO — recreativa
   Direção: igel.ua (limpo, arredondado, produto em destaque)
   Paleta v1: menta #B9F3D4 · vermelho #FE0006 · preto
   Type: Familjen Grotesk (display) · Manrope (texto)
   ========================================================= */

:root{
  --mint:      #B9F3D4;
  --mint-deep: #9BE7C0;
  --mint-soft: #D6F7E6;
  --paper:     #FCFEFC;
  --ink:       #0A0A0A;
  --ink-60:    rgba(10,10,10,.6);
  --ink-40:    rgba(10,10,10,.4);
  --red:       #FE0006;
  --tg:        #2AABEE;
  --tg-deep:   #1E8FC7;
  --line:      rgba(10,10,10,.12);

  --f-display: "Familjen Grotesk", "Arial", system-ui, sans-serif;
  --f-body:    "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --s--1: clamp(.8rem, .76rem + .2vw, .88rem);
  --s-0:  clamp(1rem, .96rem + .2vw, 1.1rem);
  --s-1:  clamp(1.15rem, 1rem + .6vw, 1.4rem);
  --s-2:  clamp(1.6rem, 1.3rem + 1.4vw, 2.3rem);
  --s-3:  clamp(2.2rem, 1.7rem + 2.4vw, 3.6rem);
  --s-4:  clamp(2.7rem, 1.9rem + 3.8vw, 5rem);

  --wrap: 1200px;
  --pad:  clamp(1.15rem, 4vw, 3rem);
  --sy:   clamp(3.25rem, 6vw, 5.5rem);

  --r:    18px;
  --r-lg: 28px;
  --r-xl: 40px;

  --ease: cubic-bezier(.22,.61,.36,1);
  --shadow: 0 30px 60px -20px rgba(10,10,10,.28);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  font-family:var(--f-body);
  font-size:var(--s-0);
  line-height:1.6;
  color:var(--ink);
  background:var(--mint);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
ul{list-style:none}
h1,h2,h3{font-family:var(--f-display);font-weight:600;line-height:1.04;letter-spacing:-.02em}
em{font-style:italic}
::selection{background:var(--ink);color:var(--mint)}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:4px}

.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:300;background:var(--ink);color:var(--mint);
  padding:.6rem 1rem;border-radius:10px;transform:translateY(-160%);transition:transform .2s}
.skip-link:focus{transform:none}

.wrap{width:min(100% - var(--pad)*2, var(--wrap));margin-inline:auto}
.section{padding-block:var(--sy);position:relative}

/* ---------- TYPE HELPERS ---------- */
.kicker{font-family:var(--f-body);font-weight:600;font-size:var(--s--1);letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-60);margin-bottom:1rem}
.h2{font-size:var(--s-3);margin-bottom:1rem}
.section-note{max-width:52ch;color:var(--ink-60);font-size:var(--s-1);margin-bottom:2.5rem}
.prose > * + *{margin-top:1rem}
.prose{max-width:46ch;color:var(--ink-60)}

/* ---------- BUTTONS ---------- */
.btn{
  --py:.95rem;--px:1.6rem;
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:var(--py) var(--px);
  font-family:var(--f-display);font-weight:600;font-size:var(--s-0);
  border-radius:999px;
  transition:transform .2s var(--ease), background-color .2s var(--ease), color .2s var(--ease);
}
.btn-sm{--py:.6rem;--px:1.1rem;font-size:var(--s--1)}
.btn-lg{--py:1.1rem;--px:2rem;font-size:var(--s-1)}
.btn-block{display:flex;width:100%}
.btn-red{background:var(--red);color:#000}
.btn-red:hover{background:var(--ink);color:var(--mint);transform:translateY(-2px)}
.btn-line{border:1.6px solid var(--ink);color:var(--ink)}
.btn-line:hover{background:var(--ink);color:var(--mint);transform:translateY(-2px)}
.btn-dark{background:var(--ink);color:var(--mint)}
.btn-dark:hover{background:var(--red);color:#000;transform:translateY(-2px)}
.btn-tg{background:var(--tg);color:#fff}
.btn-tg:hover{background:var(--tg-deep);color:#fff;transform:translateY(-2px)}
.btn-tg svg{flex-shrink:0}

/* ---------- AGE GATE ---------- */
.agegate{display:none}
.agegate:not([hidden]){position:fixed;inset:0;z-index:400;display:grid;place-items:center;
  background:rgba(10,10,10,.55);backdrop-filter:blur(6px);padding:var(--pad)}
.agegate-card{background:var(--mint);border:2px solid var(--ink);border-radius:var(--r-xl);
  padding:clamp(1.8rem,5vw,3rem);max-width:420px;text-align:center}
.agegate-shroom{width:96px;height:96px;object-fit:contain;margin:0 auto 1rem;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.3))}
.agegate-card h2{font-size:var(--s-2);margin-bottom:.6rem}
.agegate-card p{color:var(--ink-60);font-size:var(--s--1);margin-bottom:1.6rem}
.agegate-actions{display:flex;flex-direction:column;gap:.6rem}

/* ---------- HEADER ---------- */
.header{position:sticky;top:0;z-index:100;background:var(--mint);transition:box-shadow .3s,background-color .3s}
.header[data-scrolled]{box-shadow:0 1px 0 var(--line);background:color-mix(in srgb,var(--mint) 90%,transparent);
  backdrop-filter:blur(10px)}
.header-in{display:flex;align-items:center;gap:1.2rem;padding-block:.9rem}
.brand img{width:clamp(108px,13vw,140px);height:auto}
.nav{display:flex;gap:1.8rem;margin-left:auto}
.nav a{font-weight:600;font-size:var(--s--1);position:relative;padding:.2rem 0}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--red);
  transition:right .25s var(--ease)}
.nav a:hover::after{right:0}
.nav-cta{flex-shrink:0}
.burger{display:none;width:44px;height:44px;flex-direction:column;justify-content:center;gap:6px;margin-left:auto}
.burger span{height:2px;width:24px;background:var(--ink);margin-inline:auto;transition:transform .3s,opacity .2s}
.burger[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.menu{display:none}
.menu:not([hidden]){display:flex;flex-direction:column;gap:.2rem;padding:.5rem var(--pad) 1.5rem;
  border-top:1px solid var(--line)}
.menu a{font-family:var(--f-display);font-weight:600;font-size:1.3rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
.menu .btn{margin-top:1rem}

/* ---------- HERO ---------- */
.hero{padding-block:clamp(2rem,5vw,4rem) clamp(3rem,7vw,6rem);overflow:hidden}
.hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,4vw,3rem);align-items:center}
.eyebrow{font-family:var(--f-body);font-weight:600;font-size:var(--s--1);letter-spacing:.12em;
  text-transform:uppercase;color:var(--ink-60);margin-bottom:1.2rem}
.hero-h1{font-size:var(--s-4);letter-spacing:-.03em;margin-bottom:1.4rem}
.hero-sub{font-size:var(--s-1);color:var(--ink-60);max-width:40ch;margin-bottom:2rem}
.hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.hero-micro{font-size:var(--s--1);color:var(--ink-60);font-weight:600;letter-spacing:.02em}

.hero-art{position:relative;aspect-ratio:1/1;display:grid;place-items:center}
.hero-blob{position:absolute;inset:6% 6% 6% 6%;background:var(--mint-deep);border-radius:44% 56% 58% 42% / 52% 46% 54% 48%;
  animation:blob 16s var(--ease) infinite}
@keyframes blob{
  0%,100%{border-radius:44% 56% 58% 42% / 52% 46% 54% 48%}
  50%{border-radius:56% 44% 42% 58% / 46% 58% 42% 54%}
}
.hero-shroom{position:relative;width:82%;filter:drop-shadow(0 40px 44px rgba(10,10,10,.32));
  animation:bob 7s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
.hero-tag{position:absolute;background:var(--paper);border:1.5px solid var(--ink);border-radius:999px;
  padding:.4rem .85rem;font-family:var(--f-display);font-weight:600;font-size:var(--s--1);white-space:nowrap;
  box-shadow:0 8px 20px -8px rgba(10,10,10,.3)}
.hero-tag-1{top:8%;left:-4%}
.hero-tag-2{top:46%;right:-8%}
.hero-tag-3{bottom:9%;left:6%}

/* ---------- ENTREGA 24H ---------- */
.entrega{padding-block:clamp(1.4rem,4vw,2.4rem)}
.entrega-card{background:var(--ink);color:var(--paper);border-radius:var(--r-xl);
  padding:clamp(1.8rem,4vw,3.2rem);display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(1.5rem,4vw,3rem);align-items:center}
.entrega-lead .kicker{color:var(--red)}
.entrega-lead h2{color:var(--paper);margin-bottom:1rem}
.entrega-lead p{color:rgba(255,255,255,.7);font-size:var(--s-0);max-width:42ch}
.entrega-facts{display:flex;flex-direction:column;gap:.7rem}
.entrega-facts li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;
  column-gap:1rem;align-items:center;background:rgba(255,255,255,.07);border-radius:var(--r);padding:.9rem 1.2rem}
.entrega-emoji{grid-row:1/3;align-self:center;font-size:1.7rem;line-height:1}
.entrega-facts strong{font-family:var(--f-display);font-weight:600;font-size:var(--s-1)}
.entrega-facts li span:last-child{color:rgba(255,255,255,.6);font-size:var(--s--1)}

/* paper sections = faixas brancas arredondadas flutuando sobre a menta */
.onda,.dose,.max{border-radius:var(--r-xl)}

/* ---------- A ONDA ---------- */
.onda{background:var(--paper)}
.onda-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.onda-facts{display:flex;flex-direction:column;gap:.9rem}
.onda-facts li{display:flex;flex-direction:column;gap:.15rem;padding:1.2rem 1.4rem;
  background:var(--mint-soft);border-radius:var(--r)}
.onda-facts span{font-size:var(--s--1);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-40);font-weight:600}
.onda-facts strong{font-family:var(--f-display);font-weight:600;font-size:var(--s-1)}

/* ---------- CEPAS ---------- */
.cepas{background:var(--mint)}
.cepa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2.5vw,1.6rem)}
.cepa{position:relative;display:flex;flex-direction:column;background:var(--paper);border-radius:var(--r-lg);
  padding:clamp(1.4rem,3vw,2rem);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.cepa:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.cepa-img{width:100%;aspect-ratio:1/1;display:grid;place-items:center;margin-bottom:1.2rem;
  background:radial-gradient(circle at 50% 42%,var(--mint-soft),#fff 72%);border-radius:50%}
.cepa-img img{width:74%;filter:drop-shadow(0 16px 20px rgba(10,10,10,.22))}
.cepa h3{font-size:var(--s-2);margin-bottom:.5rem}
.cepa h3 span{font-family:var(--f-body);font-weight:500;font-size:var(--s--1);color:var(--ink-40);letter-spacing:0}
.cepa p{color:var(--ink-60);font-size:var(--s--1)}
.cepa > p:first-of-type{flex:1 0 auto}
.cepa-tags{margin-top:1rem;font-family:var(--f-display);font-weight:600;color:var(--ink);font-size:var(--s--1)!important}
.cepa-cta{margin-top:1.3rem}
.cepa-rare{background:var(--ink);color:var(--paper)}
.cepa-rare:hover{background:var(--ink)}
.cepa-rare h3,.cepa-rare .cepa-tags{color:var(--paper)}
.cepa-rare p{color:rgba(255,255,255,.6)}
.cepa-rare .cepa-img{background:radial-gradient(circle at 50% 42%,#2a2a2a,#0a0a0a 70%)}
.rare-badge{position:absolute;top:1rem;right:1rem;background:var(--red);color:#000;font-family:var(--f-display);
  font-weight:600;font-size:var(--s--1);padding:.3rem .7rem;border-radius:999px}

/* desktop: as duas genéticas raras (4ª e 5ª carta) centralizadas na segunda fileira */
@media (min-width:921px){
  .cepa-grid{grid-template-columns:repeat(6,1fr)}
  .cepa{grid-column:span 2}
  .cepa-grid .cepa-rare:nth-child(4){grid-column:2 / span 2}
  .cepa-grid .cepa-rare:nth-child(5){grid-column:4 / span 2}
}

/* ---------- DOSE ---------- */
.dose{background:var(--paper)}
.dose-panel{background:var(--mint);border-radius:var(--r-xl);padding:clamp(1.6rem,5vw,3.5rem)}
.dose-rule{background:var(--paper);border:1.5px solid var(--ink);border-radius:var(--r);
  padding:.9rem 1.2rem;font-size:var(--s--1);color:var(--ink-60);max-width:54ch;margin-bottom:2.2rem}
.dose-rule strong{color:var(--ink);font-family:var(--f-display)}

.dose-table{border-radius:var(--r-lg);overflow:hidden;border:1.5px solid var(--ink);
  background:var(--paper);margin-bottom:2.5rem}
.dose-row{display:grid;grid-template-columns:1.15fr .75fr 2.5fr 1.4fr;gap:1.2rem;
  padding:1.15rem 1.4rem;border-bottom:1px solid var(--line);font-size:var(--s--1);align-items:baseline}
.dose-row:last-child{border-bottom:0}
.dose-head{background:var(--ink);color:var(--mint);font-family:var(--f-display);font-weight:600;
  text-transform:uppercase;letter-spacing:.07em;font-size:.76rem;align-items:center}
.dose-row-hi{background:var(--mint-soft)}
.dc-faixa strong{display:block;font-family:var(--f-display);font-weight:600;font-size:var(--s-0);
  line-height:1.15;color:var(--ink)}
.dose-row-hi .dc-faixa strong{color:var(--red)}
.dc-qtd{font-family:var(--f-display);font-weight:700;font-size:var(--s-0);color:var(--ink);white-space:nowrap}
.dc-espera,.dc-quem{color:var(--ink-60);line-height:1.5}
.dose-tag{display:inline-block;margin-top:.4rem;background:var(--red);color:#000;font-family:var(--f-body);
  font-weight:700;font-size:.6rem;letter-spacing:.09em;text-transform:uppercase;padding:.14rem .5rem;border-radius:999px}
.dose-bar{display:flex;gap:3px;margin-top:.55rem}
.dose-bar i{width:15px;height:5px;border-radius:2px;background:var(--line)}
.dose-row[data-lvl="1"] .dose-bar i:nth-child(-n+1),
.dose-row[data-lvl="2"] .dose-bar i:nth-child(-n+2),
.dose-row[data-lvl="3"] .dose-bar i:nth-child(-n+3),
.dose-row[data-lvl="4"] .dose-bar i:nth-child(-n+4),
.dose-row[data-lvl="5"] .dose-bar i:nth-child(-n+5){background:var(--ink)}
.dose-row.dose-row-hi[data-lvl] .dose-bar i:nth-child(-n+3){background:var(--red)}

.dose-tips{display:grid;grid-template-columns:1.4fr 1fr;gap:1.2rem}
.dose-tips-block{background:var(--paper);border-radius:var(--r-lg);padding:1.4rem 1.6rem}
.dose-tips-block h3{font-family:var(--f-display);font-weight:600;font-size:var(--s-1);margin-bottom:.7rem}
.dose-tips-block ul{display:flex;flex-direction:column;gap:.55rem}
.dose-tips-block li,.dose-tips-block p{font-size:var(--s--1);color:var(--ink-60);line-height:1.55}
.dose-tips-block li{padding-left:1rem;position:relative}
.dose-tips-block li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;
  border-radius:50%;background:var(--ink)}
.dose-tips-block strong{color:var(--ink)}
.dose-tips-alert{background:var(--ink);color:var(--paper)}
.dose-tips-alert h3{color:var(--paper)}
.dose-tips-alert p{color:rgba(255,255,255,.75)}

/* ---------- KITS ---------- */
.kits{background:var(--mint)}
.kits .section-note{margin-bottom:.9rem}
.kits-payment{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--f-display);font-weight:600;
  font-size:var(--s--1);color:var(--ink);background:var(--paper);border:1.5px solid var(--ink);
  padding:.55rem 1.1rem;border-radius:999px;margin-bottom:2.5rem}

/* selo de gramatura (destaque de "quanto você leva") */
.kit-grams{position:absolute;top:.75rem;left:.75rem;z-index:3;
  background:var(--mint);color:var(--ink);border:1.6px solid var(--ink);
  font-family:var(--f-display);font-weight:700;font-size:var(--s-1);line-height:1;
  padding:.38rem .72rem;border-radius:999px;box-shadow:0 6px 16px -6px rgba(10,10,10,.45)}
.kit-spec strong{color:var(--ink);font-weight:700}

/* bloco de preço: de/desconto · preço final · preço por grama */
.kit-price{margin:.85rem 0}
.kit-was{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;font-family:var(--f-body);
  font-weight:600;font-size:var(--s--1);color:var(--ink-40);margin-bottom:.25rem}
.kit-was s{text-decoration-thickness:1px}
.kit-off{background:var(--red);color:#000;font-family:var(--f-display);font-weight:700;
  font-size:.78em;line-height:1;padding:.2rem .5rem;border-radius:999px}
.kit-now{font-family:var(--f-display);font-weight:700;font-size:var(--s-2);line-height:1.05}
.kit-pergram{font-family:var(--f-body);font-weight:500;font-size:var(--s--1);color:var(--ink-40);margin-top:.3rem}

/* kit inicial (faixa de entrada) */
.starter{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(1.5rem,4vw,3rem);align-items:center;
  background:var(--paper);border:2.5px solid var(--red);border-radius:var(--r-xl);
  padding:clamp(1.6rem,4vw,3rem);margin-bottom:1.5rem;overflow:hidden}
.starter-media{position:relative;background:radial-gradient(circle at 50% 45%,var(--mint-soft),#fff 72%);border-radius:var(--r-lg);
  display:grid;place-items:center;padding:1.5rem;aspect-ratio:1/1}
.starter-media img{width:70%;filter:drop-shadow(0 20px 26px rgba(10,10,10,.22))}
.starter-badge{display:inline-block;background:var(--red);color:#000;font-family:var(--f-display);font-weight:600;
  font-size:var(--s--1);padding:.3rem .8rem;border-radius:999px;margin-bottom:.8rem}
.starter-body h3{font-size:var(--s-3);margin-bottom:.3rem}
.starter-body .kit-spec{margin:.2rem 0 .55rem}
.starter-body .kit-desc{color:var(--ink-60);font-size:var(--s--1);margin-bottom:1rem;max-width:48ch}
.starter-body .kit-price{margin:0 0 1.2rem}

/* estado esgotado */
.starter.is-soldout{border-color:var(--line)}
.starter.is-soldout .starter-media img{filter:grayscale(1) opacity(.55)}
.starter-badge-soldout{background:var(--ink);color:var(--paper)}
.btn-soldout{background:var(--paper);color:var(--ink-40);border:1.6px solid var(--line);cursor:not-allowed}
.btn-soldout:hover{background:var(--paper);color:var(--ink-40);transform:none}

.kit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.5rem);margin-bottom:1.5rem}
.kit{position:relative;display:flex;flex-direction:column;background:var(--paper);border-radius:var(--r-lg);
  padding:clamp(1.4rem,3vw,1.9rem);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.kit:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.kit-img{position:relative;aspect-ratio:1/1;display:grid;place-items:center;margin-bottom:1rem;
  background:radial-gradient(circle at 50% 42%,var(--mint-soft),#fff 72%);border-radius:var(--r)}
.kit-img img{width:66%;filter:drop-shadow(0 18px 22px rgba(10,10,10,.22))}
.kit-sub{font-family:var(--f-display);font-style:italic;font-weight:500;color:var(--ink-40);font-size:var(--s--1);margin-bottom:.15rem}
.kit h3{font-size:var(--s-2)}
.kit-spec{font-size:var(--s--1);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-60);margin:.35rem 0 .5rem}
.kit-desc{color:var(--ink-60);font-size:var(--s--1);flex:1}
.kit-cta{margin-top:auto}
.kit-feat{outline:2.5px solid var(--red);outline-offset:-2.5px}
.feat-badge{position:absolute;top:1rem;right:1rem;background:var(--red);color:#000;font-family:var(--f-display);
  font-weight:600;font-size:var(--s--1);padding:.3rem .75rem;border-radius:999px;z-index:2}

.collection{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(1.5rem,4vw,3rem);align-items:center;
  background:var(--ink);color:var(--paper);border-radius:var(--r-xl);padding:clamp(1.6rem,4vw,3rem);overflow:hidden}
.collection-media{position:relative;background:radial-gradient(circle at 50% 45%,#242424,#0a0a0a 72%);border-radius:var(--r-lg);
  display:grid;place-items:center;padding:2rem;aspect-ratio:1/1}
.collection-media img{width:78%;filter:drop-shadow(0 24px 30px rgba(0,0,0,.5))}
.collection-body .kit-sub{color:var(--red)}
.collection-body h3{font-size:var(--s-3);margin:.1rem 0 .5rem}
.collection-body .kit-spec{color:rgba(255,255,255,.55)}
.collection-body .kit-spec strong{color:#fff}
.collection-body .kit-desc{color:rgba(255,255,255,.72);margin-bottom:1rem}
.collection-body .kit-was{color:rgba(255,255,255,.55)}
.collection-body .kit-now{color:#fff}
.collection-body .kit-pergram{color:rgba(255,255,255,.55)}
.kit-addon{margin-top:1.6rem;font-size:var(--s--1);color:var(--ink-60);text-align:center}

/* ---------- MAX ---------- */
.max{background:var(--paper)}
.max-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.4rem);margin-top:1rem}
.max-grid li{background:var(--mint-soft);border-radius:var(--r-lg);padding:clamp(1.4rem,3vw,1.9rem)}
.max-grid h3{font-size:var(--s-1);margin-bottom:.4rem}
.max-grid p{color:var(--ink-60);font-size:var(--s--1)}

/* ---------- FAQ ---------- */
.faq{background:var(--mint)}
.faq-wrap{max-width:800px}
.acc{margin-top:1rem}
.acc-item{border-bottom:1.5px solid var(--ink)}
.acc-item:first-child{border-top:1.5px solid var(--ink)}
.acc-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1.2rem;
  padding:clamp(1rem,2.5vw,1.5rem) 0;text-align:left;font-family:var(--f-display);font-weight:600;font-size:var(--s-1)}
.acc-q::after{content:"+";font-size:1.4em;line-height:1;flex-shrink:0;transition:transform .3s var(--ease),color .3s}
.acc-q[aria-expanded="true"]::after{transform:rotate(45deg);color:var(--red)}
.acc-a{overflow:hidden;height:0;transition:height .32s var(--ease)}
.acc-a p{padding-bottom:clamp(1rem,2.5vw,1.5rem);color:var(--ink-60);max-width:60ch}
@media (prefers-reduced-motion:reduce){.acc-a{transition:none}}

/* ---------- FINAL ---------- */
.final{background:var(--mint);padding-bottom:var(--sy)}
.final-card{position:relative;background:var(--red);border-radius:var(--r-xl);overflow:hidden;
  display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:center;padding:clamp(2rem,5vw,4rem)}
.final-shroom{width:min(80%,360px);justify-self:center;filter:drop-shadow(0 30px 40px rgba(0,0,0,.35))}
.final-body h2{font-size:var(--s-3);color:#000;margin-bottom:1rem}
.final-body > p{color:rgba(0,0,0,.7);font-size:var(--s-1);margin-bottom:1.6rem;max-width:34ch}
.final-micro{font-size:var(--s--1);color:rgba(0,0,0,.6);margin-top:1.2rem;font-weight:600}

/* ---------- ZAP · GRUPO TELEGRAM ---------- */
.zap{background:var(--mint)}
.zap-card{background:var(--mint-soft);border:1.5px solid var(--ink);border-radius:var(--r-xl);
  padding:clamp(1.8rem,4vw,3.2rem);display:grid;grid-template-columns:1.5fr .8fr;gap:2rem;align-items:center;overflow:hidden}
.zap-body .kicker{color:var(--tg-deep)}
.zap-body p{color:var(--ink-60);font-size:var(--s-0);max-width:48ch;margin-bottom:1.6rem}
.zap-ctas{display:flex;flex-wrap:wrap;gap:.8rem}
.zap-art{justify-self:center;font-size:clamp(3.5rem,11vw,6.5rem);line-height:1}

/* pop-up */
.zap-pop{display:none}
.zap-pop:not([hidden]){position:fixed;inset:0;z-index:350;display:grid;place-items:end center;
  background:rgba(10,10,10,.5);backdrop-filter:blur(4px);padding:var(--pad)}
.zap-pop-card{position:relative;background:var(--mint);border:2px solid var(--ink);border-radius:var(--r-xl);
  padding:clamp(1.7rem,5vw,2.4rem);max-width:400px;width:100%;text-align:center;
  margin-bottom:clamp(1rem,5vh,3rem);box-shadow:var(--shadow);animation:zapIn .4s var(--ease)}
@keyframes zapIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
.zap-pop-emoji{font-size:2.4rem;display:block;margin-bottom:.4rem}
.zap-pop-card h2{font-size:var(--s-2);margin-bottom:.5rem}
.zap-pop-card p{color:var(--ink-60);font-size:var(--s--1);margin-bottom:1.4rem}
.zap-pop-x{position:absolute;top:.5rem;right:.85rem;font-size:1.7rem;line-height:1;color:var(--ink-40)}
.zap-pop-x:hover{color:var(--ink)}
.zap-pop-skip{display:block;margin:.9rem auto 0;font-size:var(--s--1);color:var(--ink-40);text-decoration:underline}
.zap-pop-skip:hover{color:var(--ink)}
@media (prefers-reduced-motion:reduce){.zap-pop-card{animation:none}}

/* ---------- FOOTER ---------- */
.footer{background:var(--mint);border-top:1.5px solid var(--ink);padding-block:clamp(2.5rem,5vw,4rem)}
.footer-mark{width:130px;margin-bottom:1.4rem}
.footer-ctas-kicker{margin-bottom:.7rem}
.footer-ctas{display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:1.8rem}
.footer-cta{--py:.85rem;--px:1.6rem;font-size:var(--s--1);box-shadow:0 14px 28px -16px rgba(10,10,10,.4)}
.footer-legal{display:flex;flex-direction:column;gap:.5rem;max-width:70ch;font-size:var(--s--1);color:var(--ink-60);line-height:1.65}
.footer-legal strong{color:var(--ink)}
.footer-copy{margin-top:1.6rem;font-size:var(--s--1);color:var(--ink-40)}

/* ---------- REVEAL ---------- */
.js [data-r]{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js [data-r].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .js [data-r],[data-r]{opacity:1;transform:none;transition:none}
  .hero-shroom,.hero-blob{animation:none}
  .btn,.kit,.cepa{transition:none}
}

/* ---------- RESPONSIVE ---------- */
@media (max-width:920px){
  .nav,.nav-cta{display:none}
  .burger{display:flex}
  .hero-in{grid-template-columns:1fr;gap:1rem}
  .hero-art{max-width:440px;margin-inline:auto;order:-1}
  .hero-tag-1{left:2%}.hero-tag-2{right:0}
  .entrega-card{grid-template-columns:1fr;gap:1.5rem}
  .onda-grid{grid-template-columns:1fr;gap:2rem}
  .cepa-grid{grid-template-columns:repeat(2,1fr)}
  .dose-tips{grid-template-columns:1fr}
  .starter{grid-template-columns:1fr;text-align:center}
  .starter-media{max-width:250px;margin-inline:auto}
  .starter-body .kit-desc{margin-inline:auto}
  .kit-grid{grid-template-columns:1fr;max-width:420px;margin-inline:auto}
  .collection{grid-template-columns:1fr;text-align:center}
  .collection-media{max-width:280px;margin-inline:auto}
  .starter-body .kit-was,.collection-body .kit-was{justify-content:center}
  .max-grid{grid-template-columns:1fr}
  .zap-card{grid-template-columns:1fr;text-align:center}
  .zap-body p{margin-inline:auto}
  .zap-ctas{justify-content:center}
  .zap-art{order:-1}
  .final-card{grid-template-columns:1fr;text-align:center}
  .final-shroom{width:min(60%,240px)}
  .final-body > p{margin-inline:auto}
}

/* tabela de dose vira cards */
@media (max-width:760px){
  .dose-table{border:0;border-radius:0;overflow:visible;background:none;display:grid;gap:.9rem;margin-bottom:2rem}
  .dose-row{display:block;background:var(--paper);border:1.5px solid var(--ink);border-radius:var(--r-lg);padding:1.2rem 1.3rem}
  .dose-row.dose-head{display:none}
  .dose-row-hi{background:var(--mint-soft)}
  .dc-faixa{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem}
  .dc-faixa strong{display:inline;font-size:var(--s-1)}
  .dose-tag{margin-top:0}
  .dose-bar{flex-basis:100%;margin-top:.1rem}
  .dc-qtd{display:inline-block;background:var(--ink);color:var(--mint);font-size:var(--s--1);
    padding:.2rem .7rem;border-radius:999px;margin-bottom:.85rem;white-space:normal}
  .dose-row-hi .dc-qtd{background:var(--red);color:#000}
  .dc-espera{display:block;margin-bottom:.75rem}
  .dc-quem{display:block}
  .dc-espera::before,.dc-quem::before{content:attr(data-label);display:block;font-family:var(--f-body);
    font-weight:700;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.15rem}
}

@media (max-width:560px){
  .cepa-grid{grid-template-columns:1fr;max-width:400px;margin-inline:auto}
  .hero-tag{display:none}
}
