/* Heladerías V3 · dirección aprobada "Ruta + calculadora": crema, coral, tinta, amarillo y la copa de acero.
   Archivo bien negra. Pedido de Harold: ningún fondo plano; cada banda lleva film, foto, textura de barquillo o la luz
   diagonal coral de la foto de la copa. Sombras duras de tinta, bordes de 3 px, el helado como protagonista. */
@font-face{font-family:Archivo;src:url(/assets/archivo.woff2) format('woff2');font-weight:100 900;font-display:swap}
:root{--crema:#fbf0c9;--crema2:#f5e0a2;--coral:#b8322c;--coral2:#8f241f;--tinta:#3a1a14;--tinta2:#24100c;--amar:#f2c14e;--amar2:#ffe6a0;--papel:#fffaf0;--acero:#c9ccd1;--noche:#0b141c;
  --f:Archivo,system-ui,-apple-system,'Segoe UI',sans-serif;--line:rgba(58,26,20,.2);
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
  --barq:repeating-linear-gradient(45deg,rgba(58,26,20,.055) 0 2px,transparent 2px 28px),repeating-linear-gradient(-45deg,rgba(58,26,20,.055) 0 2px,transparent 2px 28px);
  --barq-o:repeating-linear-gradient(45deg,rgba(36,16,12,.16) 0 2px,transparent 2px 28px),repeating-linear-gradient(-45deg,rgba(36,16,12,.16) 0 2px,transparent 2px 28px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body{margin:0;color:var(--tinta);font:400 1.02rem/1.55 var(--f);-webkit-font-smoothing:antialiased;background:var(--crema) var(--barq);background-image:var(--grain),var(--barq);overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--coral2)}
[hidden]{display:none!important}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--tinta);outline-offset:3px}
.hero :focus-visible,.phead :focus-visible,.film-band :focus-visible,.foot :focus-visible,.join :focus-visible,.calc-band :focus-visible>*,.cb-txt :focus-visible{outline-color:var(--amar)}
.wrap{max-width:1240px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
a.skip:focus{left:12px;top:12px;width:auto;height:auto;background:var(--tinta);color:var(--papel);padding:10px 14px;z-index:99}
.ic{width:1.1em;height:1.1em;flex:none;vertical-align:-.16em}
h1,h2,h3{font-family:var(--f);font-weight:900;letter-spacing:-.03em;line-height:.95;margin:0;text-wrap:balance}
h1{font-size:clamp(2.7rem,6.6vw,6rem)}
h2.big{font-size:clamp(2.4rem,5.2vw,4.6rem);color:var(--coral)}
h2{font-size:clamp(1.6rem,3vw,2.2rem)}
p{margin:0 0 1em}
.eyebrow,.kick{display:block;font:800 .76rem/1.3 var(--f);letter-spacing:.17em;text-transform:uppercase;color:var(--coral);margin:0 0 12px}
.fine{font-size:.88rem;color:color-mix(in srgb,var(--tinta) 78%,transparent)}
.lead{font-size:clamp(1.08rem,1.6vw,1.3rem);max-width:46ch}

/* ---------- botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--coral);color:var(--papel);font:800 1rem/1.1 var(--f);padding:15px 22px;border:3px solid var(--tinta);text-decoration:none;cursor:pointer;box-shadow:5px 5px 0 var(--tinta);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--tinta)}
.btn:active{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--tinta)}
.btn.ghost{background:var(--papel);color:var(--tinta)}
.btn.light{background:var(--papel);color:var(--coral2);border-color:var(--tinta2)}
.btn.ghost-l{background:transparent;color:var(--papel);border-color:var(--papel);box-shadow:none}
.btn.ghost-l:hover{background:rgba(255,250,240,.12);transform:none}
.btn.wide{width:100%}
.mini{display:inline-flex;align-items:center;gap:6px;font:800 .82rem/1 var(--f);padding:9px 12px;background:var(--coral);color:var(--papel);text-decoration:none;border:2px solid var(--tinta);white-space:nowrap}
.mini.ghost{background:var(--papel);color:var(--tinta)}
.mini:hover{background:var(--coral2)}.mini.ghost:hover{background:var(--amar)}
.linkbtn{background:none;border:0;color:var(--coral2);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer;padding:0}

/* ---------- cabecera ---------- */
.top{position:relative;z-index:6;border-bottom:3px solid var(--coral);background:var(--papel)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:74px}
.logo{display:grid;text-decoration:none;color:var(--coral);line-height:1}
.logo b{font:900 1.55rem/1 var(--f);letter-spacing:-.04em}
.logo span{font:700 .62rem/1.5 var(--f);letter-spacing:.2em;text-transform:uppercase;color:var(--tinta)}
nav.main{display:flex;align-items:center;gap:22px}
nav.main a{color:var(--tinta);font-weight:700;font-size:.95rem;text-decoration:none;padding:6px 0;border-bottom:3px solid transparent}
nav.main a:hover,nav.main a[aria-current=page]{border-bottom-color:var(--amar)}
nav.main a.nav-join{background:var(--coral);color:var(--papel);padding:10px 16px;border:2px solid var(--tinta);border-radius:999px}
.menu-btn{display:none;width:46px;height:46px;border:2px solid currentColor;background:transparent;color:var(--tinta);border-radius:12px;padding:10px;cursor:pointer;flex-direction:column;justify-content:space-between}
.menu-btn>span:not(.skip){display:block;height:3px;background:currentColor;border-radius:2px}
@media (max-width:980px){
  .menu-btn{display:flex}
  nav.main{display:none;position:absolute;left:12px;right:12px;top:72px;flex-direction:column;align-items:stretch;gap:0;background:var(--papel);border:3px solid var(--tinta);box-shadow:8px 8px 0 var(--tinta);padding:10px}
  nav.main.open{display:flex}
  nav.main a,.home .top nav.main a{color:var(--tinta);padding:12px 10px;border-bottom:1px solid var(--line)}
  nav.main a.nav-join,.home .top nav.main a.nav-join{margin-top:8px;text-align:center;border-radius:0;color:var(--papel)}
}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.85rem;padding-top:14px;padding-bottom:14px;color:var(--tinta)}
.crumbs a{color:var(--tinta);font-weight:700}
.crumbs span[aria-current]{opacity:.75;overflow-wrap:anywhere}

/* ---------- texturas comunes ---------- */
.cremabg{position:relative}
.drip{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:clamp(40px,6vw,86px);fill:var(--crema);z-index:3;pointer-events:none}
.drip-s{height:clamp(28px,4vw,56px)}
.float{position:absolute;z-index:0;pointer-events:none;width:clamp(120px,17vw,290px);height:auto;filter:drop-shadow(0 28px 26px rgba(58,26,20,.28));animation:bob 9s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-18px) rotate(5deg)}}

/* ---------- hero con film ---------- */
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--noche);color:var(--crema);min-height:min(100svh,920px);display:flex;align-items:center}
.hero-poster img,.hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;z-index:-3}
.hero-film{opacity:0;transition:opacity 1s ease}
.film.is-on{opacity:1}
.hero-veil{position:absolute;inset:0;z-index:-1;background:var(--grain),radial-gradient(ellipse at 8% 92%,rgba(184,50,44,.62),transparent 48%),radial-gradient(ellipse at 40% 0%,rgba(242,193,78,.16),transparent 40%),linear-gradient(90deg,rgba(58,26,20,.96) 0%,rgba(58,26,20,.82) 34%,rgba(58,26,20,.22) 60%,rgba(58,26,20,0) 74%)}
.hero-in{position:relative;width:100%;padding-top:130px;padding-bottom:150px}
.hero h1{font-size:clamp(3.1rem,7.6vw,7.4rem);line-height:.86;max-width:9.5ch;color:var(--crema);text-shadow:0 4px 40px rgba(0,0,0,.35)}
.hero h1 em{font-style:normal;color:var(--amar);display:inline-block;transform:rotate(-3deg)}
.hero .eyebrow{color:var(--amar)}
.hero .lead{margin:22px 0 26px;color:#fff3d6}
.hero-chips{display:flex;flex-wrap:wrap;align-items:center;gap:12px;max-width:720px}
.hero-chips .btn{margin-left:4px}
.hero-chips .chips{margin:0}
@media (max-width:760px){
  .hero{align-items:flex-end;min-height:min(100svh,860px)}
  .hero-poster img,.hero-film{object-position:center 30%}
  .hero-veil{background:var(--grain),linear-gradient(0deg,rgba(36,16,12,.98) 0%,rgba(58,26,20,.88) 38%,rgba(58,26,20,.25) 66%,rgba(58,26,20,.5) 100%)}
  .hero-in{padding-top:110px;padding-bottom:84px}
  .hero h1{font-size:clamp(2.8rem,13vw,4.2rem)}
}

/* ---------- chips de barrio ---------- */
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips a{display:inline-flex;align-items:center;gap:8px;padding:7px 8px 7px 14px;background:var(--papel);color:var(--tinta);border:2px solid var(--tinta);border-radius:999px;font-weight:800;font-size:.92rem;text-decoration:none;transition:background .15s,transform .15s}
.chips a b{background:var(--amar);border-radius:999px;min-width:28px;padding:2px 8px;text-align:center;font-size:.85rem}
.chips a:hover,.chips a.is-hot{background:var(--amar);transform:translateY(-2px)}
.chips a:hover b,.chips a.is-hot b{background:var(--papel)}
.chips a[aria-pressed=true]{background:var(--coral);color:var(--papel)}
.chips a[aria-pressed=true] b{background:var(--papel);color:var(--coral2)}
.chips-dark a{background:rgba(255,250,240,.12);color:var(--crema);border-color:rgba(251,240,201,.55);backdrop-filter:blur(6px)}
.chips-dark a b{background:var(--amar);color:var(--tinta)}
.chips-dark a:hover{background:var(--amar);color:var(--tinta)}
.chips-big a{font-size:1.05rem;padding:10px 10px 10px 18px}

/* ---------- Ruta del Helado ---------- */
.ruta{position:relative;overflow:hidden;padding:clamp(40px,6vw,80px) 0 clamp(60px,8vw,110px)}
.ruta>.wrap{position:relative;z-index:1}
.fr1{right:-60px;top:10px;width:clamp(130px,15vw,240px)}
.fr2{right:-90px;top:58%;width:clamp(160px,20vw,320px);animation-delay:-3s}
.fr3{left:38%;bottom:-120px;width:clamp(120px,14vw,220px);animation-delay:-6s;opacity:.9}
.ruta-head{max-width:760px;margin-bottom:28px}
.ruta-head h2{font-size:clamp(3rem,7vw,6.4rem);color:var(--coral);margin-bottom:14px}
.ruta-head p{font-size:1.1rem;max-width:56ch}
.ruta-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px;align-items:start}
.ruta-map{margin:0;background:var(--papel);border:3px solid var(--tinta);box-shadow:12px 12px 0 var(--tinta);position:relative}
.ruta-map figcaption{font-size:.78rem;padding:8px 12px;border-top:2px solid var(--tinta);background:var(--papel)}
.rm{display:block;width:100%;height:auto;aspect-ratio:667/522}
.rm-agua{fill:#cfe3ec}
.rm-dep{fill:#efe2bd;stroke:#3a1a14;stroke-opacity:.3;stroke-width:.6}
.rm-b,.rm-b path{fill:#fff7e2;stroke:#3a1a14;stroke-opacity:.38;stroke-width:.7;stroke-linejoin:round}
a.rm-b{cursor:pointer;stroke:none}
.rm-l1 path{fill:#f8dd92}.rm-l2 path{fill:#f2c14e}.rm-l3 path{fill:#e2754f}
a.rm-b:hover path{fill:#f4a259;stroke-opacity:.9;stroke-width:1.4}
a.rm-b.is-sel path{fill:var(--coral);stroke:#3a1a14;stroke-opacity:1;stroke-width:2}
.rm-dot{fill:#3a1a14;stroke:#fffaf0;stroke-width:1.2;pointer-events:none}
.rm-dot.is-sel{fill:#fffaf0;stroke:#3a1a14;stroke-width:1.6}
.rm-bola{pointer-events:none;filter:drop-shadow(0 2px 2px rgba(58,26,20,.4))}
.rm-lab{pointer-events:none}
.rm-lab text{font:800 10.5px var(--f);fill:#3a1a14;paint-order:stroke;stroke:#fffaf0;stroke-width:3px;stroke-linejoin:round}
.rm-lab.is-sel text{fill:var(--coral2)}
.rm-rio{font:700 13px var(--f);letter-spacing:.32em;text-transform:uppercase;fill:#2f6f8a;opacity:.8}
.rm-dept{font:700 10px var(--f);letter-spacing:.24em;text-transform:uppercase;fill:#3a1a14;opacity:.45}
.ruta-panel{background:var(--papel);border:3px solid var(--tinta);box-shadow:12px 12px 0 var(--coral);max-height:600px;overflow:auto;scroll-margin-top:16px}
.ruta-panel:focus{outline:none}
.rp{padding:20px 22px}
.rp h3{font-size:clamp(2rem,3.4vw,2.8rem);color:var(--coral);margin-bottom:14px}
.rp-intro .chips{margin:12px 0 16px}
.rp-list{list-style:none;margin:0;padding:0}
.rp-list li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:4px 12px;padding:12px 0;border-top:2px dashed var(--line);align-items:center}
.rp-list .rp-act{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.rp-txt{display:grid;min-width:0}
.rp-n{font-weight:900;font-size:1.08rem;color:var(--tinta);text-decoration:none;overflow-wrap:anywhere}
.rp-n:hover{color:var(--coral)}
.rp-txt span{font-size:.9rem;overflow-wrap:anywhere}
.rp-txt small{font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--coral2)}
.rp-more{display:inline-flex;gap:8px;align-items:center;margin-top:14px;font-weight:800}
.ruta-all{margin-top:42px;max-width:980px}
@media (max-width:900px){.ruta-grid{grid-template-columns:1fr}.ruta-panel{max-height:none}.fr3{display:none}}
@media (max-width:760px){.ruta-map{box-shadow:7px 7px 0 var(--tinta)}.ruta-panel{box-shadow:7px 7px 0 var(--coral)}.rm-lab text{font-size:13px}.rm-lab:not(.is-sel){display:none}.fr1{top:-10px;left:auto;right:-46px;width:104px}.fr2{display:none}.ruta-all{margin-top:30px}}

/* ---------- bolas (avatares) ---------- */
.bola{display:grid;place-items:center;border-radius:50%;flex:none;position:relative}
.bola img{width:118%;max-width:none;height:auto;filter:drop-shadow(0 6px 6px rgba(58,26,20,.25))}
.b1{background:radial-gradient(circle at 35% 30%,#ffe9c4,#f0c58e)}.b2{background:radial-gradient(circle at 35% 30%,#ffe0e3,#f4a7b0)}.b3{background:radial-gradient(circle at 35% 30%,#f1dccb,#c49a7c)}.b4{background:radial-gradient(circle at 35% 30%,#eef5d6,#c7d99a)}
.rp-bola{width:48px;height:48px;border:2px solid var(--tinta)}

/* ---------- banda calculadora (poster duotono + copa) ---------- */
.calc-band{position:relative;isolation:isolate;overflow:hidden;color:var(--papel);background:var(--coral2)}
.cb-bg{position:absolute;inset:0;z-index:-2}
.cb-bg img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.25) brightness(1.05) blur(1.5px);transform:scale(1.15)}
.cb-bg::after{content:"";position:absolute;inset:0;background:var(--grain),var(--barq-o),linear-gradient(100deg,#b8322c 0%,#a02a25 45%,rgba(143,36,31,.9) 100%);mix-blend-mode:multiply}
.cb-copa{position:absolute;top:0;bottom:0;right:0;width:40%;z-index:-1;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18%);mask-image:linear-gradient(90deg,transparent 0,#000 18%)}
.cb-copa img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.cb-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,430px);gap:18px 34px;align-items:start;width:62vw;max-width:none;margin:0;padding:clamp(56px,7vw,100px) 20px clamp(56px,7vw,100px) max(20px,calc((100vw - 1240px)/2 + 20px))}
.cb-txt h2{font-size:clamp(2.4rem,4vw,4.2rem);color:var(--papel);margin-bottom:16px}
.cb-txt .eyebrow{color:var(--amar2)}
.cb-txt p{font-size:1.1rem}
.cb-in>.btn{grid-column:2}
@media (max-width:1180px){.cb-in{grid-template-columns:1fr;max-width:none}.cb-in>.btn{grid-column:1}}
@media (max-width:760px){.cb-copa{position:relative;width:100%;height:320px;-webkit-mask-image:linear-gradient(0deg,transparent 0,#000 22%);mask-image:linear-gradient(0deg,transparent 0,#000 22%)}.cb-in{width:100%;padding:8px 20px 56px}}

/* ---------- calculadora ---------- */
.calc{background:var(--papel);color:var(--tinta);border:3px solid var(--tinta);box-shadow:9px 9px 0 var(--tinta2);padding:20px;display:grid;gap:14px;min-width:0}
.calc-t{font:900 1.2rem/1 var(--f);margin:0;letter-spacing:-.02em}
.calc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:800;font-size:1.08rem}
.step{display:flex;align-items:center;gap:6px}
.step button{width:42px;height:42px;border:2px solid var(--tinta);background:var(--papel);font:900 1.3rem/1 var(--f);color:var(--tinta);cursor:pointer}
.step button:hover{background:var(--amar)}
.step input{width:3.2ch;text-align:center;font:900 1.7rem/1 var(--f);border:0;background:transparent;color:var(--tinta);-moz-appearance:textfield;appearance:textfield;padding:0}
.step input::-webkit-outer-spin-button,.step input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.calc-modo{border:0;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.calc-modo legend{font-weight:800;margin-bottom:8px;padding:0}
.calc-modo label{position:relative;cursor:pointer}
.calc-modo input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.calc-modo span{display:grid;height:100%;border:2px solid var(--tinta);padding:10px 12px;background:var(--papel)}
.calc-modo small{font-size:.78rem;line-height:1.25;opacity:.8}
.calc-modo input:checked+span{background:var(--amar);box-shadow:inset 0 0 0 2px var(--tinta)}
.calc-modo input:focus-visible+span{outline:3px solid var(--tinta);outline-offset:2px}
.calc-res{background:var(--coral);color:var(--papel);padding:16px 18px;display:grid;gap:4px;background-image:var(--grain);background-color:var(--coral)}
.calc-res strong{font:900 clamp(2.6rem,5vw,3.6rem)/1 var(--f);letter-spacing:-.03em}
.calc-k{font-weight:700}
.calc-potes{margin:0;font-weight:900;font-size:1.1rem;color:var(--amar2)}
.calc-det{margin:0;font-size:.82rem;opacity:.92}
.calc.is-empty .calc-res{background-color:var(--tinta)}
.calc-nota{margin:0;font-size:.82rem;line-height:1.45;border-left:5px solid var(--amar);padding:4px 0 4px 12px}
.calc-full{max-width:560px}
/* casillas del pedido (herramienta completa) */
.pick{border-top:2px solid var(--tinta);padding-top:10px;min-width:0}
.pick summary{cursor:pointer;font-weight:900;min-height:44px;display:flex;align-items:center}
.chks{border:0;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;min-width:0}
.chks legend{padding:0;margin-bottom:8px;font:800 .74rem/1.3 var(--f);letter-spacing:.14em;text-transform:uppercase;color:var(--coral2)}
.chk{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 10px;border:2px solid var(--tinta);background:var(--papel);cursor:pointer;font-weight:700;font-size:.93rem;line-height:1.2}
.chk input{width:20px;height:20px;accent-color:var(--coral);flex:none;margin:0}
.chk:has(input:checked){background:var(--amar2)}
.pick .calc-nota{margin-top:10px}
.calc-ped{margin:8px 0 0;padding:8px 0 0 18px;border-top:1px solid rgba(255,250,240,.4);font-size:.92rem;display:grid;gap:4px}
.calc-ped[hidden],.calc-dlinks[hidden]{display:none}
.calc-dlinks{margin:4px 0 0;font-size:.88rem}
.calc-dlinks a{color:var(--amar2);font-weight:800}
.calc-full .calc-res strong{font-size:clamp(3rem,6vw,4.4rem)}

/* ---------- banda de las de barrio (luz diagonal) ---------- */
.barrio-band{position:relative;padding:clamp(64px,8vw,110px) 0;background:var(--grain),linear-gradient(118deg,transparent 0 58%,rgba(184,50,44,.86) 58% 76%,transparent 76%),linear-gradient(118deg,#f2c14e,#f5cd66 60%,#eeb43c)}
.sec-head{max-width:760px;margin-bottom:28px}
.sec-head p{font-size:1.06rem}
.barrio-band .sec-head h2.big{color:var(--tinta)}
.barrio-band .eyebrow{color:var(--tinta)}
.more{margin:30px 0 0}

/* ---------- tarjetas "pote" ---------- */
.potes,.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:22px}
.pote{position:relative;display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;background:var(--papel);border:3px solid var(--tinta);border-radius:26px 26px 10px 10px;box-shadow:7px 7px 0 var(--tinta);padding:18px 18px 16px;min-width:0}
.pote-ph img{width:86px;height:86px;object-fit:cover;border-radius:50%;border:2px solid var(--tinta)}
.pote-b{min-width:0;display:grid;align-content:start;gap:4px}
.pote h3{font-size:1.32rem;letter-spacing:-.02em;line-height:1.05}
.pote h3 a{color:var(--tinta);text-decoration:none}
.pote h3 a:hover{color:var(--coral)}
.pote-z,.pote-t{display:flex;gap:6px;margin:0;font-size:.9rem;align-items:flex-start}
.pote-z span{overflow-wrap:anywhere;min-width:0}
.pote-act{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.tag{justify-self:start;font:800 .66rem/1 var(--f);letter-spacing:.12em;text-transform:uppercase;border:2px solid var(--tinta);padding:4px 8px;border-radius:999px}
.tag-b{background:var(--amar)}
.tier{justify-self:start;font:800 .7rem/1 var(--f);padding:4px 8px;background:var(--tinta);color:var(--papel)}
.pote-n{position:absolute;top:-16px;left:-14px;width:40px;height:40px;border-radius:50%;background:var(--coral);color:var(--papel);display:grid;place-items:center;font:900 1.1rem var(--f);border:3px solid var(--tinta);z-index:1}
.potes-n{margin-top:12px}
@media (max-width:420px){.pote{grid-template-columns:64px minmax(0,1fr);padding:16px 14px}.pote-ph img{width:64px;height:64px}}

/* ---------- banda con film espejado ---------- */
.film-band{position:relative;isolation:isolate;overflow:hidden;background:var(--noche);color:var(--crema);min-height:600px;display:flex;align-items:center}
.fb-poster,.band-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;transform:scaleX(-1);z-index:-3}
.band-film{opacity:0;transition:opacity 1s}
.fb-veil{position:absolute;inset:0;z-index:-1;background:var(--grain),radial-gradient(ellipse at 96% 10%,rgba(184,50,44,.55),transparent 45%),linear-gradient(270deg,rgba(58,26,20,.97) 0%,rgba(58,26,20,.84) 40%,rgba(58,26,20,.2) 66%,transparent 80%)}
.fb-in{width:100%;display:grid;justify-items:start;padding-top:90px;padding-bottom:90px}
.fb-in>*{margin-left:min(48%,620px);max-width:560px;width:100%}
.film-band .eyebrow{color:var(--amar)}
.film-band h2.big{color:var(--crema);margin-bottom:14px}
.fb-in .fb-list{list-style:none;margin:18px 0 28px min(48%,620px);padding:0;border-top:2px solid rgba(251,240,201,.3)}
.fb-list a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 0;border-bottom:2px solid rgba(251,240,201,.3);color:var(--crema);text-decoration:none;font:900 clamp(1.4rem,2.6vw,2rem)/1 var(--f);letter-spacing:-.02em}
.fb-list a b{color:var(--amar)}
.fb-list a:hover span{color:var(--amar)}
.film-band .btn.light{width:auto;margin-left:min(48%,620px)}
@media (max-width:760px){.film-band{align-items:flex-end;min-height:720px}.fb-poster,.band-film{object-position:center 30%;transform:none}.fb-veil{background:var(--grain),linear-gradient(0deg,rgba(36,16,12,.98) 0%,rgba(58,26,20,.88) 52%,rgba(58,26,20,.2) 80%)}.fb-in>*,.film-band .btn.light,.fb-in .fb-list{margin-left:0}.fb-in{padding-top:280px;padding-bottom:60px}}

/* ---------- secciones sobre crema ---------- */
.sec{padding:clamp(48px,6vw,84px) 0 0}
.cremabg>.wrap{padding-bottom:clamp(56px,7vw,96px)}
.notas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:22px}
.nota{display:grid;align-content:start;gap:6px;background:var(--papel);border:3px solid var(--tinta);box-shadow:7px 7px 0 var(--tinta);padding:22px;text-decoration:none;color:var(--tinta);transition:transform .15s}
.nota:hover{transform:translate(-2px,-2px)}
.nota h3{font-size:1.6rem}
.nota-go{display:inline-flex;gap:8px;align-items:center;font-weight:900;color:var(--coral)}
.nota-tool{background:var(--coral);color:var(--papel);background-image:var(--grain),var(--barq-o)}
.nota-tool .eyebrow{color:var(--amar2)}.nota-tool .nota-go{color:var(--amar)}
.faq{display:grid;gap:0;border-top:3px solid var(--tinta);max-width:900px}
.faq details{border-bottom:2px solid var(--tinta);padding:4px 0}
.faq summary{cursor:pointer;font-weight:900;font-size:1.12rem;padding:14px 40px 14px 0;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:8px;font-size:1.7rem;color:var(--coral)}
.faq details[open] summary::after{content:"−"}
.faq details p{margin:0 0 16px;max-width:70ch}

/* ---------- sumá tu heladería ---------- */
.join{position:relative;overflow:hidden;color:var(--papel);background:var(--coral);background-image:var(--grain),radial-gradient(ellipse at 80% 20%,rgba(242,193,78,.35),transparent 50%),var(--barq-o);padding:clamp(64px,8vw,110px) 0 clamp(90px,10vw,140px)}
.join .float{opacity:.95}
.fj1{right:6%;top:-40px;width:clamp(140px,16vw,250px)}
.fj2{left:-60px;bottom:-70px;width:clamp(140px,15vw,240px);animation-delay:-4s}
.join-in{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:28px}
.join-in>div{max-width:640px}
.join h2{font-size:clamp(2.8rem,6vw,5rem);color:var(--papel);margin-bottom:12px}
.join .eyebrow{color:var(--amar2)}

/* ---------- pie ---------- */
.foot{position:relative;background:var(--tinta);background-image:var(--grain);color:var(--crema);padding:20px 0 40px}
.foot-drip{position:absolute;left:0;right:0;top:-58px;width:100%;height:60px;fill:var(--tinta)}
.foot-word{font:900 clamp(4.2rem,15vw,15rem)/.8 var(--f);letter-spacing:-.06em;color:transparent;-webkit-text-stroke:2px rgba(251,240,201,.28);margin:10px 0 34px;white-space:nowrap;overflow:hidden}
.foot-cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
.foot-cols>div{display:grid;align-content:start;gap:8px;min-width:0}
.foot a{color:var(--crema);overflow-wrap:anywhere}
.foot h2{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--amar);margin-bottom:6px}
.foot .logo b,.foot .logo span{color:var(--crema)}
.foot p{opacity:.88}
@media (max-width:860px){.foot-cols{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-cols{grid-template-columns:1fr}}

/* ---------- cabeceras de página (coral con barquillo) ---------- */
.phead{position:relative;overflow:hidden;color:var(--papel);background:var(--coral);background-image:var(--grain),radial-gradient(ellipse at 12% 110%,rgba(242,193,78,.45),transparent 45%),radial-gradient(ellipse at 100% 0%,rgba(36,16,12,.35),transparent 50%),var(--barq-o);padding:clamp(36px,5vw,64px) 0 clamp(80px,9vw,120px)}
.phead .float{opacity:.95}
.fp1{right:-40px;top:-30px;width:clamp(120px,15vw,240px)}
.fp2{right:22%;bottom:-80px;width:clamp(90px,10vw,160px);animation-delay:-5s}
.phead-in{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:36px;align-items:center}
.phead-in>.phead-txt:only-child{grid-column:1/-1;max-width:820px}
.phead h1{color:var(--papel);margin-bottom:16px;overflow-wrap:anywhere}
.phead .eyebrow{color:var(--amar2)}
.phead p{font-size:1.1rem;max-width:56ch}
.bmap{margin:0;background:var(--papel);border:3px solid var(--tinta2);box-shadow:10px 10px 0 var(--tinta2)}
.bmap figcaption{color:var(--tinta);font-size:.76rem;padding:6px 10px;border-top:2px solid var(--tinta)}
.rb{display:block;width:100%;height:auto;aspect-ratio:1.25}
.rb .rm-b{stroke-width:.4}
.rb .rb-here{fill:#f2c14e;stroke:#3a1a14;stroke-opacity:.9;stroke-width:.8}
.rb-pin path{fill:var(--coral);stroke:#fffaf0;stroke-width:2}
.rb-pin text{font:900 12px var(--f);fill:#fffaf0}
.rb-pin circle{fill:#fffaf0}
.rb-name{font-family:var(--f);font-weight:900;letter-spacing:.12em;text-transform:uppercase;fill:#3a1a14;opacity:.35}
@media (max-width:860px){.phead-in{grid-template-columns:1fr}.fp2{display:none}}

/* ---------- ficha ---------- */
.phead-ficha .phead-in{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}
.faddr{display:flex;gap:8px;align-items:flex-start;font-size:1.12rem;font-weight:600}
.faddr span{overflow-wrap:anywhere;min-width:0}
.factions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 6px}
.phead .claim{color:var(--amar2)}
.fart{position:relative;display:grid;justify-items:center}
.fart-bola{width:clamp(170px,22vw,250px);height:clamp(170px,22vw,250px);border:3px solid var(--tinta2);box-shadow:10px 10px 0 var(--tinta2)}
.fmini{margin:-38px 0 0 30%;width:min(260px,70%);background:var(--papel);border:3px solid var(--tinta2);box-shadow:6px 6px 0 var(--tinta2);position:relative}
.fpic{margin:0}.fpic img{border:3px solid var(--tinta2);box-shadow:10px 10px 0 var(--tinta2)}.fpic figcaption{font-size:.78rem;margin-top:10px}.fpic a{color:var(--papel)}
.ficha{padding-top:24px;padding-bottom:clamp(56px,7vw,96px)}
.fgrid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:start}
.fsec{padding:24px 0;border-bottom:2px dashed var(--line)}
.fsec h2{color:var(--coral);margin-bottom:12px}
.notecard{display:flex;gap:12px;background:var(--papel);border:2px solid var(--tinta);border-left:8px solid var(--amar);padding:14px 16px}
.notecard b{display:block}.notecard span{display:block;font-size:.95rem}
.nc-ic{color:var(--coral);font-size:1.3rem}
.fmap iframe{width:100%;height:340px;border:3px solid var(--tinta)}
.flinks{display:grid;gap:6px;margin-top:12px}
.flinks a{display:flex;gap:8px;align-items:center;font-weight:700}
.flinks-brand{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.flinks-brand a{background:var(--papel);border:2px solid var(--tinta);padding:10px 12px;text-decoration:none;color:var(--tinta)}
.stale{font-weight:400;opacity:.8}
.faside{display:grid;gap:18px;position:sticky;top:20px}
.contact{background:var(--tinta);background-image:var(--grain);color:var(--crema);padding:22px;border:3px solid var(--tinta2);box-shadow:8px 8px 0 var(--coral)}
.contact .eyebrow{color:var(--amar)}
.contact a{color:var(--crema)}
.contact .tel{display:block;font:900 2rem/1 var(--f);color:var(--amar);text-decoration:none;letter-spacing:-.02em}
.srcbox{background:var(--papel);border:2px solid var(--tinta);padding:14px 16px}
.near{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:10px}
.near a{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--tinta);background:var(--papel);border:2px solid var(--tinta);padding:10px 12px}
.near a:hover{background:var(--amar)}
.near-bola{width:46px;height:46px;border:2px solid var(--tinta)}
.near span{display:grid;min-width:0}.near small{overflow-wrap:anywhere}
.embeds{display:grid;gap:12px}.embed-frame{width:100%;min-height:520px;border:2px solid var(--tinta)}
@media (max-width:900px){.fgrid{grid-template-columns:1fr}.faside{position:static}.phead-ficha .phead-in{grid-template-columns:1fr}.fart{justify-items:start}.fmini{margin-left:110px}}

/* ---------- herramienta ---------- */
.tool-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:760px;background:var(--grain),linear-gradient(118deg,transparent 0 62%,rgba(184,50,44,.75) 62% 80%,transparent 80%),linear-gradient(118deg,#f2c14e,#f6cf6a 60%,#eeb43c);border-top:3px solid var(--tinta);border-bottom:3px solid var(--tinta)}
.th-in{padding:clamp(28px,5vw,64px) clamp(20px,4vw,56px);display:grid;align-content:center;gap:16px}
.th-in h1{font-size:clamp(3rem,6.4vw,6.2rem);color:var(--tinta);line-height:.88}
.th-in .eyebrow{color:var(--tinta)}
.th-in .lead{margin:0}
.th-copa{order:2;position:relative;border-left:3px solid var(--tinta);min-height:340px}
.th-copa img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.th-in>.btn{max-width:560px}
@media (max-width:860px){.tool-hero{grid-template-columns:1fr}.th-copa{order:0;border-left:0;border-bottom:3px solid var(--tinta);height:340px}}
.cerca{display:grid;gap:10px;max-width:760px}
.cerca label{font-weight:900}
.cerca select,.filters input,.filters select{font:700 1rem var(--f);padding:12px 14px;border:3px solid var(--tinta);background:var(--papel);color:var(--tinta);min-width:0}
.cerca-list{list-style:none;margin:6px 0 10px;padding:0;border-top:3px solid var(--tinta)}
.cerca-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:2px dashed var(--line);align-items:center}
.cl-txt{display:grid;min-width:0}.cl-txt a{font-weight:900;font-size:1.1rem;color:var(--tinta)}.cl-txt small{overflow-wrap:anywhere}
.cl-act{display:flex;gap:6px;flex-wrap:wrap}
.crit-grid{display:grid;grid-template-columns:1fr 1fr 2fr;gap:22px}
.crit{background:var(--papel);border:3px solid var(--tinta);box-shadow:7px 7px 0 var(--tinta);padding:22px}
.crit b{font:900 1.6rem/1 var(--f);display:block;margin-bottom:8px}
.crit dl{display:grid;grid-template-columns:auto auto;gap:4px 14px;margin:12px 0 0;justify-content:start}
.crit dt{font-weight:700}.crit dd{margin:0;font:900 1.5rem/1 var(--f)}
.crit-star{background:var(--coral);color:var(--papel);background-image:var(--grain),var(--barq-o)}
.crit-txt{box-shadow:7px 7px 0 var(--coral)}
@media (max-width:900px){.crit-grid{grid-template-columns:1fr 1fr}.crit-txt{grid-column:1/-1}}
@media (max-width:480px){.crit-grid{grid-template-columns:1fr}}
.calc-mini{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;align-items:center;margin:48px 0 0;padding:18px 22px 18px 0;border:3px solid var(--tinta);box-shadow:8px 8px 0 var(--tinta);overflow:hidden;background:var(--grain),linear-gradient(118deg,#f2c14e 0 70%,rgba(184,50,44,.85) 70% 84%,#f2c14e 84%)}
.calc-mini img{width:150px;height:200px;object-fit:cover;object-position:center 40%;border-right:3px solid var(--tinta)}
.calc-mini h2{margin-bottom:8px}
@media (max-width:520px){.calc-mini{grid-template-columns:1fr;padding:0 0 18px}.calc-mini img{width:100%;height:180px;border-right:0;border-bottom:3px solid var(--tinta)}.calc-mini>div{padding:0 18px}}

/* ---------- directorio ---------- */
.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:8px 0 28px;padding:14px;background:var(--papel);border:3px solid var(--tinta);box-shadow:7px 7px 0 var(--tinta)}
.filters input{flex:1 1 220px}
.filters select{flex:0 1 auto;max-width:100%}
.count{font-weight:800;margin-left:auto}
.count.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.count.tapado{-webkit-clip-path:inset(50%);clip-path:inset(50%)}
.banner{background:var(--papel);border:3px solid var(--tinta);padding:14px 16px;margin:20px 0}
.page-head{padding:40px 0 20px}
.page-head h1{color:var(--coral);margin-bottom:14px}

/* ---------- textos ---------- */
.prose{max-width:820px;padding-top:24px;padding-bottom:20px}
.prose h1{color:var(--coral);font-size:clamp(2.4rem,5.4vw,4.4rem);margin-bottom:14px}
.prose h2{margin:36px 0 12px;color:var(--coral)}
.prose p,.prose li{max-width:70ch}
.prose .answer{background:var(--papel);border:3px solid var(--tinta);box-shadow:7px 7px 0 var(--amar);padding:16px 18px}
.tablewrap{overflow-x:auto;margin:16px 0;border:3px solid var(--tinta);background:var(--papel)}
.tablewrap table{border-collapse:collapse;width:100%;min-width:520px;font-size:.95rem}
.tablewrap caption{text-align:left;font-weight:800;padding:10px 12px}
.tablewrap th,.tablewrap td{border-bottom:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}
.tablewrap th{background:var(--amar)}
.revista{--r-line:rgba(58,26,20,.25)}
.rv-tapa.rv-type>a{background:var(--coral)!important;color:var(--papel);background-image:var(--grain),var(--barq-o)!important;border:3px solid var(--tinta);box-shadow:9px 9px 0 var(--tinta)}
.rv-tapa.rv-type .rv-kick{color:var(--amar2)}
.rv-card a{display:block;background:var(--papel);border:3px solid var(--tinta);box-shadow:7px 7px 0 var(--tinta);padding:0 0 18px}
.rv-card h3,.rv-card p,.rv-card .rv-kick{padding:0 18px}
.rv-word{background:var(--amar)!important;color:var(--tinta)!important;border-bottom:3px solid var(--tinta)}

/* ---------- formulario ---------- */
.joinpage-wrap{position:relative;overflow:hidden;background:var(--grain),linear-gradient(118deg,transparent 0 64%,rgba(184,50,44,.8) 64% 80%,transparent 80%),linear-gradient(118deg,#f2c14e,#f6cf6a);border-top:3px solid var(--tinta);padding:clamp(40px,6vw,80px) 0}
.joinpage{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:40px;align-items:start}
.joinpage h1{color:var(--tinta);margin-bottom:14px}
.joinpage .eyebrow{color:var(--tinta)}
.joinform,.claimwrap form{display:grid;gap:10px;background:var(--papel);border:3px solid var(--tinta);box-shadow:9px 9px 0 var(--tinta);padding:22px}
.joinform label,.claimwrap label{font-weight:800}
.joinform input:not([type=checkbox]),.claimwrap input:not([type=checkbox]),.claimwrap select,.claimwrap textarea{font:600 1rem var(--f);padding:12px;border:2px solid var(--tinta);background:#fff;width:100%}
.consent{display:flex;gap:10px;align-items:flex-start;font-weight:400!important;font-size:.9rem}
.consent input{margin-top:4px}
@media (max-width:860px){.joinpage{grid-template-columns:1fr}}
.pagewrap{padding-bottom:60px}

/* ---------- cookies ---------- */
/* Barra chica abajo, sin tapar contenido (auditoría 2026-10-08): una línea de texto y dos botones chicos. */
.cookie{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;background:var(--tinta);color:var(--crema);padding:8px 12px;border:2px solid var(--tinta2);box-shadow:4px 4px 0 var(--coral);max-width:560px;margin-left:auto;font-size:.86rem}
.cookie p{margin:0;flex:1 1 220px;font-size:.86rem}
.cookie a{color:var(--amar)}
.cookie .btn{padding:7px 12px;font-size:.86rem;box-shadow:none;border-color:var(--crema)}

/* Film de escritorio: el original trae la espiral a la derecha y una franja lisa a la izquierda. El video va anclado a un
   costado con proporción 16:9 y una capa con la misma geometría funde el borde de la franja (#0a141c, el color del film). */
.hero-fade,.fb-fade{display:none}
@media (min-width:761px){
  .hero-poster img,.hero-film{left:auto;right:0;width:auto;height:100%;aspect-ratio:16/9}
  .hero-fade{display:block;position:absolute;top:0;right:0;height:100%;aspect-ratio:16/9;z-index:-2;background:linear-gradient(90deg,#0a141c 0 66%,rgba(10,20,28,.6) 72%,rgba(10,20,28,0) 82%)}
  .fb-poster,.band-film{right:auto;left:0;width:auto;height:100%;aspect-ratio:16/9}
  .fb-fade{display:block;position:absolute;top:0;left:0;height:100%;aspect-ratio:16/9;z-index:-2;background:linear-gradient(270deg,#0a141c 0 66%,rgba(10,20,28,.6) 72%,rgba(10,20,28,0) 82%)}
  .hero,.film-band{background:#0a141c}
}
.rp-share{--nc-accent:var(--coral);--nc-on-accent:#fffaf0}
/* «¿Quién compra el helado?»: la barra de compartir va sobre el resultado coral, con las frases como fichas amarillas. */
.calc-share{--nc-accent:var(--amar2);--nc-on-accent:var(--tinta);--nc-line:rgba(255,250,240,.6);margin:14px -18px -16px;padding:14px 18px 16px;background:rgba(58,26,20,.22);border-top:1px solid rgba(255,250,240,.25)}
.calc-share .ncomp-t{font:900 1.15rem/1.15 var(--f);letter-spacing:-.01em}.calc-share .ncomp-p{opacity:.9}.calc-share[hidden]{display:none}

/* ---------- inicio: notas (tapa y tarjetas; antes La Pizarra, D19, que Harold descartó el 22/10/2026) ----------
   Arriba la tapa (coral con la copa) y la pizarra "Esta semana" escrita a tiza; abajo las notas con las bochas, la
   calculadora chica y los gustos de temporada. Después sigue la Ruta del Helado. */
.pz{padding:clamp(26px,4vw,52px) 0 clamp(36px,5vw,64px)}
.pz-top{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:clamp(18px,2.4vw,28px);align-items:stretch}
.pz-tapa>a{display:grid;grid-template-columns:1fr 1fr;height:100%;text-decoration:none;color:var(--papel);background:var(--coral) var(--grain);border:3px solid var(--tinta);box-shadow:7px 7px 0 var(--tinta)}
.pz-tapa-txt{padding:clamp(22px,3vw,40px);display:flex;flex-direction:column;justify-content:center}
.pz-kick{display:block;font:800 .74rem/1.3 var(--f);letter-spacing:.16em;text-transform:uppercase;color:var(--amar);margin:0 0 10px}
.pz-tapa p{font-size:1.05rem;color:#fff3d6;margin:0 0 18px}
.pz-go{display:inline-flex;gap:8px;align-items:center;font-weight:800;color:var(--amar2)}
.pz-tapa a:hover h3,.pz-tapa a:focus-visible h3{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
.pz-tapa a:focus-visible{outline-color:var(--tinta)}
.pz-tapa-img{background:linear-gradient(135deg,var(--amar) 0 55%,#e2a93a 55% 100%);overflow:hidden;min-height:340px}
.pz-tapa-img img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.pz-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:clamp(26px,3.4vw,40px)}
.pz-card a{display:block;text-decoration:none;color:var(--tinta)}
.pz-bola{display:grid;place-items:center;aspect-ratio:1;background:var(--papel);border:2px solid var(--line);margin-bottom:10px}
.pz-bola img{width:70%;height:auto}
.pz-card .pz-kick{color:var(--coral)}
.pz-card h3{font-size:1.2rem;line-height:1.12;letter-spacing:-.01em;margin-bottom:6px}
.pz-card p{font-size:.92rem;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pz-card a:hover h3{text-decoration:underline}
.pz-news{margin-top:32px;background:var(--papel);border-top:3px solid var(--tinta);padding:18px 20px}
.pz-news h2{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--coral);margin-bottom:10px}
.pz-news ol{margin:0 0 8px;padding-left:1.3em;display:grid;gap:6px}
.pz-news li a{font-weight:700;color:var(--tinta);overflow-wrap:anywhere}
.pz-news li span{display:block;font-size:.84rem}
.pz-more{margin:28px 0 0}
/* Notas (tapa coral con la copa y tarjetas con bochas) sobre crema, después de la calculadora. */
.pz-tapa{margin-bottom:clamp(22px,3vw,32px)}
.pz-tapa h3{font-size:clamp(2rem,3.6vw,3.4rem);line-height:.98;color:var(--papel);margin-bottom:16px}
.red-ruta{margin-top:clamp(36px,5vw,60px);color:var(--tinta)}
.red-ruta h2{font-size:clamp(1.6rem,2.6vw,2.2rem);color:var(--coral)}
.red-ruta li a{background:var(--papel);border:2px solid var(--tinta);border-radius:0;box-shadow:5px 5px 0 var(--tinta)}
.red-ruta li a:hover,.red-ruta li a:focus-visible{background:var(--amar2)}
.cchica{color:var(--papel);background:var(--coral2);background-image:var(--grain),var(--barq-o);padding:clamp(36px,5vw,64px) 0}
.cchica-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:22px 44px;align-items:center}
.cchica h2{font-size:clamp(2rem,3.4vw,3rem);color:var(--papel);margin-bottom:12px}
.cchica .eyebrow{color:var(--amar2)}
.cchica-txt p{font-size:1.08rem}
.cchica-link{color:var(--amar2);font-weight:800;display:inline-flex;gap:8px;align-items:center}
.cchica-txt :focus-visible{outline-color:var(--amar)}
.tempo{padding:clamp(44px,6vw,80px) 0 clamp(20px,3vw,32px)}
.tempo-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tempo-list a{display:grid;align-content:start;gap:6px;height:100%;padding:18px 20px;background:var(--papel);border:3px solid var(--tinta);box-shadow:5px 5px 0 var(--amar);text-decoration:none;color:var(--tinta)}
.tempo-list b{font-size:1.12rem;line-height:1.15}
.tempo-list span{font-size:.92rem}
.tempo-list a:hover b{text-decoration:underline}
@media (max-width:980px){.pz-top{grid-template-columns:1fr}.pz-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.tempo-list{grid-template-columns:repeat(2,minmax(0,1fr))}.cchica-in{grid-template-columns:1fr}}
@media (max-width:620px){.pz-tapa>a{grid-template-columns:1fr}.pz-tapa-img{min-height:260px;order:-1}.pz-cards{grid-template-columns:1fr;gap:18px}.pz-card a{display:grid;grid-template-columns:84px minmax(0,1fr);column-gap:14px}.pz-bola{grid-row:1/span 3;margin:0}.tempo-list{grid-template-columns:1fr}}
/* calculadora chica del inicio: sin el bloque de compartir (está en la herramienta completa) */
.calc-mini-w .ncomp{display:none}
.calc-mini-w{gap:10px;padding:16px}
.calc-mini-w .calc-res strong{font-size:clamp(2rem,4vw,2.8rem)}
/* ---------- biblioteca del helado (en /blog/) ---------- */
.biblio{margin-top:56px}
.lib{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:22px}
.book{display:grid;grid-template-rows:auto 1fr;background:var(--papel);border:3px solid var(--tinta);box-shadow:6px 6px 0 var(--tinta);min-width:0}
.b-cover{position:relative;height:150px;overflow:hidden;border-bottom:3px solid var(--tinta);background-image:var(--barq-o)!important}
.b-cover img{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px)}
.b-cover img[style*=cover]{inset:0;width:100%;height:100%}
.b-type{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;background:var(--papel);color:var(--tinta);border:2px solid var(--tinta);font:800 .72rem/1 var(--f);letter-spacing:.12em;text-transform:uppercase;padding:6px 8px}
.b-type .ic{width:14px;height:14px}
.b-txt{display:grid;align-content:start;gap:10px;padding:16px 18px 18px;min-width:0}
.b-txt h3{font-size:1.3rem;line-height:1.05}
.b-txt p{margin:0;font-size:.95rem}
.b-k{font-weight:700;font-size:.85rem!important;color:color-mix(in srgb,var(--tinta) 78%,transparent)}
.book .ext{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:.92rem;color:var(--coral2);justify-self:start;overflow-wrap:anywhere}
.book .ext .ic{width:14px;height:14px;flex:none}
.vid-btn{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:10px 12px;border:2px solid var(--tinta);background:var(--crema);color:var(--tinta);font:inherit;text-align:left;cursor:pointer}
.vid-btn:hover{background:var(--amar2)}
.vid-btn .ic{width:28px;height:28px;flex:none;color:var(--coral)}
.vid-btn b{display:block}.vid-btn small{display:block;font-size:.8rem;line-height:1.3;margin-top:2px}
.vid .embed-frame{aspect-ratio:16/9;min-height:0;height:auto;background:#000}
