@font-face{font-family:"Lilita One";src:url(fonts/lilita-one-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Pacifico";src:url(fonts/pacifico-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Asap";src:url(fonts/asap-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Asap";src:url(fonts/asap-latin-500-italic.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:"Asap";src:url(fonts/asap-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Asap";src:url(fonts/asap-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Asap";src:url(fonts/asap-latin-700-italic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}
:root{
 --magenta:#E50070;--magenta-dk:#B8005A;--rosa:#F3A1C6;--menta:#D0E9E9;--naranja:#F28E23;
 --ink:#3B2531;--magenta-ink:#82003E;--naranja-dk:#B35A00;--ink-soft:#6B5260;--white:#fff;--cream:#FFF8FB;
 --r:28px;--r-sm:16px;--shadow:0 10px 30px rgba(229,0,112,.12);
 --display:"Lilita One","Cubano",system-ui,sans-serif;
 --script:"Pacifico","Harlow Solid Italic",cursive;
 --body:"Asap",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;font-family:var(--body);font-weight:500;color:var(--ink);background:var(--white);line-height:1.6;font-size:1.0625rem;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--magenta)}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.08;margin:0 0 .5em;color:var(--magenta);letter-spacing:.01em}
h1{font-size:clamp(2.4rem,5.6vw,4.2rem);text-transform:uppercase}
h2{font-size:clamp(2rem,4.2vw,3.1rem);text-transform:uppercase}
h3{font-size:1.35rem}
p{margin:0 0 1em}
.wrap{width:min(1160px,100% - 40px);margin-inline:auto}
.narrow{width:min(820px,100% - 40px)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:8px;background:var(--magenta);color:#fff;padding:8px 14px;border-radius:8px;z-index:99}
.skip:focus{left:8px}
.kicker{font-style:italic;font-weight:500;letter-spacing:.075em;color:var(--magenta);margin:0 0 .6em;font-size:1rem}
.kicker::before{content:"- "} .kicker::after{content:" -"}
.script{font-family:var(--script);text-transform:none;font-weight:400;letter-spacing:0}
.lead{font-size:1.15rem;color:var(--ink)}
:focus-visible{outline:3px solid var(--naranja);outline-offset:3px;border-radius:6px}

/* Botones */
.btn{display:inline-flex;align-items:center;gap:.55em;padding:.85em 1.4em;border-radius:999px;font-family:var(--display);font-size:1.05rem;letter-spacing:.03em;text-decoration:none;text-transform:uppercase;transition:transform .15s ease,box-shadow .15s ease,background .15s;border:2.5px solid var(--magenta);line-height:1}
.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.btn-solid{background:var(--magenta);color:#fff}
.btn-solid:hover{background:var(--magenta-dk);border-color:var(--magenta-dk)}
.btn-line{background:#fff;color:var(--magenta)}
.btn-white{background:#fff;color:var(--magenta);border-color:#fff}
.btn-sm{padding:.6em 1em;font-size:.95rem}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(8px);border-bottom:3px solid var(--rosa)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px}
.brand img{width:clamp(190px,24vw,260px)}
.site-nav{display:flex;align-items:center;gap:18px}
.site-nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.site-nav ul a{display:block;padding:.45em .7em;border-radius:999px;text-decoration:none;color:var(--ink);font-weight:600;font-size:.98rem}
.site-nav ul a:hover{background:var(--menta);color:var(--magenta)}
.lang{font-family:var(--display);text-decoration:none;color:var(--magenta);border:2px solid var(--rosa);border-radius:999px;padding:.3em .7em;font-size:.9rem}
.nav-toggle{display:none;background:none;border:0;padding:10px;cursor:pointer}
.nav-toggle span{display:block;width:26px;height:3px;border-radius:3px;background:var(--magenta);margin:5px 0;transition:.2s}

/* Decoración (gráfica complementaria) */
.deco{position:absolute;pointer-events:none;user-select:none;z-index:0}
section{position:relative;overflow:hidden}
.section{padding:clamp(64px,9vw,112px) 0}
.section .wrap{position:relative;z-index:1}
.section-head{max-width:720px;margin-bottom:44px}
.section-head p:last-child{color:var(--ink-soft)}

/* Hero */
.hero{background:#fff;padding:clamp(48px,7vw,96px) 0 clamp(64px,8vw,110px)}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.hero h1{margin-bottom:.15em}
.tagline{font-style:italic;letter-spacing:.075em;color:var(--magenta);font-size:1.35rem;margin-bottom:1.2em}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:26px 0 22px}
.chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.chips li{background:#fff;border:2px solid var(--rosa);color:var(--magenta);padding:.35em .9em;border-radius:999px;font-weight:600;font-size:.92rem}
.hero-logo{position:relative;display:grid;place-items:center;min-height:min(500px,62vw)}
.hero-shapes{position:absolute;left:50%;top:50%;width:min(650px,140%);max-width:none;transform:translate(-50%,-50%);z-index:0;pointer-events:none}
.logo-main{position:relative;z-index:1;display:block;width:min(360px,64vw);aspect-ratio:1;background:#fff;border-radius:50%;padding:clamp(10px,1.6vw,20px)}
.logo-main img{width:100%;height:auto}

/* Nosotros */
.section-about{background:var(--cream);border-bottom:3px solid var(--rosa)}
.deco-about{width:420px;left:-250px;top:-120px;opacity:.6;transform:rotate(-30deg)}
.about-top{display:grid;grid-template-columns:1.5fr .5fr;gap:40px;align-items:center;margin-bottom:40px}
.about-copy{max-width:760px}
.about-art{display:flex;justify-content:center}
.about-art img{width:min(210px,50vw)}
.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:48px}
.mv{border-radius:var(--r);padding:28px 30px}
.mv h3{font-size:2rem;color:#fff;text-shadow:0 3px 0 var(--magenta),-2px 0 0 var(--magenta),2px 0 0 var(--magenta),0 -2px 0 var(--magenta);margin-bottom:.3em}
.mv p{margin:0;font-size:1.08rem}
.mv-mission{background:var(--rosa)}
.mv-vision{background:var(--menta)}
.values-h{font-size:2.2rem;color:var(--magenta);text-align:center;margin-bottom:.6em}
.values{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.values li{background:#fff;border:3px solid var(--naranja);border-radius:var(--r-sm);padding:20px 18px;text-align:center}
.values li:nth-child(2n){border-color:var(--rosa)}
.values li:nth-child(3n){border-color:var(--menta)}
.values h4{font-family:var(--display);font-weight:400;color:var(--magenta);text-transform:uppercase;font-size:1.1rem;margin:0 0 .4em;line-height:1.15}
.values p{margin:0;font-size:.95rem;color:var(--ink-soft)}

/* Menú */
.section-menu{background:#fff}
.deco-menu{width:460px;right:-200px;top:40px;opacity:.55;transform:rotate(25deg)}
.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;align-items:start}
.menu-card{border-radius:var(--r);padding:26px 26px 18px;border:3px solid transparent}
.menu-card h3{font-size:2rem;margin-bottom:.35em;color:#fff;text-shadow:0 3px 0 var(--magenta),-2px 0 0 var(--magenta),2px 0 0 var(--magenta),0 -2px 0 var(--magenta)}
.menu-mint{background:var(--menta)}
.menu-pink{background:var(--rosa)}
.menu-orange{background:#FDE3C6;border-color:var(--naranja)}
.price-list{list-style:none;margin:0;padding:0}
.price-list li{display:flex;align-items:baseline;gap:8px;padding:.45em 0;border-bottom:2px dashed rgba(229,0,112,.25)}
.price-list li:last-child{border-bottom:0}
.item-name{font-family:var(--display);color:var(--magenta);font-size:1.18rem;text-transform:uppercase;letter-spacing:.02em}
.item-name small{display:block;font-family:var(--body);font-style:italic;text-transform:none;color:var(--ink);font-size:.86rem;letter-spacing:0;margin-top:2px}
.dots{flex:1}
.price{font-family:var(--display);font-size:1.35rem;color:var(--magenta);white-space:nowrap}
.price-table{width:100%;border-collapse:collapse;margin-bottom:10px}
.price-table th,.price-table td{padding:.4em .3em;text-align:center}
.price-table thead th{font-family:var(--script);font-weight:400;color:var(--magenta);font-size:1.15rem}
.price-table tbody th{text-align:left;font-family:var(--body);font-style:italic;font-weight:700;color:var(--magenta)}
.price-table td{font-family:var(--display);color:var(--magenta);font-size:1.3rem}
.price-table tbody tr{border-bottom:2px dashed rgba(229,0,112,.25)}

/* Líneas especiales y sabores */
.sub-h{font-size:clamp(1.7rem,3.2vw,2.3rem);text-transform:uppercase;margin:64px 0 18px}
.sub-p{max-width:720px;color:var(--ink-soft);margin:-6px 0 24px}
.lines-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:22px;align-items:stretch}
.lines-col{display:grid;gap:22px;min-width:0}
.lines-grid>*,.line{min-width:0}
.line{border-radius:var(--r);padding:26px;position:relative}
.line-title{font-size:2.1rem;color:#fff;text-shadow:0 3px 0 var(--magenta),-2px 0 0 var(--magenta),2px 0 0 var(--magenta),0 -2px 0 var(--magenta);margin:0 0 .3em;line-height:1.3}
.line-fit{background:var(--rosa);display:flex;flex-direction:column;gap:18px;padding:22px}
.line-img img{border-radius:var(--r-sm);width:100%;height:clamp(240px,30vw,360px);object-fit:cover;object-position:center 60%}
.line-coctel{background:var(--magenta);color:#fff}
.line-coctel .line-title{color:#fff;text-shadow:none}
.line-coctel .chips-list li{background:#fff;color:var(--magenta-ink);border-color:#fff}
.line-esp{background:var(--menta)}
.mini-h{font-family:var(--display);text-transform:uppercase;color:var(--magenta);font-size:.95rem;margin:.9em 0 .4em;letter-spacing:.03em}
.chips-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.chips-list li{background:#fff;color:var(--magenta);border:2px solid #fff;padding:.3em .8em;border-radius:999px;font-weight:700;font-size:.92rem}
.age-note{margin:14px 0 0;font-weight:700;font-size:.92rem}
.nutri-wrap{overflow-x:auto;margin-top:16px}
.nutri{border-collapse:collapse;width:100%;background:#fff;border-radius:12px;overflow:hidden;font-size:.86rem}
.nutri caption{text-align:left;font-family:var(--display);text-transform:uppercase;color:var(--magenta);font-size:.9rem;margin-bottom:6px}
.nutri th,.nutri td{padding:.45em .55em;border-bottom:1px solid #F4D2E2;text-align:center;white-space:nowrap}
.nutri thead th{background:var(--magenta);color:#fff;font-weight:700}
.nutri tbody th{text-align:left;white-space:normal;font-weight:700;color:var(--ink)}
.flav-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:start}
.flav{background:var(--magenta);color:#fff;border-radius:var(--r);padding:22px 22px 18px}
.flav h4{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:1.25rem;margin:0 0 .6em;letter-spacing:.02em}
.flav .mini-h{color:#fff;text-decoration:underline;text-underline-offset:3px}
.flav-list{list-style:none;padding:0;margin:0;columns:2;column-gap:14px}
.flav-list li{font-weight:600;font-size:.95rem;padding:.12em 0;break-inside:avoid}
.flav-list li::before{content:"•";color:var(--rosa);margin-right:.4em}
.flav-cta{margin:26px 0 0;text-align:center}
.fit-cta{margin:18px 0 0}
.fit-box{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;background:#fff;color:var(--ink);border-radius:var(--r-sm);padding:20px 22px;margin:0 0 28px}
.fit-box h3{color:var(--magenta);font-size:1.3rem;margin-bottom:.3em}
.fit-box p{margin:0;font-size:.97rem;max-width:460px}
.fit-prices{display:flex;gap:12px}
.fit-prices div{background:var(--rosa);border-radius:16px;padding:10px 16px;text-align:center}
.fit-prices span{display:block;font-size:.8rem;font-weight:700;color:var(--magenta);text-transform:uppercase}
.fit-prices strong{font-family:var(--display);font-weight:400;font-size:2rem;color:var(--magenta);line-height:1.1}

/* Sucursales */
.section-stores{background:var(--cream);border-top:3px solid var(--rosa)}
.stores-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}
.store{position:relative;background:#fff;border:3px solid var(--rosa);border-radius:var(--r);padding:28px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.store-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.store h3{font-size:1.5rem;margin-bottom:.2em}
.store-ref{font-style:italic;color:var(--ink-soft);margin-bottom:.8em}
.store address{font-style:normal;font-weight:600;margin-bottom:1em}
.hours{border-collapse:collapse;margin-bottom:1.2em;width:100%}
.hours caption{text-align:left;font-family:var(--display);color:var(--magenta);text-transform:uppercase;font-size:1rem;margin-bottom:.3em}
.hours th{text-align:left;font-weight:500;padding:.25em 0;color:var(--ink-soft)}
.hours td{text-align:right;font-weight:700;padding:.25em 0}
.store-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}
.store-actions .btn{font-size:.92rem;padding:.75em 1.1em}
.status{font-size:.8rem;font-weight:700;padding:.3em .75em;border-radius:999px;white-space:nowrap}
.status.is-open{background:#DDF3E6;color:#11643A}
.status.is-closed{background:#F4E4EA;color:#7A3350}
.tag{background:var(--naranja);color:#fff;font-family:var(--display);text-transform:uppercase;font-size:.85rem;padding:.35em .8em;border-radius:999px;white-space:nowrap}
.store-soon{background:var(--menta);border-style:dashed;border-color:var(--magenta)}
.soon-art{position:absolute;right:18px;bottom:16px;width:64px;opacity:.9}

/* Tarjeta de lealtad */
.section-loyalty{background:var(--rosa);padding-top:0}
.loy-strip{background:var(--magenta);color:#fff;font-family:var(--display);letter-spacing:.06em;font-size:1.25rem;white-space:nowrap;overflow:hidden;padding:.45em 0;margin-bottom:clamp(48px,7vw,88px)}
.loy-strip span{display:inline-block;animation:loyscroll 40s linear infinite;word-spacing:.6em}
@keyframes loyscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.deco-loy{width:520px;right:-220px;bottom:-200px;opacity:.75;transform:rotate(15deg)}
.loy-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.section-loyalty .kicker{color:var(--magenta)}
.loy-title{font-size:clamp(2.1rem,8.5vw,4.4rem);color:#fff;text-shadow:0 4px 0 var(--magenta),-3px 0 0 var(--magenta),3px 0 0 var(--magenta),0 -3px 0 var(--magenta);margin-bottom:.25em;line-height:1.25}
.loy-thanks{display:inline-block;background:var(--magenta);color:#fff;font-family:var(--display);text-transform:uppercase;letter-spacing:.03em;padding:.5em 1.2em;border-radius:999px;margin-bottom:1.1em}
.loy-benefits{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}
.benefit{background:#fff;border-radius:var(--r);padding:20px 18px;text-align:center;border:3px solid #fff;box-shadow:var(--shadow)}
.benefit strong{display:block;font-family:var(--display);font-weight:400;font-size:clamp(2.6rem,5vw,3.4rem);color:var(--magenta);line-height:1}
.benefit span{display:block;font-weight:700;color:var(--ink);margin-top:2px}
.benefit em{display:block;font-family:var(--display);font-style:normal;color:var(--naranja);font-size:1.25rem;text-transform:uppercase;margin-top:6px}
.benefit-hot{background:var(--magenta);border-color:var(--magenta)}
.benefit-hot strong,.benefit-hot span{color:#fff}
.benefit-hot em{color:#FFE2BF}
.loy-card{background:#fff;border-radius:var(--r);padding:30px;box-shadow:var(--shadow);border:3px solid var(--magenta);position:relative;z-index:1}
.loy-card h3{text-transform:uppercase;font-size:1.5rem}
.loy-steps{counter-reset:s;list-style:none;padding:0;margin:0 0 22px}
.loy-steps li{counter-increment:s;position:relative;padding:.55em 0 .55em 48px;font-weight:600;border-bottom:2px dashed rgba(229,0,112,.2)}
.loy-steps li:last-child{border-bottom:0}
.loy-steps li::before{content:counter(s);position:absolute;left:0;top:.45em;width:34px;height:34px;border-radius:50%;background:var(--magenta);color:#fff;font-family:var(--display);display:grid;place-items:center;font-size:1.05rem}
.store-badges{display:flex;flex-wrap:wrap;gap:10px}
.store-badges .btn{font-size:.9rem;padding:.75em 1.1em}
.loy-note{font-size:.85rem;color:var(--ink-soft);font-style:italic;margin:14px 0 0}

/* Clientes */
.section-clients{background:#fff}
.client-cats{list-style:none;padding:0;margin:0 0 28px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.client-cats li{background:var(--cream);border:3px solid var(--menta);border-radius:var(--r);padding:24px 20px;text-align:center;display:flex;flex-direction:column;align-items:center}
.client-cats li:nth-child(2n){border-color:var(--rosa)}
.cat-ico{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#fff;margin-bottom:12px;box-shadow:0 0 0 4px var(--menta)}
.client-cats h3{text-transform:uppercase;font-size:1.3rem;margin-bottom:.3em}
.client-cats p{margin:0 0 14px;color:var(--ink-soft);font-size:.97rem}
.soon-pill{margin-top:auto;background:var(--naranja);color:#fff;font-family:var(--display);text-transform:uppercase;font-size:.78rem;padding:.35em .8em;border-radius:999px}
.client-soon{display:flex;align-items:center;gap:20px;flex-wrap:wrap;border:3px dashed var(--rosa);border-radius:var(--r);padding:20px 26px;background:#fff}
.client-soon img{width:42px}
.client-soon p{flex:1;min-width:220px;margin:0;font-weight:700;color:var(--magenta)}

/* Fábrica / Mayoreo */
.section-factory{background:var(--magenta);color:#fff}
.section-factory h2,.section-factory .kicker,.section-factory h3{color:#fff}
.section-factory .lead{color:#fff}
.deco-fab{width:640px;left:-240px;bottom:-230px;opacity:.35;transform:rotate(-12deg)}
.factory-inner{display:grid;grid-template-columns:1.4fr .6fr;gap:40px;align-items:center}
.factory-points{list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.factory-points li{background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.35);border-radius:var(--r-sm);padding:18px}
.factory-points h3{font-size:1.2rem;margin-bottom:.35em}
.factory-points p{margin:0;font-size:.97rem}
.factory-cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.factory-cta p{margin:0;font-style:italic}
.factory-cta p a{color:#fff;font-weight:700}
.factory-art{display:flex;justify-content:center}
.factory-art img{width:min(260px,60vw)}

/* Cursos y asesorías */
.section-courses{background:var(--menta)}
.deco-cur{width:500px;right:-230px;top:-160px;opacity:.9;transform:rotate(-20deg)}
.section-courses .section-head{max-width:820px}
.section-courses .section-head .lead{color:var(--ink)}
.section-courses .kicker{color:var(--magenta-dk)}
.cur-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cur-card{position:relative;background:#fff;border:3px solid var(--magenta);border-radius:var(--r);padding:30px 28px 28px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.cur-card:nth-child(2){border-color:var(--naranja-dk)}
.cur-tag{align-self:flex-start;background:var(--magenta);color:#fff;font-family:var(--display);text-transform:uppercase;font-size:.85rem;letter-spacing:.04em;padding:.35em .9em;border-radius:999px;margin-bottom:14px}
.cur-card:nth-child(2) .cur-tag{background:var(--naranja-dk)}
.cur-card h3{font-size:1.7rem;text-transform:uppercase;margin-bottom:.35em}
.cur-card>p{font-size:1.06rem}
.cur-list{list-style:none;padding:0;margin:4px 0 24px}
.cur-list li{position:relative;padding:.4em 0 .4em 34px;font-weight:700}
.cur-list li::before{content:"";position:absolute;left:0;top:.5em;width:22px;height:22px;border-radius:50%;background:var(--rosa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23E50070' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.cur-card .btn{margin-top:auto;align-self:flex-start}
.cur-note{text-align:center;margin:26px 0 0;font-style:italic;font-weight:700;color:var(--magenta-dk)}

/* Eventos */
.section-events{background:var(--rosa)}
.section-events h2{color:var(--magenta)}
.events-inner{display:grid;grid-template-columns:.6fr 1.4fr;gap:40px;align-items:center}
.events-art{background:#fff;border-radius:50%;aspect-ratio:1;display:grid;place-items:center;box-shadow:0 0 0 10px var(--menta),var(--shadow);width:min(320px,70vw);margin-inline:auto;position:relative}
.events-art img{width:44%}
.events-art::before{content:"";position:absolute;inset:-34px;background:url(img/shapes.svg) center/120% no-repeat;z-index:-1;opacity:.9}
.events-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 26px}
.events-list li{background:#fff;color:var(--magenta);font-weight:700;padding:.45em 1em;border-radius:999px}

/* FAQ */
.section-faq{background:#fff}
.faq details{border:3px solid var(--menta);border-radius:var(--r-sm);margin-bottom:12px;background:#fff;transition:border-color .15s}
.faq details[open]{border-color:var(--rosa)}
.faq summary{cursor:pointer;list-style:none;padding:18px 54px 18px 22px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-family:var(--display);font-size:1.8rem;color:var(--magenta)}
.faq details[open] summary::after{content:"–"}
.faq summary h3{font-family:var(--body);font-weight:700;font-size:1.08rem;color:var(--ink);margin:0;text-transform:none}
.faq details p{padding:0 22px 18px;margin:0;color:var(--ink-soft)}

/* Teaser blog */
.section-blogteaser{background:var(--cream);border-top:3px solid var(--rosa);padding:clamp(48px,7vw,80px) 0}
.section-blogteaser .kicker{color:var(--magenta-dk)}
.teaser-list{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.teaser-list a{display:block;height:100%;background:#fff;border:3px solid var(--menta);border-radius:var(--r-sm);padding:18px 20px;text-decoration:none;color:var(--ink);font-weight:700;font-size:1.05rem;line-height:1.35}
.teaser-list a:hover{border-color:var(--rosa)}
.teaser-list span{display:block;font-family:var(--display);font-weight:400;text-transform:uppercase;color:var(--magenta-dk);font-size:.85rem;margin-bottom:6px}

/* Contacto */
.section-contact{background:var(--menta);text-align:center}
.deco-contact{width:460px;right:-230px;bottom:-250px;opacity:.9;transform:rotate(200deg)}
.contact-inner h2{font-size:clamp(2.4rem,5vw,3.6rem);color:var(--magenta)}
.contact-links{list-style:none;padding:0;margin:28px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.contact-links a{display:inline-flex;align-items:center;gap:.5em;background:#fff;border:2.5px solid var(--magenta);color:var(--magenta);font-weight:700;padding:.7em 1.2em;border-radius:999px;text-decoration:none}
.contact-links a:hover{background:var(--magenta);color:#fff}

/* Footer */
.site-footer{background:var(--magenta);color:#fff;padding:48px 0 36px;border-top:8px solid var(--rosa)}
.footer-inner{text-align:center}
.footer-inner img{margin:0 auto 14px;width:240px}
.footer-inner a{color:#fff}
.footer-stores{font-size:.92rem;opacity:.92}
.small{font-size:.85rem;opacity:.85}

/* Contraste sobre rosa */
.section-about .kicker,.section-stores .kicker,.client-cats h3{color:var(--magenta-dk)}
.soon-pill,.tag{background:var(--naranja-dk)!important}
.benefit em{color:var(--naranja-dk)}
.benefit-hot em{color:#fff}
.factory-points li{background:rgba(90,0,40,.22)!important}
.footer-stores,.small{opacity:1!important}
.line-esp .mini-h,.line-esp .line-title + p{color:var(--magenta-dk)}
.line-esp p:not(.mini-h){color:var(--ink)}
.menu-card .item-name,.menu-card .price,.price-table td,.price-table tbody th,.price-table thead th{color:var(--magenta-dk)}
.menu-pink .item-name,.menu-pink .price,.section-events h2,.section-events .kicker,.section-loyalty .kicker,.line-fit .mini-h,.line-fit .nutri caption{color:var(--magenta-ink)}
.menu-pink .price-list li{border-bottom-color:rgba(155,0,76,.3)}

/* Responsive */
@media (max-width:600px){.flav-grid{grid-template-columns:1fr}}
@media (max-width:980px){
 .site-nav{position:fixed;inset:74px 0 auto 0;background:#fff;flex-direction:column;align-items:stretch;padding:16px 20px 24px;border-bottom:3px solid var(--rosa);display:none}
 .site-nav.open{display:flex}
 .site-nav ul{flex-direction:column}
 .site-nav ul a{padding:.8em .6em;font-size:1.05rem}
 .lang{align-self:flex-start}
 .nav-toggle{display:block}
 .hero-inner,.factory-inner,.events-inner{grid-template-columns:1fr}
 .hero-logo{order:-1}
 .logo-main{width:min(240px,58vw)}
 .hero-logo{min-height:min(420px,72vw)}
 .hero-shapes{width:96vw}
 .factory-points{grid-template-columns:1fr}
 .lines-grid{grid-template-columns:1fr}
 .cur-grid{grid-template-columns:1fr}
 .teaser-list{grid-template-columns:1fr}
 .deco-cur{display:none}
 .flav-grid{grid-template-columns:1fr 1fr}
 .loy-inner{grid-template-columns:1fr}
 .client-cats{grid-template-columns:1fr 1fr}
 .factory-art{display:none}
 .deco-menu{display:none}
 .about-top,.mv-grid{grid-template-columns:1fr}
 .about-art{display:none}
 .values{grid-template-columns:1fr 1fr}
 .values li:last-child{grid-column:1/-1}
 .store-soon{padding-bottom:100px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Explora (inicio) */
.section-explore{background:var(--cream);border-top:3px solid var(--rosa)}
.section-explore .kicker{color:var(--magenta-dk)}
.explore-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.explore-grid a{display:flex;flex-direction:column;height:100%;text-decoration:none;border-radius:var(--r);padding:24px 24px 20px;color:var(--ink);transition:transform .15s,box-shadow .15s;border:3px solid transparent}
.explore-grid a:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.explore-grid h3{text-transform:uppercase;font-size:1.45rem;margin-bottom:.3em;color:var(--magenta-ink)}
.explore-grid p{margin:0 0 14px;flex:1}
.explore-grid .go{font-family:var(--display);text-transform:uppercase;font-size:.92rem;color:var(--magenta-ink)}
.ex-pink a{background:var(--rosa)}
.ex-mint a{background:var(--menta)}
.ex-orange a{background:#FDE3C6;border-color:var(--naranja-dk)}
.ex-magenta a{background:var(--magenta)}
.ex-magenta h3,.ex-magenta p,.ex-magenta .go{color:#fff}
/* Páginas internas */
section h1.as-h2{font-size:clamp(2rem,4.2vw,3.1rem);text-transform:uppercase}
.section-factory h1,.section-factory .kicker{color:#fff}
.section-events h1{color:var(--magenta-ink)}
.crumbs-bar{background:#fff;border-bottom:2px solid var(--menta);font-size:.9rem;padding:10px 0}
.crumbs-bar a{color:var(--magenta-dk);font-weight:700}
.page-faq{background:#fff}
.site-nav ul a[aria-current="page"]{background:var(--menta);color:var(--magenta-dk)}
.footer-nav{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px}
.footer-nav a{color:#fff;font-weight:700;text-decoration:none}
.footer-nav a:hover{text-decoration:underline}
@media (max-width:980px){.explore-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.explore-grid{grid-template-columns:1fr}}

/* Blog */
.blog-hero{background:var(--menta);padding:clamp(48px,7vw,88px) 0}
.blog-hero h1,.post-hero h1{text-transform:uppercase;font-size:clamp(2.1rem,4.8vw,3.4rem)}
.blog-hero .kicker,.post-hero .kicker{color:var(--magenta-dk)}
.blog-hero .lead{max-width:680px}
.deco-blog{width:520px;right:-200px;top:-140px;transform:rotate(-15deg)}
.blog-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.blog-card a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:var(--ink);background:#fff;border:3px solid var(--rosa);border-radius:var(--r);padding:26px;transition:transform .15s,box-shadow .15s}
.blog-card a:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.card-orange a{border-color:var(--naranja-dk)}
.card-mint a{border-color:#8CC9C9}
.blog-card .kicker{color:var(--magenta-dk);font-size:.9rem}
.blog-card h2{font-size:1.45rem;text-transform:none;margin-bottom:.5em}
.blog-card p{color:var(--ink-soft);flex:1}
.blog-card .read{font-family:var(--display);text-transform:uppercase;color:var(--magenta-dk);font-size:.95rem}
.post-hero{position:relative;overflow:hidden;padding:clamp(40px,6vw,80px) 0 clamp(36px,5vw,64px)}
.post-pink{background:var(--rosa)}
.post-orange{background:#FDE3C6}
.post-mint{background:var(--menta)}
.post-hero h1{color:var(--magenta-ink)}
.post-hero .wrap{position:relative;z-index:1}
.deco-post{width:440px;right:-200px;bottom:-180px;opacity:.85;transform:rotate(20deg)}
.crumbs{font-size:.9rem;margin-bottom:18px;color:var(--ink)}
.crumbs a{color:var(--magenta-ink);font-weight:700}
.post-meta{font-style:italic;color:var(--ink);margin:0}
.post-body{padding:clamp(36px,5vw,64px) 0}
.post-body h2{text-transform:uppercase;font-size:clamp(1.5rem,3vw,2rem);margin:1.6em 0 .6em;color:var(--magenta-dk)}
.post-body h3{font-size:1.2rem;color:var(--magenta-dk)}
.post-body p,.post-body li{font-size:1.08rem}
.post-body a{color:var(--magenta-dk);font-weight:700}
.post-body ul,.post-body ol{padding-left:1.2em}
.post-body li{margin-bottom:.5em}
.post-body ul.check,.post-body ol.steps,.post-body ul.pill-list{list-style:none;padding:0}
.post-body ul.check li{position:relative;padding-left:34px}
.post-body ul.check li::before{content:"";position:absolute;left:0;top:.25em;width:22px;height:22px;border-radius:50%;background:var(--rosa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23E50070' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.post-body ol.steps{counter-reset:st}
.post-body ol.steps li{counter-increment:st;position:relative;padding-left:48px;margin-bottom:.9em}
.post-body ol.steps li::before{content:counter(st);position:absolute;left:0;top:0;width:34px;height:34px;border-radius:50%;background:var(--magenta);color:#fff;font-family:var(--display);display:grid;place-items:center}
.pill-list{display:flex;flex-wrap:wrap;gap:8px}
.pill-list li{background:var(--rosa);color:var(--magenta-ink);font-weight:700;padding:.35em .9em;border-radius:999px;margin:0}
.cards-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:10px 0 8px}
.mini-card{background:var(--cream);border:3px solid var(--menta);border-radius:var(--r-sm);padding:18px 20px}
.mini-card:nth-child(2n){border-color:var(--rosa)}
.mini-card h3{text-transform:uppercase;margin-bottom:.3em}
.mini-card p{margin:0;font-size:1rem}
.tip{background:var(--menta);border-left:6px solid var(--magenta);border-radius:12px;padding:16px 20px;margin:24px 0}
.small-note{font-size:.95rem!important;color:var(--ink-soft);font-style:italic}
.table-wrap{overflow-x:auto}
.post-body .nutri{font-size:.95rem}
.post-cta{display:flex;gap:24px;align-items:center;background:var(--magenta);color:#fff;border-radius:var(--r);padding:28px 30px;margin-top:40px}
.post-cta img{width:70px;flex:none;filter:brightness(0) invert(1)}
.post-cta h2{color:#fff!important;margin:0 0 .3em!important}
.post-cta p{color:#fff}
.post-cta .btn{color:var(--magenta-ink)}
.related{background:var(--cream);border-top:3px solid var(--rosa);padding:48px 0 60px}
.related h2{text-transform:uppercase;font-size:1.6rem;color:var(--magenta-dk)}
.related-list{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:12px}
.related-list a{display:block;background:#fff;border:3px solid var(--menta);border-radius:var(--r-sm);padding:16px 20px;text-decoration:none;color:var(--ink)}
.related-list a:hover{border-color:var(--rosa)}
.related-list .kicker{display:block;font-size:.85rem;margin-bottom:4px;color:var(--magenta-dk)}
.related-list strong{font-size:1.05rem}
.site-nav a[aria-current="page"]{background:var(--menta);color:var(--magenta-dk)}
@media (max-width:980px){.blog-grid{grid-template-columns:1fr}.cards-2{grid-template-columns:1fr}.post-cta{flex-direction:column;align-items:flex-start}.deco-blog,.deco-post{display:none}}
