/* Tienda Luiggi Pizzaiolo. Misma identidad que luiggipizzaiolo.com: carbón, crema, tomate y oro; Anton + Fraunces + Figtree. Móvil primero. */
@font-face{font-family:"Anton";src:url("/fuentes/anton.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Fraunces Variable";src:url("/fuentes/fraunces.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces Variable";src:url("/fuentes/fraunces-italic.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Figtree Variable";src:url("/fuentes/figtree.woff2") format("woff2");font-weight:300 900;font-display:swap}
:root{--crema:#f5ecdc;--crema-2:#ebe0c9;--carbon:#131010;--carbon-2:#2c2623;--tomate:#c93a12;--tomate-claro:#ff7a2f;--brasa:#e2471b;--oro:#d9a84e;
--display:"Anton","Arial Narrow",Impact,sans-serif;--serif:"Fraunces Variable",Georgia,serif;--texto:"Figtree Variable",system-ui,sans-serif;--tinta-suave:#4a453f;--ancho:76rem;--g:1.25rem}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:4.5rem}
img{max-width:100%;height:auto;display:block}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--tomate);outline-offset:3px}
.oscuro :focus-visible,.cab :focus-visible,.pie :focus-visible,.portada :focus-visible,.pasos :focus-visible,.consent :focus-visible{outline-color:var(--tomate-claro)}

body.sitio{margin:0;background:var(--crema);color:var(--carbon);font-family:var(--texto);font-size:1.0625rem;line-height:1.6;overflow-x:hidden}
.sitio h1,.sitio h2,.sitio h3{margin:0 0 .6em;text-wrap:balance}
.sitio h1,.sitio h2{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:1}
.sitio h1{font-size:clamp(2.5rem,9.5vw,5.2rem)}
.sitio h2{font-size:clamp(2.1rem,7vw,3.8rem)}
.sitio h3{font-family:var(--texto);font-weight:800;font-size:1.25rem;line-height:1.15}
.sitio h1 em,.sitio h2 em{font-family:var(--serif);font-style:italic;font-weight:600;text-transform:none;letter-spacing:-.01em;color:var(--tomate)}
.sitio p{margin:0 0 1em;max-width:62ch}
.sitio a{color:inherit}
.skip{position:absolute;left:-999px;top:0;background:var(--tomate);color:#fff;padding:12px 16px;z-index:100}
.skip:focus{left:0}
.banda-pruebas{background:var(--tomate);color:#fff;text-align:center;padding:6px var(--g);font-size:.875rem;font-weight:700}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3.25rem;padding:.7rem 1.7rem;border-radius:999px;font:800 1.1rem var(--texto);text-decoration:none!important;border:2px solid var(--tomate);background:var(--tomate);color:#fff!important;cursor:pointer;transition:transform .15s,background .15s,box-shadow .15s}
.btn:hover{background:#a82615;border-color:#a82615;transform:translateY(-2px)}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
.btn-grande{min-height:3.75rem;padding:.8rem 2.1rem;font-size:1.2rem;box-shadow:0 10px 30px -8px rgba(226,71,27,.7)}
.btn-sec{background:transparent;color:inherit!important;border-color:currentColor;box-shadow:none}
.btn-sec:hover{background:var(--carbon);color:var(--crema)!important;border-color:var(--carbon)}
.oscuro .btn-sec:hover,.portada .btn-sec:hover{background:var(--crema);color:var(--carbon)!important;border-color:var(--crema)}
.enlace{color:var(--tomate)!important;font-weight:700;text-underline-offset:3px}
.etiqueta{display:block;font:800 .8125rem var(--texto);text-transform:uppercase;letter-spacing:.2em;color:var(--tomate);margin:0 0 .9rem}
.oscuro .etiqueta{color:var(--oro)}

/* cabecera */
.cab{position:sticky;top:0;z-index:50;background:rgba(19,16,16,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--crema);border-bottom:1px solid rgba(255,255,255,.08)}
.cab-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.5rem;max-width:var(--ancho);margin-inline:auto;padding-inline:var(--g)}
.cab-logo{display:flex;align-items:center;gap:.65rem;text-decoration:none}
.cab-logo span{font-family:var(--display);text-transform:uppercase;font-size:1.35rem;letter-spacing:.03em;line-height:1}
.cab-nav{display:flex;align-items:center;gap:.4rem}
.cab-nav a{display:inline-flex;align-items:center;gap:.4rem;min-height:2.75rem;padding:0 .8rem;border-radius:999px;text-decoration:none;font-weight:700;font-size:.95rem;color:var(--crema)}
.cab-nav a:hover{background:rgba(255,255,255,.1)}
.cab-nav .cab-carrito{border:2px solid rgba(245,236,220,.35)}
.cab-solo-pc{display:none!important}
.cab-n{display:inline-block;min-width:1.35rem;height:1.35rem;line-height:1.35rem;padding:0 .35rem;border-radius:999px;background:var(--tomate);color:#fff;font-size:.78rem;text-align:center}
.cab-carrito-t{display:none}
@media (min-width:40rem){.cab-solo-pc{display:inline-flex!important}.cab-carrito-t{display:inline}}

/* portada */
.portada{position:relative;isolation:isolate;overflow:hidden;background:var(--carbon);color:var(--crema);padding:2rem var(--g) 3.2rem}
.portada::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse 60% 45% at 78% 72%,rgba(226,71,27,.34),transparent 65%),radial-gradient(ellipse 50% 40% at 8% 4%,rgba(217,168,78,.14),transparent 60%)}
.portada::after{content:"";position:absolute;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(circle at 12% 30%,rgba(255,190,90,.55) 0 3px,transparent 4px),radial-gradient(circle at 36% 70%,rgba(255,190,90,.5) 0 2px,transparent 3px),radial-gradient(circle at 58% 24%,rgba(255,210,120,.5) 0 3px,transparent 4px),radial-gradient(circle at 81% 62%,rgba(255,190,90,.55) 0 2px,transparent 3px),radial-gradient(circle at 92% 18%,rgba(255,210,120,.5) 0 3px,transparent 4px);background-size:380px 340px,290px 260px,440px 360px,330px 300px,520px 400px;animation:brasas 16s linear infinite;opacity:.8}
@keyframes brasas{to{background-position:0 -340px,0 -260px,0 -360px,0 -300px,0 -400px}}
.portada-in{max-width:var(--ancho);margin-inline:auto;display:flex;flex-direction:column;gap:.4rem}
.portada-texto{display:contents}
.portada-texto>*{order:5}.portada-texto>.p-pregunta{order:1}.portada-texto>.p-h1{order:2}.mazo{order:3}.portada-texto>.p-guia{order:4}
.p-pregunta{font:600 .98rem/1.3 var(--serif);font-style:italic;color:#ffb27d;margin:0 0 .8rem}
.p-h1{margin:0;font-size:min(16vw,6rem)!important;line-height:.93!important;text-shadow:0 6px 30px rgba(0,0,0,.45)}
.p-h1 span{display:block}
.p-h1 .brasa{background:linear-gradient(95deg,#ffa54a,#e2471b 70%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
.p-h1 em{display:block;font-size:.58em;line-height:1.1;padding-bottom:.12em;color:#f6d59a!important}
.p-guia{font-size:1.1rem;line-height:1.45;color:#f3e6d2;max-width:36ch;margin:1.1rem 0 0}
.p-botones{display:flex;flex-direction:column;gap:.7rem;margin-top:1.5rem}
.p-botones .btn{width:100%}
.p-datos{list-style:none;margin:1.6rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.p-datos li{padding:.4rem .8rem;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(19,16,16,.5);font-size:.9rem;font-weight:700;color:var(--crema)}
.p-datos b{font-family:var(--display);font-weight:400;font-size:1.15em;color:#ffc27a;letter-spacing:.02em}
.mazo{position:relative;height:min(78vw,21rem);margin:0 0 .6rem}
.mazo .cf{position:absolute;width:min(46vw,12.5rem);left:50%;top:50%;margin:calc(min(46vw,12.5rem) / -1.7) 0 0 calc(min(46vw,12.5rem) / -2);transform:translate(var(--x),var(--y)) rotate(var(--r));animation:cae 1s cubic-bezier(.2,.9,.3,1.15) both;animation-delay:calc(var(--i) * .13s + .25s);filter:drop-shadow(0 22px 28px rgba(0,0,0,.5))}
.mazo .cf::after{display:none}
@keyframes cae{from{opacity:0;transform:translate(calc(var(--x) * .3),-130vh) rotate(calc(var(--r) + 60deg))}60%{opacity:1}to{opacity:1;transform:translate(var(--x),var(--y)) rotate(var(--r))}}
.mazo .cf:nth-child(1){--x:-34%;--y:-8%;--r:-14deg}.mazo .cf:nth-child(2){--x:32%;--y:-14%;--r:11deg}.mazo .cf:nth-child(3){--x:-12%;--y:20%;--r:-5deg}
.mazo .cf:nth-child(4){--x:46%;--y:22%;--r:15deg}.mazo .cf:nth-child(5){--x:-48%;--y:32%;--r:-18deg}.mazo .cf:nth-child(6){--x:4%;--y:-2%;--r:3deg}
.sello{position:absolute;z-index:3;right:2%;bottom:-2%;width:5.6rem;aspect-ratio:1;filter:drop-shadow(0 12px 22px rgba(0,0,0,.5))}
.sello svg{width:100%;height:100%;animation:giro 26s linear infinite}
.sello .s-fondo{fill:var(--tomate)}.sello .s-aro{fill:none;stroke:rgba(255,255,255,.45);stroke-width:1.5;stroke-dasharray:3 5}
.sello text{font-family:var(--display);font-size:16px;letter-spacing:.5px;fill:#fff}
.sello b{position:absolute;inset:0;display:grid;place-items:center;font:italic 700 2rem var(--serif);color:#fff}
@keyframes giro{to{transform:rotate(360deg)}}
@media (min-width:52rem){
  .portada{padding:3.6rem var(--g) 4.6rem;min-height:calc(100svh - 3.5rem);display:flex;align-items:center}
  .portada-in{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:2rem;width:100%}
  .portada-texto{display:block}
  .portada-texto>*{order:0}
  .p-h1{font-size:min(8.2vw,6.8rem)!important}
  .p-botones{flex-direction:row;flex-wrap:wrap}.p-botones .btn{width:auto}
  .p-pregunta{font-size:1.25rem}
  .mazo{height:min(44vw,36rem)}
  .mazo .cf{width:min(20vw,15rem);margin:calc(min(20vw,15rem) / -1.7) 0 0 calc(min(20vw,15rem) / -2)}
  .sello{width:8rem;right:0;bottom:2%}.sello text{font-size:15px}.sello b{font-size:2.6rem}
}

/* tarjetas de tatuaje («flash cards») */
.cf{position:relative;display:block;margin:0;padding:.55rem .55rem .65rem;background:#fbf5e6;border-radius:.4rem;color:var(--carbon);text-decoration:none;box-shadow:0 2px 0 #e9dcc0,0 26px 44px -18px rgba(20,8,0,.6),0 8px 16px -8px rgba(20,8,0,.4)}
.cf-foto{display:block;position:relative;overflow:hidden;aspect-ratio:1;background:#fff;border-radius:.2rem}
.cf-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s ease,transform .6s cubic-bezier(.2,.8,.2,1)}
.cf-foto .cf-b{opacity:0}
.cf-cinta{position:absolute;z-index:2;top:-.85rem;left:50%;width:5rem;height:1.5rem;margin-left:-2.5rem;transform:rotate(-4deg);background:rgba(235,224,201,.86);box-shadow:0 2px 6px rgba(0,0,0,.25);clip-path:polygon(0 8%,4% 0,8% 10%,12% 0,16% 10%,20% 0,80% 0,84% 10%,88% 0,92% 10%,96% 0,100% 8%,100% 92%,96% 100%,92% 90%,88% 100%,84% 90%,80% 100%,20% 100%,16% 90%,12% 100%,8% 90%,4% 100%,0 92%)}
.cf-num{position:absolute;z-index:2;top:.9rem;left:.9rem;font:400 1rem var(--display);letter-spacing:.04em;padding:.2rem .55rem .1rem;border-radius:.4rem;background:var(--tomate);color:#fff}
.cf-pie{padding:.7rem .3rem 0;display:grid;gap:.15rem}
.sitio .cf-nombre{font:400 clamp(1.7rem,6vw,2.1rem)/1 var(--display);text-transform:uppercase;letter-spacing:.01em;margin:0}
.cf-lema{display:block;font:600 1rem/1.25 var(--serif);font-style:italic;color:#3a2f27;margin:0}
.cf-precio{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.45rem;font-weight:800;font-size:.95rem}
.cf-precio small{font-weight:600;color:var(--tinta-suave);font-size:.78rem}
.puntos{display:inline-flex;gap:.3rem}
.punto{width:.85rem;height:.85rem;border-radius:50%;border:1.5px solid var(--carbon);display:inline-block}
.punto-negra{background:var(--carbon)}.punto-blanca{background:#fff}
a.cf:hover .cf-b,a.cf:focus-visible .cf-b,a.cf.ver2 .cf-b{opacity:1}
a.cf:hover .cf-foto img:first-child{transform:scale(1.03)}
.mazo .cf-pie,.mazo .cf-cinta{display:none}
.mazo .cf{padding:.4rem}
.mazo .cf-num{top:.6rem;left:.6rem;font-size:.8rem}
.mazo .cf-foto{border-radius:.15rem}

/* catálogo */
.catalogo{position:relative;padding-block:clamp(3.5rem,9vw,6.5rem);overflow:hidden}
.catalogo-in{max-width:var(--ancho);margin-inline:auto;padding-inline:var(--g)}
.catalogo.oscuro{background:var(--carbon);color:var(--crema)}
.catalogo.oscuro p{color:#e4dccb}
.catalogo.claro{background:var(--crema-2)}
.catalogo.claro::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 100% 0%,rgba(226,71,27,.14),transparent 45%),radial-gradient(circle at 0% 100%,rgba(217,168,78,.2),transparent 45%)}
.catalogo.oscuro::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 50% at 90% 0%,rgba(226,71,27,.22),transparent 60%)}
.catalogo-cab{position:relative;margin-bottom:2.2rem}
.catalogo-cab h2{margin-bottom:.25em}
.catalogo-cab p{font-size:1.1rem;max-width:42ch}
.rejilla{position:relative;display:grid;gap:2.2rem 1.6rem;grid-template-columns:1fr;max-width:24rem;margin-inline:auto}
@media (min-width:40rem){.rejilla{grid-template-columns:repeat(3,1fr);max-width:none;gap:2rem 1.6rem}}
.rejilla .cf{will-change:transform}
.fx .rejilla .cf{transform:translate3d(calc(var(--dx,0px) * (1 - var(--p,1))),calc(var(--dy,0px) * (1 - var(--p,1))),0) rotate(calc(var(--r0,0deg) * (1 - var(--p,1)) + var(--rf,0deg) * var(--p,1)));opacity:calc(.15 + .85 * min(1,var(--p,1) * 3))}
.rejilla .cf:nth-child(1){--rf:-1.4deg}.rejilla .cf:nth-child(2){--rf:1deg}.rejilla .cf:nth-child(3){--rf:-.6deg}
@media (min-width:40rem){.rejilla .cf:nth-child(2){margin-top:1.8rem}}

/* cinta */
.cinta{position:relative;height:clamp(8rem,19vw,11.5rem);overflow:hidden;background:var(--carbon)}
.cinta-banda{position:absolute;left:-6%;width:112%;top:50%;overflow:hidden}
.cinta-fondo{transform:translateY(-50%) rotate(2.6deg);background:var(--crema);color:var(--carbon);opacity:.95}
.cinta-frente{transform:translateY(-50%) rotate(-2.4deg);background:linear-gradient(95deg,#a42c0b,#d03d12 50%,#a42c0b);color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.55);z-index:2}
.cinta-pista{display:flex;width:max-content;animation:marq 40s linear infinite}
.cinta-fondo .cinta-pista{animation-direction:reverse;animation-duration:48s}
.cinta-pista>span{display:flex;align-items:center;gap:clamp(1.2rem,3vw,2.4rem);padding:.35rem clamp(1.2rem,3vw,2.4rem) .25rem 0;font-family:var(--display);font-size:clamp(2rem,5.4vw,3.8rem);letter-spacing:.03em;line-height:1.15;white-space:nowrap;text-transform:uppercase}
.cinta-pista i{display:block;width:.5em;height:.5em;background:var(--oro);transform:rotate(45deg);flex:none}
.cinta-fondo i{background:var(--tomate)}
@keyframes marq{to{transform:translateX(-50%)}}

/* pasos */
.pasos{position:relative;overflow:hidden;background:linear-gradient(118deg,#a42c0b 0%,#d03d12 52%,#ac2e0c 100%);color:#fff;padding-block:clamp(3.2rem,8vw,5.5rem)}
.pasos::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");opacity:.13;mix-blend-mode:overlay;pointer-events:none}
.pasos-in{position:relative;z-index:1;max-width:var(--ancho);margin-inline:auto;padding-inline:var(--g)}
.pasos ol{list-style:none;margin:0;padding:0;display:grid}
.pasos li{display:grid;grid-template-columns:minmax(4rem,6rem) 1fr;gap:1rem;align-items:center;padding-block:1.1rem;border-top:2px solid rgba(255,255,255,.4)}
.pasos li:last-child{border-bottom:2px solid rgba(255,255,255,.4)}
.pasos b{font:400 clamp(3.2rem,12vw,5.6rem)/1 var(--display)}
.pasos h3{font-family:var(--display)!important;font-weight:400!important;text-transform:uppercase;font-size:clamp(1.6rem,5vw,2.4rem)!important;margin:0 0 .15em}
.pasos p{margin:0;color:#fff!important;max-width:44ch}
@media (min-width:52rem){.pasos ol{grid-template-columns:repeat(3,1fr);gap:2rem}.pasos li{grid-template-columns:1fr;border:0!important;border-top:2px solid rgba(255,255,255,.4)!important;align-items:start}}

/* preguntas */
.preguntas{padding-block:clamp(3.2rem,8vw,5.5rem)}
.preguntas-in{max-width:52rem;margin-inline:auto;padding-inline:var(--g)}
.faq details{border-top:2px solid var(--carbon);padding:1rem 0}
.faq details:last-child{border-bottom:2px solid var(--carbon)}
.faq summary{cursor:pointer;font:800 1.15rem var(--texto);list-style:none;display:flex;justify-content:space-between;gap:1rem;min-height:2.75rem;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:400 2rem/1 var(--display);color:var(--tomate);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:.6rem 0 0}

/* ficha */
.migas{max-width:var(--ancho);margin-inline:auto;padding:1rem var(--g) 0;font-size:.9rem;color:var(--tinta-suave)}
.migas a{text-underline-offset:3px}
.ficha{max-width:var(--ancho);margin-inline:auto;padding:1rem var(--g) 3rem;display:grid;gap:1.6rem}
.escena{position:relative;background:var(--crema-2);border-radius:1.4rem;padding:.8rem;box-shadow:0 34px 60px -30px rgba(30,10,0,.5)}
.escena::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 100% 0%,rgba(226,71,27,.16),transparent 50%),radial-gradient(circle at 0% 100%,rgba(217,168,78,.24),transparent 50%)}
.giro{position:relative;aspect-ratio:1;perspective:1200px}
.giro-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.giro-in.volteada{transform:rotateY(180deg)}
.giro .cara{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:.9rem;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#fff}
.giro .cara-espalda{transform:rotateY(180deg)}
.giro .cara.cambia{animation:cambia .45s ease}
@keyframes cambia{from{opacity:.15;transform:scale(.97)}}
.girable{cursor:pointer}
.giro-pista{position:absolute;z-index:3;right:.9rem;bottom:.9rem;padding:.35rem .8rem;border-radius:999px;background:rgba(19,16,16,.82);color:var(--crema);font-size:.8rem;font-weight:700;border:0}
.miniaturas{display:flex;gap:.6rem;margin-top:.7rem;position:relative}
.mini{width:4.4rem;aspect-ratio:1;padding:0;border:2px solid transparent;border-radius:.6rem;background:#fff;overflow:hidden;cursor:pointer;opacity:.75;transition:opacity .2s,border-color .2s}
.mini img{width:100%;height:100%;object-fit:cover}
.mini[aria-pressed="true"]{border-color:var(--tomate);opacity:1}
.info .linea-chip{display:inline-block;margin-bottom:.9rem;padding:.3rem .8rem .2rem;border-radius:.5rem;background:var(--tomate);color:#fff;font:400 1rem var(--display);letter-spacing:.06em;text-transform:uppercase}
.info h1{font-size:clamp(3rem,12vw,5.4rem)!important;margin-bottom:.15em}
.info .lema{font:600 clamp(1.2rem,4.4vw,1.55rem)/1.25 var(--serif);font-style:italic;color:var(--tomate);margin:0 0 1.1rem}
.precio-grande{display:flex;align-items:baseline;gap:.7rem;margin:0 0 1.4rem!important;font-family:var(--display);font-size:2.4rem;line-height:1}
.precio-grande small{font:700 .9rem var(--texto);color:var(--tinta-suave)}
.grupo{border:0;padding:0;margin:0 0 1.3rem}
.grupo legend{padding:0;margin-bottom:.6rem;font:800 .8125rem var(--texto);text-transform:uppercase;letter-spacing:.18em}
.grupo legend span{color:var(--tomate);letter-spacing:.06em}
.colores,.tallas{display:flex;flex-wrap:wrap;gap:.6rem}
.color{display:inline-flex;align-items:center;gap:.6rem;min-height:3rem;padding:.3rem 1.1rem .3rem .4rem;border:2px solid var(--carbon);border-radius:999px;background:transparent;font:800 1rem var(--texto);cursor:pointer;color:var(--carbon);transition:background .15s,color .15s}
.color .punto{width:2rem;height:2rem;border-width:2px}
.color[aria-pressed="true"]{background:var(--carbon);color:var(--crema)}
.color[aria-pressed="true"] .punto{border-color:var(--crema)}
.talla{min-width:3.5rem;min-height:3rem;padding:0 .8rem;border:2px solid var(--carbon);border-radius:.7rem;background:transparent;font:400 1.3rem var(--display);letter-spacing:.03em;cursor:pointer;color:var(--carbon);transition:background .15s,color .15s,transform .15s}
.talla:hover{transform:translateY(-2px)}
.talla[aria-pressed="true"]{background:var(--tomate);border-color:var(--tomate);color:#fff}
.grupo.falta .tallas{animation:sacude .4s}
.grupo.falta legend{color:#a82615}
@keyframes sacude{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.guia{margin:0 0 1.4rem;border-top:2px solid var(--carbon);border-bottom:2px solid var(--carbon)}
.guia summary{cursor:pointer;min-height:3rem;display:flex;align-items:center;justify-content:space-between;font:800 1rem var(--texto);list-style:none}
.guia summary::-webkit-details-marker{display:none}
.guia summary::after{content:"+";font:400 1.8rem/1 var(--display);color:var(--tomate)}
.guia[open] summary::after{content:"–"}
.tabla-tallas{width:100%;border-collapse:collapse;margin:.4rem 0 .6rem;font-size:1rem}
.tabla-tallas th,.tabla-tallas td{padding:.55rem .5rem;text-align:center;border-bottom:1px solid rgba(19,16,16,.18)}
.tabla-tallas th{font:800 .8rem var(--texto);text-transform:uppercase;letter-spacing:.12em}
.tabla-tallas tbody th{font:400 1.2rem var(--display);letter-spacing:.03em}
.guia-nota{font-size:.88rem;color:var(--tinta-suave);margin:0 0 .8rem!important}
.btn-add{width:100%}
.msg{min-height:1.5rem;margin:.7rem 0 0!important;font-weight:700}
.msg.ok{color:#2f6b2a}.msg.err{color:#a82615}
.promesas{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;gap:.7rem}
.promesas li{display:grid;grid-template-columns:2.2rem 1fr;gap:.7rem;align-items:start;font-size:1rem}
.promesas svg{width:1.9rem;height:1.9rem;color:var(--tomate)}
.promesas b{display:block}
.mas{background:var(--crema-2);padding-block:clamp(3rem,7vw,5rem)}
.mas .rejilla{max-width:none;grid-template-columns:repeat(2,1fr);gap:1.6rem 1rem}
.mas .cf-pie{padding-top:.5rem}.mas .sitio .cf-nombre,.sitio .mas .cf-nombre{font-size:1.4rem}.mas .cf-lema{font-size:.88rem}
@media (min-width:40rem){.mas .rejilla{grid-template-columns:repeat(5,1fr)}.mas .rejilla .cf:nth-child(2){margin-top:0}}
@media (min-width:56rem){
  .ficha{grid-template-columns:1.1fr 1fr;gap:3.2rem;align-items:start;padding-top:1.6rem}
  .escena{position:sticky;top:5rem;padding:1rem}
  .info h1{margin-top:.1em}
}

/* carrito y gracias */
.pagina{max-width:var(--ancho);margin-inline:auto;padding:clamp(2.4rem,6vw,4rem) var(--g) clamp(3rem,8vw,5rem)}
.pagina.estrecha{max-width:56rem}
.carrito-vacio{padding:2rem;border:2px dashed var(--carbon);border-radius:1.2rem;text-align:center}
.carrito-vacio p{margin-inline:auto}
.carrito-cuerpo{display:grid;gap:2rem}
.lineas{display:grid;gap:1rem}
.linea{display:grid;grid-template-columns:5.5rem 1fr;gap:1rem;padding:.8rem;background:#fbf5e6;border-radius:.8rem;box-shadow:0 14px 28px -18px rgba(20,8,0,.55)}
.linea-foto{width:5.5rem;aspect-ratio:1;border-radius:.5rem;overflow:hidden;background:#fff}
.linea-foto img{width:100%;height:100%;object-fit:cover}
.linea h3{font:400 1.6rem/1 var(--display)!important;text-transform:uppercase;margin:0 0 .2rem}
.linea p{margin:0 0 .4rem;font-size:.95rem;color:var(--tinta-suave)}
.linea .precio{font:400 1.5rem var(--display);color:var(--carbon);margin:0}
.linea-acc{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap;margin-top:.3rem}
.cant{display:inline-flex;align-items:center;border:2px solid var(--carbon);border-radius:999px}
.cant button{width:2.6rem;height:2.6rem;border:0;background:transparent;font:800 1.3rem var(--texto);cursor:pointer;color:var(--carbon)}
.cant span{min-width:1.8rem;text-align:center;font-weight:800}
.quitar{background:none;border:0;padding:.6rem .2rem;font:700 .9rem var(--texto);text-decoration:underline;text-underline-offset:3px;cursor:pointer;color:var(--tinta-suave)}
.resumen{align-self:start;background:var(--carbon);color:var(--crema);border-radius:1.4rem;padding:1.6rem;box-shadow:0 34px 60px -30px rgba(30,10,0,.7)}
.resumen h2{font-size:2rem!important}
.fila{display:flex;justify-content:space-between;gap:1rem;margin:0 0 .6rem!important;max-width:none!important}
.fila.total{padding-top:.8rem;margin-top:.8rem!important;border-top:2px solid rgba(255,255,255,.3);font:400 1.8rem var(--display);letter-spacing:.02em}
.resumen .nota{font-size:.88rem;color:#d9cdb5!important}
.resumen .btn{width:100%;margin-top:.6rem}
.resumen .msg{color:#ffb27d}
@media (min-width:56rem){.carrito-cuerpo{grid-template-columns:1.5fr 1fr;gap:3rem}.resumen{position:sticky;top:5rem}}
.gracias{text-align:center;position:relative}
.gracias .cf{max-width:20rem;margin:2rem auto;transform:rotate(-2deg);text-align:left}
.gracias .numero{font:400 2.6rem/1 var(--display);margin:.2rem 0 0;letter-spacing:.03em;color:var(--tomate)}
.gracias p{margin-inline:auto}
.texto h2{font-size:clamp(1.6rem,5vw,2.2rem)!important;margin-top:2rem}
.texto h3{margin-top:1.4rem}
.texto ul{padding-left:1.2rem}
.texto a{color:var(--tomate)}
.nf{text-align:center}

/* pie */
.pie{background:var(--carbon);color:var(--crema);padding:3rem var(--g) 2.4rem}
.pie-in{max-width:var(--ancho);margin-inline:auto;display:grid;gap:1.8rem}
.pie-nombre{font:400 1.6rem var(--display);text-transform:uppercase;letter-spacing:.03em;margin:.7rem 0 .3rem!important}
.pie-nota{color:#bdb4a2;max-width:36ch!important;font-size:.95rem}
.pie-links{display:flex;flex-wrap:wrap;gap:.2rem 1.4rem}
.pie-links a,.pie-cookies{display:inline-flex;align-items:center;min-height:2.75rem;font-size:.95rem}
.pie-cookies{background:none;border:0;color:inherit;font-family:inherit;text-decoration:underline;cursor:pointer;padding:0}
.pie-credito{margin:0!important;color:#bdb4a2;font-size:.85rem}
.pie-credito a{color:var(--oro)}
@media (min-width:52rem){.pie-in{grid-template-columns:1fr 1.4fr;align-items:start}.pie-credito{grid-column:1/-1}}

/* medición y avisos */
.consent{position:fixed;left:12px;right:12px;bottom:12px;max-width:560px;background:var(--carbon);color:var(--crema);padding:1.3rem;border-radius:1.2rem;z-index:60;box-shadow:0 8px 40px rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.14)}
.consent h2{font:400 1.5rem var(--display)!important;margin:0 0 .4rem}
.consent p{margin:0 0 .8rem;font-size:.95rem}
.consent a{color:var(--oro)}
.consent-botones,.consent-config{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.consent-config{flex-direction:column;align-items:flex-start;margin-bottom:.8rem}
.consent-config label{display:flex;gap:.5rem;align-items:center;min-height:2.75rem}
.consent .btn{min-height:2.75rem;padding:.3rem 1.1rem;font-size:.95rem}
.consent .btn-sec{color:var(--crema)!important}
.consent .btn-sec:hover{background:var(--crema);color:var(--carbon)!important}
@media (min-width:48rem){.consent{left:auto;right:24px;bottom:24px}}
.aviso-cookies{position:fixed;left:0;right:0;bottom:0;background:var(--carbon);color:var(--crema);padding:.8rem var(--g);display:flex;gap:1rem;align-items:center;justify-content:space-between;z-index:50}
.aviso-cookies p{margin:0;font-size:.92rem}
.aviso-cookies a{color:var(--oro)}
.aviso-cookies button{min-height:2.75rem;padding:0 1.2rem;background:var(--crema);color:var(--carbon);border:0;border-radius:999px;font:800 .95rem var(--texto);cursor:pointer;flex:none}
.tabla-cookies{width:100%;border-collapse:collapse;font-size:.95rem;margin:1em 0}
.tabla-cookies th,.tabla-cookies td{border:1px solid rgba(19,16,16,.25);padding:.5rem;text-align:left;vertical-align:top}

/* entrada al hacer scroll (la clase .rev la pone el JS; sin JS todo se ve) */
.fx .rev{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0ms)}
.fx .rev.vis{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .fx .rejilla .cf{transform:rotate(var(--rf,0deg))!important;opacity:1!important}
  .fx .rev{opacity:1;transform:none}
}

/* panel (comparte esta hoja: variables propias y base mínima) */
body.pn{--lino:#f5ecdc;--ink:#131010;--vino:#c93a12;--linea:#d9ccb2;--muted:#4a453f;--blanco:#fff;--rosa:#f1e3c8;--oro-texto:#7a5a17;--oliva:#3f5f36;--error:#a82615;--display:Georgia,serif;--sans:"Figtree Variable",system-ui,sans-serif;--r:3px;--gut:16px;margin:0;background:var(--lino);color:var(--ink);font:400 16px/1.55 var(--sans)}
body.pn h1,body.pn h2,body.pn h3{font-family:var(--display);font-weight:400;line-height:1.15;margin:0 0 .5em}
body.pn h1{font-size:2rem}body.pn h2{font-size:1.5rem}body.pn h3{font-size:1.125rem}
body.pn p{margin:0 0 1em}body.pn a{color:var(--vino)}
