/* Layout: etiqueta de frasco — kraft, marrón tierra, verde bosque y naranja cordyceps. Catálogo en grilla + ficha de producto por hash. */
:root{
  --kraft:#f1e6cf; --paper:#fbf6ec; --brown:#3b2416; --brown-2:#5b3a24; --terra:#b5652c; --orange:#d9822b;
  --forest:#2f4a2a; --sage:#6f8a55; --line:#e2d4ba; --muted:#6e5d4e; --ink:#2a1a10;
  --f-d:"Fraunces", Georgia, "Times New Roman", serif;
  --f-b:"Figtree", "Helvetica Neue", Arial, sans-serif;
  --f-s:"Caveat", "Segoe Script", cursive;
  color-scheme: light;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.02rem/1.6 var(--f-b);overflow-x:hidden}
h1,h2,h3{font-family:var(--f-d);margin:0;line-height:1.02;letter-spacing:-.02em;text-wrap:balance;color:var(--brown)}
p{margin:0} a{color:inherit} img,svg{max-width:100%}
button{font:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.wrap{max-width:1160px;margin-inline:auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.script{font-family:var(--f-s);font-weight:600;letter-spacing:0}


.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(251,246,236,.93);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:var(--paper)}
.top .wrap{display:flex;align-items:center;gap:1.5rem;height:78px}
.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;margin-right:auto}
.logo img{width:60px;height:60px;flex:none;border-radius:50%;object-fit:cover;border:1.5px solid var(--brown)}
.logo b{font:900 1.45rem/1 var(--f-d);color:var(--brown);letter-spacing:-.02em}
.logo small{display:block;font:700 .62rem/1 var(--f-b);letter-spacing:.28em;color:var(--terra);margin-top:3px}
.top nav{display:flex;gap:1.4rem}
.top nav a{text-decoration:none;font-weight:500;color:var(--muted)}
.top nav a:hover{color:var(--brown)}
@media(max-width:780px){.top nav{display:none}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:0 1.3rem;border-radius:999px;font:700 .97rem/1 var(--f-b);text-decoration:none;border:2px solid var(--brown);cursor:pointer;transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-2px)}
.btn--b{background:var(--brown);color:var(--paper)}
.btn--o{background:var(--orange);border-color:var(--orange);color:var(--ink)}
.btn--l{background:transparent;color:var(--brown)}
.btn--g{background:var(--forest);border-color:var(--forest);color:var(--paper)}
.btn svg{width:18px;height:18px}

/* hero */
.hero{background:var(--kraft);position:relative;overflow:hidden;border-bottom:2px solid var(--brown)}
.hero .wrap{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:2rem;min-height:560px}
.hero__copy{display:flex;flex-direction:column;gap:1.3rem;padding-block:3.5rem}
.kicker{display:flex;align-items:center;gap:.7rem;font:700 .78rem/1 var(--f-b);letter-spacing:.2em;text-transform:uppercase;color:var(--terra)}
.kicker::before,.kicker::after{content:"";height:1px;width:28px;background:currentColor}
.hero h1{font-size:clamp(2.9rem,7vw,5.6rem);font-weight:900}
.hero h1 em{font-style:italic;font-weight:500;color:var(--terra)}
.hero .script{font-size:1.9rem;color:var(--forest);line-height:1;transform:rotate(-2deg);transform-origin:left}
.hero .lead{max-width:31rem;font-size:1.1rem;color:var(--brown-2)}
.hero__cta{display:flex;flex-wrap:wrap;gap:.7rem}
.hero__art{position:relative;aspect-ratio:1/.9;width:100%}
.fan img{position:absolute;width:56%;aspect-ratio:1;object-fit:cover;border-radius:20px;border:4px solid var(--paper);box-shadow:0 24px 40px -22px rgba(42,26,16,.7)}
.fan img:nth-child(1){left:0;top:16%;transform:rotate(-9deg)}
.fan img:nth-child(2){right:0;top:12%;transform:rotate(8deg)}
.fan img:nth-child(3){left:22%;top:26%;z-index:2;transform:rotate(-1deg)}
.badge{position:absolute;right:2%;top:6%;width:118px;height:118px;border-radius:50%;background:var(--forest);color:var(--paper);display:grid;place-items:center;text-align:center;font:700 .92rem/1.1 var(--f-d);transform:rotate(10deg);box-shadow:0 14px 30px -14px rgba(42,26,16,.6);padding:10px}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr;min-height:0;gap:0}.hero__copy{padding-block:2.6rem .5rem}.hero__art{max-width:520px;margin-inline:auto}}

/* strip */
.strip{background:var(--brown);color:var(--kraft);font:500 1.05rem/1 var(--f-d);font-style:italic;overflow:hidden;white-space:nowrap}
.strip div{display:inline-block;padding:1rem 0;animation:mq 34s linear infinite}
.strip span{margin:0 1.4rem}
.strip i{color:var(--orange);font-style:normal}
@keyframes mq{to{transform:translateX(-50%)}}

/* sections */
.sec{padding-block:clamp(3.5rem,8vw,6rem);scroll-margin-top:84px}
.sec__head{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;flex-wrap:wrap;margin-bottom:2.2rem}
.sec h2{font-size:clamp(2.1rem,5vw,3.4rem);font-weight:900}
.sec__head p{color:var(--muted);max-width:30rem}

/* filtros + grilla */
.tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.8rem}
.tab{font:700 .93rem/1 var(--f-b);padding:.75rem 1.1rem;border-radius:999px;border:2px solid var(--brown);background:transparent;color:var(--brown);cursor:pointer}
.tab[aria-pressed="true"]{background:var(--brown);color:var(--paper)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:960px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.grid{grid-template-columns:1fr}}
.card{background:#fff;border:1.5px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -26px rgba(59,36,22,.55)}
.card__link{text-decoration:none;display:flex;flex-direction:column;flex:1}
.card__art{aspect-ratio:1;position:relative;background:var(--kraft)}
.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.card__art svg{position:absolute;inset:0;width:100%;height:100%}
.tag{position:absolute;left:14px;top:14px;background:var(--paper);color:var(--brown);font:700 .72rem/1 var(--f-b);letter-spacing:.08em;text-transform:uppercase;padding:.45rem .7rem;border-radius:999px;border:1.5px solid var(--brown)}
.tag--new{background:var(--orange);border-color:var(--orange);color:var(--ink)}
.card__body{padding:1.1rem 1.2rem .4rem;display:grid;gap:.3rem}
.card h3{font-size:1.45rem;font-weight:700}
.latin{font-family:var(--f-d);font-style:italic;color:var(--terra);font-size:.95rem}
.card__body p.sum{color:var(--muted);font-size:.93rem;line-height:1.45;margin-top:.2rem}
.more{display:inline-flex;align-items:center;gap:.35rem;font:700 .88rem/1 var(--f-b);color:var(--forest);margin-top:.5rem}
.card:hover .more span{transform:translateX(3px)}
.more span{transition:transform .2s}
.card__foot{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.9rem 1.2rem 1.2rem}
.price{font:700 1.2rem/1 var(--f-d);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--brown)}
.price small{display:block;font:500 .75rem/1.3 var(--f-b);color:var(--muted)}
.add{font:700 .85rem/1 var(--f-b);color:var(--brown);background:var(--kraft);border:0;border-radius:999px;padding:.65rem .95rem;cursor:pointer;min-height:40px}
.add:hover{background:var(--orange)}
.note{margin-top:1.4rem;font-size:.85rem;color:var(--muted)}

/* objetivos */
.goals{background:var(--forest);color:var(--paper)}
.goals h2{color:var(--paper)}
.goals .sec__head p{color:#d6dfcc}
.goal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:860px){.goal-grid{grid-template-columns:1fr 1fr}}
.goal{display:flex;flex-direction:column;gap:.5rem;padding:1.4rem;border-radius:20px;background:rgba(251,246,236,.07);border:1.5px solid rgba(251,246,236,.18);text-decoration:none;transition:background .2s}
.goal:hover{background:rgba(251,246,236,.14)}
.goal svg{width:34px;height:34px;color:#f0b46a}
.goal b{font:700 1.3rem/1.1 var(--f-d)}
.goal span{font-size:.9rem;opacity:.8}
.goal em{font-style:normal;font-weight:700;font-size:.85rem;color:#f0b46a;margin-top:auto}

/* cómo se toman */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:s}
@media(max-width:820px){.steps{grid-template-columns:1fr}}
.step{padding:1.6rem;border-radius:22px;background:var(--kraft);position:relative}
.step::before{counter-increment:s;content:"0" counter(s);font:900 2.8rem/1 var(--f-d);color:var(--terra);opacity:.35;display:block;margin-bottom:.6rem}
.step h3{font-size:1.3rem;margin-bottom:.4rem}
.step p{color:var(--brown-2);font-size:.95rem}

.values{display:grid;grid-template-columns:repeat(4,1fr);border-block:2px solid var(--brown);margin-top:3rem}
.values div{display:flex;align-items:center;gap:.7rem;padding:1.1rem .8rem;font-weight:700;color:var(--brown);border-right:1px solid var(--line)}
.values div:last-child{border-right:0}
.values svg{width:30px;height:30px;flex:none;color:var(--forest)}
@media(max-width:820px){.values{grid-template-columns:1fr 1fr}.values div:nth-child(2){border-right:0}.values div:nth-child(-n+2){border-bottom:1px solid var(--line)}}

/* faq */
.faq{display:grid;gap:10px;max-width:820px}
details{background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:0 1.2rem}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.05rem 0;font:700 1.05rem/1.3 var(--f-b);color:var(--brown)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:500 1.6rem/1 var(--f-d);color:var(--terra);transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding-bottom:1.1rem;color:var(--brown-2)}

/* envíos / contacto */
.ship{background:var(--kraft)}
.ship .wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center}
@media(max-width:820px){.ship .wrap{grid-template-columns:1fr}}
.ship ul{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;gap:.9rem}
.ship li{display:flex;gap:.8rem;align-items:flex-start}
.ship li svg{width:26px;height:26px;flex:none;color:var(--terra);margin-top:2px}
.ship li b{display:block;color:var(--brown)}
.ship li span{color:var(--muted);font-size:.95rem}
.contact-card{background:var(--brown);color:var(--paper);border-radius:26px;padding:clamp(1.6rem,4vw,2.4rem);display:grid;gap:1rem}
.contact-card h3{color:var(--paper);font-size:1.8rem}
.contact-card p{opacity:.85}
.contact-card .script{font-size:1.7rem;color:#f0b46a;opacity:1}
.contact-card .row{display:flex;flex-wrap:wrap;gap:.6rem}
.contact-card .btn--l{color:var(--paper);border-color:rgba(251,246,236,.45)}

/* ficha de producto */
.pd-wrap{padding-block:1.6rem 3rem}
.back{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--muted);text-decoration:none;margin-bottom:1.4rem}
.back:hover{color:var(--brown)}
.pd{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
@media(max-width:860px){.pd{grid-template-columns:1fr}}
.pd__art{border-radius:28px;aspect-ratio:1;position:relative;overflow:hidden;border:2px solid var(--brown)}
.pd__art svg{position:absolute;inset:0;width:100%;height:100%}
.pd__info{display:grid;gap:1rem}
.pd__info h1{font-size:clamp(2.4rem,5.5vw,4rem);font-weight:900}
.pd__info .latin{font-size:1.15rem}
.pd__info .script{font-size:1.8rem;color:var(--forest);line-height:1}
.pd__info .about{color:var(--brown-2);font-size:1.05rem}
.chips{display:flex;flex-wrap:wrap;gap:.45rem}
.chip{font:700 .78rem/1 var(--f-b);padding:.5rem .75rem;border-radius:999px;background:var(--kraft);color:var(--brown)}
.buy{display:grid;gap:.9rem;padding:1.2rem;border:1.5px solid var(--line);border-radius:20px;background:#fff;margin-top:.4rem}
.buy__top{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.qty{display:inline-flex;align-items:center;border:2px solid var(--brown);border-radius:999px;overflow:hidden}
.qty button{width:42px;height:42px;border:0;background:transparent;font:700 1.2rem/1 var(--f-b);color:var(--brown);cursor:pointer}
.qty output{min-width:28px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.buy__btns{display:flex;gap:.6rem;flex-wrap:wrap}
.buy__btns .btn{flex:1 1 180px}

.pd-nav{position:sticky;top:calc(78px + env(safe-area-inset-top,0px));z-index:15;background:rgba(251,246,236,.95);backdrop-filter:blur(8px);border-block:1px solid var(--line)}
.pd-nav .wrap{display:flex;gap:.4rem;overflow-x:auto;padding-block:.6rem;scrollbar-width:none}
.pd-nav .wrap::-webkit-scrollbar{display:none}
.pd-nav button{flex:none;border:0;background:transparent;font:700 .9rem/1 var(--f-b);color:var(--muted);padding:.65rem .9rem;border-radius:999px;cursor:pointer;white-space:nowrap}
.pd-nav button:hover,.pd-nav button.on{background:var(--brown);color:var(--paper)}

.pd-sec{padding-block:clamp(2.5rem,6vw,4rem);scroll-margin-top:144px;border-bottom:1px solid var(--line)}
.pd-sec h2{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:900;margin-bottom:1.6rem}
.benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.benefit{padding:1.4rem;border-radius:20px;background:#fff;border:1.5px solid var(--line);display:grid;gap:.6rem;align-content:start}
.benefit .ic{width:52px;height:52px;border-radius:50%;border:2px solid var(--brown);display:grid;place-items:center;color:var(--brown)}
.benefit .ic svg{width:26px;height:26px}
.benefit h3{font-size:1.2rem}
.benefit p{color:var(--muted);font-size:.93rem}
.disclaimer{margin-top:1.4rem;font-size:.85rem;color:var(--muted);padding:.9rem 1.1rem;border-left:3px solid var(--orange);background:var(--kraft);border-radius:0 12px 12px 0}

.use{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
@media(max-width:820px){.use{grid-template-columns:1fr}}
.use-list{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}
.use-list li{display:flex;gap:.9rem;align-items:flex-start;padding:1rem 1.1rem;background:#fff;border:1.5px solid var(--line);border-radius:16px}
.use-list li b{font:900 1.3rem/1 var(--f-d);color:var(--terra);min-width:1.4rem}
.when{background:var(--forest);color:var(--paper);border-radius:22px;padding:1.6rem;display:grid;gap:.8rem}
.when h3{color:var(--paper);font-size:1.3rem}
.when p{opacity:.88}
.when .script{font-size:1.6rem;color:#f0b46a;opacity:1;line-height:1.1}

.reels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:900px}
@media(max-width:820px){.reels{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-20px;padding:0 20px 6px;scrollbar-width:none}.reels::-webkit-scrollbar{display:none}.reel{flex:0 0 68%;scroll-snap-align:center}}
.reel{display:grid;gap:.55rem;align-content:start}
.reel__media{position:relative;aspect-ratio:9/16;border-radius:20px;overflow:hidden;background:var(--brown);box-shadow:0 18px 34px -24px rgba(42,26,16,.7)}
.reel__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:var(--brown)}
.reel__soon{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:1rem;color:var(--paper);background:radial-gradient(circle at 70% 25%,rgba(217,130,43,.35),transparent 55%),linear-gradient(160deg,#5b3a24,#2a1a10)}
.reel__soon i{width:64px;height:64px;border-radius:50%;background:rgba(251,246,236,.14);display:grid;place-items:center;margin:0 auto .7rem}
.reel__soon i svg{width:24px;height:24px;margin-left:3px;color:var(--paper)}
.reel__soon span{font-size:.82rem;opacity:.8}
.reel b{font:700 1.02rem/1.2 var(--f-d);color:var(--brown)}
.reel small{display:block;font-size:.8rem;color:var(--muted);margin-top:.15rem}

.care{display:grid;gap:10px;max-width:820px}
.care li{list-style:none;display:flex;gap:.8rem;padding:1rem 1.1rem;border-radius:14px;background:#fff;border:1.5px solid var(--line)}
.care ul{padding:0;margin:0;display:grid;gap:10px}
.care svg{width:22px;height:22px;flex:none;color:var(--terra);margin-top:2px}

.related{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:820px){.related{grid-template-columns:1fr}}
.rel{display:flex;gap:1rem;align-items:center;padding:.8rem;border-radius:18px;border:1.5px solid var(--line);background:#fff;text-decoration:none}
.rel:hover{border-color:var(--brown)}
.rel div:first-child{width:84px;height:84px;border-radius:14px;flex:none;position:relative;overflow:hidden}
.rel svg{position:absolute;inset:0;width:100%;height:100%}
.rel b{display:block;font:700 1.1rem/1.15 var(--f-d);color:var(--brown)}
.rel span{font-size:.85rem;color:var(--muted)}

/* pedido */
.order{position:fixed;z-index:25;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom,0px));width:min(580px,calc(100% - 32px));background:var(--ink);color:var(--paper);border-radius:18px;padding:.9rem .9rem .9rem 1.2rem;display:flex;align-items:center;gap:1rem;box-shadow:0 20px 40px -14px rgba(0,0,0,.5)}
.order__txt{flex:1;min-width:0;font-size:.92rem;line-height:1.3}
.order__txt b{display:block;font-family:var(--f-d);font-size:1.05rem}
.order__txt span{opacity:.75;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.order button.clear{background:transparent;border:0;color:var(--paper);opacity:.6;cursor:pointer;font:500 .85rem var(--f-b)}

.cta{background:var(--orange)}
.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}
.cta h2{max-width:18ch;color:var(--ink)}
footer{background:var(--ink);color:#d6cab8;font-size:.88rem}
footer .wrap{display:grid;gap:1rem;padding-block:2rem calc(5.5rem + env(safe-area-inset-bottom,0px))}
footer .row{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
footer a{color:#f0b46a}
footer small{opacity:.7;max-width:62rem;display:block}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
