/* ═══════════════════════════════════════════════════════════
   FÉLIX · Versión B — rediseño orientado a venta
   Color-blocking por sabor, precio siempre visible, PDP fuerte.
   Tipografía: Instrument Serif (display) / Neue Haas Grotesk (texto)
   ⚠ Neue Haas requiere licencia webfont. Sustituto temporal: Inter.
   ═══════════════════════════════════════════════════════════ */

/* ── Tipografías oficiales (self-hosted del brand pack) ── */
@font-face{font-family:'Neue Haas Grotesk Display Pro';src:url('fonts/NeueHaas-Light.ttf') format('truetype');font-weight:300;font-display:swap}
@font-face{font-family:'Neue Haas Grotesk Display Pro';src:url('fonts/NeueHaas-Roman.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Neue Haas Grotesk Display Pro';src:url('fonts/NeueHaas-Medium.ttf') format('truetype');font-weight:500 600;font-display:swap}
@font-face{font-family:'Neue Haas Grotesk Display Pro';src:url('fonts/NeueHaas-Bold.ttf') format('truetype');font-weight:700 800;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('fonts/InstrumentSerif-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('fonts/InstrumentSerif-Italic.otf') format('opentype');font-weight:400;font-style:italic;font-display:swap}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --semilla:#5b261e;  --nata:#fcf3c5;   --manzana:#b72323;
  --tomatillo:#697d1e; --papaya:#fe5d33;
  --frambuesa:#87162d; --mandarina:#f37435; --soleado:#feca58;
  --melocoton:#faba9c; --jugo:#d5e386;    --sandia:#ed2124;
  --liston:#d0acd1;    --guayaba:#ed7a7c;  --cajeta:#5f0c09;
  --cielo:#bce5e7;     --mineral:#407880;  --pasto:#697d1e;
  --nata-clara:#f4f0e1;

  --f-display:'Instrument Serif', Georgia, serif;
  --f-sans:'Neue Haas Grotesk Display Pro','Inter',Helvetica,Arial,sans-serif;
  --max:1400px;
  --pad:clamp(18px,4vw,44px);
  --ease:cubic-bezier(.22,.61,.36,1);
}

html{scroll-behavior:smooth}
body{font-family:var(--f-sans);background:var(--nata-clara);color:var(--semilla);line-height:1.55;
  -webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
:focus-visible{outline:2px solid var(--semilla);outline-offset:3px}

.wrap{max-width:var(--max);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
h1,h2,h3{font-family:var(--f-display);font-weight:400;line-height:1;letter-spacing:-.01em}
.flor{clip-path:url(#florClip)}

/* ── Loader ─────────────────────────────────────────── */
#loader{position:fixed;inset:0;z-index:9999;background:var(--manzana);display:grid;place-items:center;
  transition:opacity .55s var(--ease),visibility .55s}
#loader .figs{display:flex;gap:clamp(18px,4vw,30px);align-items:center}
#loader .fig{width:clamp(38px,7vw,56px);height:auto;
  animation:figPop .55s var(--ease) backwards, figOnda 1.5s ease-in-out .55s infinite}
#loader .fig.circ{display:block;aspect-ratio:1;background:var(--nata);border-radius:50%}
#loader .fig:nth-child(2){animation-delay:.12s,.67s}
#loader .fig:nth-child(3){animation-delay:.24s,.79s}
#loader .fig:nth-child(4){animation-delay:.36s,.91s}
@keyframes figPop{from{transform:scale(0) rotate(-100deg);opacity:0}}
@keyframes figOnda{0%,100%{transform:translateY(0) rotate(0)}
  30%{transform:translateY(-15px) rotate(7deg)}60%{transform:translateY(2px) rotate(-4deg)}}
@keyframes pulso{0%,100%{opacity:.55;transform:scale(.97)}50%{opacity:1;transform:scale(1)}}
body.cargado #loader{opacity:0;visibility:hidden}

/* ── Barra de envío + header ────────────────────────── */
.envio-barra{background:var(--semilla);color:var(--nata);text-align:center;padding:9px 16px;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.envio-barra b{color:var(--soleado)}

.header{position:sticky;top:0;z-index:900;background:var(--nata-clara);
  border-bottom:1px solid rgba(91,38,30,.10)}
.header .barra{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:14px 0}
.header .logo{justify-self:start}
.header .acciones{justify-self:end}
@media(max-width:900px){.header .barra{display:flex;justify-content:space-between}}
.header .logo img{width:76px}
.nav{display:flex;gap:26px}
.nav a{font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;font-weight:600;padding:6px 0;position:relative}
.nav a::after{content:'';position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--manzana);
  transition:right .3s var(--ease)}
.nav a:hover::after,.nav a[aria-current]::after{right:0}
.acciones{display:flex;align-items:center;gap:14px}
.icono{width:20px;height:20px;stroke:var(--semilla);stroke-width:1.7;fill:none}
.carrito-btn{position:relative;display:flex;align-items:center;gap:8px;background:var(--semilla);color:var(--nata);
  padding:10px 18px;border-radius:999px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;
  font-weight:600;min-height:42px;transition:background .25s var(--ease)}
.carrito-btn .icono{stroke:var(--nata);width:17px;height:17px}
.carrito-btn:hover{background:var(--manzana)}
.menu-btn{display:none}

/* ── Botones ────────────────────────────────────────── */
.btn{display:inline-block;background:var(--semilla);color:var(--nata);font-size:11.5px;letter-spacing:.16em;
  text-transform:uppercase;font-weight:700;padding:16px 34px;border-radius:999px;min-height:48px;
  transition:transform .22s var(--ease),background .22s var(--ease),box-shadow .22s var(--ease)}
.btn:hover{transform:translateY(-2px);background:var(--manzana);box-shadow:0 10px 26px rgba(91,38,30,.22)}
.btn.rojo{background:var(--manzana)}
.btn.rojo:hover{background:var(--semilla)}
.btn.claro{background:var(--nata);color:var(--semilla)}
.btn.claro:hover{background:#fff;color:var(--manzana)}
.btn.grande{padding:19px 44px;font-size:12.5px}

/* ── Hero ───────────────────────────────────────────── */
.hero-b{background:var(--mandarina);color:var(--nata);position:relative;overflow:hidden;
  min-height:clamp(520px,74vh,760px);display:grid;align-items:center;
  transition:background 1s var(--ease)}
.hero-copys{position:relative}
.hero-copy{transition:opacity .55s var(--ease),transform .55s var(--ease)}
.hero-copy:not(.activo){position:absolute;inset:0;opacity:0;pointer-events:none;transform:translateY(14px)}
.hero-b .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;
  padding-top:56px;padding-bottom:56px;position:relative;z-index:2;width:100%;justify-self:center}
.hero-b h1{font-size:clamp(46px,8.4vw,116px);line-height:.92;margin-bottom:22px;text-wrap:balance}
.hero-b .sub{font-size:clamp(15px,1.7vw,19px);max-width:44ch;margin-bottom:34px;opacity:.94}
.hero-b .acciones-hero{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.hero-b .foto{position:relative}
.hero-b .foto>img{width:100%;max-height:560px;object-fit:contain;
  filter:drop-shadow(0 28px 50px rgba(91,38,30,.28));animation:flotarProd 6s ease-in-out infinite}
@keyframes flotarProd{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.hero-b::before{content:'';position:absolute;width:760px;height:760px;border-radius:50%;
  background:rgba(255,255,255,.09);right:-160px;top:-220px}
.hero-b .desde{font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;opacity:.85}

/* ── Barra de claims en celdas ──────────────────────── */
.claims{display:grid;grid-template-columns:repeat(5,1fr);border-top:1.5px solid var(--semilla);
  border-bottom:1.5px solid var(--semilla);background:var(--nata-clara)}
.claims div{padding:20px 14px;text-align:center;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;
  font-weight:700;border-right:1.5px solid var(--semilla)}
.claims div:last-child{border-right:0}

/* ── Rejilla de sabores (con aire) ──────────────────── */
.sabores{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
  padding:0 clamp(16px,3vw,40px) 56px;max-width:1400px;margin:0 auto}
.sabor{position:relative;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;
  padding:22px 22px 18px;min-height:420px;text-align:left;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease)}
.sabor:hover{transform:translateY(-5px);box-shadow:0 18px 44px rgba(91,38,30,.18)}
.sabor h3{font-size:clamp(22px,2vw,27px);line-height:1.05;position:relative;z-index:2}
.sabor .meta{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;opacity:.78;
  margin-top:5px;position:relative;z-index:2}
.sabor .imagen{flex:1;display:grid;place-items:center;width:100%;padding:10px 0;position:relative;z-index:2}
.sabor .imagen img{max-height:225px;width:auto;max-width:86%;object-fit:contain;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.22));transition:transform .45s var(--ease)}
.sabor:hover .imagen img{transform:scale(1.06)}
.sabor .pie-sabor{display:flex;align-items:center;justify-content:space-between;gap:12px;
  position:relative;z-index:2;margin-top:8px}
.sabor .precio-b{font-family:var(--f-display);font-size:24px}
.sabor .precio-b small{font-size:10px;font-family:var(--f-sans);letter-spacing:.08em;opacity:.6}
.sabor .ver{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;opacity:.85}
.sabor .add{background:var(--semilla);color:var(--nata);font-size:10.5px;letter-spacing:.13em;
  text-transform:uppercase;font-weight:700;padding:12px 20px;border-radius:999px;min-height:44px;
  transition:transform .2s var(--ease),background .2s var(--ease)}
.sabor .add:hover{transform:translateY(-2px);background:var(--manzana)}
.sabor.claro{color:var(--semilla)}
.sabor.oscuro{color:var(--nata)}
.sabor.oscuro .add{background:var(--nata);color:var(--semilla)}
.sabor.oculto{display:none}
.sabores.mini{padding:0;gap:16px}
.sabores.mini .sabor{min-height:320px}
.sabores.mini .sabor .imagen img{max-height:155px}

/* ── Bloques ────────────────────────────────────────── */
.bloque{padding:clamp(60px,8vw,104px) 0}
.bloque.corto{padding:clamp(40px,5vw,64px) 0}
.centrado{text-align:center}
.titulo-xl{font-size:clamp(38px,6.6vw,92px);line-height:.94;text-wrap:balance}
.titulo{font-size:clamp(30px,4.4vw,54px);text-wrap:balance}
.kicker{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;opacity:.5;margin-bottom:14px}
.lede{font-size:16px;max-width:60ch;opacity:.82;line-height:1.72}
.fila-tit{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:36px}

/* ── Bundles ────────────────────────────────────────── */
.bundles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.bundle{border:1.5px solid var(--semilla);border-radius:18px;padding:32px 30px 30px;display:flex;
  flex-direction:column;background:var(--nata-clara);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bundle:hover{transform:translateY(-5px);box-shadow:0 16px 38px rgba(91,38,30,.14)}
.bundle.destacado{background:var(--semilla);color:var(--nata);border-color:var(--semilla)}
.bundle .etiqueta{align-self:flex-start;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:700;background:var(--soleado);color:var(--semilla);padding:5px 12px;border-radius:999px;margin-bottom:18px}
.bundle h3{font-size:32px;margin-bottom:8px}
.bundle .desc{font-size:14.5px;opacity:.8;margin-bottom:22px;line-height:1.6}
.bundle .precio-bundle{font-family:var(--f-display);font-size:46px;line-height:1;margin-bottom:4px}
.bundle .unitario{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;opacity:.6;margin-bottom:24px}
.bundle .btn{margin-top:auto;text-align:center}
.bundle.destacado .btn{background:var(--soleado);color:var(--semilla)}
.bundle.destacado .btn:hover{background:var(--nata)}

/* ── Franja partida ─────────────────────────────────── */
.partido{display:grid;grid-template-columns:1fr 1fr;min-height:520px}
.partido .texto{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,6vw,84px)}
.partido .visual{background-size:cover;background-position:center;min-height:340px}
.partido.rojo .texto{background:var(--manzana);color:var(--nata)}
.partido.teal .texto{background:var(--mineral);color:var(--nata)}
.partido h2{font-size:clamp(30px,4.2vw,56px);margin-bottom:18px}
.partido p{font-size:16px;opacity:.9;line-height:1.72;margin-bottom:28px;max-width:46ch}

/* ── Iconos de claims ───────────────────────────────── */
.iconos{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;text-align:center}
.icono-claim .circulo{width:76px;height:76px;margin:0 auto 14px;background:var(--soleado);
  display:grid;place-items:center;font-family:var(--f-display);font-size:26px;color:var(--cajeta)}
.icono-claim:nth-child(2) .circulo{background:var(--jugo)}
.icono-claim:nth-child(3) .circulo{background:var(--melocoton)}
.icono-claim:nth-child(4) .circulo{background:var(--cielo)}
.icono-claim:nth-child(5) .circulo{background:var(--liston)}
.icono-claim p{font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;font-weight:600;opacity:.8;line-height:1.5}

/* ── PDP ────────────────────────────────────────────── */
.pdp{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,64px);align-items:start;
  padding-top:clamp(30px,4vw,52px);padding-bottom:clamp(48px,6vw,80px)}
.galeria .principal{aspect-ratio:1;display:grid;place-items:center;border-radius:20px;overflow:hidden;margin-bottom:14px}
.galeria .principal img{max-width:72%;max-height:82%;object-fit:contain}
.galeria .miniaturas{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.galeria .miniaturas button{aspect-ratio:1;border-radius:12px;display:grid;place-items:center;overflow:hidden;
  border:2px solid transparent;transition:border-color .25s}
.galeria .miniaturas button.activa{border-color:var(--semilla)}
.galeria .miniaturas img{max-width:70%;max-height:76%;object-fit:contain}

.info-pdp h1{font-size:clamp(36px,5vw,64px);margin-bottom:8px}
.info-pdp .origen{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  color:var(--manzana);margin-bottom:20px}
.info-pdp .precio-pdp{font-family:var(--f-display);font-size:46px;line-height:1;margin-bottom:4px}
.info-pdp .por-unidad{font-size:12px;letter-spacing:.1em;text-transform:uppercase;opacity:.55;margin-bottom:26px}
.info-pdp .desc-pdp{font-size:16px;line-height:1.75;opacity:.85;margin-bottom:28px}
.opciones{margin-bottom:24px}
.opciones .etiqueta-op{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  opacity:.55;margin-bottom:10px}
.chips{display:flex;gap:9px;flex-wrap:wrap}
.chip{border:1.5px solid rgba(91,38,30,.24);border-radius:999px;padding:11px 20px;font-size:12px;
  font-weight:600;min-height:44px;transition:all .22s var(--ease)}
.chip:hover{border-color:var(--semilla)}
.chip.activo{background:var(--semilla);color:var(--nata);border-color:var(--semilla)}
.compra{display:flex;gap:12px;align-items:stretch;margin-bottom:20px;flex-wrap:wrap}
.cantidad{display:flex;align-items:center;border:1.5px solid var(--semilla);border-radius:999px;overflow:hidden}
.cantidad button{width:46px;height:56px;font-size:19px;transition:background .2s}
.cantidad button:hover{background:rgba(91,38,30,.07)}
.cantidad span{min-width:38px;text-align:center;font-weight:600;font-size:16px}
.compra .btn{flex:1;min-width:200px;height:56px;display:grid;place-items:center;padding:0 28px}
.envio-nota{font-size:13px;opacity:.7;margin-bottom:30px}
.envio-nota b{opacity:1}
.mp-fila{display:flex;gap:9px;margin-bottom:30px}
.mp-b{flex:1;text-align:center;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  padding:12px;border-radius:999px;border:1.5px solid rgba(91,38,30,.2);opacity:.7;transition:all .22s}
.mp-b:hover{opacity:1;border-color:var(--semilla)}

.acordeon{border-top:1px solid rgba(91,38,30,.16)}
.acordeon details{border-bottom:1px solid rgba(91,38,30,.16)}
.acordeon summary{padding:18px 0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.acordeon summary::-webkit-details-marker{display:none}
.acordeon summary::after{content:'+';font-size:20px;font-weight:400;transition:transform .25s}
.acordeon details[open] summary::after{transform:rotate(45deg)}
.acordeon .contenido-ac{padding:0 0 20px;font-size:14.5px;line-height:1.75;opacity:.82}
.acordeon table{width:100%;border-collapse:collapse;font-size:13.5px}
.acordeon td{padding:7px 0;border-bottom:1px dashed rgba(91,38,30,.14)}
.acordeon td:last-child{text-align:right;font-weight:600}

/* ── Filtros ────────────────────────────────────────── */
.filtros{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:0 var(--pad) 32px}
.filtro{font-family:var(--f-display);font-size:clamp(18px,1.6vw,21px);letter-spacing:0;text-transform:none;
  font-weight:400;padding:8px 4px;min-height:44px;display:inline-flex;align-items:center;gap:9px;
  opacity:.5;transition:opacity .22s var(--ease),color .22s var(--ease)}
.filtro::before{content:'';width:14px;height:14px;background:url('img/ic-vector-flor.png') center/contain no-repeat;
  transform:scale(0);transition:transform .3s var(--ease)}
.filtro:hover{opacity:.85}
.filtro.activo{opacity:1;color:var(--manzana)}
.filtro.activo::before{transform:scale(1)}

/* ── Reseñas ────────────────────────────────────────── */
.resenas{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.resena{background:var(--nata-clara);border-radius:16px;padding:28px 30px}
.resena .estrellas{color:var(--soleado);letter-spacing:.2em;font-size:13px;margin-bottom:14px}
.resena p{font-family:var(--f-display);font-size:21px;line-height:1.35;margin-bottom:16px}
.resena .quien{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;opacity:.5}

/* ── Puntos de venta ────────────────────────────────── */
.lista-puntos{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.punto-venta{border:1.5px solid rgba(91,38,30,.16);border-radius:14px;padding:22px 24px;
  transition:all .28s var(--ease)}
.punto-venta:hover{border-color:var(--semilla);transform:translateY(-3px)}
.punto-venta h3{font-size:23px;margin-bottom:6px}
.punto-venta .zona{display:inline-block;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:700;background:var(--nata);padding:4px 10px;border-radius:999px;margin-bottom:10px}
.punto-venta address{font-style:normal;font-size:13px;opacity:.75;line-height:1.6;margin-bottom:12px}
.punto-venta a.maps{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;
  color:var(--manzana);border-bottom:1.5px solid currentColor;padding-bottom:2px}
.punto-venta.oculto{display:none}

/* ── Recetas ────────────────────────────────────────── */
.rejilla-recetas{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tarjeta-receta{border-radius:16px;overflow:hidden;background:var(--nata-clara);display:flex;flex-direction:column;
  transition:transform .32s var(--ease),box-shadow .32s var(--ease)}
.tarjeta-receta:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(91,38,30,.14)}
.tarjeta-receta .foto{aspect-ratio:4/3;overflow:hidden}
.tarjeta-receta .foto img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.tarjeta-receta:hover .foto img{transform:scale(1.06)}
.tarjeta-receta .cuerpo{padding:26px 28px 30px;flex:1;display:flex;flex-direction:column}
.tarjeta-receta h3{font-size:28px;margin-bottom:6px}
.tarjeta-receta .base{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--manzana);
  font-weight:700;margin-bottom:16px}
.tarjeta-receta ul{list-style:none;margin-bottom:16px}
.tarjeta-receta li{font-size:14px;padding-left:16px;position:relative;margin-bottom:5px;opacity:.85}
.tarjeta-receta li::before{content:'';position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;
  background:var(--manzana);opacity:.55}
.tarjeta-receta .prep{font-size:13.5px;opacity:.78;line-height:1.65;margin-top:auto;padding-top:14px;
  border-top:1px dashed rgba(91,38,30,.16)}

/* ── Editorial / Nosotros ───────────────────────────── */
.dos{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.dos.invertido>*:first-child{order:2}
.dos img{border-radius:16px;width:100%}
.dos h2{font-size:clamp(28px,3.9vw,46px);margin-bottom:16px}
.dos p{font-size:15.5px;opacity:.85;line-height:1.78;margin-bottom:14px}

/* ── Formulario ─────────────────────────────────────── */
.form-contacto{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.campo{display:flex;flex-direction:column;gap:7px}
.campo.ancho{grid-column:1/-1}
.campo label{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;opacity:.55}
.campo input,.campo textarea,.campo select{border:1.5px solid rgba(91,38,30,.22);border-radius:12px;
  padding:14px 16px;font:inherit;font-size:15px;background:var(--nata-clara);min-height:48px;transition:border-color .22s}
.campo textarea{min-height:140px;resize:vertical}
.campo input:focus,.campo textarea:focus,.campo select:focus{outline:none;border-color:var(--semilla)}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.datos-contacto{display:grid;gap:24px}
.dato h3{font-family:var(--f-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:700;opacity:.5;margin-bottom:5px}
.dato p,.dato a{font-size:16px;line-height:1.6}
.dato a:hover{color:var(--manzana)}

/* ── Legal ──────────────────────────────────────────── */
.legal-texto{max-width:760px}
.legal-texto h2{font-size:27px;margin:36px 0 12px}
.legal-texto h2:first-child{margin-top:0}
.legal-texto p,.legal-texto li{font-size:15px;opacity:.85;line-height:1.8;margin-bottom:12px}
.legal-texto ul{padding-left:22px}

/* ── Footer ─────────────────────────────────────────── */
footer{background:var(--semilla);color:var(--nata);padding:clamp(56px,7vw,88px) 0 36px}
.pie{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:44px;margin-bottom:56px}
.pie img.logo-pie{width:118px;margin-bottom:18px;filter:brightness(0) invert(1) sepia(.3) saturate(3) hue-rotate(2deg)}
.pie h4{font-family:var(--f-sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
  font-weight:700;opacity:.5;margin-bottom:16px}
.pie ul{list-style:none}
.pie li{margin-bottom:10px}
.pie li a{font-size:14px;opacity:.85;transition:opacity .2s,color .2s}
.pie li a:hover{opacity:1;color:var(--soleado)}
.suscribir{display:flex;max-width:340px;margin-top:16px;border:1.5px solid rgba(252,243,197,.3);
  border-radius:999px;overflow:hidden}
.suscribir input{flex:1;border:0;padding:13px 18px;font:inherit;font-size:14px;background:transparent;
  color:var(--nata);outline:none;min-height:46px}
.suscribir input::placeholder{color:rgba(252,243,197,.5)}
.suscribir button{background:var(--soleado);color:var(--semilla);padding:0 22px;font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;font-weight:700;transition:background .22s}
.suscribir button:hover{background:var(--nata)}
.redes{display:flex;gap:13px;margin-top:24px}
.redes a{width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(252,243,197,.28);display:grid;
  place-items:center;transition:all .25s var(--ease)}
.redes a:hover{background:var(--soleado);border-color:var(--soleado)}
.redes a:hover svg{stroke:var(--semilla)}
.redes svg{width:15px;height:15px;stroke:var(--nata);stroke-width:1.7;fill:none;transition:stroke .25s}
.contacto-pie{font-size:14px;line-height:1.8;opacity:.82}
.legal-pie{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:26px;
  border-top:1px solid rgba(252,243,197,.16);font-size:12px;opacity:.6}
.pagos{display:flex;gap:8px;align-items:center}
.pago{border:1px solid rgba(252,243,197,.28);border-radius:4px;padding:4px 8px;font-size:9px;font-weight:700;
  letter-spacing:.06em}

/* ── Reveals + subir ────────────────────────────────── */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s var(--ease),transform .75s var(--ease)}
.reveal.visible{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.07s}
.reveal[data-d="2"]{transition-delay:.14s}
.reveal[data-d="3"]{transition-delay:.21s}
.reveal[data-d="4"]{transition-delay:.28s}
.subir{position:fixed;right:20px;bottom:20px;z-index:800;width:46px;height:46px;border-radius:50%;
  background:var(--semilla);display:grid;place-items:center;opacity:0;visibility:hidden;
  transition:all .32s var(--ease);box-shadow:0 6px 20px rgba(91,38,30,.24)}
.subir.visible{opacity:1;visibility:visible}
.subir:hover{background:var(--manzana)}
.subir svg{width:17px;height:17px;stroke:var(--nata);stroke-width:2;fill:none}

/* ── Responsive ─────────────────────────────────────── */
@media(max-width:1080px){
  .sabores{grid-template-columns:repeat(3,1fr)}
  .lista-puntos{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .hero-b .wrap{grid-template-columns:1fr;text-align:center}
  .hero-b .foto{order:-1}
  .hero-b .foto img{max-height:300px;margin:0 auto}
  .hero-b .acciones-hero{justify-content:center}
  .claims{grid-template-columns:repeat(2,1fr)}
  .claims div:nth-child(2n){border-right:0}
  .claims div{border-bottom:1.5px solid var(--semilla)}
  .bundles,.resenas,.rejilla-recetas{grid-template-columns:1fr}
  .partido{grid-template-columns:1fr}
  .pdp{grid-template-columns:1fr}
  .dos{grid-template-columns:1fr}
  .dos.invertido>*:first-child{order:0}
  .iconos{grid-template-columns:repeat(3,1fr);gap:24px}
  .lista-puntos{grid-template-columns:repeat(2,1fr)}
  .pie{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:720px){
  .nav{position:fixed;inset:0;background:var(--manzana);flex-direction:column;justify-content:center;
    align-items:center;gap:26px;z-index:950;transform:translateY(-100%);transition:transform .45s var(--ease)}
  .nav.abierto{transform:none}
  .nav a{font-size:17px;color:var(--nata)}
  .nav a::after{background:var(--nata)}
  .menu-btn{display:grid;place-items:center;width:44px;height:44px;position:relative;z-index:960}
  .menu-btn span{display:block;width:22px;height:1.8px;background:var(--semilla);transition:all .3s var(--ease)}
  .menu-btn span+span{margin-top:5px}
  .menu-btn.activo span{background:var(--nata)}
  .menu-btn.activo span:first-child{transform:translateY(3.4px) rotate(45deg)}
  .menu-btn.activo span:last-child{transform:translateY(-3.4px) rotate(-45deg)}
  .sabores{grid-template-columns:repeat(2,1fr)}
  .sabor{padding:22px 14px}
  .form-contacto{grid-template-columns:1fr}
  .carrito-btn span.txt{display:none}
  .carrito-btn{padding:11px 14px}
}
@media(max-width:520px){
  .lista-puntos{grid-template-columns:1fr}
  .iconos{grid-template-columns:repeat(2,1fr)}
  .pie{grid-template-columns:1fr}
  .galeria .miniaturas{grid-template-columns:repeat(4,1fr)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important}
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none}
}

/* ── PDP ────────────────────────────────────────────── */
.pdp{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,64px);align-items:start;
  padding-top:clamp(30px,4vw,52px);padding-bottom:clamp(48px,6vw,80px)}
.galeria .principal{aspect-ratio:1;display:grid;place-items:center;border-radius:20px;overflow:hidden;margin-bottom:14px}
.galeria .principal img{max-width:72%;max-height:82%;object-fit:contain}
.galeria .miniaturas{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.galeria .miniaturas button{aspect-ratio:1;border-radius:12px;display:grid;place-items:center;overflow:hidden;
  border:2px solid transparent;transition:border-color .25s}
.galeria .miniaturas button.activa{border-color:var(--semilla)}
.galeria .miniaturas img{max-width:70%;max-height:76%;object-fit:contain}

.info-pdp h1{font-size:clamp(36px,5vw,64px);margin-bottom:8px}
.info-pdp .origen{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  color:var(--manzana);margin-bottom:20px}
.info-pdp .precio-pdp{font-family:var(--f-display);font-size:46px;line-height:1;margin-bottom:4px}
.info-pdp .por-unidad{font-size:12px;letter-spacing:.1em;text-transform:uppercase;opacity:.55;margin-bottom:26px}
.info-pdp .desc-pdp{font-size:16px;line-height:1.75;opacity:.85;margin-bottom:28px}
.opciones{margin-bottom:24px}
.opciones .etiqueta-op{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  opacity:.55;margin-bottom:10px}
.chips{display:flex;gap:9px;flex-wrap:wrap}
.chip{border:1.5px solid rgba(91,38,30,.24);border-radius:999px;padding:11px 20px;font-size:12px;
  font-weight:600;min-height:44px;transition:all .22s var(--ease)}
.chip:hover{border-color:var(--semilla)}
.chip.activo{background:var(--semilla);color:var(--nata);border-color:var(--semilla)}
.compra{display:flex;gap:12px;align-items:stretch;margin-bottom:20px;flex-wrap:wrap}
.cantidad{display:flex;align-items:center;border:1.5px solid var(--semilla);border-radius:999px;overflow:hidden}
.cantidad button{width:46px;height:56px;font-size:19px;transition:background .2s}
.cantidad button:hover{background:rgba(91,38,30,.07)}
.cantidad span{min-width:38px;text-align:center;font-weight:600;font-size:16px}
.compra .btn{flex:1;min-width:200px;height:56px;display:grid;place-items:center;padding:0 28px}
.envio-nota{font-size:13px;opacity:.7;margin-bottom:30px}
.envio-nota b{opacity:1}
.mp-fila{display:flex;gap:9px;margin-bottom:30px}
.mp-b{flex:1;text-align:center;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  padding:12px;border-radius:999px;border:1.5px solid rgba(91,38,30,.2);opacity:.7;transition:all .22s}
.mp-b:hover{opacity:1;border-color:var(--semilla)}

.acordeon{border-top:1px solid rgba(91,38,30,.16)}
.acordeon details{border-bottom:1px solid rgba(91,38,30,.16)}
.acordeon summary{padding:18px 0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.acordeon summary::-webkit-details-marker{display:none}
.acordeon summary::after{content:'+';font-size:20px;font-weight:400;transition:transform .25s}
.acordeon details[open] summary::after{transform:rotate(45deg)}
.acordeon .contenido-ac{padding:0 0 20px;font-size:14.5px;line-height:1.75;opacity:.82}
.acordeon table{width:100%;border-collapse:collapse;font-size:13.5px}
.acordeon td{padding:7px 0;border-bottom:1px dashed rgba(91,38,30,.14)}
.acordeon td:last-child{text-align:right;font-weight:600}

/* ── Filtros ────────────────────────────────────────── */
.filtros{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:0 var(--pad) 32px}
.filtro{font-family:var(--f-display);font-size:clamp(18px,1.6vw,21px);letter-spacing:0;text-transform:none;
  font-weight:400;padding:8px 4px;min-height:44px;display:inline-flex;align-items:center;gap:9px;
  opacity:.5;transition:opacity .22s var(--ease),color .22s var(--ease)}
.filtro::before{content:'';width:14px;height:14px;background:url('img/ic-vector-flor.png') center/contain no-repeat;
  transform:scale(0);transition:transform .3s var(--ease)}
.filtro:hover{opacity:.85}
.filtro.activo{opacity:1;color:var(--manzana)}
.filtro.activo::before{transform:scale(1)}

/* ── Reseñas ────────────────────────────────────────── */
.resenas{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.resena{background:var(--nata-clara);border-radius:16px;padding:28px 30px}
.resena .estrellas{color:var(--soleado);letter-spacing:.2em;font-size:13px;margin-bottom:14px}
.resena p{font-family:var(--f-display);font-size:21px;line-height:1.35;margin-bottom:16px}
.resena .quien{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;opacity:.5}

/* ── Puntos de venta ────────────────────────────────── */
.lista-puntos{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.punto-venta{border:1.5px solid rgba(91,38,30,.16);border-radius:14px;padding:22px 24px;
  transition:all .28s var(--ease)}
.punto-venta:hover{border-color:var(--semilla);transform:translateY(-3px)}
.punto-venta h3{font-size:23px;margin-bottom:6px}
.punto-venta .zona{display:inline-block;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:700;background:var(--nata);padding:4px 10px;border-radius:999px;margin-bottom:10px}
.punto-venta address{font-style:normal;font-size:13px;opacity:.75;line-height:1.6;margin-bottom:12px}
.punto-venta a.maps{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;
  color:var(--manzana);border-bottom:1.5px solid currentColor;padding-bottom:2px}
.punto-venta.oculto{display:none}

/* ── Recetas ────────────────────────────────────────── */
.rejilla-recetas{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tarjeta-receta{border-radius:16px;overflow:hidden;background:var(--nata-clara);display:flex;flex-direction:column;
  transition:transform .32s var(--ease),box-shadow .32s var(--ease)}
.tarjeta-receta:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(91,38,30,.14)}
.tarjeta-receta .foto{aspect-ratio:4/3;overflow:hidden}
.tarjeta-receta .foto img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.tarjeta-receta:hover .foto img{transform:scale(1.06)}
.tarjeta-receta .cuerpo{padding:26px 28px 30px;flex:1;display:flex;flex-direction:column}
.tarjeta-receta h3{font-size:28px;margin-bottom:6px}
.tarjeta-receta .base{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--manzana);
  font-weight:700;margin-bottom:16px}
.tarjeta-receta ul{list-style:none;margin-bottom:16px}
.tarjeta-receta li{font-size:14px;padding-left:16px;position:relative;margin-bottom:5px;opacity:.85}
.tarjeta-receta li::before{content:'';position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;
  background:var(--manzana);opacity:.55}
.tarjeta-receta .prep{font-size:13.5px;opacity:.78;line-height:1.65;margin-top:auto;padding-top:14px;
  border-top:1px dashed rgba(91,38,30,.16)}

/* ── Editorial / Nosotros ───────────────────────────── */
.dos{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.dos.invertido>*:first-child{order:2}
.dos img{border-radius:16px;width:100%}
.dos h2{font-size:clamp(28px,3.9vw,46px);margin-bottom:16px}
.dos p{font-size:15.5px;opacity:.85;line-height:1.78;margin-bottom:14px}

/* ── Formulario ─────────────────────────────────────── */
.form-contacto{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.campo{display:flex;flex-direction:column;gap:7px}
.campo.ancho{grid-column:1/-1}
.campo label{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;opacity:.55}
.campo input,.campo textarea,.campo select{border:1.5px solid rgba(91,38,30,.22);border-radius:12px;
  padding:14px 16px;font:inherit;font-size:15px;background:var(--nata-clara);min-height:48px;transition:border-color .22s}
.campo textarea{min-height:140px;resize:vertical}
.campo input:focus,.campo textarea:focus,.campo select:focus{outline:none;border-color:var(--semilla)}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.datos-contacto{display:grid;gap:24px}
.dato h3{font-family:var(--f-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:700;opacity:.5;margin-bottom:5px}
.dato p,.dato a{font-size:16px;line-height:1.6}
.dato a:hover{color:var(--manzana)}

/* ── Legal ──────────────────────────────────────────── */
.legal-texto{max-width:760px}
.legal-texto h2{font-size:27px;margin:36px 0 12px}
.legal-texto h2:first-child{margin-top:0}
.legal-texto p,.legal-texto li{font-size:15px;opacity:.85;line-height:1.8;margin-bottom:12px}
.legal-texto ul{padding-left:22px}

/* ── Footer ─────────────────────────────────────────── */
footer{background:var(--semilla);color:var(--nata);padding:clamp(56px,7vw,88px) 0 36px}
.pie{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:44px;margin-bottom:56px}
.pie img.logo-pie{width:118px;margin-bottom:18px;filter:brightness(0) invert(1) sepia(.3) saturate(3) hue-rotate(2deg)}
.pie h4{font-family:var(--f-sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
  font-weight:700;opacity:.5;margin-bottom:16px}
.pie ul{list-style:none}
.pie li{margin-bottom:10px}
.pie li a{font-size:14px;opacity:.85;transition:opacity .2s,color .2s}
.pie li a:hover{opacity:1;color:var(--soleado)}
.suscribir{display:flex;max-width:340px;margin-top:16px;border:1.5px solid rgba(252,243,197,.3);
  border-radius:999px;overflow:hidden}
.suscribir input{flex:1;border:0;padding:13px 18px;font:inherit;font-size:14px;background:transparent;
  color:var(--nata);outline:none;min-height:46px}
.suscribir input::placeholder{color:rgba(252,243,197,.5)}
.suscribir button{background:var(--soleado);color:var(--semilla);padding:0 22px;font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;font-weight:700;transition:background .22s}
.suscribir button:hover{background:var(--nata)}
.redes{display:flex;gap:13px;margin-top:24px}
.redes a{width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(252,243,197,.28);display:grid;
  place-items:center;transition:all .25s var(--ease)}
.redes a:hover{background:var(--soleado);border-color:var(--soleado)}
.redes a:hover svg{stroke:var(--semilla)}
.redes svg{width:15px;height:15px;stroke:var(--nata);stroke-width:1.7;fill:none;transition:stroke .25s}
.contacto-pie{font-size:14px;line-height:1.8;opacity:.82}
.legal-pie{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:26px;
  border-top:1px solid rgba(252,243,197,.16);font-size:12px;opacity:.6}
.pagos{display:flex;gap:8px;align-items:center}
.pago{border:1px solid rgba(252,243,197,.28);border-radius:4px;padding:4px 8px;font-size:9px;font-weight:700;
  letter-spacing:.06em}

/* ── Reveals + subir ────────────────────────────────── */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s var(--ease),transform .75s var(--ease)}
.reveal.visible{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.07s}
.reveal[data-d="2"]{transition-delay:.14s}
.reveal[data-d="3"]{transition-delay:.21s}
.reveal[data-d="4"]{transition-delay:.28s}
.subir{position:fixed;right:20px;bottom:20px;z-index:800;width:46px;height:46px;border-radius:50%;
  background:var(--semilla);display:grid;place-items:center;opacity:0;visibility:hidden;
  transition:all .32s var(--ease);box-shadow:0 6px 20px rgba(91,38,30,.24)}
.subir.visible{opacity:1;visibility:visible}
.subir:hover{background:var(--manzana)}
.subir svg{width:17px;height:17px;stroke:var(--nata);stroke-width:2;fill:none}

/* ── Responsive ─────────────────────────────────────── */
@media(max-width:1080px){
  .sabores{grid-template-columns:repeat(3,1fr)}
  .lista-puntos{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .hero-b .wrap{grid-template-columns:1fr;text-align:center}
  .hero-b .foto{order:-1}
  .hero-b .foto img{max-height:300px;margin:0 auto}
  .hero-b .acciones-hero{justify-content:center}
  .claims{grid-template-columns:repeat(2,1fr)}
  .claims div:nth-child(2n){border-right:0}
  .claims div{border-bottom:1.5px solid var(--semilla)}
  .bundles,.resenas,.rejilla-recetas{grid-template-columns:1fr}
  .partido{grid-template-columns:1fr}
  .pdp{grid-template-columns:1fr}
  .dos{grid-template-columns:1fr}
  .dos.invertido>*:first-child{order:0}
  .iconos{grid-template-columns:repeat(3,1fr);gap:24px}
  .lista-puntos{grid-template-columns:repeat(2,1fr)}
  .pie{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:720px){
  .nav{position:fixed;inset:0;background:var(--manzana);flex-direction:column;justify-content:center;
    align-items:center;gap:26px;z-index:950;transform:translateY(-100%);transition:transform .45s var(--ease)}
  .nav.abierto{transform:none}
  .nav a{font-size:17px;color:var(--nata)}
  .nav a::after{background:var(--nata)}
  .menu-btn{display:grid;place-items:center;width:44px;height:44px;position:relative;z-index:960}
  .menu-btn span{display:block;width:22px;height:1.8px;background:var(--semilla);transition:all .3s var(--ease)}
  .menu-btn span+span{margin-top:5px}
  .menu-btn.activo span{background:var(--nata)}
  .menu-btn.activo span:first-child{transform:translateY(3.4px) rotate(45deg)}
  .menu-btn.activo span:last-child{transform:translateY(-3.4px) rotate(-45deg)}
  .sabores{grid-template-columns:repeat(2,1fr)}
  .sabor{padding:22px 14px}
  .form-contacto{grid-template-columns:1fr}
  .carrito-btn span.txt{display:none}
  .carrito-btn{padding:11px 14px}
}
@media(max-width:520px){
  .lista-puntos{grid-template-columns:1fr}
  .iconos{grid-template-columns:repeat(2,1fr)}
  .pie{grid-template-columns:1fr}
  .galeria .miniaturas{grid-template-columns:repeat(4,1fr)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important}
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none}
}

/* ── Tienda B: aire y jerarquía ─────────────────────── */
.sabores{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:0 clamp(16px,3vw,40px) 56px;
  max-width:1400px;margin:0 auto}
.sabor{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;padding:22px 22px 18px;
  min-height:420px;transition:transform .35s cubic-bezier(.22,.61,.36,1), box-shadow .35s}
.sabor:hover{transform:translateY(-5px);box-shadow:0 18px 44px rgba(91,38,30,.18)}
.sabor-texto{margin-bottom:10px}
.sabor h3{font-size:clamp(22px,2vw,27px);line-height:1.05}
.sabor .meta{font-size:10px;letter-spacing:.13em;text-transform:uppercase;opacity:.75;margin-top:5px}
.sabor .imagen{flex:1;display:grid;place-items:center;padding:8px 0}
.sabor .imagen img{max-height:230px;width:auto;max-width:88%;object-fit:contain;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.22));transition:transform .45s cubic-bezier(.22,.61,.36,1)}
.sabor:hover .imagen img{transform:scale(1.06)}
.pie-sabor{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.precio-b{font-family:var(--f-display);font-size:24px}
.precio-b small{font-size:10px;font-family:var(--f-sans);letter-spacing:.08em;opacity:.6}
.sabor .ver{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;opacity:.85}
.sabor.oscuro{color:var(--nata)}
.sabor.claro{color:var(--semilla)}
.sabores.mini{grid-template-columns:repeat(4,1fr);padding:0}
.sabores.mini .sabor{min-height:320px}
.sabores.mini .sabor .imagen img{max-height:160px}
@media(max-width:1020px){.sabores{grid-template-columns:repeat(2,1fr)}.sabores.mini{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.sabores{grid-template-columns:1fr}.sabor{min-height:380px}}

/* ── PDP ────────────────────────────────────────────── */
.pdp{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,4vw,60px);max-width:1240px;
  margin:0 auto;padding:clamp(24px,4vw,56px)}
.pdp-principal{border-radius:18px;display:grid;place-items:center;aspect-ratio:1;overflow:hidden}
.pdp-principal img{max-height:82%;max-width:82%;object-fit:contain;filter:drop-shadow(0 16px 34px rgba(0,0,0,.25))}
.pdp-thumbs{display:flex;gap:10px;margin-top:12px}
.thumb{width:76px;height:76px;border-radius:10px;overflow:hidden;border:2px solid transparent;padding:0;
  background:var(--nata-clara);transition:border-color .25s}
.thumb img{width:100%;height:100%;object-fit:cover}
.thumb.activo,.thumb:hover{border-color:var(--manzana)}
.pdp-info h1{font-size:clamp(32px,4vw,50px);margin:6px 0 4px}
.pdp-formato{font-size:11px;letter-spacing:.15em;text-transform:uppercase;opacity:.6;margin-bottom:14px}
.pdp-precio{font-family:var(--f-display);font-size:34px;margin-bottom:18px}
.pdp-precio small{font-size:11px;font-family:var(--f-sans);letter-spacing:.1em;opacity:.55}
.pdp-claims{list-style:none;margin-bottom:24px;display:grid;gap:8px}
.pdp-claims li{padding-left:28px;position:relative;font-size:14.5px;opacity:.88}
.pdp-claims li::before{content:'';position:absolute;left:0;top:2px;width:18px;height:18px;
  background:url('img/ic-flower.png') center/contain no-repeat}
.pdp-claims li:nth-child(2)::before{background-image:url('img/ic-circulo.png')}
.pdp-claims li:nth-child(3)::before{background-image:url('img/ic-blob.png')}
.pdp-claims li:nth-child(4)::before{background-image:url('img/ic-points.png')}
.pdp-compra{display:flex;gap:12px;align-items:stretch;margin-bottom:14px}
.cantidad{display:flex;border:1.5px solid rgba(91,38,30,.25);border-radius:999px;overflow:hidden}
.cantidad button{width:42px;font-size:19px;min-height:48px}
.cantidad button:hover{background:rgba(91,38,30,.06)}
.cantidad input{width:44px;text-align:center;border:0;font:inherit;font-size:16px;background:transparent;outline:none}
.agregar-pdp{flex:1;font-size:12px}
.pdp-envio{font-size:12.5px;opacity:.7}
.pdp-envio a{text-decoration:underline}
@media(max-width:860px){.pdp{grid-template-columns:1fr}}

/* ── Locator B ──────────────────────────────────────── */
.mapa-marco{position:relative;margin-top:26px}
#mapa{height:min(70vh,620px);min-height:420px;background:#f4f0e1}
.pin-felix{background:none;border:none}
.pin-img{width:34px;height:34px;filter:drop-shadow(0 3px 6px rgba(91,38,30,.35));transition:transform .25s}
.pin-felix:hover .pin-img{transform:scale(1.2)}
.pin-felix.activo .pin-img{transform:scale(1.32)}
.popup-felix{font-family:var(--f-sans);min-width:170px}
.popup-felix b{display:block;font-family:var(--f-display);font-weight:400;font-size:19px;margin-bottom:4px}
.popup-felix span{display:block;font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--manzana);margin-bottom:3px}
.popup-felix a{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--manzana)}
.carrusel-puntos{position:absolute;left:0;right:0;bottom:16px;z-index:600;display:flex;gap:12px;
  overflow-x:auto;padding:8px 16px;scroll-snap-type:x mandatory}
.punto-card{flex:0 0 235px;scroll-snap-align:center;background:var(--nata-clara);border-radius:12px;padding:15px 17px;
  box-shadow:0 6px 18px rgba(91,38,30,.16);cursor:pointer;border:2px solid transparent;transition:all .25s}
.punto-card:hover{transform:translateY(-3px)}
.punto-card.activa{border-color:var(--manzana)}
.punto-card .zona-card{font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--manzana)}
.punto-card h3{font-size:18px;margin:3px 0 4px}
.punto-card address{font-style:normal;font-size:11.5px;opacity:.7;margin-bottom:7px;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.punto-card .maps{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--manzana)}

/* ── Recetas B: filas editoriales ───────────────────── */
.receta-b{display:grid;grid-template-columns:1fr 1fr;min-height:440px}
.receta-b.invertida .rb-foto{order:2}
.rb-foto{overflow:hidden;position:relative;min-height:420px}
.rb-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.receta-b:hover .rb-foto img{transform:scale(1.03)}
.rb-info{display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,5vw,80px)}
.receta-b.oscuro .rb-info{color:var(--nata)}
.receta-b.claro .rb-info{color:var(--semilla)}
.rb-info h2{font-size:clamp(34px,4.6vw,62px);margin:6px 0 18px;line-height:.98}
.rb-ing{list-style:none;margin-bottom:18px;display:grid;gap:7px}
.rb-ing li{font-size:14px;padding-left:18px;position:relative;opacity:.9}
.rb-ing li::before{content:'';position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.55}
.rb-prep{font-size:15px;line-height:1.7;opacity:.85;max-width:46ch;margin-bottom:24px}
.receta-b.oscuro .btn{background:var(--nata);color:var(--semilla)}
.receta-b.oscuro .btn:hover{background:#fff}
@media(max-width:820px){
  .receta-b{grid-template-columns:1fr}
  .receta-b.invertida .rb-foto{order:0}
  .rb-foto{min-height:280px;height:38vh}
}

/* ── Selector de variantes B + drawer carrito ───────── */
.var-titulo{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;opacity:.55;margin-bottom:9px}
.var-selector{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.var-btn{border:1.5px solid rgba(91,38,30,.28);border-radius:999px;padding:11px 20px;font-size:12px;
  font-weight:600;min-height:44px;transition:all .22s var(--ease);
  display:inline-flex;align-items:center;gap:9px}
.var-btn img{height:24px;width:auto;transition:filter .22s var(--ease)}
.var-btn:hover{border-color:var(--sabor,var(--semilla))}
.var-btn.activo{background:var(--sabor,var(--semilla));color:var(--nata);border-color:var(--sabor,var(--semilla))}
.var-btn.activo img{filter:brightness(0) invert(1) sepia(.35) saturate(2) hue-rotate(2deg)}
.pdp.clarito .var-btn.activo{color:var(--semilla)}
.pdp.clarito .var-btn.activo img{filter:brightness(0) opacity(.8)}
.pdp .agregar-pdp{background:var(--sabor,var(--semilla))}
.pdp .agregar-pdp:hover{filter:brightness(.92);background:var(--sabor,var(--manzana))}
.pdp.clarito .agregar-pdp{color:var(--semilla)}

/* ── Carrito drawer + búsqueda ──────────────────────── */
.velo{position:fixed;inset:0;background:rgba(91,38,30,.45);opacity:0;visibility:hidden;z-index:1000;
  transition:opacity .35s var(--ease), visibility .35s}
.velo.visible{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,92vw);background:var(--nata-clara);z-index:1010;
  transform:translateX(100%);transition:transform .45s var(--ease);display:flex;flex-direction:column;
  box-shadow:-12px 0 40px rgba(91,38,30,.2)}
.drawer.abierto{transform:none}
.drawer-cab{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;
  border-bottom:1px solid rgba(91,38,30,.1)}
.drawer-cab h2{font-size:26px}
.cerrar{font-size:26px;line-height:1;width:40px;height:40px;border-radius:50%;transition:background .2s}
.cerrar:hover{background:rgba(91,38,30,.07)}
.drawer-items{flex:1;overflow-y:auto;padding:16px 24px}
.drawer-vacio{text-align:center;padding:60px 0;display:grid;gap:18px;justify-items:center;opacity:.85}
.item{display:grid;grid-template-columns:56px 1fr auto;gap:14px;align-items:center;padding:14px 0;
  border-bottom:1px dashed rgba(91,38,30,.14)}
.item img{width:56px;height:56px;object-fit:contain}
.item-info b{display:block;font-size:13.5px;font-weight:600;line-height:1.3}
.item-info>span{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.55;
  margin:3px 0 8px}
.item-cant{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(91,38,30,.2);
  border-radius:999px;padding:2px 8px}
.item-cant button{width:26px;height:26px;font-size:15px;border-radius:50%}
.item-cant button:hover{background:rgba(91,38,30,.07)}
.item-cant span{font-size:13px;min-width:16px;text-align:center}
.item-der{text-align:right;display:grid;gap:6px}
.item-precio{font-family:var(--f-display);font-size:16px}
.item .quitar{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.5;text-decoration:underline}
.item .quitar:hover{opacity:1;color:var(--manzana)}
.drawer-pie{padding:18px 24px 24px;border-top:1px solid rgba(91,38,30,.1);background:var(--nata-clara)}
.drawer-pie .linea{display:flex;justify-content:space-between;font-size:14px;margin-bottom:7px}
.drawer-pie .linea b{font-family:var(--f-display);font-size:18px}
.drawer-pie .linea.suave{font-size:12px;opacity:.6}
.drawer-pie .checkout{width:100%;text-align:center;margin-top:12px}
.nota-checkout{font-size:11px;opacity:.6;margin-top:10px;line-height:1.5;text-align:center}

.busqueda{position:fixed;left:0;right:0;top:0;z-index:1010;background:var(--nata-clara);
  transform:translateY(-100%);transition:transform .45s var(--ease);max-height:60vh;display:flex;
  flex-direction:column;box-shadow:0 16px 44px rgba(91,38,30,.2);border-radius:0 0 26px 26px;overflow:hidden}
.busqueda.abierta{transform:none}
.busqueda-caja{display:flex;gap:12px;align-items:center;padding:22px clamp(20px,6vw,60px);
  border-bottom:1px solid rgba(91,38,30,.1)}
#busInput{flex:1;border:0;background:transparent;font-family:var(--f-display);font-size:clamp(20px,3vw,30px);
  outline:none;color:var(--semilla)}
.busqueda-res{overflow-y:auto;padding:10px clamp(20px,6vw,60px) 26px}
.res{display:grid;grid-template-columns:52px 1fr auto auto;gap:14px;align-items:center;padding:12px 0;
  border-bottom:1px dashed rgba(91,38,30,.12)}
.res img{width:52px;height:52px;object-fit:contain}
.res b{display:block;font-size:14.5px;font-weight:600}
.res span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.55}
.res .btn{padding:10px 18px;font-size:10px;white-space:nowrap;min-height:40px}
.res .ver-res{margin-right:0!important}
.sin-res{padding:26px 0;opacity:.65;font-size:15px}


/* ── Home B: collage de latas en el hero ────────────── */
.collage-latas{position:relative;min-height:440px}
.lata-flotante{position:absolute;filter:drop-shadow(0 18px 32px rgba(91,38,30,.3))}
.lata-flotante.q1,.lata-flotante.sola{animation:flota 6s ease-in-out infinite}
.lata-flotante.q2{animation:flota 7s ease-in-out infinite .8s}
.lata-flotante.q3{animation:flota 6.5s ease-in-out infinite 1.6s}
.lata-flotante.q4{animation:flota 7.5s ease-in-out infinite 2.2s}
@keyframes flota{0%,100%{translate:0 0}50%{translate:0 -12px}}
.badge-nueva{position:absolute;right:6%;top:-2%;z-index:3;background:var(--soleado);color:var(--semilla);/*legacy*/
  font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;text-align:center;
  padding:16px 12px;border-radius:50%;transform:rotate(10deg);line-height:1.35;
  animation:flota 5s ease-in-out infinite .4s}
@media(max-width:860px){.collage-latas{min-height:300px}}

/* ── Iconos de marca en claims ──────────────────────── */
.icono-claim .ic-marca{width:40px;height:40px;object-fit:contain;margin:0 auto 8px;display:block}
.icono-claim b{display:block;font-family:var(--f-display);font-size:26px;margin-bottom:3px}

/* ── Reviews slider B ───────────────────────────────── */
.testimonio-caja{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(10px,3vw,34px)}
.flecha{width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(252,243,197,.4);display:grid;
  place-items:center;transition:all .25s var(--ease)}
.flecha:hover{background:var(--nata);border-color:var(--nata)}
.flecha svg{width:18px;height:18px;stroke:var(--nata);stroke-width:2;fill:none;transition:stroke .25s}
.flecha:hover svg{stroke:var(--mineral)}
.testimonios{position:relative;min-height:150px}
.testimonios blockquote{position:absolute;inset:0;opacity:0;transform:translateY(12px);
  transition:opacity .5s var(--ease),transform .5s var(--ease);pointer-events:none;text-align:center}
.testimonios blockquote.activo{opacity:1;transform:none;position:relative}
.testimonios .estrellas{color:var(--soleado);letter-spacing:.26em;margin-bottom:14px}
.testimonios p{font-family:var(--f-display);font-size:clamp(20px,2.8vw,30px);line-height:1.3;
  max-width:760px;margin:0 auto 12px;color:var(--nata)}
.testimonios .quien{font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.6}
.testimonio-puntos{display:flex;justify-content:center;gap:8px;margin-top:18px}
.testimonio-puntos button{width:8px;height:8px;border-radius:50%;background:rgba(252,243,197,.35);transition:all .3s}
.testimonio-puntos button.activo{background:var(--nata);width:22px;border-radius:4px}

/* ── Feed IG B ──────────────────────────────────────── */
.feed-b{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:8px}
.feed-b a{aspect-ratio:1;overflow:hidden;border-radius:12px}
.feed-b img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.feed-b a:hover img{transform:scale(1.07)}
@media(max-width:640px){.feed-b{grid-template-columns:repeat(2,1fr)}}

/* nunca negro: inputs heredan tinta de marca */
input,textarea,select{color:var(--semilla)}

/* ── Hero slider B ──────────────────────────────────── */
.hero-slider{position:relative;min-height:480px}
.hs-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s var(--ease);pointer-events:none}
.hs-slide.activo{opacity:1;pointer-events:auto}
.hs-slide .q1{width:36%;left:-1%;top:24%;transform:rotate(-14deg);z-index:1}
.hs-slide .q2{width:36%;left:21%;top:13%;transform:rotate(-5deg);z-index:3}
.hs-slide .q3{width:36%;left:45%;top:16%;transform:rotate(6deg);z-index:4}
.hs-slide .q4{width:36%;right:-1%;top:26%;transform:rotate(14deg);z-index:2}
.hs-slide .sola{width:82%;left:-4%;top:-2%;z-index:2}
.hs-puntos{position:absolute;left:0;right:0;bottom:-8px;display:flex;justify-content:center;gap:8px;z-index:5}
.hs-puntos button{width:8px;height:8px;border-radius:50%;background:rgba(252,243,197,.4);transition:all .3s}
.hs-puntos button.activo{background:var(--nata);width:22px;border-radius:4px}
@media(max-width:860px){.hero-slider{min-height:320px}}

/* ── Cross-selling en el carrito ────────────────────── */
.prog-envio{padding:14px 0 10px}
.prog-envio p{font-size:13px;margin-bottom:8px}
.prog-envio .logrado{color:var(--tomatillo);font-weight:600}
.prog-track{height:8px;border-radius:4px;background:rgba(91,38,30,.12);overflow:hidden}
.prog-fill{height:100%;border-radius:4px;background:var(--manzana);transition:width .5s var(--ease)}
.prog-fill.llena{background:var(--tomatillo)}
.nudge-packs{background:var(--nata);border-radius:10px;padding:11px 14px;font-size:12.5px;margin:8px 0 4px}
.drawer-sug{margin-top:18px;padding-top:14px;border-top:1px solid rgba(91,38,30,.1)}
.drawer-sug h3{font-size:17px;margin-bottom:10px}
.sug{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:8px 0}
.sug img{width:44px;height:44px;object-fit:contain}
.sug b{display:block;font-size:12.5px;font-weight:600;line-height:1.3}
.sug span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;opacity:.55}
.sug .btn{padding:8px 14px;font-size:9.5px;min-height:36px}
.linea.promo{color:var(--tomatillo);font-weight:600}
.linea.promo b{font-family:var(--f-sans);font-size:14px}
.linea.totalota{border-top:1px dashed rgba(91,38,30,.2);padding-top:9px;margin-top:4px}
.linea.totalota b{font-size:21px}

/* ── Nosotros B: claims crema + logos + stories ─────── */
.ic-marca.crema{filter:none}
.circulo-crema{background:var(--nata);border-radius:50%;width:40px;height:40px;margin:0 auto 8px}
.logos-alianzas{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px 40px;margin-top:22px}
.logos-alianzas img{height:30px;width:auto;max-width:130px;object-fit:contain;opacity:.92}
@media(max-width:720px){.logos-alianzas{gap:18px 24px}.logos-alianzas img{height:22px}}
.historia-story{border-radius:14px;width:100%;object-fit:cover}

/* ── Mega menú (Tienda) ─────────────────────────────── */
.nav .nav-item{display:contents}
.mega{position:absolute;left:0;right:0;top:100%;background:var(--nata-clara);z-index:940;
  border-bottom:1px solid rgba(91,38,30,.12);box-shadow:0 34px 54px rgba(91,38,30,.16);
  opacity:0;visibility:hidden;transform:translateY(10px);
  transition:opacity .3s var(--ease),transform .3s var(--ease),visibility .3s}
.has-mega:hover .mega,.has-mega:focus-within .mega{opacity:1;visibility:visible;transform:none}
.mega-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;gap:38px;
  padding-top:36px;padding-bottom:40px;align-items:start}
.mega h5{font-family:var(--f-sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  font-weight:700;opacity:.45;margin-bottom:14px}
.mega ul{list-style:none}
.mega li{margin-bottom:9px}
.mega li a{font-family:var(--f-display);font-size:19px;letter-spacing:0;text-transform:none;font-weight:400;padding:0}
.mega li a::after{display:none}
.mega li a:hover{color:var(--manzana)}
.mega-destacado{display:flex;align-items:center;gap:20px;background:#4a2118;color:var(--nata);
  border-radius:18px;padding:20px 24px;position:relative;overflow:hidden;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .3s var(--ease)}
.mega-destacado::after{display:none}
.mega-destacado:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(91,38,30,.28)}
.mega-destacado img{width:62px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.3))}
.mega-destacado b{display:block;font-family:var(--f-display);font-size:24px;font-weight:400;
  letter-spacing:0;text-transform:none;margin:4px 0 2px}
.mega-destacado .tag-nuevo{display:inline-block;background:var(--soleado);color:var(--semilla);
  font-size:9px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;
  border-radius:999px;padding:3px 9px}
.mega-destacado .cta{font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  font-weight:600;opacity:.85}
@media(max-width:720px){.mega{display:none}}

/* ── Suscripción (mockup) ───────────────────────────── */
.suscripcion{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,70px);align-items:center}
.beneficios{list-style:none}
.beneficios li{position:relative;padding-left:30px;margin-bottom:12px;font-size:15.5px;font-weight:500}
.beneficios li::before{content:'';position:absolute;left:0;top:3px;width:16px;height:16px;
  background:url('img/ic-vector-flor.png') center/contain no-repeat}
.susc-caja{background:var(--nata-clara);border-radius:22px;padding:30px;text-align:center;
  box-shadow:0 22px 48px rgba(91,38,30,.14)}
.susc-caja>img{width:min(240px,70%);margin:0 auto 18px}
.susc-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:rgba(91,38,30,.07);
  border-radius:16px;padding:8px;margin-bottom:16px}
.susc-toggle .opcion{border-radius:11px;padding:12px 10px;font-size:12px;letter-spacing:.06em;
  text-transform:uppercase;font-weight:600;opacity:.55;transition:all .25s var(--ease)}
.susc-toggle .opcion b{display:block;font-size:19px;letter-spacing:0;margin-top:3px}
.susc-toggle .opcion b small{font-size:10.5px;color:var(--manzana);font-weight:800}
.susc-toggle .opcion.activo{background:var(--nata-clara);color:var(--semilla);opacity:1;box-shadow:0 4px 14px rgba(91,38,30,.12)}

/* ── Videos de reviews (placeholders) ───────────────── */
.videos-reviews{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.video-ph{aspect-ratio:9/16;background:#d9d3c6;border-radius:18px;position:relative;
  display:grid;place-items:center;overflow:hidden}
.video-ph::before{content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(91,38,30,0) 55%,rgba(91,38,30,.22))}
.video-ph .play{position:relative;z-index:2;width:64px;height:64px;border-radius:50%;
  background:var(--nata-clara);display:grid;place-items:center;
  box-shadow:0 10px 26px rgba(91,38,30,.25);transition:transform .25s var(--ease)}
.video-ph:hover .play{transform:scale(1.1)}
.video-ph .play svg{width:24px;height:24px;fill:var(--semilla);margin-left:3px}
.video-ph>span{position:absolute;bottom:14px;left:0;right:0;text-align:center;z-index:2;
  font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  color:rgba(91,38,30,.55)}

/* ── Cortina hacia el footer ────────────────────────── */
.cortina-pie{position:relative;height:0;margin-bottom:-1px;pointer-events:none;z-index:5}
.cortina-pie .curva{position:absolute;left:0;right:0;margin:0 auto;bottom:-1px;
  width:200px;height:72px;background:var(--semilla);border-radius:200px 200px 0 0;
  display:flex;align-items:center;justify-content:center;padding-top:22px}
.cortina-pie img{width:36px;animation:girar 14s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}

@media(max-width:900px){
  .suscripcion{grid-template-columns:1fr}
  .videos-reviews{grid-template-columns:repeat(2,1fr)}
}

/* ── Frutas de marca en tiles + fotos nuevas ────────── */
.fruta-deco{position:absolute;width:150px;left:-28px;bottom:-24px;z-index:1;opacity:.3;
  transform:rotate(-14deg);pointer-events:none;
  filter:brightness(0) invert(1) sepia(.3) saturate(3) hue-rotate(2deg)}
.bundles.confoto{grid-template-columns:.9fr repeat(3,1fr)}
.bundle-foto{border-radius:18px;overflow:hidden;min-height:100%}
.bundle-foto img{width:100%;height:100%;object-fit:cover}
.video-ph.confoto{background-size:cover;background-position:center}
.video-ph.confoto>span{color:rgba(252,243,197,.85)}
@media(max-width:900px){
  .bundles.confoto{grid-template-columns:1fr}
  .bundle-foto{min-height:280px}
}

/* ── Fondos de marca en el hero + galería PDP ───────── */
.hero-b::before{display:none}
.hero-patrones{position:absolute;inset:0;z-index:1;pointer-events:none}
.hero-patron{position:absolute;inset:0;background-repeat:no-repeat;background-size:cover;
  background-position:center;opacity:0;transition:opacity .9s var(--ease)}
.hero-patron.activo{opacity:1}
.claims-cola{width:min(440px,92%);margin:-8px 0 30px;opacity:.95}
.divisor-envases{width:min(680px,86%);margin:28px auto 0}
.pdp-principal.llena img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;filter:none}
.pdp-unitario{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;opacity:.55;
  margin:-14px 0 18px}

/* ── Reels con video real ───────────────────────────── */
.video-ph.reel{background:var(--semilla)}
.video-ph video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.video-ph.reproduciendo .play,.video-ph.reproduciendo>span{display:none}

/* ── Comparativa: No es refresco. Es Félix. ─────────── */
.compara{display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(20px,4vw,56px);
  align-items:start;margin-top:clamp(36px,5vw,60px);max-width:860px;margin-left:auto;margin-right:auto}
.compara .lado{text-align:center}
.compara .lado h3{font-size:clamp(21px,2.4vw,28px);margin-bottom:22px}
.compara .lado>img{height:200px;width:auto;margin:0 auto 26px;
  filter:drop-shadow(0 18px 32px rgba(91,38,30,.25));animation:flota 6s ease-in-out infinite}
.botella-gris{height:200px;width:auto;margin:0 auto 26px;display:block;opacity:.85}
.compara .lado ul{list-style:none;display:grid;gap:20px}
.compara .lado li b{display:block;font-family:var(--f-display);font-size:clamp(34px,3.6vw,46px);line-height:1}
.compara .lado li span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;opacity:.65}
.compara .felix li b{color:var(--manzana)}
.compara .refresco{color:#7c766a}
.compara .vs{align-self:center;font-family:var(--f-display);font-style:italic;
  font-size:clamp(22px,2.4vw,32px);opacity:.45}
.nota-compara{text-align:center;font-size:11.5px;opacity:.5;margin-top:34px}
@media(max-width:720px){
  .compara{grid-template-columns:1fr 1fr;gap:18px}
  .compara .vs{display:none}
}

/* ── Respiro antes de la cortina del footer ─────────── */
.bloque:has(+ .cortina-pie){padding-bottom:calc(clamp(44px,6vw,72px) + 110px)}

/* ── Carrusel de otros sabores (PDP) ────────────────── */
.carrusel-sabores{display:flex;gap:14px;overflow-x:auto;padding:6px 2px 14px;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.mini-sabor{flex:0 0 150px;border-radius:16px;padding:18px 12px 16px;text-align:center;
  color:var(--nata);scroll-snap-align:start;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.mini-sabor:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(91,38,30,.18)}
.mini-sabor.claro{color:var(--semilla)}
.mini-sabor img{height:92px;width:auto;margin:0 auto 12px;filter:drop-shadow(0 8px 14px rgba(91,38,30,.22))}
.mini-sabor b{display:block;font-family:var(--f-display);font-weight:400;font-size:17px;line-height:1.1;margin-bottom:4px}
.mini-sabor span{font-size:11px;letter-spacing:.08em;font-weight:600;opacity:.8}

/* ── Nosotros: imágenes recortadas, sin tanto aire ───── */
.dos>img{width:100%;max-height:440px;object-fit:cover;border-radius:16px}
.feed-b{margin-top:clamp(30px,4vw,54px)}

/* fruta de fondo en el destacado del mega */
.fruta-mega{position:absolute;width:130px;height:auto;right:-22px;bottom:-30px;opacity:.3;
  transform:rotate(12deg);pointer-events:none;
  filter:brightness(0) invert(1) sepia(.3) saturate(3) hue-rotate(2deg)}

.bloque.pre-cortina{padding-bottom:calc(clamp(44px,6vw,72px) + 110px)}

.credito{text-decoration:underline;text-underline-offset:3px;transition:color .2s}
.credito:hover{color:var(--soleado)}

/* ── Sección Félix Cola (campaña No es lo que crees) ── */
.cola-feature{background:#3b2528;color:var(--nata);overflow:hidden}
.cf-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,70px);align-items:center;
  padding-top:clamp(60px,8vw,100px);padding-bottom:clamp(60px,8vw,100px)}
.cf-copy h2{font-size:clamp(32px,4.6vw,56px);margin-bottom:22px;text-wrap:balance}
.cf-copy h2 em{color:var(--guayaba);font-style:italic}
.cf-copy p{font-size:clamp(15px,1.6vw,18px);max-width:42ch;opacity:.9;margin-bottom:16px}
.cf-frase{font-family:var(--f-display);font-style:italic;font-size:clamp(20px,2.2vw,26px);opacity:.75}
.cf-sticker{width:min(230px,56%);margin-top:22px;transform:rotate(-7deg);
  animation:flota 7s ease-in-out infinite}
.cf-foto img{width:100%;max-width:520px;margin:0 auto;display:block;
  filter:drop-shadow(0 30px 60px rgba(0,0,0,.45))}
.sticker-compara{position:absolute;width:min(200px,24vw);right:1%;top:-14px;
  transform:rotate(9deg);z-index:3}
@media(max-width:900px){
  .cf-grid{grid-template-columns:1fr;text-align:center}
  .cf-foto{order:-1}
  .cf-foto img{max-width:320px}
  .cf-copy p{margin-inline:auto}
  .sticker-compara{display:none}
}

.sticker-hero{position:absolute;left:-4%;bottom:6%;z-index:4;width:min(250px,54%);
  transform:rotate(-9deg);animation:flota 7s ease-in-out infinite .5s;pointer-events:none}
.mapa-frutas{width:min(720px,92%);margin:clamp(24px,4vw,44px) auto 0;background:#fff;
  border-radius:26px;padding:clamp(24px,4vw,48px);box-shadow:0 20px 50px rgba(91,38,30,.10)}

/* ── Marquee de claims (del sitio original) ─────────── */
.ticker{background:var(--cielo);color:var(--cajeta);overflow:hidden;padding:16px 0;white-space:nowrap;
  border-top:1.5px solid var(--semilla);border-bottom:1.5px solid var(--semilla)}
.ticker-pista{display:inline-flex;animation:correr 40s linear infinite}
.ticker span{font-family:var(--f-display);font-size:clamp(19px,2.3vw,27px);padding-right:10px}
@keyframes correr{to{transform:translateX(-50%)}}
.ticker:hover .ticker-pista{animation-play-state:paused}

/* ── Hover lata ↔ pack en tiles ─────────────────────── */
.sabor .imagen{position:relative}
.sabor .imagen .alt{position:absolute;inset:0;margin:auto;max-height:225px;max-width:86%;
  width:auto;height:auto;opacity:0;transition:opacity .35s var(--ease)}
.sabor:hover .imagen .alt{opacity:1}
.sabor:hover .imagen:has(.alt) img:not(.alt){opacity:0}
.sabor .imagen img:not(.alt){transition:opacity .35s var(--ease)}

/* ── Colaboración Ensamble ──────────────────────────── */
.colab-teaser{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(30px,5vw,70px);align-items:center}
.colab-teaser>img{width:min(300px,80%);margin:0 auto;filter:drop-shadow(0 18px 40px rgba(91,38,30,.18))}
.colab-teaser em,.colab-hero em{color:var(--soleado);font-style:italic}
.colab-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,70px);align-items:center}
.colab-hero.invertido{grid-template-columns:.9fr 1.1fr}
.colab-hero h1{font-size:clamp(38px,5.6vw,68px);margin-bottom:20px;text-wrap:balance}
.colab-hero h1 em,.colab-hero .titulo em{color:#d9a441}
.colab-foto{width:100%;border-radius:20px;box-shadow:0 24px 54px rgba(91,38,30,.18)}
.colab-foto.tote{box-shadow:none;width:min(440px,90%);margin:0 auto;
  filter:drop-shadow(0 24px 48px rgba(91,38,30,.2))}
.colab-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:30px 0 30px;
  padding:26px 0;border-top:1px solid rgba(91,38,30,.15);border-bottom:1px solid rgba(91,38,30,.15)}
.colab-stats b{display:block;font-family:var(--f-display);font-style:italic;font-size:clamp(28px,3vw,40px);
  color:#d9a441;margin-bottom:8px}
.colab-stats span{font-size:13.5px;opacity:.8;line-height:1.5}
.colab-quote{font-family:var(--f-display);font-style:italic;color:var(--manzana);font-size:19px;margin-bottom:14px}
.colab-banda{background:linear-gradient(90deg,#f6d9d3,#c8332b);border-radius:16px;
  padding:20px 26px;margin:22px 0 26px}
.colab-banda b{display:block;font-family:var(--f-display);font-size:20px;color:var(--cajeta);margin-bottom:6px}
.colab-banda p{font-size:14px;margin:0;color:var(--semilla)}

/* ── Merch ──────────────────────────────────────────── */
.merch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1150px;margin:0 auto}
.merch-card{display:block;text-align:center;background:var(--nata-clara);border-radius:20px;
  padding:30px 26px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.merch-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(91,38,30,.14)}
.merch-foto{display:flex;align-items:center;justify-content:center;height:260px;margin-bottom:18px;overflow:hidden}
.merch-foto img{max-height:260px;max-width:82%;width:auto;height:auto;object-fit:contain}
.merch-foto img.foto-real{width:100%;max-width:100%;height:260px;object-fit:cover;border-radius:14px}
.merch-card b{display:block;font-family:var(--f-display);font-weight:400;font-size:23px;margin-bottom:6px}
.merch-card span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;opacity:.6}

/* ── Recetas: filas más compactas ───────────────────── */
/* (las fotos de receta llenan su mitad; la altura corta se controla en .receta-b) */

@media(max-width:900px){
  .colab-teaser,.colab-hero,.colab-hero.invertido{grid-template-columns:1fr}
  .colab-stats{grid-template-columns:1fr;gap:16px}
  .merch-grid{grid-template-columns:1fr}
}

/* ── Iconos de envase en la meta de las tarjetas ────── */
.meta .envases{display:inline-flex;gap:4px;align-items:flex-end;vertical-align:-5px;margin-left:4px}
.meta .envases img{height:21px;width:auto}
.sabor.oscuro .envases img{filter:brightness(0) invert(1) sepia(.3) saturate(3) hue-rotate(2deg);opacity:.92}

/* ── Add-on: Tote Ensamble ──────────────────────────── */
.addon-tote{display:flex;align-items:center;gap:14px;border:1.5px dashed rgba(91,38,30,.3);
  border-radius:14px;padding:12px 16px;margin-bottom:14px;cursor:pointer;
  transition:border-color .25s var(--ease),background .25s var(--ease)}
.addon-tote:hover{border-color:var(--sabor,var(--semilla))}
.addon-tote:has(input:checked){border-style:solid;border-color:var(--sabor,var(--semilla));
  background:rgba(91,38,30,.05)}
.addon-tote input{width:18px;height:18px;accent-color:var(--manzana);flex:none}
.addon-tote img{height:52px;width:auto;flex:none}
.addon-tote b{display:block;font-size:13.5px}
.addon-tote small{font-size:11.5px;opacity:.65}
.addon-tote small a{text-decoration:underline;text-underline-offset:2px}

/* ── Armador de packs ───────────────────────────────── */
.bundles.armado{grid-template-columns:.85fr 1.35fr .85fr;align-items:stretch}
.armador{border:1.5px solid var(--semilla);background:var(--semilla);color:var(--nata);
  border-radius:18px;padding:26px 24px 24px;display:flex;flex-direction:column}
.armador .etiqueta{align-self:flex-start;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:800;background:var(--soleado);color:var(--semilla);border-radius:999px;padding:4px 11px;margin-bottom:12px}
.armador h3{font-size:30px;margin-bottom:14px}
.arm-tallas{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}
.arm-tallas .talla{border:1.5px solid rgba(252,243,197,.35);border-radius:11px;padding:9px 6px;
  font-size:12px;font-weight:700;transition:all .22s var(--ease)}
.arm-tallas .talla.activo{background:var(--soleado);color:var(--semilla);border-color:var(--soleado)}
.arm-sabores{display:grid;grid-template-columns:1fr 1fr;gap:7px 14px;margin-bottom:16px}
.arm-fila{display:flex;align-items:center;gap:8px;font-size:13px}
.arm-fila img{height:30px;width:auto}
.arm-fila b{flex:1;font-weight:600;font-size:12.5px}
.arm-step{display:flex;align-items:center;gap:2px;border:1px solid rgba(252,243,197,.3);border-radius:999px}
.arm-step button{width:26px;height:26px;font-size:14px;line-height:1;border-radius:50%}
.arm-step button:hover{background:rgba(252,243,197,.15)}
.arm-step span{min-width:18px;text-align:center;font-weight:700;font-size:12.5px}
.arm-prog{height:7px;border-radius:4px;background:rgba(252,243,197,.2);overflow:hidden;margin-bottom:12px}
.arm-fill{height:100%;width:0;background:var(--soleado);border-radius:4px;transition:width .35s var(--ease)}
.arm-fill.llena{background:var(--jugo)}
.arm-pie{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}
.arm-status{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;opacity:.8}
.arm-agregar[disabled]{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none!important}
@media(max-width:900px){.bundles.armado{grid-template-columns:1fr}}


/* ===== Colaboraciones · Ensamble v2 ===== */
.ens-em{color:#d9a441;font-style:italic}
.ens-flor-marco{position:relative;width:min(560px,88%);margin:6px auto 0}
.ens-flor-marco .flor{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.ens-sticker{position:absolute;right:-10px;top:26px;background:var(--manzana);color:var(--nata);
  font-family:var(--f-display);font-size:clamp(16px,1.6vw,20px);padding:12px 20px;border-radius:999px;
  transform:rotate(7deg);box-shadow:0 12px 26px rgba(91,38,30,.28)}
.ens-banda{background:var(--cajeta);color:var(--nata)}
.ens-banda .kicker{color:var(--nata)}
.ens-tote-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(34px,6vw,80px);align-items:center}
.ens-tote-foto img{width:min(460px,92%);margin:0 auto;display:block;transform:rotate(-2deg);
  filter:drop-shadow(0 26px 50px rgba(0,0,0,.30))}
.ens-quote{font-family:var(--f-display);font-style:italic;color:var(--soleado);
  font-size:clamp(19px,2vw,24px);margin:6px 0 12px}
.ens-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0 24px;
  padding-top:22px;border-top:1px solid rgba(252,243,197,.22)}
.ens-stats b{display:block;font-family:var(--f-display);font-style:italic;
  font-size:clamp(26px,2.6vw,38px);color:var(--soleado);margin-bottom:4px}
.ens-stats span{font-size:13px;opacity:.75;line-height:1.5;display:block}
.ens-btn{background:var(--soleado);color:var(--cajeta)}
.ens-btn:hover{background:var(--nata)}
.ens-nota{font-size:12.5px;opacity:.6;margin-top:12px}
.ens-colabora{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(30px,5vw,70px);align-items:center}
.ens-flor-chica{width:min(360px,86%);aspect-ratio:1;object-fit:cover;margin:0 auto;display:block}
@media(max-width:900px){
  .ens-tote-grid,.ens-colabora{grid-template-columns:1fr}
  .ens-stats{grid-template-columns:1fr 1fr}
  .ens-sticker{right:2px;top:8px}
}


/* ===== Contenido del Discovery Pack ===== */
.pack-contenido{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 14px;margin:4px 0 18px}
.pack-contenido span{display:flex;align-items:center;gap:9px;font-size:13.5px;opacity:.9}
.pack-contenido img{height:34px;width:auto;flex:0 0 auto}
.bundle-incluye{font-size:12.5px;line-height:1.55;opacity:.68;margin:8px 0 2px}
@media(min-width:1100px){.pack-contenido{grid-template-columns:repeat(2,1fr)}}


/* ===== Descripciones de sabor + franja Schorle (newsletter aprobado) ===== */
.pdp-desc{font-size:15px;line-height:1.65;margin:14px 0 2px;max-width:44ch;opacity:.92}
.pdp-desc strong{font-weight:600}
.schorle-tags{display:flex;gap:12px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.schorle-tags span{font-family:var(--f-display);font-style:italic;font-size:19px;padding:8px 26px;border-radius:4px}
.schorle-tags .st-a{background:var(--mineral);color:var(--nata-clara)}
.schorle-tags .st-b{background:var(--jugo);color:var(--semilla)}
.schorle-tags .st-c{background:var(--soleado);color:var(--semilla)}


/* ===== Galería de collabs + formulario + logo ® ===== */
.colabs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 22px;margin-top:clamp(30px,4vw,52px)}
.colab-card{margin:0}
.colab-card img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:16px;display:block;
  box-shadow:0 14px 34px rgba(91,38,30,.12);transition:transform .5s var(--ease)}
.colab-card:hover img{transform:translateY(-4px)}
.colab-card figcaption{padding:12px 4px 0}
.colab-card b{display:block;font-family:var(--f-display);font-weight:400;font-size:21px;color:var(--semilla)}
.colab-card span{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;opacity:.6}
.colab-form{display:grid;gap:12px;margin-top:22px;max-width:520px}
.colab-form .cf-fila{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.colab-form input,.colab-form textarea{border:1.5px solid rgba(91,38,30,.22);border-radius:12px;
  padding:13px 15px;font:inherit;font-size:14.5px;background:var(--nata-clara);color:var(--semilla)}
.colab-form input:focus,.colab-form textarea:focus{outline:none;border-color:var(--manzana)}
.colab-form .btn{justify-self:start}
.header .logo{position:relative;display:inline-block}
.logo::after{content:'®';position:absolute;top:6px;right:2px;font-size:9.5px;font-weight:700;color:var(--semilla);line-height:1}
.logo-wrap{position:relative;display:inline-block}
.logo-r-pie{position:absolute;top:7px;right:3px;font-size:9.5px;font-weight:700;color:var(--nata);line-height:1}
@media(max-width:900px){.colabs-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.colabs-grid{grid-template-columns:1fr}.colab-form .cf-fila{grid-template-columns:1fr}}

.mapa-origen{width:min(760px,94%);margin:clamp(26px,4vw,46px) auto 0;display:block}
.schorle-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center}
.schorle-grid .mapa-origen{width:100%;margin:0}
.schorle-grid .schorle-tags{justify-content:flex-start}
@media(max-width:860px){.schorle-grid{grid-template-columns:1fr}.schorle-grid .mapa-origen{width:min(520px,100%);margin:8px auto 0}}

sup.rmark{font-size:.32em;font-family:var(--f-sans);font-weight:600;line-height:0;vertical-align:super;letter-spacing:0}

.hero-copy h1.h1-larga{font-size:clamp(30px,4.4vw,54px);text-shadow:0 2px 22px rgba(91,38,30,.5)}

.hero-copy h1{text-shadow:0 2px 22px rgba(91,38,30,.45)}

.colabora-foto{width:min(380px,92%);border-radius:18px;display:block;margin:0 auto;
  box-shadow:0 22px 48px rgba(91,38,30,.16)}
