/* Roboto 700 (títulos de la tienda original); index.html solo carga 300/400/500. */
/* Fuentes alojadas en la propia web (antes Google Fonts): latin y latin-ext. */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/Inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/PlayfairDisplay-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/PlayfairDisplay-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/PlayfairDisplay-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/PlayfairDisplay-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/PlayfairDisplay-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/PlayfairDisplay-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/assets/fonts/Roboto-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/assets/fonts/Roboto-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{
  --ink:#000;--ink-2:rgba(0,0,0,.75);--muted:rgba(0,0,0,.55);--line:rgba(0,0,0,.08);--dark:#121212;
  --bg:#fff;--soft:#F6F3EE;--cream:#F7F3EB;--gold:#B08D57;--gold-2:#C3A36C;--gold-3:#CAAE69;--night:#100F0D;
  --r:20px;--pill:41px;--gut:clamp(16px,4vw,52px);--max:1260px;--e:cubic-bezier(.22,.8,.28,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
/* Tipografía de la original (Dawn, escala 1.05): Roboto 15.75/16.8px, espaciado .63px, interlineado 1.76 */
body{font-family:Roboto,system-ui,-apple-system,sans-serif;color:var(--ink-2);background:var(--bg);font-size:15.75px;line-height:1.76;letter-spacing:.63px;overflow-x:hidden}
@media(min-width:750px){body{font-size:16.8px}}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}
button{cursor:pointer;background:none;border:0}
[hidden]{display:none!important}
h1,h2,h3,h4{color:var(--ink);font-weight:700;line-height:1.3;letter-spacing:.66px}
.serif{font-family:'Playfair Display',Georgia,serif;font-weight:400}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.sec{padding:clamp(48px,7vw,96px) 0}
.sec-h{text-align:center;margin-bottom:clamp(24px,4vw,44px)}
.sec-h h2{font-size:clamp(26px,3.6vw,44px)}
.sec-h p{color:var(--muted);max-width:60ch;margin:12px auto 0}
.lbl{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:500}
/* Botón de la original: negro, píldora 41px, 15.75px, espaciado 1.05px */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:49px;padding:0 31.5px;border-radius:var(--pill);
  background:#000;color:#fff;font-size:15.75px;font-weight:400;letter-spacing:1.05px;transition:box-shadow .2s;border:0}
.btn:hover{box-shadow:0 0 0 1.3px #000}
.btn.light{background:#fff;color:#000}
.btn.ghost{background:transparent;color:#000;box-shadow:0 0 0 1px #000}
.btn.block{width:100%}
.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}

/* ---------- cabecera (logo dorado a la izquierda, menú al lado, selectores e iconos a la derecha) ---------- */
.announce{position:relative;height:34px;background:#000;color:rgba(255,255,255,.88);font-size:12px;letter-spacing:.08em;overflow:hidden}
.announce span{position:absolute;inset:0;display:block;line-height:34px;padding:0 16px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transform:translateY(8px);transition:opacity .5s,transform .5s var(--e)}
.announce span.on{opacity:1;transform:none}
.announce b{color:var(--gold-3);font-weight:500}
.announce a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:400px){.announce{font-size:11px;letter-spacing:.03em}}
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line);box-shadow:0 10px 30px -6px rgba(0,0,0,.28)}
.hdr .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:76px;gap:12px}
.logo{justify-self:center;display:flex;align-items:center}
.logo img{height:40px;width:auto}
.nav{display:flex;align-items:center;gap:26px;font-size:15px}
.nav>a,.nav>.dd>a{color:var(--ink);padding:26px 0;display:block;position:relative}
.nav>a::after,.nav>.dd>a::after{content:"";position:absolute;left:0;right:0;bottom:20px;height:1px;background:#000;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--e)}
.nav>a:hover::after,.nav>.dd>a:hover::after,.nav a.on::after{transform:scaleX(1)}
.dd{position:relative}
.dd .menu{position:absolute;top:100%;left:-18px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 0;min-width:250px;z-index:3;
  box-shadow:0 20px 40px -20px rgba(0,0,0,.25);opacity:0;visibility:hidden;transform:translateY(6px);transition:.25s var(--e)}
.dd:hover .menu,.dd:focus-within .menu{opacity:1;visibility:visible;transform:none}
.dd .menu a{display:block;padding:9px 20px;font-size:14px;color:var(--ink-2)}
.dd .menu a:hover{background:var(--soft);color:#000}
.tools{justify-self:end;display:flex;align-items:center;gap:2px}
.ico{width:42px;height:42px;display:grid;place-items:center;position:relative;border-radius:50%;transition:background .2s}
.ico:hover{background:var(--soft)}
.ico svg{width:20px;height:20px;stroke:#000;fill:none;stroke-width:1.5;transition:transform .1s}
.badge{position:absolute;bottom:6px;right:4px;background:#000;color:#fff;font-size:9px;min-width:17px;height:17px;border-radius:50%;display:grid;place-items:center;padding:0 3px;letter-spacing:0}
.burger{display:none}
.loc{display:flex;gap:4px;margin-right:6px}
.loc select,.ft-loc select{appearance:none;-webkit-appearance:none;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23000' stroke-width='1.2'/%3E%3C/svg%3E") no-repeat right 8px center/10px;
  padding:8px 26px 8px 10px;font-size:14.7px;color:var(--ink-2);cursor:pointer;max-width:190px;field-sizing:content}
.loc select{border:1px solid var(--line);border-radius:20px;padding:6px 26px 6px 12px;font-size:12.5px;max-width:150px}
.loc select:hover{border-color:#000;color:#000}
@media(max-width:1180px){.hdr .loc{display:none}}
@media(max-width:989px){
  .hdr .wrap{grid-template-columns:auto 1fr auto;height:62px}
  .logo{justify-self:center}.logo img{height:30px}
  .nav,.hdr .loc{display:none}.burger{display:grid}
}
.mnav{position:fixed;inset:0;z-index:80;background:#fff;padding:20px var(--gut);overflow:auto;transform:translateX(-100%);transition:transform .35s var(--e)}
.mnav.open{transform:none}
.mnav a{display:block;padding:12px 0;font-size:18px;color:var(--ink)}
.mnav .sub a{padding:8px 0 8px 16px;font-size:15px;color:var(--ink-2)}
.mnav .loc{margin-top:20px;flex-wrap:wrap}
.mnav .loc select{border:1px solid rgba(0,0,0,.2);border-radius:20px}

/* ---------- búsqueda ---------- */
.search{position:fixed;inset:0 0 auto 0;z-index:90;background:#fff;padding:22px var(--gut);box-shadow:0 20px 40px -20px rgba(0,0,0,.3);transform:translateY(-110%);transition:.3s var(--e)}
.search.open{transform:none}
.search .row{max-width:760px;margin:0 auto;display:flex;gap:10px}
.search input{flex:1;border:1px solid #000;border-radius:var(--pill);padding:12px 20px;font-size:16px}
.sres{max-width:760px;margin:12px auto 0;display:grid;gap:6px}
.sres a{display:flex;gap:12px;align-items:center;padding:6px;border-radius:8px}
.sres a:hover{background:var(--soft)}
.sres img{width:48px;height:48px;object-fit:cover;border-radius:6px}

/* ---------- carrito lateral ---------- */
.veil{position:fixed;inset:0;z-index:85;background:rgba(0,0,0,.4);opacity:0;visibility:hidden;transition:.3s}
.veil.on{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;right:0;bottom:0;z-index:86;width:min(440px,100vw);background:#fff;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s var(--e)}
.drawer.open{transform:none}
.drawer header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}
.drawer header h3{font-size:22px}
.drawer .items{flex:1;overflow:auto;padding:8px 24px}
.ci{display:grid;grid-template-columns:76px 1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.ci img{width:76px;height:76px;object-fit:cover;border-radius:8px;background:var(--soft)}
.ci h4{font-size:14.5px;font-weight:500}
.ci small{display:block;color:var(--muted);font-size:12.5px}
.qty{display:inline-flex;align-items:center;border:1px solid rgba(0,0,0,.2);border-radius:20px;margin-top:8px}
.qty button{width:30px;height:30px}
.qty span{min-width:22px;text-align:center;font-size:14px}
.ci .pr{text-align:right;font-size:14px;color:var(--ink)}
.ci .rm{font-size:12px;color:var(--muted);text-decoration:underline;margin-top:8px}
.drawer footer{padding:18px 24px calc(18px + env(safe-area-inset-bottom));border-top:1px solid var(--line);display:grid;gap:10px}
.drawer .tot{display:flex;justify-content:space-between;font-size:16px;color:var(--ink)}
.drawer .tot.sh{font-size:14px;color:var(--ink-2)}
.drawer .note{font-size:12.5px;color:var(--muted)}
.drawer .opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.drawer select{border:1px solid rgba(0,0,0,.2);border-radius:10px;padding:9px 10px;font-size:13.5px;width:100%}
.freebar{font-size:12.5px;color:var(--ink);background:var(--soft);border-radius:10px;padding:8px 12px}
.freebar i{display:block;height:4px;border-radius:2px;background:#ddd;margin-top:6px;overflow:hidden}
.freebar i b{display:block;height:100%;background:var(--gold)}
.empty{text-align:center;padding:60px 0;color:var(--muted)}

/* ---------- inicio (mismo orden y medidas que la original) ---------- */
.hero{position:relative;height:240px;overflow:hidden;background:#535353;margin:3px 0}
@media(min-width:750px){.hero{height:700px}}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-btn{position:absolute;left:50%;bottom:3.5%;transform:translateX(-50%);z-index:2;min-height:34px;padding:0 20px;font-size:13px;box-shadow:0 8px 24px -8px rgba(0,0,0,.45)}
.hero-btn:hover{transform:translateX(-50%) translateY(-2px);background:#caae69;border-color:#caae69;color:#000}
@media(min-width:750px){.hero-btn{min-height:48px;padding:0 34px;font-size:15px;bottom:2.5%}}
.cta{text-align:center;padding:24px var(--gut) 42px}
@media(min-width:750px){.cta{padding:32px var(--gut) 56px}}
/* Cuadrícula de categorías */
.mgrid{padding:27px 1.5rem}
.mg{display:grid;grid:auto-flow dense 200px/repeat(2,minmax(0,1fr));gap:20px}
.mg-i{position:relative;border-radius:30px;overflow:hidden;box-shadow:rgba(0,0,0,.15) 0 2px 8px;display:flex;align-items:center;justify-content:center;padding:16px}
.mg-i::after{content:"";position:absolute;inset:0;background:#000;opacity:.2;z-index:1}
.mg-i.w2{grid-column:span 2}
.mg-i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mg-i a{position:relative;z-index:2;background:#000;color:var(--gold-3);font-size:14px;font-weight:700;line-height:1;padding:10px 16px;border-radius:10px;text-align:center;letter-spacing:.02em;transition:.25s}
.mg-i a:hover{background:#caae69;color:#000}
.mg-i img{z-index:0;transition:transform .8s var(--e)}
.mg-i:hover img{transform:scale(1.04)}
.mg-i a::after{content:"";position:absolute;inset:-400px}
@media(min-width:768px){.mgrid{padding:36px 52px}.mg{grid:auto-flow dense max(150px,min(20vw,400px))/repeat(4,minmax(0,1fr))}}
/* «Porque todo son Beneficios...» */
.fx15{padding:27px 1.5rem}
.fx-in{max-width:1050px;margin:0 auto}
.fx-tabs{display:flex;border-radius:6px;overflow:hidden}
.fx-tabs button{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;background:#000;color:#fff;padding:10px 14px;transition:.25s;min-width:0}
.fx-tabs button.on{background:var(--gold-3);color:#000}
.fx-tabs button:not(.on):hover{color:var(--gold-3)}
.fx-tabs svg{flex:0 0 24px;width:24px;height:24px;fill:currentColor}
.fx-tabs span{display:none;font-size:14px;font-weight:700;line-height:1;letter-spacing:0}
.fx-stage{position:relative;margin-top:40px;display:grid}
.fx-sl{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .5s}
.fx-sl.on{opacity:1;visibility:visible}
.fx-txt{text-align:center}
.fx-txt h2{font-size:30px;line-height:1.3;letter-spacing:0}
.fx-txt h3{font-size:30px;line-height:1.3;margin-top:20px;letter-spacing:0}
.fx-txt p{font-size:18px;line-height:1.5;color:#000;margin-top:16px;letter-spacing:0}
.fx-img{margin-top:20px;border-radius:12px;overflow:hidden;aspect-ratio:1}
.fx-img img{width:100%;height:100%;object-fit:cover}
.fx-arr{position:absolute;z-index:2;top:35%;width:48px;height:48px;border-radius:50%;border:1px solid #000;box-shadow:0 0 10px rgba(0,0,0,.15);display:grid;place-items:center;background:#fff}
.fx-arr::before{content:"";width:8px;height:8px;border-top:2px solid #000;border-right:2px solid #000;transform:translateX(-2px) rotate(45deg)}
.fx-arr.prev::before{transform:translateX(2px) rotate(-135deg)}
.fx-arr.prev{left:10px}.fx-arr.next{right:10px}
@media(min-width:1024px){
  .fx15{padding:36px 10rem}
  .fx-tabs span{display:block}
  .fx-sl{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:32px}
  .fx-txt{text-align:left}.fx-txt h2{font-size:54px}.fx-txt h3{font-size:32px}
  .fx-img{margin-top:0}
  .fx-arr{top:50%;transform:translateY(-50%)}.fx-arr.prev{left:-9rem}.fx-arr.next{right:-9rem}
}
/* Texto en movimiento */
.marq{overflow:hidden;background:#000;color:#fff;padding:18px 0;white-space:nowrap}
.marq .t{display:inline-flex;animation:mq 28s linear infinite}
.marq .mi{display:flex;align-items:center;margin-right:16px;flex-shrink:0}
.marq .mi span{font-size:22px;font-weight:700;line-height:.5;margin-right:16px;letter-spacing:.63px}
.marq img{width:32px;height:32px;object-fit:contain}
@media(min-width:1024px){.marq{padding:24px 0}}
@keyframes mq{to{transform:translateX(-50%)}}
/* Rich text */
.rtxt{text-align:center;padding:20px var(--gut)}
.rtxt h2{font-size:30px;line-height:1.3}
@media(min-width:750px){.rtxt h2{font-size:44px}}
/* Multicolumna (sellos) */
.badges{padding:36px 0}
.bd{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 28px}
.bd img{width:100%;aspect-ratio:1;object-fit:contain;padding:0 8%}
@media(min-width:990px){.bd{grid-template-columns:repeat(6,1fr)}}
/* Prensa (tarjetas negras en movimiento) */
.press{background:#070707;padding:27px 0;overflow:hidden}
.press .t{display:flex;width:max-content;padding:10px 0;animation:mq 70s linear infinite}
.pq{flex:none;display:flex;align-items:center;gap:24px;max-width:500px;margin-right:38px;padding:16px;border-radius:12px;border:1px solid #393939;background:#000;box-shadow:rgba(255,255,255,.15) 0 2px 12px}
.pq .pi{flex:0 0 100px;aspect-ratio:1;border-radius:4px;overflow:hidden}
.pq .pi img{width:100%;height:100%;object-fit:cover}
.pq .stars{display:flex;gap:3px}
.pq .stars svg{width:16px;height:16px;fill:#f6cf02}
.pq h3{margin-top:6px;font-size:12px;color:#f5f6f7;line-height:1.3}
.pq p{margin-top:6px;font-size:12px;color:#b1b1b1;line-height:1.3;letter-spacing:0}
@media(min-width:1024px){.press{padding:36px 0}.pq{padding:20px}.pq h3,.pq p{margin-top:8px}}
/* Antes / después (bento) */
.bento{background:#f4f1f1;padding:27px 1.5rem}
.bn{max-width:1400px;margin:0 auto;display:grid;gap:16px}
.bn-i{background:#fff;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:20px}
.bn-t h2{font-size:20px;line-height:1.5;color:var(--dark)}
.bn-t p{margin-top:6px;font-size:15px;line-height:1.8;color:var(--dark)}
.bn-img{border-radius:26px;overflow:hidden;aspect-ratio:1}
.bn-img img{width:100%;height:100%;object-fit:cover}
@media(min-width:1024px){.bento{padding:36px 5rem}.bn{grid-template-columns:1fr 1fr}.bn-i{padding:32px}.bn-t p{margin-top:8px;font-size:16px}}
/* Tira antes/después en movimiento (antes a la izquierda, después a la derecha) */
.sba{position:relative;display:grid;grid-template-columns:1fr 1fr;height:150px;margin-top:15px;padding:6px 0}
.sba-h{overflow:hidden;position:relative}
.sba-r{display:flex;width:max-content;height:100%;animation:sba 30s linear infinite}
.sba-h+.sba-h .sba-r{margin-left:-100%}
.sba-r img{height:100%;aspect-ratio:9.6/12;width:auto;object-fit:cover;border-radius:20px;margin-right:12px;padding:.25rem 0}
.sba-l{position:absolute;top:0;bottom:0;left:50%;width:14px;transform:translateX(-50%);background:#fff;border:2px solid rgba(0,0,0,.2);border-radius:10px;box-shadow:0 2px 12px 4px rgba(0,0,0,.24);z-index:2}
@keyframes sba{from{transform:translateX(-50%)}to{transform:none}}
@media(min-width:1024px){.sba{height:300px;margin-top:20px}}
/* Bloques añadidos del brief: diagnóstico e Instagram */
.diag{background:var(--night);color:#F7F3EB;border-radius:var(--r);padding:clamp(34px,6vw,80px) var(--gut);text-align:center;display:grid;gap:16px;justify-items:center}
.diag h2{color:#F7F3EB;font-size:clamp(28px,4vw,52px);font-weight:400;letter-spacing:0}
.diag p{color:rgba(247,243,235,.7);max-width:52ch}
.diag .btn{background:var(--gold-2);color:#100F0D}
.igs{padding:35px 0;text-align:center}
.igs h2{font-size:clamp(24px,3vw,34px)}
.igs p{margin:4px 0 20px}
.igs p a{text-decoration:underline}
.ig{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.ig a{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:1}
.ig img{width:100%;height:100%;object-fit:cover}
@media(min-width:990px){.ig{grid-template-columns:repeat(8,1fr)}}
@media(max-width:700px){.ig{grid-template-columns:repeat(2,1fr)}}

/* ---------- colección ---------- */
.coll h1{font-size:clamp(28px,3.6vw,46px);padding:0}
.coll .colh{margin-bottom:18px}
.coll .colh p{color:var(--muted);margin-top:6px}
.chipsw{position:relative;margin-bottom:16px}
.chipsw::before,.chipsw::after{content:"";position:absolute;top:0;bottom:0;width:40px;pointer-events:none;opacity:0;transition:opacity .2s;z-index:1}
.chipsw::before{left:0;background:linear-gradient(90deg,#fff,rgba(255,255,255,0))}
.chipsw::after{right:0;background:linear-gradient(270deg,#fff,rgba(255,255,255,0))}
.chipsw.fl::before,.chipsw.fr::after{opacity:1}
.chips{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth}
.chips::-webkit-scrollbar{display:none}
.chips .chip{padding:8px 18px;font-size:13.5px;transition:.2s;white-space:nowrap;flex:none;border-radius:41px}
.chips .chip:hover,.chips .chip.on{border-color:#000;background:#000;color:#fff}
.crumbs a:hover{text-decoration:underline;color:#000}
.fbar{display:flex;align-items:center;gap:10px;font-size:13px;margin-bottom:12px;position:relative}
.fds{display:flex;flex-wrap:wrap;gap:8px}
.fd{position:relative}
.fpill{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border:1px solid rgba(0,0,0,.18);border-radius:41px;background:#fff;color:#000;font:500 13px var(--f-text);cursor:pointer;transition:border-color .2s,background .2s;white-space:nowrap}
.fpill:hover,.fpill[aria-expanded="true"],.fpill.on{border-color:#000}
.fpill:focus-visible,.srt select:focus-visible,.fo input:focus-visible+.fx,.ftag:focus-visible{outline:2px solid var(--gold-3);outline-offset:2px}
.fbadge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:20px;background:#000;color:#fff;font-size:11px;font-weight:600}
.fbadge[hidden]{display:none}
.chev{width:6px;height:6px;border-right:1.5px solid;border-bottom:1.5px solid;transform:rotate(45deg) translateY(-2px);transition:transform .2s;flex:none}
.fpill[aria-expanded="true"] .chev{transform:rotate(-135deg) translateY(-1px)}
.fm{position:absolute;z-index:20;top:calc(100% + 8px);left:0;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 40px -12px rgba(0,0,0,.25);padding:10px;min-width:260px;max-height:340px;overflow:auto;display:grid;gap:2px}
.fm[hidden]{display:none}
.fo{display:flex;gap:10px;align-items:center;cursor:pointer;padding:8px 10px;border-radius:10px;font-size:13.5px;color:#000}
.fo:hover{background:#f6f3ec}
.fo input{position:absolute;opacity:0;width:1px;height:1px}
.fx{width:18px;height:18px;border:1.5px solid rgba(0,0,0,.35);border-radius:5px;flex:none;display:grid;place-items:center;transition:.15s}
.fo input:checked+.fx{background:#000;border-color:#000}
.fo input:checked+.fx::after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}
.fol{flex:1}
.fon{color:var(--muted);font-size:12px}
.fmob{display:none}
.fright{margin-left:auto;display:flex;align-items:center;gap:14px}
.cnt{font-size:13px;color:var(--ink-2);white-space:nowrap}
.srt{position:relative;display:inline-flex;align-items:center}
.srt select{appearance:none;-webkit-appearance:none;height:38px;padding:0 38px 0 16px;border:1px solid rgba(0,0,0,.18);border-radius:41px;background:#fff;color:#000;font:500 13px var(--f-text);cursor:pointer}
.srt select:hover{border-color:#000}
.srt .chev{position:absolute;right:17px;top:50%;margin-top:-4px;pointer-events:none}
.ftags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px}
.ftags:empty{margin-bottom:8px}
.ftag{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 14px;border:0;border-radius:41px;background:#f3efe5;color:#000;font:500 12.5px var(--f-text);cursor:pointer}
.ftag span{font-size:11px;opacity:.6}
.ftag:hover{background:#e9e1cc}
.fclr{border:0;background:none;font:500 12.5px var(--f-text);text-decoration:underline;cursor:pointer;color:#000;padding:6px 4px}
.fsheet{position:fixed;inset:0;z-index:1000}
.fsheet[hidden]{display:none}
.fsb{position:absolute;inset:0;background:rgba(0,0,0,.45);opacity:0;transition:opacity .25s}
.fsp{position:absolute;left:0;right:0;bottom:0;max-height:85vh;background:#fff;border-radius:22px 22px 0 0;display:flex;flex-direction:column;transform:translateY(100%);transition:transform .25s ease}
.fsheet.in .fsb{opacity:1}.fsheet.in .fsp{transform:none}
.fsh{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);font-size:16px}
.fsx{width:36px;height:36px;border-radius:50%;border:1px solid rgba(0,0,0,.15);background:#fff;cursor:pointer;font-size:14px}
.fss{overflow:auto;padding:8px 10px 16px;flex:1}
.fss section{padding:10px 0;border-bottom:1px solid var(--line)}
.fss section:last-child{border:0}
.fss h4{font:600 14px var(--f-text);margin:6px 10px 6px}
.fsf{display:flex;gap:10px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff}
.fsf .btn{flex:1}
.fclr-b{height:46px;padding:0 20px;border:1px solid rgba(0,0,0,.2);border-radius:41px;background:#fff;font:500 14px var(--f-text);cursor:pointer}
body.noscroll{overflow:hidden}
@media(max-width:749px){.fds{display:none}.fmob{display:inline-flex}.fright{gap:8px;min-width:0}.fbar .cnt{display:none}.srt{min-width:0}.srt select{max-width:100%;text-overflow:ellipsis}.ftags:empty{margin-bottom:4px}}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.6vw,22px)}
@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.grid{grid-template-columns:repeat(2,1fr)}}
.card{display:flex;flex-direction:column}
.card .ph{position:relative;display:block;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;background:var(--soft)}
.card .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .4s,transform .6s var(--e)}
.card .ph img+img{opacity:0}
.card:hover .ph img+img{opacity:1}
.card:hover .ph img:only-child{transform:scale(1.03)}
.card .ct{margin-top:10px;font-size:15px;font-weight:500;color:#000;line-height:1.4}
.card .ct:hover{text-decoration:underline}
.card .p{font-size:15px;color:#000;margin-top:4px}
.card .add{position:absolute;right:10px;bottom:10px;z-index:2;background:#fff;border-radius:41px;padding:8px 14px;font-size:13px;color:#000;letter-spacing:0;
  box-shadow:0 6px 16px -8px rgba(0,0,0,.4);transition:background .2s,color .2s,transform .2s}
.card .add:hover{background:#000;color:#fff;transform:translateY(-2px)}
.crumbs{font-size:13px;color:var(--muted);padding:18px 0}
.colh{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.colh h1{font-size:clamp(28px,3.6vw,44px)}
.chip{border:1px solid rgba(0,0,0,.15);border-radius:20px;padding:4px 12px;font-size:13px;letter-spacing:0}

/* ---------- ficha de producto ---------- */
.pdp{display:grid;grid-template-columns:1fr;gap:28px;padding:20px 0 40px}
.pdp>*{min-width:0}
@media(min-width:750px){.pdp{grid-template-columns:45% 1fr;gap:52px;padding-top:40px}}
.gal .main{border-radius:var(--r);overflow:hidden;background:#f3f3f3}
.gal .main img{width:100%;height:auto}
.gal .th{display:flex;gap:10px;overflow-x:auto;margin-top:16px;padding-bottom:4px}
.gal .th button{flex:0 0 97px;height:97px;border-radius:var(--r);overflow:hidden;border:2px solid transparent;opacity:.85}
.gal .th button.on{border-color:#000;opacity:1}
.gal .th img{width:100%;height:100%;object-fit:cover}
.info{position:sticky;top:180px;align-self:start;display:grid;gap:22px}
.info h1{font-size:30px;line-height:1.3}
@media(min-width:750px){.info h1{font-size:44px}}
.info .fl{display:block;font-size:13.65px;margin-bottom:6px}
.info .price{font-size:18.9px;color:#000;letter-spacing:1.365px}
.info .tax{font-size:12.6px;margin-top:2px}
.qsel{display:inline-flex;align-items:center;width:142px;height:49px;border-radius:26px;box-shadow:0 0 0 1px rgba(0,0,0,.55)}
.qsel button{width:45px;height:100%;font-size:18px;color:#000}
.qsel input{flex:1;min-width:0;border:0;text-align:center;font-size:16px;color:#000;background:none;-moz-appearance:textfield}
.qsel input::-webkit-inner-spin-button{-webkit-appearance:none}
.vars{display:flex;flex-wrap:wrap;gap:4px 5px}
.vars button{border:.8px solid rgba(0,0,0,.55);border-radius:40px;padding:10.5px 21px;font-size:14.7px;letter-spacing:1.05px;color:#000;background:#fff;line-height:1}
.vars button.on{background:#000;color:#fff}
.body{font-size:inherit}
.body p{margin-bottom:12px}
.body ul{padding-left:20px;margin-bottom:12px}
.acc{border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{cursor:pointer;padding:15.75px 0;color:#000;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"";flex:none;width:7px;height:7px;border-right:1.3px solid #000;border-bottom:1.3px solid #000;transform:rotate(45deg);transition:transform .2s}
.acc details[open] summary::after{transform:rotate(-135deg)}
.acc .in{padding:0 0 18px}
.acc .in p{margin-bottom:10px}
.tags{display:flex;flex-wrap:wrap;gap:6px}

/* ---------- packs («Crea tu pack») ---------- */
.pkw{padding-top:36px;padding-bottom:70px}
.pk-h{text-align:center;max-width:640px;margin:0 auto 34px;display:grid;gap:10px}
.pk-h h1{font-size:clamp(32px,4.4vw,52px)}
.pk-h p{color:var(--muted);font-size:15.5px}
.pk-h b{color:#000}
.packs{display:grid;grid-template-columns:1fr 380px;gap:32px;align-items:start}
@media(max-width:1023px){.packs{grid-template-columns:1fr}}
.pk{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:1180px){.pk{grid-template-columns:repeat(2,1fr)}}
.pk .it{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;background:#fff;transition:border-color .25s,box-shadow .25s,transform .25s var(--e)}
.pk .it:hover{box-shadow:0 18px 40px -24px rgba(0,0,0,.35);transform:translateY(-2px)}
.pk .it.on{border-color:var(--gold-3);box-shadow:0 0 0 2px var(--gold-3)}
.pk .pim{position:relative;display:block;aspect-ratio:1;background:var(--soft);overflow:hidden}
.pk .pim img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--e)}
.pk .it:hover .pim img{transform:scale(1.04)}
.pk .ok{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;background:var(--gold-3);color:#000;font-weight:700;display:grid;place-items:center;transform:scale(0);transition:transform .25s var(--e)}
.pk .it.on .ok{transform:scale(1)}
.pk .pb{padding:14px;display:flex;flex-direction:column;gap:8px;flex:1}
.pk h4{font-size:14.5px;font-weight:500;line-height:1.35}
.pk .pp{font-size:15px;color:#000;margin-top:auto}
.pk select{border:1px solid var(--line);border-radius:8px;padding:7px;font-size:13px}
.pkb{min-height:40px;border-radius:41px;border:1px solid #000;font-size:13.5px;font-weight:500;color:#000;transition:.2s}
.pkb:hover{background:#000;color:#fff}
.pk .it.on .pkb{background:#000;color:#fff;border-color:#000}
.pk .ok{aspect-ratio:1;padding:0;border:0;outline:0;line-height:1;font-size:16px;font-family:Inter,sans-serif;text-align:center;box-shadow:0 4px 10px -4px rgba(0,0,0,.35)}
.pk .pim:focus-visible{outline:2px solid #000;outline-offset:-2px}
.pkb{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;padding:0 10px}
.pkb small{font-size:11.5px;opacity:.7;text-decoration:underline;font-weight:400}
@media(max-width:480px){.pkb{font-size:13px;gap:6px}.pkb small{font-size:0;text-decoration:none;opacity:.8}.pkb small::after{content:"×";font-size:18px;line-height:1}}
.pkbar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);box-shadow:0 -12px 30px -18px rgba(0,0,0,.35);padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom));transform:translateY(110%);transition:transform .3s var(--e)}
.pkbar.show{transform:none}
.pkbar-i{max-width:1260px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px}
.pkbar-t{display:grid;gap:2px;min-width:0;font-size:14px}
.pkbar-t small{font-size:12.5px;color:var(--muted)}
.pkbar-t .pct{color:#a8823f}
.pkbar-m b{color:#000}
.pkbar .btn{flex:none;padding:0 20px;min-height:44px}
body:has(.pkbar.show) .cb-btn{bottom:calc(100px + env(safe-area-inset-bottom))}
body:has(.pkbar.show) .pkw{padding-bottom:130px}
.box{border:1px solid var(--line);border-radius:22px;background:#fff;padding:24px;position:sticky;top:96px;display:grid;gap:14px;box-shadow:0 24px 60px -36px rgba(0,0,0,.35)}
.box h3{font-size:24px;display:flex;justify-content:space-between;align-items:baseline}
.box h3 small{font-size:13px;color:var(--muted);font-weight:400}
.lv{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.lv div{border:1px solid var(--line);border-radius:12px;padding:9px 4px;text-align:center;font-size:11.5px;color:var(--muted);transition:.3s}
.lv div b{display:block;font-size:18px;color:#000}
.lv div.past{border-color:#000}
.lv div.on{background:#000;border-color:#000;color:rgba(255,255,255,.75)}
.lv div.on b{color:var(--gold-3)}
.nx{font-size:13.5px;text-align:center;background:var(--soft);border-radius:10px;padding:10px}
.pl{display:grid;gap:8px;max-height:300px;overflow:auto}
.pl>div{display:grid;grid-template-columns:44px 1fr auto auto;gap:10px;align-items:center;font-size:13px}
.pl img{width:44px;height:44px;border-radius:8px;object-fit:cover}
.pl small{display:block;color:var(--muted)}
.pl em{font-style:normal;color:#000}
.pl button{color:var(--muted);font-size:20px;width:26px;height:26px;border-radius:50%}
.pl button:hover{background:var(--soft);color:#000}
.pl .em{font-size:13px;color:var(--muted);text-align:center;padding:8px 0}
.box .row{display:flex;justify-content:space-between;align-items:baseline;font-size:14.5px}
.box .row .sv{color:#2D7A3E}
.box .row.big{font-size:17px;color:#000;border-top:1px solid var(--line);padding-top:12px}
.box .row s{font-size:13px;color:var(--muted)}

/* ---------- páginas ---------- */
.page{max-width:870px;margin:0 auto;padding:clamp(30px,5vw,60px) var(--gut)}
.page h1{font-size:30px;margin-bottom:24px}
.page h2{font-size:22px;margin:30px 0 12px}
.page h3{font-size:18px;margin:24px 0 10px}
@media(min-width:750px){.page h1{font-size:44px}.page h2{font-size:26.4px}.page h3{font-size:19.8px}}
.page p,.page li{margin-bottom:10px}
.page ul{padding-left:20px}
.page .ch{font-size:30px;margin-top:60px}
@media(min-width:750px){.page .ch{font-size:44px}}
.faqp{max-width:840px}
.faqp h1{text-align:center;font-size:40px}
.faqp h2{text-align:center;font-size:30px;margin:56px 0 24px}
@media(min-width:750px){.faqp h1{font-size:57px}.faqp h2{font-size:44px}}
.form{display:grid;gap:16px}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:600px){.form .two{grid-template-columns:1fr}}
.form input,.form textarea{border:0;box-shadow:0 0 0 1px rgba(0,0,0,.55);border-radius:4px;padding:14px 15px;width:100%;background:#fff}
.form input:focus,.form textarea:focus{outline:0;box-shadow:0 0 0 2px rgba(0,0,0,.75)}
.form textarea{min-height:200px}
.form .btn{justify-self:start}
.ok{background:#EEF6EC;border:1px solid #BFD9B8;color:#2D5A23;border-radius:10px;padding:12px 16px}
.err{background:#FCEEEE;border:1px solid #E8BDBD;color:#7A2323;border-radius:10px;padding:12px 16px}

/* ---------- pie (bloque gris + franja legal blanca, como la original) ---------- */
.ftr{margin-top:0;color:var(--dark)}
.ft-top{background:#fafafa}
.ft-in{max-width:1260px;margin:0 auto;padding:52px var(--gut) 40px}
.ft-cols{display:grid;grid-template-columns:1fr 1fr;gap:30px}
@media(min-width:990px){.ft-cols{grid-template-columns:repeat(5,1fr);gap:65px}}
.ft-logo img{width:175px;height:auto}
.ft-cols h3{font-size:16px;color:var(--dark);margin-bottom:22px;letter-spacing:.63px}
.ft-cols a{display:block;font-size:16px;color:var(--dark);margin-bottom:13px;line-height:1.2}
.ft-cols a:hover{text-decoration:underline}
.ft-cols .soc{display:flex;gap:10px;align-items:flex-start;padding-top:5px}
.ft-cols .soc a{width:25px;height:25px;margin:0}
.ft-cols .soc svg{width:20px;height:20px;fill:var(--dark)}
.ft-bot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:60px}
.ft-bot p{font-size:13px}
.news{display:flex;gap:10px;align-items:center}
.news input{width:288px;max-width:60vw;height:48px;border:1px solid rgba(0,0,0,.3);border-radius:6px;padding:0 14px;background:#fff;font-size:16px}
.news button{width:220px;max-width:30vw;height:40px;border-radius:6px;background:var(--dark);color:#fff;font-size:16px}
.ft-legal{border-top:1px solid var(--line);padding:12px 0 52px}
.ft-legal .wrap{display:grid;gap:30px}
.ft-loc{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.ft-loc label{display:grid;gap:8px;font-size:13.65px}
.ft-loc select{border:1px solid rgba(0,0,0,.55);border-radius:4px;color:#000;font-size:13.65px;padding:9px 34px 9px 14px;max-width:none}
.ft-legal nav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 20px}
.ft-legal nav a{font-size:11.55px}
.ft-legal nav a:hover{text-decoration:underline}
.ft-legal nav .ck-open{font-size:11.55px;text-decoration:none;letter-spacing:inherit}
.ft-legal nav .ck-open:hover{text-decoration:underline}
@media(max-width:989px){
  .ft-in{padding:40px var(--gut) 32px}
  .ft-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;align-items:start}
  .ft-logo{grid-column:1/-1;justify-self:center;margin-bottom:4px}
  .ft-logo img{width:130px}
  .ft-cols h3{font-size:15px;margin-bottom:14px}
  .ft-cols a{font-size:15px;margin-bottom:0;padding:6px 0;overflow-wrap:anywhere}
  .ft-cols .soc{grid-column:1/-1;justify-content:center;gap:18px;padding-top:4px}
  .ft-cols .soc a{width:40px;height:40px;padding:0;display:grid;place-items:center}
  .ft-bot{flex-direction:column-reverse;align-items:stretch;gap:18px;margin-top:32px;text-align:center}
  .news{width:100%}
  .news input{flex:1;width:auto;max-width:none;min-width:0}
  .news button{width:auto;max-width:none;padding:0 22px;height:48px}
  .ft-loc{justify-content:center}
  .ft-legal{padding-bottom:96px}
}

/* ---------- chatbot ---------- */
.cb-btn{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:70;width:60px;height:60px;border-radius:50%;background:#000;color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px -10px rgba(0,0,0,.5)}
.cb-btn svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:1.6;transition:stroke .2s}
.cb-btn{transition:transform .25s var(--e),box-shadow .25s}
.cb-btn:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 16px 34px -10px rgba(0,0,0,.55)}
.cb-btn:hover svg{stroke:var(--gold-3)}
.cb{position:fixed;right:18px;bottom:calc(90px + env(safe-area-inset-bottom));z-index:71;width:min(380px,calc(100vw - 24px));height:min(580px,calc(100svh - 120px));background:#fff;border-radius:18px;
  box-shadow:0 30px 70px -20px rgba(0,0,0,.45);display:flex;flex-direction:column;overflow:hidden;transform:translateY(16px) scale(.98);opacity:0;visibility:hidden;transition:.3s var(--e)}
.cb.open{transform:none;opacity:1;visibility:visible}
@media(max-width:520px){.cb{right:12px}}
.cb header{background:#000;color:#fff;padding:14px 18px;display:flex;align-items:center;gap:10px}
.cb header b{font-weight:500}
.cb header small{display:block;font-size:11.5px;opacity:.7}
.cb header button{margin-left:auto;color:#fff;font-size:22px}
.cb .log{flex:1;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:#FAFAF8}
.msg{max-width:88%;padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.5;letter-spacing:0}
.msg.bot{background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.msg.me{align-self:flex-end;background:#000;color:#fff;border-bottom-right-radius:4px}
.msg a{text-decoration:underline;color:var(--gold)}
.msg .pc{display:flex;gap:10px;align-items:center;margin-top:8px;padding:8px;border-radius:10px;background:var(--soft);text-decoration:none;color:var(--ink)}
.msg .pc img{width:44px;height:44px;border-radius:8px;object-fit:cover}
.cb .qs{padding:10px 12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;background:#fff}
.cb .qs button{text-align:left;border:1px solid rgba(0,0,0,.2);border-radius:12px;padding:9px 12px;font-size:13.5px;letter-spacing:0}
.cb .qs button:hover{border-color:#000;background:var(--soft)}
.cb .cb-fx{display:flex;gap:6px;margin-top:2px}
.cb .cb-fx button{flex:1;text-align:center;font-size:12.5px;line-height:1.3;border-radius:20px;padding:9px 10px;background:var(--soft);border:0;white-space:nowrap}

.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,120px);background:#000;color:#fff;padding:12px 20px;border-radius:var(--pill);z-index:99;font-size:14px;transition:.35s var(--e)}
.toast.on{transform:translate(-50%,0)}

/* ---------- ficha de producto: secciones de la plantilla original (medidas copiadas de sus estilos) ---------- */
.psize{margin-bottom:6px}
.pp{overflow:hidden}
.pp h2{color:#000}
.pp-in{max-width:160rem;margin:0 auto;padding:27px 1.5rem}
@media(min-width:1024px){.pp-in{padding:36px 5rem}}
.pp-cta{text-align:center;padding:0 var(--gut) 39px}
.pp-h{text-align:center;padding:30px var(--gut) 0}
.pp-h h2{font-size:30px;line-height:1.3}
@media(min-width:750px){.pp-h h2{font-size:44px}}
/* reseñas */
.pp-rv{padding:27px 1.5rem}
.pp-rv-b{background:#f1f0ed;border-radius:12px;padding:16px}
.pp-rv h2{font-size:24px;line-height:1.5;color:#756e67}
.pp-sl{position:relative;margin-top:15px}
.pp-rv-t{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:12px}
.pp-rv-t::-webkit-scrollbar{display:none}
.pp-rv-i{scroll-snap-align:start;display:flex;flex-direction:column;min-width:0}
.pp-rv-img{border-radius:12px;overflow:hidden;aspect-ratio:1}
.pp-rv-img img{width:100%;height:100%;object-fit:cover}
.pp-rv-st{margin-top:18px;display:flex;gap:1px}
.pp-rv-st svg{width:20px;height:20px;fill:#756e67}
.pp-rv-tx{margin-top:9px;font-size:16px;color:#756e67;line-height:1.3;word-break:break-word}
.pp-rv-n{margin-top:6px;font-size:16px;color:#756e67;line-height:1.3;font-weight:700}
.pp-rv-ar{position:absolute;z-index:2;top:45%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;transition:.3s}
.pp-rv-ar svg{width:28px;height:28px;fill:#756e67}
.pp-rv-ar.prev{left:10.5px}.pp-rv-ar.next{right:10.5px}.pp-rv-ar.next svg{transform:rotate(180deg)}
.pp-rv-ar:hover{background:#756e67}.pp-rv-ar:hover svg{fill:#fff}
@media(min-width:768px){.pp-rv-t{grid-auto-columns:calc((100% - 20px)/1.5)}}
@media(min-width:1024px){.pp-rv{padding:36px 5rem}.pp-rv-b{padding:50px}.pp-rv h2{font-size:40px}.pp-sl{margin-top:20px}
  .pp-rv-t{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);gap:36px;overflow:visible}.pp-rv-ar{display:none}
  .pp-rv-st{margin-top:24px}.pp-rv-tx{font-size:20px}.pp-rv-n{margin-top:8px;font-size:20px}}
/* beneficios clave */
.pp-ben ul{list-style:none;max-width:1260px;margin:0 auto;padding:36px var(--gut) 28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pp-ben li{background:#fff;border-radius:20px;padding:26.25px}
.pp-ben h4{font-size:16.5px;line-height:1.29;color:#000}
@media(min-width:990px){.pp-ben ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:36px 52.5px 28px}}
/* resultados: línea de tiempo */
.pp-tl{background:#f3f3f3}
.pp-tl h2{font-size:30px;font-weight:400;line-height:1.5;text-align:center;color:#000}
.pp-tl-l{position:relative;margin:0 auto;max-width:100%}
.pp-tl-l::before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);height:100%;width:1px;background:#000}
.pp-tl-i{display:flex;align-items:center;justify-content:space-between;text-align:right;word-break:break-word}
.pp-tl-i.rev{flex-direction:row-reverse}
.pp-tl-d,.pp-tl-r{flex:1 1 0%;min-width:0}
.pp-tl-d{font-size:16px;color:#000;line-height:1;font-weight:700}
.pp-tl-i.rev .pp-tl-d{text-align:left}
.pp-tl-c{flex:0 0 25px;height:25px;border-radius:50%;border:1px solid #000;background:#000;position:relative;z-index:2}
.pp-tl-r{display:flex;align-items:center}
.pp-tl-i.rev .pp-tl-r{flex-direction:row-reverse}
.pp-tl-r i{flex:0 0 10px;height:20px;background:#fff;clip-path:polygon(0 50%,100% 0,100% 100%);margin-right:-1px}
.pp-tl-i.rev .pp-tl-r i{transform:rotate(180deg);margin:0 0 0 -1px}
.pp-tl-card{padding:15px;border-radius:8px;background:#fff;text-align:left;position:relative;z-index:2;margin:10px 0}
.pp-tl-card p{font-size:14px;color:#000;line-height:1.5;margin-top:6px}
@media(min-width:1024px){.pp-tl h2{font-size:40px}.pp-tl-l{max-width:60%}.pp-tl-i{gap:20px}.pp-tl-d{font-size:18px}.pp-tl-r i{flex-basis:20px}
  .pp-tl-card{padding:20px}.pp-tl-card p{margin-top:8px}}
/* fórmula / piel / aroma */
.pp-bento{background:#f4f1f1}
.pp-bento .pp-in{max-width:140rem}
.pp-bg{display:grid;grid-template-columns:1fr;row-gap:16px;align-items:start}
.pp-bc{display:flex;align-items:center;gap:20px;height:100%;border-radius:16px;padding:16px;background:#fff;overflow:hidden}
.pp-bc>*{flex:1 0 0;min-width:0}
.pp-bc-h{font-size:20px;color:#121212;line-height:1.5}
.pp-bc-x{margin-top:6px}
.pp-bc-x p{font-size:15px;color:#121212;line-height:1.8;word-break:break-word}
.pp-bc-x p+p{margin-top:10px}
.pp-bc-img{border-radius:10px;overflow:hidden;width:100%}
.pp-bc-img img{width:100%;aspect-ratio:1;object-fit:cover}
@media(min-width:1024px){.pp-bg{gap:16px;grid:auto-flow dense auto/repeat(4,minmax(0,1fr))}.pp-bc{padding:32px;flex-direction:column}.pp-bc>*{flex:0 1 auto;width:100%}.pp-bc-x{margin-top:8px}.pp-bc-x p{font-size:16px}
  .pp-bc.wide{grid-column:span 2;flex-direction:row}.pp-bc.wide>*{flex:1 0 0}.pp-bc.wide .pp-bc-img{order:-1}}
/* pureza: iconos + acordeón */
.pp-ico ul{list-style:none;max-width:1260px;margin:0 auto;padding:24px var(--gut) 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pp-ico img{width:100%;aspect-ratio:1;object-fit:contain}
@media(min-width:750px){.pp-ico ul{grid-template-columns:repeat(6,minmax(0,1fr));gap:28px;padding:24px 52.5px 18px}}
.pp-acc{max-width:770.7px;margin:0 auto;padding:0 15.75px 36px}
.pp-acc summary h3{font-size:16.5px;line-height:1.29;color:#000}
.pp-acc .in{padding:0 6.3px 15.75px;word-break:break-word}
.pp-acc .in a{text-decoration:underline}
/* IDARIA vs otras marcas */
.pp-vs{max-width:130rem;margin:0 auto;padding:24px 1rem 54px}
.pp-vs-b{display:grid;gap:32px}
.pp-vs-c{display:flex;flex-direction:column;align-items:center;min-width:0}
.pp-vs-h{width:100%;text-align:center}
.pp-vs-h p{font-size:32px;color:#000;line-height:1.5}
.pp-vs-q{margin-top:3px;font-size:18px;color:#000;line-height:1.5;text-align:center}
.pp-vs-l{list-style:none;margin-top:50px;display:none;flex-direction:column;gap:30px}
.pp-vs-l li{display:flex;align-items:center;gap:16px;font-size:20px;color:#000;line-height:1.5}
.pp-vs-l svg{flex:0 0 28px;height:28px}
.pp-vs-btn{display:flex;align-items:center;justify-content:center;width:100%;max-width:305px;margin:32px auto 0;padding:16px 48px;border-radius:100px;background:#000;color:#fff;font-size:16px;font-weight:700;line-height:1}
.pp-vs-btn.top{display:none}
.pp-vs-t{min-width:0}
.pp-vs-g{display:grid;grid-template-columns:1fr 1fr 1fr}
.pp-vs-g>div{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 14px;border-top:1px solid #000;border-left:1px solid #000;min-width:0}
.pp-vs-g>div:last-child{border-right:1px solid #000}
.pp-vs-g>div.on{background:#000;border-top-color:#fff}
.pp-vs-g.hd>div{padding:18px;border:0}
.pp-vs-g.hd>div:nth-child(2){border-top-left-radius:16px}
.pp-vs-g.hd>div:last-child{border:0;border-top-right-radius:16px;border-top:1px solid #000;border-right:1px solid #000}
.pp-vs-g.hd h3{font-size:16px;line-height:1;text-align:center;color:#000}
.pp-vs-g.hd .on h3{color:#fff}
.pp-vs-g.hd+.pp-vs-g>div:first-child{border-top-left-radius:16px}
.pp-vs-g:last-child>div{border-bottom:1px solid #000}
.pp-vs-g:last-child>div.on{border-bottom:0}
.pp-vs-g:last-child>div:first-child{border-bottom-left-radius:16px}
.pp-vs-g:last-child>div:last-child{border-bottom-right-radius:16px}
.pp-vs-g>div:first-child{align-items:flex-start}
.pp-vs-g h3{font-size:13px;line-height:1.3;text-align:left;color:#000;width:100%;letter-spacing:.3px;word-break:break-word}
.pp-vs-g span{width:24px;height:24px}
.pp-vs-g span svg{width:100%;height:100%}
@media(min-width:1024px){.pp-vs{padding:32px 4rem 72px}.pp-vs-b{grid-template-columns:1fr 1fr;gap:28px}.pp-vs-c{align-items:start}.pp-vs-h{text-align:left}.pp-vs-h p{font-size:52px}
  .pp-vs-q{margin-top:4px;text-align:left}.pp-vs-l{display:flex}.pp-vs-btn{margin:50px 0 0;font-size:18px}.pp-vs-btn.top{display:flex}.pp-vs-btn.bot{display:none}
  .pp-vs-g.hd h3{font-size:20px}.pp-vs-g>div{padding:16px 14px}.pp-vs-g h3{font-size:16px}}
/* ingredientes de calidad */
.pp-ing{max-width:120rem;margin:0 auto;padding:27px 1.5rem}
.pp-ing-b{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:40px}
.pp-ing-c{min-width:0}
.pp-ing h2{font-size:28px;line-height:1.3;text-align:center}
.pp-ing-x{margin-top:24px;text-align:center}
.pp-ing-x p{font-size:18px;color:#000;line-height:1.5}
.pp-ing-x.top,.pp-ing-btn.top{display:none}
.pp-ing-x.bot{margin-top:0}
.pp-ing-ch{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.pp-ing-ch button{padding:8px 14px;border:.8px solid #000;border-radius:40px;font-size:16px;line-height:1;color:#000;background:#fff;letter-spacing:.63px}
.pp-ing-ch button.on{background:#000;color:#fff}
.pp-ing-btn{display:block;margin:0 auto;padding:20px 40px;border:.8px solid #000;border-radius:100px;background:#000;color:#fff;font-size:16px;font-weight:700;line-height:1}
.pp-ing-s{min-width:0}
.pp-ing-card{display:none;padding:20px;border-radius:40px;border:1px solid #000;background:#fff}
.pp-ing-card.on{display:block}
.pp-ing-card h3{text-align:center;font-size:34px;line-height:1.3;color:#000;word-break:break-word}
.pp-ing-tx{margin-top:15px;text-align:center}
.pp-ing-tx p{font-size:14px;line-height:1.3;color:#000}
.pp-ing-img{margin:15px auto 0;width:100%;max-width:80%;aspect-ratio:1;border-radius:50%;border:6px solid #000;overflow:hidden}
.pp-ing-img img{width:100%;height:100%;object-fit:cover}
.pp-ing-nav{margin-top:20px;display:flex;align-items:center;justify-content:center;gap:40px}
.pp-ing-nav button{display:none;width:46px;height:46px;border-radius:50%;background:#000;align-items:center;justify-content:center}
.pp-ing-nav svg{width:22px;height:22px;fill:#fff}
.pp-ing-nav .next svg{transform:rotate(180deg)}
.pp-ing-nav .dots{display:flex;gap:6px}
.pp-ing-nav .dots i{width:9px;height:9px;border-radius:50%;background:#000;opacity:.2;cursor:pointer}
.pp-ing-nav .dots i.on{opacity:1}
@media(min-width:1024px){.pp-ing{padding:36px 5rem}.pp-ing-b{grid-template-columns:calc(58% - 30px) calc(42% - 30px);gap:60px}.pp-ing h2{font-size:38px;text-align:left}
  .pp-ing-x{text-align:left}.pp-ing-x p{font-size:16px}.pp-ing-x.top{display:block}.pp-ing-x.bot,.pp-ing-btn.bot{display:none}.pp-ing-ch{justify-content:start;gap:16px}
  .pp-ing-btn.top{display:inline-block;margin-top:32px}.pp-ing-card h3{font-size:40px}.pp-ing-tx{margin-top:20px}.pp-ing-nav{margin-top:-20px;position:relative}.pp-ing-nav button{display:flex}.pp-ing-nav .dots{display:none}}
/* modo de empleo */
.pp-st .pp-in{max-width:1260px;padding:27px var(--gut)}
.pp-st h2{font-size:30px;line-height:1.3;margin-bottom:31.5px}
.pp-st ul{list-style:none;display:grid;grid-auto-flow:column;grid-auto-columns:85%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.pp-st li{scroll-snap-align:start;background:#fff;border-radius:20px;padding:26.25px}
.pp-st h3{font-size:19.8px;line-height:1.48;color:#000}
@media(min-width:750px){.pp-st h2{font-size:44px}.pp-st ul{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;overflow:visible}}
/* recomendados + franja */
.pp-rel{padding:36px 0}
.pp-rel h2{font-size:24px;margin-bottom:24px}
.pp-rel .grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:989px){.pp-rel .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
.pp-strip{display:flex;gap:10px;overflow-x:auto;padding:35px var(--gut);scrollbar-width:none}
.pp-strip::-webkit-scrollbar{display:none}
.pp-strip a{flex:0 0 clamp(150px,18vw,260px);aspect-ratio:1;border-radius:6px;overflow:hidden}
.pp-strip img{width:100%;height:100%;object-fit:cover}

/* ==========================================================================
   SISTEMA TIPOGRÁFICO (manda sobre todo lo anterior). Mismo lenguaje que /diagnostico:
   · Títulos (h1, h2, títulos de sección): Playfair Display 400, serif elegante.
   · Subtítulos (h3, h4, nombres de producto): Inter 500.
   · Etiquetas / antetítulos (.lbl): Inter 400, MAYÚSCULAS, espaciado .3em, dorado.
   · Texto: Inter 300/400.  · Botones y menús: Inter 500.
   ========================================================================== */
:root{--f-title:'Playfair Display',Georgia,serif;--f-text:'Inter',system-ui,-apple-system,sans-serif}
body{font-family:var(--f-text);font-weight:300}
h1,h2,.serif{font-family:var(--f-title)!important;font-weight:400!important;letter-spacing:-.015em;line-height:1.08;color:#000}
h1{font-size:clamp(32px,4.4vw,56px)}
h2{font-size:clamp(26px,3.4vw,42px)}
h1 em,h2 em{font-style:italic;color:var(--gold)}
h3,h4,h5,.card .ct,.ct{font-family:var(--f-text)!important;font-weight:500!important;letter-spacing:-.005em;line-height:1.3}
h3{font-size:clamp(17px,1.6vw,21px)}
h4{font-size:15px}
p,li,td,label,summary,input,select,textarea{font-family:var(--f-text)}
b,strong{font-weight:600}
.lbl{font-family:var(--f-text);font-weight:400;letter-spacing:.3em;text-transform:uppercase;font-size:11px;color:var(--gold)}
.btn,.nav,.nav a,.dd .menu a,.chip,.pkb,.add,.mg-i a,.cb .qs button{font-family:var(--f-text);font-weight:500}
.price,.card .p,.pp{font-family:var(--f-text);font-weight:500}
.box h3{font-family:var(--f-title)!important;font-weight:400!important;font-size:26px}

/* ==========================================================================
   CONVERSIÓN: valoraciones, sellos de confianza, pestañas de ficha, barra fija,
   venta cruzada del carrito, seguimiento de pedido y 404.
   ========================================================================== */
/* estrellas (media real de las reseñas) */
.rt{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12.5px;color:var(--muted);letter-spacing:0;font-weight:400}
.rt-s{position:relative;display:inline-flex;gap:1px;line-height:0}
.rt-s svg{width:13px;height:13px;fill:#e2dccf}
.rt-s>span{position:absolute;inset:0;display:inline-flex;gap:1px;width:var(--r);overflow:hidden}
.rt-s>span svg{flex:none;fill:var(--gold-3)}
.rt.big{margin-top:10px;font-size:13.5px}
.rt.big .rt-s svg{width:16px;height:16px}
.rt-l{display:inline-block}
.rt-l:hover .rt-n{text-decoration:underline;color:#000}
/* sellos de confianza */
.trust{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:-6px}
.trust li{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;font-size:11.5px;line-height:1.3;color:#000;letter-spacing:.02em;padding:12px 4px;border-radius:14px;background:var(--soft)}
.trust svg{width:22px;height:22px;fill:none;stroke:var(--gold);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.trust small{display:block;font-size:10.5px;color:var(--muted)}
@media(max-width:400px){.trust{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* pestañas (escritorio) / acordeón (móvil) */
.ptabs{padding:clamp(28px,4vw,48px) 0 10px;background:#fff}
.ptabs>.wrap{text-align:center}
.pt-l{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:14px auto 8px;padding:5px;border-radius:var(--pill);background:var(--soft);width:max-content;max-width:100%}
.pt-l button{padding:10px 20px;border-radius:var(--pill);font-size:14px;font-weight:500;color:var(--ink-2);letter-spacing:.02em;transition:background .25s,color .25s}
.pt-l button:hover{color:#000}
.pt-l button.on{background:#000;color:#fff}
.pt-a{display:none}
.pt-p{display:none;animation:ptin .45s var(--e)}
.pt-p.on{display:block}
@keyframes ptin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:749px){
  .ptabs{padding:20px 0 6px}
  .ptabs>.wrap .pt-l{display:none}
  .ptabs>.wrap{margin-bottom:10px}
  .pt-a{display:flex;justify-content:space-between;align-items:center;width:calc(100% - 2*var(--gut));margin:0 auto;padding:17px 2px;border-top:1px solid var(--line);font-family:var(--f-text);font-size:16px;font-weight:500;color:#000;text-align:left}
  .pt-a:last-of-type{border-bottom:1px solid var(--line)}
  .pt-a::after{content:"";width:8px;height:8px;border-right:1.3px solid #000;border-bottom:1.3px solid #000;transform:rotate(45deg);transition:transform .25s}
  .pt-a.open::after{transform:rotate(-135deg)}
  .pt-p,.pt-p.on{display:none}
  .pt-p.open{display:block}
  .pt-p>.pp-h:first-child{display:none}
}
/* barra fija de compra */
.sbar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -12px 30px -18px rgba(0,0,0,.3);
  padding:10px 0 calc(10px + env(safe-area-inset-bottom));transform:translateY(110%);transition:transform .35s var(--e)}
.sbar.on{transform:none}
.sbar .wrap{display:flex;align-items:center;gap:14px}
.sbar img{width:48px;height:48px;border-radius:10px;object-fit:cover;background:var(--soft);flex:none}
.sb-t{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.sb-t b{font-weight:500;color:#000;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-t span{font-size:13.5px;color:var(--ink-2)}
.sbar .btn{flex:none;min-height:44px;padding:0 26px}
@media(max-width:749px){.sbar img{width:42px;height:42px}.sbar .btn{padding:0 18px;font-size:14px}.sb-t b{font-size:13.5px}}
body.has-sbar .cb-btn{bottom:calc(84px + env(safe-area-inset-bottom))}
body.has-sbar .toast{bottom:96px}
/* carrito: venta cruzada */
.up-pk{display:flex;align-items:center;gap:12px;margin:16px 0 4px;padding:12px 14px;border-radius:14px;background:#000;color:#fff;font-size:13.5px;line-height:1.4;transition:background .2s}
.up-pk:hover{background:#222}
.up-pk svg{flex:none;width:22px;height:22px;fill:none;stroke:var(--gold-3);stroke-width:1.4;stroke-linejoin:round}
.up-pk span{flex:1}.up-pk b{color:var(--gold-3)}
.up-pk i{font-style:normal;font-size:20px;color:var(--gold-3)}
.up-x{margin:18px 0 10px}
.up-x h4{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:500!important;margin-bottom:8px}
.up-i{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;padding:8px 0}
.up-i img{width:52px;height:52px;border-radius:10px;object-fit:cover;background:var(--soft)}
.up-i div{min-width:0;font-size:13.5px;color:#000;line-height:1.35}
.up-i small{display:block;color:var(--muted);font-size:12.5px}
.up-i button{border:1px solid #000;border-radius:var(--pill);padding:6px 12px;font-size:12.5px;font-weight:500;color:#000;white-space:nowrap;transition:.2s}
.up-i button:hover{background:#000;color:#fff}
/* sigue tu pedido */
.trk .lbl{display:block;text-align:center}
.trk h1{text-align:center;margin:8px 0 16px}
.trk-i{text-align:center;max-width:60ch;margin:0 auto 26px}
.trk-s{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 10px;padding:0}
.trk-s li{counter-increment:s;background:var(--soft);border-radius:16px;padding:18px;display:grid;gap:4px;font-size:13.5px;margin:0}
.trk-s li::before{content:counter(s);width:28px;height:28px;border-radius:50%;background:#000;color:var(--gold-3);display:grid;place-items:center;font-size:13px;font-weight:500}
.trk-s b{color:#000;font-weight:500}
@media(max-width:600px){.trk-s{grid-template-columns:1fr}}
.trk .form{margin-top:16px}
.trk-h{margin-top:22px;font-size:14px;color:var(--muted)}
.trk-h a{text-decoration:underline;color:#000}
/* 404 */
.nf{text-align:center;padding-top:clamp(40px,7vw,90px);padding-bottom:70px}
.nf h1{margin:10px 0 14px}
.nf>p{max-width:52ch;margin:0 auto;color:var(--muted)}
.nf-b{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:26px 0 clamp(40px,6vw,70px)}
.nf h2{margin-bottom:24px}
.nf .grid{text-align:left}

/* ---------- inicio: resultados antes / después ---------- */
.res{padding:clamp(48px,7vw,90px) 0;background:#f4f1f1}
.res-h{text-align:center;display:grid;gap:10px;margin-bottom:clamp(24px,4vw,40px)}
.res-h p{color:var(--muted);font-size:14px}
.res-main{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(20px,4vw,56px);align-items:center}
@media(max-width:860px){.res-main{grid-template-columns:1fr}}
.cmp{position:relative;aspect-ratio:4/5;border-radius:24px;overflow:hidden;user-select:none;touch-action:pan-y;background:#e9e4dc;box-shadow:0 24px 50px -30px rgba(0,0,0,.45)}
.cmp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.cmp .a{clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.cmp .h{position:absolute;top:0;bottom:0;left:var(--p);width:2px;background:#fff;transform:translateX(-1px);pointer-events:none}
.cmp .h::after{content:"‹ ›";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:#fff;color:#000;display:grid;place-items:center;font-size:16px;letter-spacing:2px;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.cmp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.cmp .tg{position:absolute;top:14px;background:rgba(0,0,0,.55);color:#fff;border-radius:20px;padding:5px 12px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;pointer-events:none}
.cmp .tg.l{left:14px}.cmp .tg.r{right:14px}
.res-case{background:#fff;border-radius:24px;padding:clamp(24px,3vw,40px);display:grid;gap:18px}
.res-case p{color:var(--ink-2);font-size:15px;margin-top:6px}
.res-case .btn{justify-self:start}
@media(max-width:860px){.res-case .btn{justify-self:center}}
.res-car{position:relative;margin-top:clamp(28px,4vw,48px);display:flex;align-items:center;gap:10px}
.res-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;flex:1;padding:4px 2px 12px}
.res-track::-webkit-scrollbar{display:none}
.res-it{flex:0 0 calc((100% - 48px)/4);scroll-snap-align:start}
@media(max-width:1000px){.res-it{flex-basis:calc((100% - 16px)/2)}}
@media(max-width:560px){.res-it{flex-basis:78%}}
@media(pointer:coarse){
  .res-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .res-it{scroll-snap-align:center;scroll-snap-stop:always}
  .res-it .cmp{touch-action:pan-x pan-y}
  .res-it .cmp input{pointer-events:none}
  .res-it .cmp .h{pointer-events:auto;width:44px;transform:translateX(-22px);background:transparent;touch-action:none;z-index:2}
  .res-it .cmp .h::before{content:"";position:absolute;top:0;bottom:0;left:21px;width:2px;background:#fff}
}
.res-it .cmp{border-radius:18px}
.res-arr{flex:0 0 42px;height:42px;border-radius:50%;background:#fff;font-size:24px;line-height:1;box-shadow:0 6px 16px -6px rgba(0,0,0,.3)}
.res-arr:hover{background:#000;color:#fff}
@media(max-width:560px){.res-arr{display:none}}
.res-note{text-align:center;font-size:12px;color:var(--muted);margin-top:14px}

/* Accesibilidad: texto solo para lectores de pantalla y foco visible con teclado. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid #b8945a;outline-offset:2px}
.cmp input[type=range]:focus-visible~.h,.cmp:focus-within .h{box-shadow:0 0 0 3px #b8945a}

/* ---------- Opciones de compra: compra única / suscripción ---------- */
.bo{border:0;display:grid;gap:10px;min-width:0}
.bo legend{padding:0}
.bo-o{position:relative;display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:4px 12px;padding:16px 18px;border-radius:16px;background:#fff;
  box-shadow:0 0 0 1px rgba(0,0,0,.14);cursor:pointer;transition:box-shadow .2s,background .2s}
.bo-o:hover{box-shadow:0 0 0 1px rgba(0,0,0,.4)}
.bo-o.on{box-shadow:0 0 0 1.6px #000;background:linear-gradient(180deg,#fff,var(--cream))}
.bo-o input{position:absolute;opacity:0;pointer-events:none}
.bo-r{width:20px;height:20px;border-radius:50%;box-shadow:inset 0 0 0 1.4px rgba(0,0,0,.45);display:grid;place-items:center}
.bo-o.on .bo-r{box-shadow:inset 0 0 0 1.4px #000}
.bo-o.on .bo-r::after{content:"";width:10px;height:10px;border-radius:50%;background:#000}
.bo-o input:focus-visible~.bo-r{outline:2px solid #b8945a;outline-offset:2px}
.bo-t{font-family:var(--f-text);font-size:14.5px;color:var(--ink);letter-spacing:.2px;line-height:1.35}
.bo-t b{font-weight:500}
.bo-b{display:inline-block;margin-left:6px;font-style:normal;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#000;background:var(--gold-3);border-radius:20px;padding:2px 9px;vertical-align:1px}
.bo-p{font-family:var(--f-text);font-weight:500;font-size:14.5px;color:#000;white-space:nowrap;text-align:right}
.bo-p s{color:var(--muted);font-weight:400;font-size:12.5px;margin-right:4px}
.bo-x{grid-column:2/-1;display:none;gap:6px;margin-top:8px}
.bo-o.on .bo-x{display:grid}
.bo-x select{width:100%;border:0;box-shadow:0 0 0 1px rgba(0,0,0,.3);border-radius:12px;padding:11px 36px 11px 14px;font-size:13.5px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 12px center/16px;appearance:none;-webkit-appearance:none;color:#000;cursor:pointer}
.bo-x small{font-size:12.3px;color:var(--muted);line-height:1.5;display:flex;gap:6px;align-items:center}
.bo-x small::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--gold)}
@media(max-width:420px){.bo-o{grid-template-columns:22px 1fr;padding:14px}.bo-p{grid-column:2;text-align:left}}
.price .was{font-size:.72em;color:var(--muted);font-weight:400;margin-left:6px}
.price .save{font-size:11.5px;letter-spacing:.1em;vertical-align:3px;background:#000;color:var(--gold-3);border-radius:20px;padding:3px 9px;margin-left:6px}
/* carrito: línea suscrita y nota de renovación */
.ci small.ci-sub{display:inline-flex;align-items:center;gap:5px;margin-top:4px;color:#000;background:var(--cream);border-radius:20px;padding:2px 10px 2px 8px;font-size:11.8px}
.ci-sub svg{width:13px;height:13px;fill:none;stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.drawer .sub-note{font-size:12.5px;line-height:1.55;color:var(--ink-2);background:var(--cream);border-radius:12px;padding:10px 12px;margin:8px 0}
.drawer .sub-note b{color:#000;font-weight:500}
.th-sub{margin:28px auto 0;max-width:520px;background:var(--cream);border-radius:var(--r);padding:22px;display:grid;justify-items:center;gap:12px}
.th-sub svg,.ac-empty svg{width:28px;height:28px;fill:none;stroke:var(--gold);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
/* icono de cuenta: punto dorado con sesión iniciada */
.ico.acc.in::after{content:"";position:absolute;top:9px;right:9px;width:7px;height:7px;border-radius:50%;background:var(--gold-3);box-shadow:0 0 0 2px #fff}
@media(max-width:420px){.tools .ico[aria-label="Instagram"]{display:none}}

/* ---------- Mi cuenta (/cuenta) ---------- */
.acct{background:linear-gradient(180deg,var(--cream),#fff 420px);min-height:70vh;padding:clamp(32px,6vw,72px) var(--gut) 80px}
.ac-load{display:grid;place-items:center;min-height:40vh}
.ac-load span{width:28px;height:28px;border-radius:50%;border:2px solid rgba(0,0,0,.1);border-top-color:var(--gold);animation:acspin .8s linear infinite}
@keyframes acspin{to{transform:rotate(360deg)}}
.ac-in{max-width:470px;margin:0 auto}.ac-in.wide{max-width:1040px}
.ac-card{background:#fff;border-radius:24px;padding:clamp(26px,5vw,44px);box-shadow:0 1px 0 rgba(0,0,0,.04),0 24px 60px -30px rgba(16,15,13,.25)}
.ac-login{text-align:center}
.ac-in h1{font-family:var(--f-title);font-weight:400;font-size:clamp(30px,4.4vw,42px);letter-spacing:0;margin:8px 0 10px;line-height:1.15}
.ac-login>p{font-size:14.5px;color:var(--ink-2);margin-bottom:22px}
.ac-f{display:grid;gap:12px}
.ac-f input{border:0;box-shadow:0 0 0 1px rgba(0,0,0,.25);border-radius:14px;padding:15px 16px;width:100%;background:#fff;font-size:15px;text-align:center}
.ac-f input:focus{outline:0;box-shadow:0 0 0 1.6px #000}
.ac-f input[name=code]{letter-spacing:.5em;font-size:20px;font-family:var(--f-text);font-weight:500}
.ac-f input[name=code]::placeholder{letter-spacing:.04em;font-size:15px;font-weight:400}
.ac-alt{margin-top:14px;font-size:13px;color:var(--muted)}.ac-alt button{text-decoration:underline;color:var(--ink-2)}
.ac-msg{font-size:13.5px;color:#7a5414;margin-top:10px;min-height:1px}.ac-msg:empty{margin:0}
.ac-demo{margin-top:18px;font-size:12.5px;line-height:1.5;color:var(--ink-2);background:#fff8e8;border:1px dashed var(--gold-3);border-radius:12px;padding:10px 14px;text-align:left}
.ac-demo b{color:#000;font-weight:500;text-transform:uppercase;letter-spacing:.12em;font-size:11px}
.ac-perks{list-style:none;display:grid;gap:10px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line);text-align:left}
.ac-perks li{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--ink)}
.ac-perks svg,.ac-ha svg,.sc-f svg{width:20px;height:20px;flex:none;fill:none;stroke:var(--gold);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ac-h{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:10px}
.ac-h p{font-size:14.5px;color:var(--muted)}
.ac-ha{display:flex;gap:10px;flex-wrap:wrap}.ac-ha .btn{min-height:44px;padding:0 20px;font-size:14px;white-space:nowrap}
@media(max-width:400px){.ac-ha .btn{padding:0 12px;font-size:13.5px;gap:6px}}
.ac-in.wide>.ac-demo{margin:6px 0 0}
.ac-s{margin-top:clamp(32px,5vw,52px)}
.ac-s h2{font-family:var(--f-title);font-weight:400;font-size:clamp(22px,2.6vw,28px);letter-spacing:0;margin-bottom:16px}
.ac-empty{background:#fff;border-radius:20px;padding:28px;display:grid;justify-items:center;gap:12px;text-align:center;box-shadow:0 0 0 1px var(--line)}
.ac-empty p{max-width:460px;font-size:14.5px}
.sc-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));gap:18px}
.sc,.oc{background:#fff;border-radius:20px;padding:22px;box-shadow:0 0 0 1px var(--line),0 18px 40px -32px rgba(16,15,13,.35);display:grid;gap:16px;align-content:start}
.sc header,.oc header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sc-f{display:inline-flex;align-items:center;gap:6px;font-family:var(--f-text);font-size:13.5px;color:var(--ink);margin-left:auto}
.st{font-family:var(--f-text);font-size:11px;letter-spacing:.14em;text-transform:uppercase;border-radius:20px;padding:4px 11px;font-weight:500;line-height:1.4}
.st.on{background:#000;color:var(--gold-3)}.st.warn{background:#fff3dc;color:#7a5414}.st.off{background:#eee;color:#666}
.st.mid{background:var(--cream);color:#000}.st.sub{background:#fff;color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold-3)}
.ac-items{list-style:none;display:grid;gap:10px}
.ac-items li{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center}
.ac-items img{width:52px;height:52px;border-radius:12px;object-fit:cover;background:var(--soft)}
.ac-items b{display:block;font-family:var(--f-text);font-weight:500;font-size:14px;color:var(--ink);line-height:1.35}
.ac-items small{font-size:12.5px;color:var(--muted)}
.ac-items em{font-style:normal;font-size:13.5px;color:var(--ink-2)}
.sc-n{display:flex;justify-content:space-between;gap:16px;background:var(--cream);border-radius:14px;padding:14px 16px}
.sc-n small{display:block;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sc-n b{font-family:var(--f-text);font-weight:500;font-size:15.5px;color:#000}
.sc-n small.sk{text-transform:none;letter-spacing:0;font-size:12.5px;color:#7a5414;margin-top:2px}
.sc-p{text-align:right}
.sc-a{display:flex;gap:10px;flex-wrap:wrap}.sc-a .btn{min-height:44px;padding:0 22px;font-size:14px;flex:1 1 auto}
.sc-a .btn.danger{background:#9b2c2c;color:#fff;box-shadow:none}
.oc-l{display:grid;gap:14px}
.oc header>div{display:grid;line-height:1.3}
.oc header>div b{font-family:var(--f-text);font-weight:500;color:#000;font-size:15px}
.oc header>div small{font-size:12.5px;color:var(--muted)}
.oc header>div{margin-right:auto}
.oc-t{font-family:var(--f-text);font-weight:500;color:#000;font-size:15px;min-width:70px;text-align:right}
@media(max-width:560px){.ac-h{align-items:flex-start}.ac-ha{width:100%}.ac-ha .btn{flex:1}.sc,.oc{padding:18px}}

/* ---------- inicio: reels de Instagram (9:16) ---------- */
.igs{padding:clamp(48px,7vw,90px) 0}
.igs .lbl{display:block;margin-bottom:8px}
.reels{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:6px}
@media(max-width:1000px){.reels{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:42%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}.reels::-webkit-scrollbar{display:none}.reel{scroll-snap-align:start}}
@media(max-width:560px){.reels{grid-auto-columns:64%}}
.reel{position:relative;display:block;aspect-ratio:9/16;border-radius:18px;overflow:hidden;background:#111;box-shadow:0 18px 40px -26px rgba(0,0,0,.5)}
.reel img,.reel video{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--e)}
.reel:hover img,.reel:hover video{transform:scale(1.04)}
.reel::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.45))}
.reel .rp{position:absolute;z-index:2;left:12px;bottom:12px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.9);display:grid;place-items:center;transition:transform .25s}
.reel .rp svg{width:16px;height:16px;fill:#000;margin-left:2px}
.reel:hover .rp{transform:scale(1.1)}
.ig-btn{margin-top:26px}
.reel.ifr{background:#fff}
.reel.ifr::after{display:none}
.reel.ifr iframe{position:absolute;left:-1px;top:-56px;width:calc(100% + 2px);height:calc(100% + 240px);border:0}
.igs .ig-btn{position:static;transform:none;display:inline-flex}
.igs .ig-btn:hover{transform:translateY(-2px)}
.reel.sk{background:linear-gradient(100deg,#f1eeea 40%,#faf8f5 50%,#f1eeea 60%) 0 0/200% 100%;animation:sk 1.4s linear infinite;box-shadow:none}
.reel.sk::after{display:none}
@keyframes sk{to{background-position:-200% 0}}
.ig-empty{display:flex;align-items:center;justify-content:center;max-width:520px;margin:6px auto 0;aspect-ratio:3/1;border-radius:18px;background:#f4f1f1;font-family:var(--f-title);font-size:clamp(22px,2.6vw,30px);color:#000}
.ig-empty:hover{background:#ece7e1}
/* ficha: carrusel antes/después (sustituye a la franja de fotos) */
.res-pp{background:#f4f1f1;padding:clamp(40px,6vw,72px) 0}
.res-pp .res-car{margin-top:0}
/* la barra fija de compra no tapa el final de la página */
body.has-sbar{padding-bottom:84px}

/* ---------- botón del asistente: píldora con texto que se recoge a círculo ---------- */
.cb-btn{width:auto;min-width:60px;height:60px;padding:0 9px;border-radius:40px;display:flex;align-items:center;gap:0;border:1px solid rgba(202,174,105,.55);
  transition:transform .25s var(--e),box-shadow .25s,padding .45s var(--e)}
.cb-ic{position:relative;width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px}
.cb-btn svg{width:25px;height:25px;fill:none;stroke:#fff;stroke-width:1.5}
.cb-btn svg circle{fill:#fff;stroke:none;transition:fill .2s}
.cb-btn:hover svg circle{fill:var(--gold-3)}
.cb-dot{position:absolute;top:5px;right:4px;width:9px;height:9px;border-radius:50%;background:var(--gold-3);box-shadow:0 0 0 2px #000;animation:cbp 2.4s ease-in-out infinite}
@keyframes cbp{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
.cb-lbl{max-width:200px;overflow:hidden;white-space:nowrap;font-family:var(--f-text);font-weight:500;font-size:14.5px;color:#fff;padding-right:12px;transition:max-width .45s var(--e),opacity .3s,padding .45s}
.cb-btn.mini .cb-lbl{max-width:0;opacity:0;padding-right:0}
.cb-btn.mini:hover .cb-lbl{max-width:200px;opacity:1;padding-right:12px}
@media(max-width:749px){.cb-lbl{display:none}}
@media(prefers-reduced-motion:reduce){.cb-dot{animation:none}}

/* carrusel antes/después: espacio interior para que la sombra no se corte (el scroll recortaba) */
.res-track{padding:16px 18px 56px;margin:-16px -8px -40px;scroll-padding-left:18px}
.res-it .cmp{box-shadow:0 18px 36px -22px rgba(0,0,0,.38)}
.res-car .res-arr{position:relative;z-index:2}

.res-car.fits .res-arr{display:none}
.res-car.fits .res-it:first-child{margin-left:auto}.res-car.fits .res-it:last-child{margin-right:auto}

/* ficha: plazo de entrega estimado */
.dlv{margin-top:16px;border:1px solid var(--line);border-radius:16px;padding:16px 14px 14px;background:#fff}
.dlv-t{font-size:13.5px;text-align:center;margin-bottom:14px;color:var(--ink-2)}
.dlv-t b{color:#000;font-weight:600}
.dlv ol{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin:0;padding:0}
.dlv ol::before{content:"";position:absolute;top:19px;left:12.5%;right:12.5%;height:2px;background:repeating-linear-gradient(90deg,var(--gold-3) 0 6px,transparent 6px 11px)}
.dlv li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}
.dlv-i{width:40px;height:40px;border-radius:50%;background:#fff;border:1.5px solid var(--gold-3);display:grid;place-items:center;margin-bottom:4px;position:relative;z-index:1}
.dlv-i svg{width:19px;height:19px;fill:none;stroke:#000;stroke-width:1.5;stroke-linejoin:round}
.dlv li.on .dlv-i{background:#000;border-color:#000}
.dlv li.on .dlv-i svg{stroke:var(--gold-3)}
.dlv li b{font-size:12.5px;font-weight:600;color:#000}
.dlv li small{font-size:12px;color:var(--muted)}

/* ficha: la galería acompaña al bloque de compra al bajar (sin hueco blanco) */
@media(min-width:900px){
  .pdp{align-items:start}
  .pdp>.gal{position:sticky;top:110px}
}
/* miniaturas: sin barra de desplazamiento gris; se deslizan con el dedo o la rueda */
/* galería: foto grande 3:4 con flechas y contador; miniaturas en columna (escritorio) o fila (móvil) */
.gal .main{position:relative;aspect-ratio:3/4;background:#f5f3f0}
.gal .main img{width:100%;height:100%;object-fit:cover}
.gnav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.88);display:grid;place-items:center;box-shadow:0 2px 10px rgba(0,0,0,.08);opacity:0;transition:opacity .2s}
.gnav svg{width:18px;height:18px;fill:none;stroke:#000;stroke-width:1.6}
.gnav.prev{left:14px}.gnav.next{right:14px}
.gal .main:hover .gnav,.gnav:focus-visible{opacity:1}
@media(hover:none){.gnav{display:none}}
.gcount{position:absolute;bottom:14px;right:14px;background:rgba(255,255,255,.88);border-radius:20px;padding:4px 11px;font-size:12px;letter-spacing:.04em;color:#000}
.gal .th{scrollbar-width:none;gap:8px;margin-top:10px}
.gal .th::-webkit-scrollbar{display:none}
.gal .th button{flex:0 0 66px;height:88px;border-radius:8px;border:1px solid transparent;opacity:.5;transition:opacity .2s,border-color .2s;background:#f5f3f0}
.gal .th button.on{border-color:#000;opacity:1}
.gal .th button:hover{opacity:1}
@media(max-width:899px){.thnav{display:none}.gal .main{aspect-ratio:1/1}.gal .th button{flex-basis:54px;height:68px}}
@media(min-width:900px){
  /* la columna de miniaturas mide lo mismo que la foto grande y se desliza por dentro si hay muchas */
  .gal{padding-left:86px}
  .gal .th{position:absolute;top:0;bottom:0;left:0;width:72px;flex-direction:column;margin:0;overflow-y:auto;overflow-x:hidden}
  .thnav{display:grid;place-items:center;position:absolute;left:0;width:72px;height:44px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:1}
  .thnav svg{width:22px;height:22px;padding:3px;border-radius:50%;background:#fff;box-shadow:0 1px 6px rgba(0,0,0,.15);fill:none;stroke:#000;stroke-width:1.8}
  .thnav.up{top:0;background:linear-gradient(#fff,rgba(255,255,255,0))}
  .thnav.down{bottom:0;background:linear-gradient(rgba(255,255,255,0),#fff)}
  .gal.th-up .thnav.up,.gal.th-down .thnav.down{opacity:1;pointer-events:auto}
  .gal .th button{flex:0 0 96px;width:72px;height:96px}
}

.cb .qs{max-height:55%;overflow:auto;flex:none}

/* Estudios científicos (pestaña de la ficha) */
.pp-sty{padding:8px 0 40px}
.pp-sty h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(24px,3vw,34px);text-align:center;margin:0 0 28px}
.sty-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}
.sty-c{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid rgba(16,15,13,.1);border-radius:16px;padding:22px;min-width:0}
.sty-t{align-self:flex-start;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#8a6d33;background:rgba(202,174,105,.16);border-radius:99px;padding:5px 11px}
.sty-c h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:19px;line-height:1.3;margin:0}
.sty-c p{font-size:14px;line-height:1.6;color:#4a4740;margin:0;flex:1}
.sty-f{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;border-top:1px solid rgba(16,15,13,.08);padding-top:12px;font-size:12px;color:#6b675e}
.sty-f span{overflow-wrap:anywhere}
.sty-f a{display:inline-flex;align-items:center;gap:5px;color:#100F0D;font-weight:600;text-decoration:none;border-bottom:1px solid #CAAE69;white-space:nowrap}
.sty-f a:hover{color:#B08D57}
.sty-n{text-align:center;font-size:12px;color:#6b675e;margin:22px auto 0;max-width:640px}

/* ---------- ficha: «IDARIA vs otras marcas», rediseño acorde a la web ---------- */
.pp-vs{background:#f4f1f1;max-width:none;padding:clamp(48px,7vw,90px) 0}
.pp-vs-b{max-width:var(--max);margin:0 auto;padding:0 var(--gut);align-items:center}
.pp-vs-h p{font-family:var(--f-title);font-weight:400;font-size:clamp(30px,4vw,48px)!important;line-height:1.08;letter-spacing:-.015em;color:#000}
.pp-vs-h p+p{font-style:italic;color:var(--gold)}
.pp-vs-q{font-family:var(--f-text);font-style:normal;font-size:15px;color:var(--muted);margin-top:12px}
.pp-vs-q *{font-style:normal;font-weight:400}
.pp-vs-l{margin-top:28px!important;gap:14px!important}
.pp-vs-l li{font-size:15.5px!important;font-weight:400;gap:12px!important}
.pp-vs-l svg{flex:0 0 22px!important;height:22px!important}
.pp-vs-l svg *{stroke:var(--gold-3)!important}
.pp-vs-btn{max-width:none!important;width:auto!important;padding:0 34px!important;min-height:48px;font-size:15px!important;font-weight:500!important;letter-spacing:.02em;transition:transform .2s,background .2s}
.pp-vs-btn:hover{background:var(--gold-3);color:#000;transform:translateY(-2px)}
@media(min-width:1024px){.pp-vs-btn{margin-top:32px!important}}
@media(max-width:1023px){.pp-vs-btn.bot{display:flex;width:fit-content!important;max-width:calc(100% - 2*var(--gut))!important;margin-left:auto;margin-right:auto}}
/* tabla: tarjeta blanca redondeada, columna IDARIA en negro con ✓ dorado, otras marcas en gris con × suave */
.pp-vs-t{background:#fff;border-radius:22px;padding:8px;box-shadow:0 24px 60px -36px rgba(0,0,0,.35)}
.pp-vs-g{grid-template-columns:1.6fr 1fr 1fr}
.pp-vs-g>div{border:0!important;border-radius:0!important;padding:16px 14px!important}
.pp-vs-g+.pp-vs-g>div{border-top:1px solid var(--line)!important}
.pp-vs-g>div.on{background:#000;border-top-color:rgba(255,255,255,.12)!important}
.pp-vs-g.hd>div{padding:18px 14px!important}
.pp-vs-g.hd>div.on{border-radius:14px 14px 0 0!important}
.pp-vs-g:last-child>div.on{border-radius:0 0 14px 14px!important}
.pp-vs-g.hd h3{font-family:var(--f-title)!important;font-weight:400!important;font-size:19px!important;letter-spacing:.02em}
.pp-vs-g.hd>div:not(.on) h3{color:var(--muted)}
.pp-vs-g h3{font-size:14px!important;font-weight:400!important;line-height:1.45;color:var(--ink-2)}
.pp-vs-g span{width:22px;height:22px}
.pp-vs-g>div.on span svg *{stroke:var(--gold-3)!important;fill:none}
.pp-vs-g>div:not(.on) span svg *{stroke:#b9b4ad!important;fill:none}
.pp-vs-g>div:not(.on) span{opacity:.9}
@media(max-width:600px){.pp-vs-g{grid-template-columns:1.4fr .8fr .8fr}.pp-vs-g h3{font-size:12.5px!important}.pp-vs-g.hd h3{font-size:15px!important}}

/* comparativa: tabla más grande y protagonista */
@media(min-width:1024px){
  .pp-vs-b{grid-template-columns:.8fr 1.2fr!important;gap:56px!important}
  .pp-vs-t{padding:12px}
  .pp-vs-g>div{padding:22px 22px!important}
  .pp-vs-g.hd>div{padding:24px 22px!important}
  .pp-vs-g h3{font-size:16.5px!important}
  .pp-vs-g.hd h3{font-size:23px!important}
  .pp-vs-g span{width:28px;height:28px}
}
@media(min-width:750px) and (max-width:1023px){
  .pp-vs-t{width:100%;max-width:760px;margin:0 auto}
  .pp-vs-g>div{padding:18px!important}
  .pp-vs-g h3{font-size:15px!important}
  .pp-vs-g span{width:26px;height:26px}
}

/* ---------- ficha: beneficios clave en tarjetas ---------- */
.pp-ben ul{padding-top:20px!important;gap:16px!important}
.pp-ben li{position:relative;background:#f7f5f1;border:1px solid #ece7df;border-radius:18px;padding:22px 20px 20px!important;display:flex;flex-direction:column;gap:14px;min-height:132px;
  transition:transform .3s var(--e),box-shadow .3s,border-color .3s}
.pp-ben li:hover{transform:translateY(-3px);border-color:var(--gold-3);box-shadow:0 18px 36px -24px rgba(0,0,0,.35);background:#fff}
.pp-ben .bi{width:38px;height:38px;border-radius:50%;background:#000;display:grid;place-items:center;flex:none}
.pp-ben .bi svg{width:18px;height:18px;fill:none;stroke:var(--gold-3);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.pp-ben .bn{position:absolute;top:22px;right:20px;font-family:var(--f-title);font-size:15px;color:#c9c2b6}
.pp-ben h4{font-family:var(--f-text);font-weight:500!important;font-size:16px!important;line-height:1.35!important;color:#000;margin-top:auto}
@media(max-width:600px){.pp-ben li{min-height:118px;padding:18px 16px!important}.pp-ben h4{font-size:14.5px!important}}

/* ---------- ficha: resultados (línea de progreso) ---------- */
.pp-rs{background:#f4f1f1;padding:clamp(44px,6vw,80px) 0}
.pp-rs .pp-in{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.pp-rs h2{text-align:center;margin-bottom:clamp(30px,4vw,52px)}
.rs-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n),1fr);gap:20px;position:relative}
.rs-l::before{content:"";position:absolute;left:calc(50% / var(--n));right:calc(50% / var(--n));top:96px;height:2px;background:linear-gradient(90deg,#d9cfbd,var(--gold-3))}
.rs-l li{display:flex;flex-direction:column;align-items:center;text-align:center}
.rs-d{display:flex;flex-direction:column;align-items:center;line-height:1;height:78px;justify-content:flex-end}
.rs-d small{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.rs-d b{font-family:var(--f-title);font-weight:400;font-size:48px;color:#000}
.rs-dot{width:16px;height:16px;border-radius:50%;background:#000;box-shadow:0 0 0 5px #f4f1f1,0 0 0 6px var(--gold-3);margin:10px 0 22px;position:relative;z-index:1}
.rs-l li:last-child .rs-dot{background:var(--gold-3)}
.rs-card{background:#fff;border-radius:18px;padding:20px 18px;box-shadow:0 18px 40px -30px rgba(0,0,0,.35);width:100%;flex:1;transition:transform .3s var(--e)}
.rs-card:hover{transform:translateY(-3px)}
.rs-card p{font-size:14.5px;line-height:1.55;color:var(--ink-2);margin:0}
.rs-card b,.rs-card strong{color:#000;font-weight:600}
@media(max-width:860px){
  .rs-l{grid-template-columns:1fr;gap:0;padding-left:8px}
  .rs-l::before{left:44px;right:auto;top:20px;bottom:20px;width:2px;height:auto;background:linear-gradient(180deg,#d9cfbd,var(--gold-3))}
  .rs-l li{display:grid;grid-template-columns:72px 1fr;grid-template-rows:auto;align-items:start;text-align:left;padding:0 0 18px}
  .rs-d{height:auto;grid-row:1;grid-column:1;align-items:center;background:#f4f1f1;position:relative;z-index:1;padding:4px 0}
  .rs-d b{font-size:36px}
  .rs-dot{display:none}
  .rs-card{grid-column:2}
}

/* beneficios: tarjeta compacta, tick al lado del texto */
.pp-ben li{flex-direction:row!important;align-items:center;gap:14px!important;min-height:0!important;padding:18px 18px!important}
.pp-ben .bi{width:32px;height:32px}
.pp-ben .bi svg{width:15px;height:15px}
.pp-ben h4{margin-top:0!important}
@media(max-width:600px){.pp-ben li{padding:14px!important;gap:10px!important}.pp-ben .bi{width:28px;height:28px}}

/* resultados: sin fondo, como beneficios; las tarjetas pasan a crema con borde fino */
.pp-rs{background:transparent}
.rs-dot{box-shadow:0 0 0 5px #fff,0 0 0 6px var(--gold-3)}
.rs-card{background:#f7f5f1;border:1px solid #ece7df;box-shadow:none}
.rs-card:hover{background:#fff;border-color:var(--gold-3);box-shadow:0 18px 36px -24px rgba(0,0,0,.35)}
@media(max-width:860px){.rs-d{background:#fff}}

/* resultados: título en la misma posición y tamaño que «Beneficios clave» al cambiar de pestaña */
.pp-rs{padding:30px 0 clamp(40px,5vw,64px)}
.pp-rs h2{font-size:30px!important;line-height:1.3!important;margin-bottom:20px!important}
@media(min-width:750px){.pp-rs h2{font-size:44px!important}}
.pp-rs .rs-l{padding-top:16px}

/* «Descubre el producto»: todas las pestañas empiezan igual (título a la misma altura y del mismo tamaño) */
.pt-p>:first-child{padding-top:30px!important;margin-top:0!important}
.pt-p>:first-child h2,.pt-p>h2:first-child{margin-top:0!important}
.pt-p h2{font-family:var(--f-title)!important;font-weight:400!important;font-size:30px!important;line-height:1.3!important;text-align:center}
@media(min-width:750px){.pt-p h2{font-size:44px!important}}

/* ---------- ficha: fórmula, piel y aroma (3 tarjetas iguales, sin fondo, como beneficios y resultados) ---------- */
.pp-bento{background:transparent;padding:16px 0 clamp(40px,5vw,64px)}
.pp-bento .pp-in{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.pp-bg{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;align-items:stretch!important}
.pp-bc,.pp-bc.wide{grid-column:auto!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:0!important;background:#f7f5f1;border:1px solid #ece7df;border-radius:20px;
  transition:transform .3s var(--e),box-shadow .3s,border-color .3s}
.pp-bc:hover{transform:translateY(-3px);border-color:var(--gold-3);box-shadow:0 18px 36px -24px rgba(0,0,0,.35);background:#fff}
.pp-bc>*{flex:none!important;width:100%}
.pp-bc-img,.pp-bc.wide .pp-bc-img{order:-1!important;border-radius:0!important}
.pp-bc-img img{aspect-ratio:4/3!important}
.pp-bc-t{padding:22px 22px 24px}
.pp-bc-h{font-size:12px!important;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)!important;line-height:1.4!important}
.pp-bc-h strong{font-weight:500}
.pp-bc-x{margin-top:10px!important}
.pp-bc-x p{font-size:14.5px!important;line-height:1.65!important;color:var(--ink-2)!important}
@media(max-width:860px){.pp-bg{grid-template-columns:1fr!important}.pp-bc-img img{aspect-ratio:16/9!important}}

/* ---------- ficha: pureza, ingredientes, modo de empleo y estudios (mismo lenguaje que beneficios) ---------- */
.pt-p .pp-ico,.pt-p .pp-acc,.pt-p .pp-ing,.pt-p .pp-st,.pt-p .pp-sty,.pt-p .pp-h{background:transparent!important}
/* pureza: iconos en losetas crema */
.pp-ico ul{max-width:var(--max)!important;padding:16px var(--gut) 8px!important;display:flex!important;flex-wrap:wrap;justify-content:center;gap:14px!important}
.pp-ico li{width:calc((100% - 28px)/3);max-width:150px;background:#f7f5f1;border:1px solid #ece7df;border-radius:18px;padding:16px;display:flex;align-items:center;justify-content:center;transition:transform .3s var(--e),border-color .3s,box-shadow .3s,background .3s}
.pp-ico li:hover{transform:translateY(-3px);background:#fff;border-color:var(--gold-3);box-shadow:0 18px 36px -24px rgba(0,0,0,.35)}
.pp-ico img{width:100%;max-width:96px}
@media(min-width:750px){.pp-ico ul{gap:18px!important}.pp-ico li{width:150px;padding:20px}}
/* pureza: acordeón en filas limpias con +/− */
.pp-acc{max-width:820px!important;padding:24px var(--gut) clamp(40px,5vw,64px)!important}
.pp-acc .acc{border-top:1px solid #ece7df}
.pp-acc .acc details{border-bottom:1px solid #ece7df}
.pp-acc summary{padding:20px 4px!important}
.pp-acc summary h3{font-family:var(--f-text)!important;font-weight:500!important;font-size:16px!important;color:#000}
.pp-acc summary::after{content:"+"!important;width:28px!important;height:28px!important;border:1px solid #ece7df!important;border-radius:50%;background:#f7f5f1;transform:none!important;display:flex;align-items:center;justify-content:center;font-size:17px;line-height:1;color:var(--gold);transition:background .3s,border-color .3s}
.pp-acc details[open] summary::after{content:"\2212"!important;background:#000;border-color:#000!important;color:var(--gold-3)}
.pp-acc summary:hover::after{border-color:var(--gold-3)!important}
.pp-acc .in{padding:0 4px 20px!important}
.pp-acc .in,.pp-acc .in p,.pp-acc .in li{font-family:var(--f-text);font-size:15px;line-height:1.65;color:var(--ink-2)}
/* ingredientes */
.pp-ing{max-width:var(--max)!important;padding:30px var(--gut) clamp(40px,5vw,64px)!important}
.pp-ing-b{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
.pp-ing h2{text-align:center!important}
.pp-ing-x{text-align:center!important;max-width:760px;margin-left:auto;margin-right:auto}
.pp-ing-x.top{display:block!important;margin-top:14px}.pp-ing-x.bot{display:none!important}
.pp-ing-x p{font-family:var(--f-text);font-size:15.5px!important;line-height:1.65!important;color:var(--ink-2)!important}
.pp-ing-ch{justify-content:center!important;gap:10px!important;margin-top:22px!important}
.pp-ing-ch button{background:#f7f5f1!important;border:1px solid #ece7df!important;color:#000!important;font-family:var(--f-text);font-size:14px!important;letter-spacing:.02em!important;padding:10px 18px!important;transition:border-color .3s,background .3s}
.pp-ing-ch button:hover{border-color:var(--gold-3)!important}
.pp-ing-ch button.on{background:#000!important;border-color:#000!important;color:#fff!important}
.pp-ing-card{background:#f7f5f1!important;border:1px solid #ece7df!important;border-radius:20px!important;padding:22px!important;transition:transform .3s var(--e),border-color .3s,box-shadow .3s,background .3s}
.pp-ing-card:hover{transform:translateY(-3px);background:#fff!important;border-color:var(--gold-3)!important;box-shadow:0 18px 36px -24px rgba(0,0,0,.35)}
.pp-ing-card.on{display:grid!important;grid-template-columns:1fr;gap:16px;align-items:center}
.pp-ing-card h3{font-family:var(--f-title)!important;font-weight:400;font-size:26px!important;text-align:center}
.pp-ing-tx{margin-top:0!important;text-align:center}
.pp-ing-tx p{font-family:var(--f-text);font-size:14.5px!important;line-height:1.65!important;color:var(--ink-2)!important}
.pp-ing-img{order:-1;margin:0 auto!important;max-width:220px!important;border:0!important;border-radius:18px!important;box-shadow:0 0 0 1px #ece7df}
.pp-ing-nav{margin-top:20px!important;gap:24px!important;position:static!important}
.pp-ing-nav button{display:flex!important;width:42px!important;height:42px!important;background:#000!important;transition:transform .3s}
.pp-ing-nav button:hover{transform:scale(1.06)}
.pp-ing-nav svg{fill:var(--gold-3)!important;width:18px!important;height:18px!important}
.pp-ing-nav .dots{display:flex!important;gap:8px}
.pp-ing-nav .dots i{background:var(--gold-3)!important;opacity:.35}
.pp-ing-nav .dots i.on{opacity:1;width:22px;border-radius:99px}
@media(min-width:750px){
  .pp-ing-card.on{grid-template-columns:minmax(0,320px) 1fr;grid-template-rows:auto 1fr;gap:12px 36px;padding:32px!important;text-align:left}
  .pp-ing-img{grid-row:1/3;max-width:none!important;width:100%}
  .pp-ing-card h3,.pp-ing-tx{text-align:left!important;align-self:end}
  .pp-ing-tx{align-self:start}
  .pp-ing-card h3{font-size:34px!important}
}
/* modo de empleo: 3 tarjetas con número dorado sobre círculo negro */
.pp-st .pp-in{max-width:var(--max)!important;margin:0 auto;padding:30px var(--gut) clamp(40px,5vw,64px)!important}
.pp-st h2{margin-bottom:28px!important}
.pp-st ul{counter-reset:st;grid-auto-columns:82%!important;padding-bottom:6px}
.pp-st li{counter-increment:st;background:#f7f5f1!important;border:1px solid #ece7df;border-radius:20px!important;padding:26px 22px!important;display:flex;flex-direction:column;gap:10px;transition:transform .3s var(--e),border-color .3s,box-shadow .3s,background .3s}
.pp-st li:hover{transform:translateY(-3px);background:#fff!important;border-color:var(--gold-3);box-shadow:0 18px 36px -24px rgba(0,0,0,.35)}
.pp-st li::before{content:counter(st);width:48px;height:48px;border-radius:50%;background:#000;color:var(--gold-3);font-family:var(--f-title);font-size:22px;display:flex;align-items:center;justify-content:center;margin-bottom:6px}
.pp-st h3{font-family:var(--f-text)!important;font-size:12px!important;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)!important;font-weight:500!important;line-height:1.4!important}
.pp-st li p{font-family:var(--f-text);font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(min-width:750px){.pp-st ul{grid-auto-columns:auto!important;gap:20px!important}}
/* estudios */
.pp-sty{padding:30px 0 clamp(40px,5vw,64px)!important}
.pp-sty .pp-in{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.pp-sty h2{margin-bottom:28px!important}
.sty-g{gap:20px!important}
.sty-c{background:#f7f5f1!important;border:1px solid #ece7df!important;border-radius:20px!important;padding:24px!important;transition:transform .3s var(--e),border-color .3s,box-shadow .3s,background .3s}
.sty-c:hover{transform:translateY(-3px);background:#fff!important;border-color:var(--gold-3)!important;box-shadow:0 18px 36px -24px rgba(0,0,0,.35)}
.sty-t{background:transparent!important;padding:0!important;font-size:12px!important;letter-spacing:.24em!important;color:var(--gold)!important;font-weight:500!important}
.sty-c h3{font-size:21px!important;color:#000}
.sty-c p{font-family:var(--f-text);font-size:14.5px!important;line-height:1.65!important;color:var(--ink-2)!important}
.sty-f{border-top-color:#ece7df!important}
.pp-st li>h3{display:none}
.pp-st li p strong{color:#000;font-weight:600}

.pt-p>.pp-st>.pp-in{padding-top:0!important}

/* ficha: «Completa tu rutina» */
.pp-rel .rel-h{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 24px;flex-wrap:wrap;margin-bottom:22px}
.pp-rel .rel-h .lbl{display:block;margin-bottom:6px}
.pp-rel .rel-h h2{margin:0}
.rel-pk{font-size:14px;color:var(--ink-2);border-bottom:1px solid var(--gold-3);padding-bottom:3px;transition:color .2s}
.rel-pk b{color:#000;font-weight:600}
.rel-pk:hover{color:#000}

/* ============================================================
   BOTONES: sistema unificado
   primario = pill negra; secundario = contorno; icono = circulo 42px
   ============================================================ */
.btn, #addBtn, #sbAdd, .pp-vs-btn { font-family: Inter, sans-serif; font-weight: 500; font-size: 15px; letter-spacing: .01em; text-transform: none; border-radius: 41px; min-height: 46px; display: inline-flex; align-items: center; justify-content: center; transition: background .2s, color .2s, border-color .2s, transform .2s; }
.btn:not(.ghost):not(.line):not(.out), .pp-vs-btn { background: #000; color: #fff; border: 1px solid #000; }
.btn:not(.ghost):not(.line):not(.out):hover, .pp-vs-btn:hover { background: #caae69; border-color: #caae69; color: #000; transform: translateY(-2px); }
.btn.ghost, .btn.line, .btn.out { background: transparent; color: #000; border: 1px solid #000; }
.btn.ghost:hover, .btn.line:hover, .btn.out:hover { background: #000; color: #fff; }
.pkb { border-radius: 41px; font-family: Inter, sans-serif; font-weight: 500; }
button:focus-visible, a:focus-visible, [role="button"]:focus-visible, select:focus-visible { outline: 2px solid var(--gold-3, #caae69); outline-offset: 3px; }
.btn:disabled, .btn[aria-disabled="true"], button:disabled { opacity: .45; cursor: not-allowed; transform: none !important; }

/* ============================================================
   BOTONES: correcciones tras el sistema unificado
   (la regla .btn:not(.ghost)... pisaba variantes claras/doradas)
   ============================================================ */
.btn.light:not(.ghost):not(.line):not(.out){background:#fff;color:#000;border-color:#fff}
.btn.light:not(.ghost):not(.line):not(.out):hover{background:#caae69;border-color:#caae69;color:#000}
/* Diagnostico (teaser oscuro en home): boton dorado */
.diag .btn:not(.ghost):not(.line):not(.out){background:var(--gold-2,#caae69);border-color:var(--gold-2,#caae69);color:#100F0D}
.diag .btn:not(.ghost):not(.line):not(.out):hover{background:#fff;border-color:#fff;color:#000}
/* Cuenta: accion destructiva como contorno con texto rojo sutil al pasar */
.sc-a .btn.danger:not(.ghost):not(.line):not(.out){background:transparent;color:#000;border:1px solid #000}
.sc-a .btn.danger:not(.ghost):not(.line):not(.out):hover{background:transparent;color:#9b2c2c;border-color:#9b2c2c}
/* Hero: conservar el centrado al pasar (translateY borraba translateX) */
.hero-btn.btn:not(.ghost):not(.line):not(.out):not(.ig-btn):hover{transform:translateX(-50%) translateY(-2px)}
.igs .ig-btn.btn:not(.ghost):not(.line):not(.out):hover{transform:translateY(-2px)}
@media(prefers-reduced-motion:reduce){.btn:hover{transform:none!important}.hero-btn.btn:not(.ig-btn):hover{transform:translateX(-50%)!important}}

/* ============================================================
   MENU «Productos»: solo hover o foco de teclado; cierre tras clic
   ============================================================ */
.dd:focus-within .menu{opacity:0;visibility:hidden;transform:translateY(6px)}
.dd:hover .menu,.dd:has(:focus-visible) .menu{opacity:1;visibility:visible;transform:none}
.dd.shut .menu,.dd.shut:hover .menu{opacity:0!important;visibility:hidden!important;pointer-events:none}

/* ============================================================
   HOME: «Porque todo son beneficios» (rediseno)
   ============================================================ */
.fx15{padding:64px 16px}
.fx-in{max-width:1180px;margin:0 auto}
.fx-h{font-family:"Playfair Display",serif;font-weight:400;text-align:center;font-size:clamp(30px,4vw,46px);line-height:1.2;letter-spacing:0;margin:0 0 28px}
.fx-h em{font-style:italic;color:var(--gold)}
.fx-tabs{display:flex;gap:4px;width:max-content;max-width:100%;margin:0 auto;background:#f4f1f1;border-radius:41px;padding:5px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.fx-tabs::-webkit-scrollbar{display:none}
.fx-tabs button{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;background:transparent;color:#1a1a1a;border-radius:41px;padding:10px 18px;min-height:42px;font-family:Inter,sans-serif;font-weight:500;font-size:14px;white-space:nowrap;transition:background .25s,color .25s}
.fx-tabs button.on{background:#000;color:#fff}
.fx-tabs button:not(.on):hover{background:#fff;color:#000}
.fx-tabs svg{flex:0 0 20px;width:20px;height:20px;fill:var(--gold-3,#caae69)}
.fx-tabs span{display:inline;font-size:14px;font-weight:500;line-height:1;letter-spacing:0}
.fx-stage{position:relative;margin-top:44px;display:block}
.fx-sl{display:grid;grid-template-columns:1fr;gap:28px;align-items:center;opacity:0;transform:translateY(10px);visibility:visible;transition:opacity .4s ease,transform .4s ease}
.fx-sl[hidden]{display:none}
.fx-sl.on{opacity:1;transform:none}
.fx-txt{text-align:left;max-width:520px}
.fx-n{display:block;font-family:Inter,sans-serif;font-size:13px;font-weight:500;letter-spacing:.12em;color:var(--gold);margin-bottom:14px}
.fx-txt h3{font-family:"Playfair Display",serif;font-weight:400;font-size:clamp(26px,2.6vw,32px);line-height:1.25;margin:0 0 18px;letter-spacing:0}
.fx-txt p{font-family:Inter,sans-serif;font-size:16px;line-height:1.7;color:var(--ink-2);margin:0;letter-spacing:0}
.fx-img{margin:0;border-radius:22px;overflow:hidden;aspect-ratio:1/1}
.fx-img img{width:100%;height:100%;object-fit:cover;display:block}
@media(min-width:900px){
  .fx15{padding:96px 40px}
  .fx-sl{grid-template-columns:1fr 1fr;gap:72px}
  .fx-txt{padding-left:24px}
  .fx-img{aspect-ratio:4/5;max-height:620px}
}
@media(max-width:899px){.fx-tabs{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.fx-sl{transition:none;transform:none}}

/* ============================================================
   HOME: franja negra de mensajes (marquee)
   ============================================================ */
.marq{padding:14px 0;background:#000;color:#fff}
@media(min-width:1024px){.marq{padding:14px 0}}
.marq .t{display:flex;width:max-content;animation:mq 52s linear infinite}
.marq .mq-g{display:flex;flex-shrink:0}
.marq:hover .t{animation-play-state:paused}
.marq .mi{display:flex;align-items:center;margin:0;flex-shrink:0}
.marq .mi span{font-family:"Playfair Display",serif;font-style:italic;font-weight:400;font-size:22px;line-height:1.3;letter-spacing:normal;margin:0 28px;color:#fff}
.marq .mq-s{width:12px;height:12px;fill:#CAAE69;flex:0 0 12px}
@media(max-width:749px){.marq .mi span{font-size:18px;margin:0 20px}}
@media(prefers-reduced-motion:reduce){.marq .t{animation:none}.marq{overflow-x:auto;scrollbar-width:none}}
/* beneficios: subtitulo en Playfair (h3 global fuerza Inter con !important) */
.fx15 .fx-txt h3{font-family:"Playfair Display",serif!important;font-weight:400!important}
/* beneficios: refuerzo de especificidad (pisaba estilos antiguos de .fx-tabs/.fx-txt) */
.fx15{padding-top:72px!important;padding-bottom:72px!important}
.fx15 .fx-h{display:block;text-align:center!important;margin:0 auto 32px!important;width:100%}
.fx15 .fx-tabs{display:flex!important;background:#f4f1f1!important;border-radius:41px!important;padding:5px!important;gap:4px;overflow-x:auto!important}
.fx15 .fx-tabs button{background:transparent!important;color:#1a1a1a!important;border-radius:41px!important}
.fx15 .fx-tabs button.on{background:#000!important;color:#fff!important}
.fx15 .fx-tabs button:not(.on):hover{background:#fff!important;color:#000!important}
.fx15 .fx-tabs svg{fill:#CAAE69!important}
.fx15 .fx-n{color:#b8964f!important;text-transform:uppercase;font-size:12px!important;font-weight:600!important;letter-spacing:.18em!important}
.fx15 .fx-txt h3{font-family:"Playfair Display",serif!important;font-weight:400!important}
@media(max-width:899px){.fx15{padding-top:56px!important;padding-bottom:56px!important}.fx15 .fx-h{margin-bottom:28px!important}}
/* marquee: refuerzo (fila unica, sin herencias antiguas) */
.marq{display:block!important;overflow:hidden!important;white-space:nowrap!important;padding:14px 0!important;height:auto!important;background:#000!important}
.marq .t,.marq .mq-g{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:0!important;height:auto!important}
.marq .t{width:max-content!important}
.marq .mi{display:inline-flex!important;flex-direction:row!important;align-items:center!important;height:auto!important;margin:0!important}
.marq .mi span{font-family:"Playfair Display",serif!important;font-style:italic!important;font-weight:400!important;line-height:1.3!important}
.marq svg.mq-s{display:block!important;width:12px!important;height:12px!important;fill:#CAAE69!important}

/* beneficios (inicio): imagen cuadrada y más contenida, centrada con el texto */
@media(min-width:900px){
  .fx15 .fx-sl{align-items:center!important}
  .fx15 .fx-img{aspect-ratio:1/1!important;max-width:520px!important;width:100%!important;justify-self:center!important;margin-left:auto!important}
}
.fx15 .fx-img img{width:100%!important;height:100%!important;object-fit:cover!important}

/* ===== Home: sellos "Pureza Botánica Certificada" (SVG + etiqueta) ===== */
.seals{padding:40px 0 32px;text-align:center}
.seals h2{font-size:30px;line-height:1.25}
.seals-sub{margin:10px auto 0;max-width:520px;color:#6b6b6b;font-size:15px;line-height:1.5}
.sl-g{list-style:none;margin:26px auto 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px 12px;max-width:1080px}
.sl{display:flex;flex-direction:column;align-items:center;gap:10px}
.sl-t{width:72px;height:72px;border-radius:18px;background:#f7f5f1;border:1px solid #ece7df;display:grid;place-items:center;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s}
.sl:hover .sl-t{transform:translateY(-3px);background:#fff;border-color:var(--gold-3);box-shadow:0 8px 22px rgba(0,0,0,.06)}
.sl-t svg{width:34px;height:34px;fill:none;stroke:#CAAE69;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.sl-eco img{height:64px;width:auto;max-width:64px;object-fit:contain;filter:grayscale(1)}
.sl-n{font-family:Inter,sans-serif;font-weight:500;font-size:13px;line-height:1.3;color:#111}
@media(min-width:750px){.seals h2{font-size:44px}.sl-t{width:84px;height:84px}}
@media(min-width:990px){.sl-g{grid-template-columns:repeat(6,1fr)}}

/* ===== Home: prensa sobre ingredientes (tarjetas crema) ===== */
.press2{padding:36px 0 48px;background:#fff;text-align:center}
.press2 h2{font-size:28px;line-height:1.25}
.press2-v{margin-top:24px;padding:0 var(--gut);display:flex;justify-content:center}
.press2-v.loop{display:block;padding:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.press2-v.loop::-webkit-scrollbar{display:none}
.press2-t{display:flex;gap:20px}
.press2-v.loop .press2-t{width:max-content;animation:mq 60s linear infinite}
.press2-v.loop:hover .press2-t,.press2-v.loop:focus-within .press2-t{animation-play-state:paused}
.pq2{flex:none;width:min(420px,100%);margin:0;padding:24px;text-align:left;background:#f7f5f1;border:1px solid #ece7df;border-radius:20px;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s}
.press2-v.loop .pq2{width:min(420px,82vw)}
.pq2:hover{transform:translateY(-3px);background:#fff;border-color:var(--gold-3);box-shadow:0 8px 22px rgba(0,0,0,.06)}
.pq2-l{display:block;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:600}
.pq2 blockquote{margin:12px 0 0;font-family:"Playfair Display",serif;font-style:italic;font-size:18px;line-height:1.45;color:#111}
.pq2 figcaption{margin-top:14px;font-size:13px;color:#6b6b6b}
.pq2 figcaption a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(min-width:750px){.press2 h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){.press2-v.loop .press2-t{animation:none}}

/* ---------- inicio: banda de prensa (estilo original adaptado a la marca) ---------- */
.press3{background:#000;padding:clamp(48px,6vw,80px) 0;overflow:hidden}
.press3 .wrap{text-align:center;margin-bottom:clamp(26px,3.5vw,40px)}
.press3 .lbl{display:block;margin-bottom:10px;color:var(--gold-3)}
.press3 h2{color:#fff;margin:0}
.press3 h2 em{color:var(--gold-3)}
.press3-v{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.press3-t{display:flex;gap:22px;width:max-content;animation:p3 70s linear infinite;padding:6px 0}
.press3-v:hover .press3-t{animation-play-state:paused}
@keyframes p3{to{transform:translateX(-50%)}}
.pq3{display:flex;align-items:center;gap:22px;width:min(560px,84vw);flex:none;margin:0;padding:24px 26px;border:1px solid rgba(202,174,105,.35);border-radius:20px;background:#0d0d0d;transition:border-color .3s}
.pq3:hover{border-color:var(--gold-3)}
.pq3-i{flex:0 0 96px;height:96px;border-radius:50%;background:#fff;display:grid;place-items:center;overflow:hidden}
.pq3-i img{width:100%;height:100%;object-fit:contain}
.pq3-b{min-width:0}
.pq3-l{display:block;font-family:var(--f-text);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-3);margin-bottom:8px}
.pq3 blockquote{margin:0;font-family:var(--f-title);font-style:italic;font-size:16.5px;line-height:1.5;color:rgba(255,255,255,.88);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.pq3 figcaption{margin-top:10px;font-family:var(--f-text);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.pq3 figcaption a{color:inherit;text-decoration:underline;text-decoration-color:var(--gold-3);text-underline-offset:3px}
@media(max-width:600px){.pq3{gap:14px;padding:18px}.pq3-i{flex-basis:64px;height:64px}.pq3 blockquote{font-size:15px}}
@media(prefers-reduced-motion:reduce){.press3-t{animation:none}.press3-v{overflow-x:auto}}

.press3-orn{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px}.press3-orn i{display:block;width:64px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-3))}.press3-orn i:last-child{background:linear-gradient(90deg,var(--gold-3),transparent)}.press3-orn svg{width:14px;height:14px;fill:var(--gold-3)}

.press3-st{display:flex;gap:6px}.press3-st svg{width:18px;height:18px;fill:var(--gold-3)}

.sl-eco img{filter:brightness(0) saturate(100%) invert(74%) sepia(29%) saturate(589%) hue-rotate(5deg) brightness(92%) contrast(88%)!important}
@media(min-width:750px){.sl-g{grid-template-columns:repeat(5,1fr)!important;gap:28px 16px!important}}
@media(max-width:479px){.sl-g{grid-template-columns:repeat(2,1fr)!important}}

/* ---------- inicio: sellos con más presencia (banda negra, aros dorados) ---------- */
.seals{background:radial-gradient(120% 90% at 50% 0%,#1c1914 0%,#000 62%);padding:clamp(60px,8vw,104px) 0!important;color:#fff}
.seals .lbl{display:block;color:var(--gold-3);margin-bottom:12px}
.seals h2{color:#fff!important;font-size:clamp(32px,4.6vw,56px)!important;line-height:1.1!important}
.seals h2 em{color:var(--gold-3)}
.seals-sub{color:rgba(255,255,255,.62)!important;font-size:16px!important;max-width:560px!important;margin-top:14px!important}
.sl-g{margin-top:clamp(36px,5vw,60px)!important;gap:clamp(30px,4vw,48px) 16px!important;max-width:1180px!important}
.sl{gap:16px!important}
.sl-t{width:108px!important;height:108px!important;border-radius:50%!important;background:rgba(202,174,105,.06)!important;border:1px solid rgba(202,174,105,.55)!important;position:relative}
.sl-t::after{content:"";position:absolute;inset:7px;border-radius:50%;border:1px solid rgba(202,174,105,.18)}
.sl:hover .sl-t{background:rgba(202,174,105,.14)!important;border-color:var(--gold-3)!important;box-shadow:0 0 0 6px rgba(202,174,105,.08),0 16px 40px -18px rgba(202,174,105,.5)!important;transform:translateY(-4px)!important}
.sl-t svg{width:44px!important;height:44px!important;stroke-width:1.25!important}
.sl-eco img{height:62px!important;max-width:74px!important}
.sl-n{color:#fff!important;font-size:12.5px!important;letter-spacing:.16em;text-transform:uppercase;font-weight:500!important;max-width:170px}
@media(max-width:749px){.sl-t{width:88px!important;height:88px!important}.sl-t svg{width:36px!important;height:36px!important}.sl-n{font-size:11.5px!important;letter-spacing:.1em}}

.seals+.press3{border-top:1px solid rgba(202,174,105,.22)}
.marq+.seals{border-top:1px solid rgba(202,174,105,.22)}

/* sellos: versión compacta sobre blanco (se mantienen los aros dorados) */
.seals{background:#fff!important;color:inherit;padding:44px 0 40px!important}
.marq+.seals,.seals+.press3{border-top:0!important}
.seals h2{color:#000!important;font-size:30px!important;line-height:1.25!important}
@media(min-width:750px){.seals h2{font-size:44px!important}}
.seals-sub{color:#6b6b6b!important;font-size:15px!important;margin-top:8px!important}
.sl-g{margin-top:28px!important;gap:24px 12px!important;max-width:1080px!important}
.sl{gap:10px!important}
.sl-t{width:78px!important;height:78px!important;background:#fbf9f5!important;border:1px solid rgba(202,174,105,.6)!important}
.sl-t::after{inset:5px!important;border-color:rgba(202,174,105,.22)!important}
.sl:hover .sl-t{background:#fff!important;box-shadow:0 0 0 5px rgba(202,174,105,.1),0 12px 28px -16px rgba(202,174,105,.55)!important}
.sl-t svg{width:32px!important;height:32px!important}
.sl-eco img{height:46px!important;max-width:56px!important}
.sl-n{color:#111!important;font-size:11.5px!important;letter-spacing:.12em}
@media(max-width:749px){.sl-t{width:70px!important;height:70px!important}.sl-t svg{width:28px!important;height:28px!important}}

/* ===== Árabe (العربية) y RTL =====
   Tipografías árabes (se cargan solo con LANG=ar desde app.js), sin letter-spacing ni mayúsculas
   (rompen la unión de letras árabes) y ajustes de dirección para html[dir=rtl]. */
html[lang=ar]{--f-title:'Noto Naskh Arabic','Playfair Display',Georgia,serif;--f-text:'IBM Plex Sans Arabic','Inter',system-ui,sans-serif}
html[lang=ar] body{font-family:var(--f-text)}
html[lang=ar] .serif,html[lang=ar] .pp-sty h2,html[lang=ar] .sty-c h3{font-family:var(--f-title)!important}
html[lang=ar] *,html[lang=ar] *::before,html[lang=ar] *::after{letter-spacing:0!important;text-transform:none!important}
html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] .serif{line-height:1.45}
html[lang=ar] body{line-height:1.85}
html[lang=ar] em{font-style:normal}
/* Cabecera y menús */
[dir=rtl] .dd .menu{left:auto;right:-18px}
[dir=rtl] .mnav{transform:translateX(100%)}
[dir=rtl] .mnav.open{transform:none}
[dir=rtl] .mnav .sub a{padding:8px 16px 8px 0}
/* Carrito lateral desde la izquierda */
[dir=rtl] .drawer{right:auto;left:0;transform:translateX(-100%)}
[dir=rtl] .drawer.open{transform:none}
/* Asistente a la izquierda */
[dir=rtl] .cb-btn{right:auto;left:18px}
[dir=rtl] .cb{right:auto;left:18px}
[dir=rtl] .cb header button{margin-left:0;margin-right:auto}
[dir=rtl] .cb .qs button{text-align:right}
[dir=rtl] .cb-btn.mini .cb-lbl{padding-left:0}
/* Comparador antes/después: mecánica en LTR, «قبل» a la derecha (lectura árabe) */
[dir=rtl] .cmp{direction:ltr}
[dir=rtl] .cmp .a{clip-path:inset(0 0 0 var(--p))}
[dir=rtl] .cmp .tg.l{left:auto;right:14px}
[dir=rtl] .cmp .tg.r{right:auto;left:14px}
/* Flechas y chevrons con sentido */
[dir=rtl] .res-arr,[dir=rtl] [data-sd]{transform:scaleX(-1)}
/* Cintas animadas (marquee/prensa): pista en LTR, sentido invertido */
[dir=rtl] .marq .t,[dir=rtl] .press .t,[dir=rtl] .press2-t,[dir=rtl] .mq-g{direction:ltr}
[dir=rtl] .marq .t,[dir=rtl] .press .t,[dir=rtl] .press2-v.loop .press2-t{animation-direction:reverse}
/* Campos trampa anti-spam: fuera de pantalla por la derecha (en RTL la izquierda genera scroll) */
[dir=rtl] input[name=website]{left:auto!important;right:-9999px!important}
[dir=rtl] .bo-p,[dir=rtl] .oc-t{text-align:left}
[dir=rtl] .sc-f{margin-left:0;margin-right:auto}
[dir=rtl] .pp-ben .bn{right:auto;left:20px}
/* RTL: selectores con flecha a la izquierda, filtros y chevrons de enlaces */
[dir=rtl] .loc select,[dir=rtl] .ft-loc select{background-position:left 8px center;padding:8px 10px 8px 26px}
[dir=rtl] .loc select{padding:6px 12px 6px 26px}
[dir=rtl] .srt select{padding:0 16px 0 38px}
[dir=rtl] .srt .chev{right:auto;left:17px}
[dir=rtl] .fm{left:auto;right:0}
[dir=rtl] .fright{margin-left:0;margin-right:auto}
[dir=rtl] .ftag{padding:6px 14px 6px 12px}
[dir=rtl] .up-pk i{display:inline-block;transform:scaleX(-1)}
html[lang=ar] .pp .size,html[lang=ar] bdi{unicode-bidi:isolate}
/* RTL: contenedores de las cintas en LTR para que la pista arranque en el borde izquierdo (sin huecos) */
[dir=rtl] .marq,[dir=rtl] .press3-v,[dir=rtl] .press,[dir=rtl] .press2-v{direction:ltr}
[dir=rtl] .marq .t>*,[dir=rtl] .press3-t>*{direction:rtl}
[dir=rtl] .press3-t{animation-direction:reverse}

/* Agotado temporalmente en el país del visitante (data/stock.json + /api/availability) */
.card .so{position:absolute;left:10px;top:10px;z-index:2;background:#fff;color:#000;border-radius:41px;padding:5px 12px;font-size:12px;letter-spacing:.4px}
.card.soldout .ph img:first-child{opacity:.6}
.vars button.so{color:rgba(0,0,0,.4);border-color:rgba(0,0,0,.2);text-decoration:line-through;cursor:not-allowed}
.pso{margin:-4px 0 0;font-size:13px;color:#7A2323}
.ci small.ci-so,.note.ci-so{color:#7A2323}
#addBtn:disabled,#sbAdd:disabled,#pay:disabled,.pkb:disabled{opacity:.55;cursor:not-allowed}
/* ---------- Email marketing: opiniones verificadas, página /pages/opinion y preferencias de /cuenta ---------- */
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.rv2{padding:48px 0 8px}
.rv2 h2{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:clamp(26px,3.4vw,36px);margin:6px 0 4px}
.rv2-l{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.rv2-l li{background:#faf8f4;border:1px solid #ece6db;border-radius:14px;padding:18px 18px 14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.rv2-l p{margin:0;font-size:15px;line-height:1.55;color:#2a2622;overflow-wrap:anywhere}
.rv2-l small{color:var(--muted);font-size:12.5px}
.rv2-s{display:inline-flex;gap:2px;line-height:0}
.rv2-s i svg{width:15px;height:15px;fill:#e2dccf}.rv2-s i.on svg{fill:var(--gold-3)}
.op-c{text-align:center}
.op-img{width:96px;height:96px;object-fit:cover;border-radius:14px;margin:0 auto 14px;display:block;background:#f6f3ee}
.op-f{display:flex;flex-direction:column;gap:12px;margin-top:10px;text-align:start}
.op-f textarea,.op-f input:not(.hp){width:100%;font:inherit;font-size:15px;padding:12px 14px;border:1px solid #ddd5c8;border-radius:12px;background:#fff}
.op-st{display:flex;justify-content:center;gap:6px}
.op-st button{background:none;border:0;padding:4px;cursor:pointer;line-height:0}
.op-st button svg{width:34px;height:34px;fill:#e2dccf;transition:fill .15s}
.op-st button.on svg{fill:var(--gold-3)}
.op-st button:focus-visible{outline:2px solid #000;outline-offset:2px;border-radius:6px}
.ac-pf{display:flex;flex-direction:column;gap:12px;background:#fff;border-radius:18px;padding:20px 22px;max-width:560px}
.ac-pf-r{display:flex;flex-direction:column;gap:8px}
.ac-pf-r>span{font-weight:600;font-size:14px}
.ac-pf-bd{display:flex;gap:8px;flex-wrap:wrap}
.ac-pf-bd select{font:inherit;font-size:15px;padding:10px 12px;border:1px solid #ddd5c8;border-radius:10px;background:#fff;min-width:90px}
.ac-pf small{color:var(--muted);font-size:12.5px;line-height:1.5}
.ac-pf-t{display:flex;align-items:center;gap:10px;font-size:15px;cursor:pointer}
.ac-pf-t input{width:18px;height:18px;accent-color:#111}

/* Casilla de novedades del carrito y aviso de envío gratis con sesión */
.drawer .mk-opt{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.45;color:var(--ink-2);margin:6px 0 10px;cursor:pointer}
.drawer .mk-opt input{margin:2px 0 0;flex:none;accent-color:#111}
.drawer .fs-note a{text-decoration:underline}

/* ---------- carrito, paso 2: «Datos de envío» (antes de Stripe) ---------- */
.drawer .sf{display:grid;gap:12px;align-content:start;padding:14px 24px 22px}
.drawer header .sf-back{font-size:26px;line-height:1;margin-inline-end:4px}
.drawer header:has(.sf-back) h3{flex:1;font-size:20px}
[dir=rtl] .drawer .sf-back span{display:inline-block;transform:scaleX(-1)}
.sf-steps{display:flex;gap:6px;list-style:none;margin:0 0 4px;padding:0;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.sf-steps li{flex:1;padding-top:8px;border-top:2px solid var(--line)}
.sf-steps li:first-child{border-color:var(--gold-3)}
.sf-steps li[aria-current]{border-color:var(--gold);color:var(--ink);font-weight:500}
.sf-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sf-f{display:grid;gap:5px;min-width:0}
.sf-f label{font-size:12.5px;color:var(--ink-2);font-weight:500}
.sf-f label b{color:var(--gold);font-weight:500}
.sf-f label i{font-style:normal;color:var(--muted);font-weight:400}
.sf-f input{border:1px solid rgba(0,0,0,.2);border-radius:10px;padding:11px 12px;font-size:16px;width:100%;background:#fff;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.drawer .sf-f select{padding:11px 10px;font-size:16px}
.sf-f input:focus,.drawer .sf-f select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(176,141,87,.18)}
.sf-f [aria-invalid=true]{border-color:#b3261e}
.sf-err{color:#b3261e;font-size:12px}
.sf-hint{color:var(--muted);font-size:12px}
.sf-tel{display:grid;grid-template-columns:108px 1fr;gap:8px}
[dir=rtl] .sf-f input[dir=ltr]{text-align:right}
.sf-isl{background:#fbefe9;color:#7a2e12;border:1px solid #f0cdbd;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.45}
.sf-isl[hidden]{display:none}
.drawer .sf-link{justify-self:center;font-size:13px;color:var(--ink-2);text-decoration:underline;text-underline-offset:3px;padding:4px 8px}
.drawer footer .sf-f label{font-size:12px}
@media (max-width:380px){.sf-row{grid-template-columns:1fr}}
.drawer .sf .mk-opt{margin:2px 0 0}
.drawer .sf-sh{padding-top:2px}
.drawer .sf-foot{gap:8px;padding-top:14px}
.drawer .note.sf-warn{color:#7a2e12;text-align:center}
/* ---------- ventana de bienvenida (newsletter + envío gratis) ---------- */
.nlp{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:16px;background:rgba(16,15,13,.55);opacity:0;transition:opacity .35s var(--e)}
.nlp.on{opacity:1}
.nlp-box{position:relative;display:grid;grid-template-columns:1fr 1.1fr;width:min(820px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:var(--cream);border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.25);transform:translateY(16px);transition:transform .35s var(--e)}
.nlp.on .nlp-box{transform:none}
.nlp-img{background:url(/assets/home/Close-up_de_la_mujer_en_202605111645.webp) 62% center/cover;min-height:420px}
.nlp-c{padding:44px 40px 30px;display:flex;flex-direction:column;gap:12px;text-align:center;justify-content:center}
.nlp-c h2{font-size:30px;line-height:1.2;margin:0;color:var(--ink)}
.nlp-c p{margin:0;font-size:14.5px}
.nlp-f{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.nlp-f input{height:49px;border:1px solid rgba(0,0,0,.2);border-radius:var(--pill);padding:0 20px;font:inherit;background:#fff;text-align:center}
.nlp-f input:focus{outline:2px solid var(--gold);outline-offset:1px}
.nlp-f .btn{width:100%}
.nlp-s{font-size:12px!important;color:var(--muted)}.nlp-s a{text-decoration:underline}
.nlp-no{background:none;border:0;color:var(--muted);font:inherit;font-size:13px;text-decoration:underline;cursor:pointer;padding:4px}
.nlp-x{position:absolute;top:8px;right:10px;z-index:1;width:40px;height:40px;border:0;background:rgba(255,255,255,.85);border-radius:50%;font-size:26px;line-height:1;cursor:pointer;color:#000}
[dir=rtl] .nlp-x{right:auto;left:10px}
.nlp-ok{align-self:center;margin-top:6px}
@media(max-width:700px){.nlp{place-items:end center;padding:0}.nlp-box{grid-template-columns:1fr;border-radius:14px 14px 0 0;max-height:92dvh}.nlp-img{min-height:150px;background-position:60% 30%}.nlp-c{padding:24px 20px 20px}.nlp-c h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.nlp,.nlp-box{transition:none}}
/* ---------- invita a una amiga (/cuenta) ---------- */
.rf{background:var(--cream);border-radius:12px;padding:22px;display:grid;gap:14px}
.rf p{margin:0}
.rf-l{display:flex;gap:10px;flex-wrap:wrap}
.rf-l input{flex:1 1 220px;min-width:0;height:49px;border:1px solid rgba(0,0,0,.15);border-radius:var(--pill);padding:0 18px;font:inherit;background:#fff}
.rf-s{display:flex;gap:10px;flex-wrap:wrap}.rf-s .btn{min-height:44px;padding:0 22px}
.rf-n{font-size:13.5px;color:var(--muted)}
/* ---------- avísame cuando haya stock (ficha de producto) ---------- */
.ns{margin-top:12px;padding:16px 18px;background:var(--cream);border-radius:12px;display:grid;gap:10px}
.ns p{margin:0;font-size:14px;line-height:1.55}.ns-t b{color:var(--ink)}
.ns-f{display:flex;gap:8px;flex-wrap:wrap}
.ns-f input[type=email]{flex:1 1 180px;min-width:0;height:46px;border:1px solid rgba(0,0,0,.18);border-radius:var(--pill);padding:0 18px;font:inherit;background:#fff}
.ns-f .btn{min-height:46px;padding:0 24px}
.ns-ok{color:var(--ink)}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
/* ---------- El Diagnóstico (/diagnostico, assets/diag.js): misma estética que la tienda ---------- */
.dg .serif em{font-style:italic;color:var(--gold)}
.dg-h{text-align:center;display:grid;gap:12px;justify-items:center;margin-bottom:clamp(26px,4vw,44px)}
.dg-h h2{font-weight:400;letter-spacing:0;margin:0}.dg-h p{margin:0;max-width:56ch}
.dg-hero{background:var(--cream)}
.dg-hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,5vw,72px);align-items:center;padding-top:clamp(28px,5vw,64px);padding-bottom:clamp(28px,5vw,64px)}
.dg-hero-t{display:grid;gap:18px;justify-items:start}
.dg-hero h1{font-weight:400;letter-spacing:0;font-size:clamp(34px,4.6vw,60px);line-height:1.1;margin:0}
.dg-lede{margin:0;font-size:clamp(15.5px,1.3vw,17.5px);max-width:52ch}
.dg-ticks{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dg-ticks li,.dg-heard-l li,.dg-an-l li{display:flex;gap:10px;align-items:flex-start}
.dg svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--gold);stroke-width:2;margin-top:4px}
.dg-hero-img img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.dg-last{background:none;border:0;font:inherit;font-size:14px;color:var(--ink-2);text-decoration:underline;cursor:pointer;padding:4px 0}
.dg-areas{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.dg-area{display:flex;flex-direction:column;text-align:start;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;cursor:pointer;font:inherit;color:inherit;padding:0;transition:transform .35s var(--e),box-shadow .35s var(--e),border-color .35s}
.dg-area:hover,.dg-area:focus-visible{transform:translateY(-4px);box-shadow:0 18px 40px -24px rgba(0,0,0,.35);border-color:var(--gold-2);outline:none}
.dg-area-img{display:block;aspect-ratio:4/3;background:var(--soft);overflow:hidden}.dg-area-img img{width:100%;height:100%;object-fit:cover}
.dg-area-t{display:grid;gap:6px;padding:18px 20px 8px}.dg-area-t b{font-size:22px;font-weight:400;color:var(--ink)}.dg-area-t small{font-size:13.5px;line-height:1.5;color:var(--muted)}
.dg-arw{padding:6px 20px 18px;color:var(--gold);font-size:18px}
[dir=rtl] .dg-arw{transform:scaleX(-1);align-self:flex-end}
.dg-how{background:var(--soft)}
.dg-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,40px)}
.dg-steps li{display:grid;gap:8px;text-align:center;justify-items:center}.dg-steps b{color:var(--ink);font-size:17px}.dg-steps p{margin:0;font-size:14.5px;max-width:34ch}
.dg-n{font-size:30px;color:var(--gold)}
.dg-dis{text-align:center;font-size:12.5px;color:var(--muted);margin:28px auto 0;max-width:60ch}
@media(max-width:900px){.dg-hero-in{grid-template-columns:1fr}.dg-hero-img{order:-1}.dg-hero-img img{aspect-ratio:16/10}.dg-areas{grid-template-columns:repeat(2,1fr)}.dg-steps{grid-template-columns:1fr}}
@media(max-width:480px){.dg-areas{grid-template-columns:1fr}.dg-area{flex-direction:row;align-items:stretch}.dg-area-t{align-self:center}.dg-arw{align-self:center}.dg-area-img{width:96px;min-height:96px;aspect-ratio:auto;flex:none}.dg-area-t{padding:14px}.dg-arw{padding:0 14px 0 0}}
/* preguntas */
.dg-q{background:var(--cream);min-height:calc(100svh - 120px)}
.dg-q-in{max-width:760px;padding-top:clamp(20px,4vw,44px);padding-bottom:clamp(40px,6vw,80px);display:grid;gap:18px}
.dg-bar{display:flex;align-items:center;gap:14px}
.dg-back{background:none;border:0;font:inherit;font-size:14px;color:var(--ink-2);cursor:pointer;padding:6px 0;white-space:nowrap}
.dg-prog{flex:1;height:4px;background:rgba(0,0,0,.08);border-radius:4px;overflow:hidden}.dg-prog i{display:block;height:100%;background:var(--gold);border-radius:4px;transition:width .5s var(--e)}
.dg-cnt{font-size:13px;color:var(--muted);white-space:nowrap}
.dg-ins{background:#fff;border-inline-start:3px solid var(--gold);border-radius:10px;padding:14px 18px;display:grid;gap:4px;animation:dgIn .5s var(--e)}
.dg-ins p{margin:0;font-size:14.5px}
.dg-card{background:#fff;border-radius:var(--r);padding:clamp(22px,4vw,44px);box-shadow:0 20px 50px -36px rgba(0,0,0,.3);display:grid;gap:14px;animation:dgIn .5s var(--e)}
.dg-card h1{font-weight:400;letter-spacing:0;font-size:clamp(26px,3.4vw,38px);line-height:1.2;margin:0}
.dg-hi{color:var(--gold)}
.dg-s{margin:0;color:var(--muted)}
.dg-opts{display:grid;gap:10px;margin-top:6px}
.dg-opt{display:flex;gap:12px;align-items:center;text-align:start;width:100%;background:var(--soft);border:1px solid transparent;border-radius:14px;padding:16px 18px;font:inherit;color:var(--ink-2);cursor:pointer;transition:border-color .25s,background .25s}
.dg-opt:hover,.dg-opt:focus-visible{border-color:var(--gold-2);background:#fff;outline:none}
.dg-opt.on{border-color:var(--gold);background:#fff;box-shadow:inset 0 0 0 1px var(--gold)}
.dg-opt b{display:block;color:var(--ink);font-weight:500;font-size:15.5px;line-height:1.35}.dg-opt small{display:block;color:var(--muted);font-size:13px;line-height:1.45;margin-top:2px}
.dg-ck{width:24px;height:24px;flex:none;border:1.5px solid rgba(0,0,0,.25);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600;color:#fff}
.dg-opt.on .dg-ck{background:var(--gold);border-color:var(--gold)}
.dg-next{justify-self:start;margin-top:6px}.dg-next:disabled{opacity:.4;cursor:default}
.dg-name{display:grid;gap:10px;margin-top:6px}
.dg-name input{height:52px;border:1px solid rgba(0,0,0,.18);border-radius:var(--pill);padding:0 22px;font:inherit;font-size:16px;background:#fff}
.dg-name input:focus,.dg-mf input:focus{outline:2px solid var(--gold);outline-offset:1px}
.dg-skip{background:none;border:0;font:inherit;font-size:13.5px;color:var(--muted);text-decoration:underline;cursor:pointer;justify-self:center}
@keyframes dgIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
/* análisis */
.dg-an{background:var(--cream);min-height:calc(100svh - 120px);display:grid;place-items:center}
.dg-an-in{display:grid;gap:22px;justify-items:center;text-align:center;padding:60px 0}
.dg-an h1{font-weight:400;letter-spacing:0;font-size:clamp(26px,3.4vw,40px);margin:0}
.dg-orb{width:64px;height:64px;border-radius:50%;border:2px solid rgba(0,0,0,.08);border-top-color:var(--gold);animation:dgSp 1.1s linear infinite}
@keyframes dgSp{to{transform:rotate(360deg)}}
.dg-an-l{list-style:none;margin:0;padding:0;display:grid;gap:10px;text-align:start}
.dg-an-l li{opacity:0;animation:dgIn .5s var(--e) forwards}
/* resultado */
.dg-r-hero{background:var(--cream);padding:clamp(36px,6vw,80px) 0 clamp(30px,5vw,60px);text-align:center}
.dg-r-hero .wrap{display:grid;gap:16px;justify-items:center}
.dg-r-hero h1{font-weight:400;letter-spacing:0;font-size:clamp(30px,4.2vw,54px);line-height:1.15;margin:0;max-width:22ch}
.dg-prof{background:#fff;border-radius:var(--pill);padding:12px 26px;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;justify-content:center;box-shadow:0 14px 30px -24px rgba(0,0,0,.35)}
.dg-prof span{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}.dg-prof b{font-weight:400;font-size:clamp(18px,2vw,23px);color:var(--ink);text-align:center}
@media(max-width:640px){.dg-prof{border-radius:22px;flex-direction:column;align-items:center;gap:6px;padding:16px 20px;text-align:center}}
.dg-r-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(24px,5vw,64px);align-items:start}
.dg-heard{display:grid;gap:14px}
.dg-heard blockquote{margin:0;font-size:clamp(22px,2.6vw,30px);line-height:1.3;color:var(--ink)}
.dg-heard p{margin:0}
.dg-heard-l{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}
.dg-bars{background:var(--soft);border-radius:var(--r);padding:24px;display:grid;gap:16px}
.dg-b{display:grid;grid-template-columns:1fr auto;gap:6px 10px}.dg-b span{font-size:14px;color:var(--ink)}.dg-b small{font-size:12px;color:var(--muted)}
.dg-b i{grid-column:1/-1;height:6px;border-radius:6px;background:rgba(0,0,0,.08);overflow:hidden}.dg-b em{display:block;height:100%;background:linear-gradient(90deg,var(--gold-2),var(--gold));border-radius:6px}
.dg-note{font-size:12.5px;color:var(--muted);margin:0}
.dg-cream{background:var(--cream)}
.dg-main{max-width:900px;margin:0 auto}
.dg-main .dg-pc{grid-template-columns:.9fr 1.1fr}
.dg-pc{display:grid;grid-template-columns:1fr;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.dg-pc-img{display:block;background:var(--soft);aspect-ratio:1}.dg-pc-img img{width:100%;height:100%;object-fit:cover}
.dg-pc-b{padding:clamp(18px,2.4vw,30px);display:grid;gap:10px;align-content:start}
.dg-pc h3{font-weight:400;letter-spacing:0;font-size:clamp(20px,2vw,26px);line-height:1.25;margin:0}.dg-pc h3 a{color:var(--ink)}
.dg-pc p{margin:0;font-size:14.5px}
.dg-pc-why{color:var(--ink);font-weight:500}
.dg-pc-f{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px}.dg-pc-f b{font-size:18px;color:var(--ink)}.dg-pc-f .btn{min-height:42px;padding:0 22px}
.dg-so{font-size:13px;color:var(--muted)}
.dg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.dg-rt{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:28px}
.dg-rt-c{background:var(--soft);border-radius:var(--r);padding:22px 24px}.dg-rt-c h3{font-weight:400;font-size:22px;margin:0 0 12px;color:var(--ink)}
.dg-rt-c ol{margin:0;padding-inline-start:20px;display:grid;gap:10px}.dg-rt-s{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.dg-rt-c b{font-weight:500;color:var(--ink);font-size:14.5px}
.dg-buy,.dg-mail{max-width:640px;margin:0 auto;text-align:center;display:grid;gap:14px;justify-items:center}
.dg-buy h2,.dg-mail h2{font-weight:400;letter-spacing:0;margin:0}
.dg-mail p{margin:0;max-width:52ch}
.dg-price{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;justify-content:center}.dg-price s{color:var(--muted)}.dg-price b{font-size:32px;color:var(--ink);font-weight:500}.dg-price span{font-size:13px;color:var(--gold);font-weight:500}
.dg-mf{display:flex;gap:10px;flex-wrap:wrap;width:100%;justify-content:center}
.dg-mf input[type=email]{flex:1 1 240px;max-width:340px;min-width:0;height:49px;border:1px solid rgba(0,0,0,.18);border-radius:var(--pill);padding:0 20px;font:inherit;background:#fff}
.dg-end{display:grid;justify-items:center;gap:10px}
@media(max-width:900px){.dg-r-grid{grid-template-columns:1fr}.dg-main .dg-pc{grid-template-columns:1fr}}
@media(max-width:600px){.dg-rt{grid-template-columns:1fr}.dg-main .dg-pc-img{aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){.dg-card,.dg-ins,.dg-an-l li{animation:none;opacity:1}.dg-orb{animation-duration:3s}}
.press-note{font-size:12.5px;color:var(--muted);margin:6px auto 0;max-width:60ch;text-align:center}
.dlv-n{font-size:12.5px;color:var(--muted);margin:2px 0 10px;line-height:1.5}
.fs-n{font-size:13.5px;color:var(--ink-2);margin:6px 0 0}.fs-n:empty{display:none}.fs-n b{color:var(--gold)}
.dg-qs{max-width:900px;margin:28px auto 0;display:grid;gap:14px;justify-items:center}
.dg-qs-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;width:100%}
.dg-q1{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px;display:grid;gap:10px;align-content:start}
.dg-q1 blockquote{margin:0;font-size:14.5px;line-height:1.6;color:var(--ink-2)}.dg-q1 blockquote strong{color:var(--ink);font-weight:500}
.dg-q1 figcaption{font-size:13px;color:var(--ink);font-weight:500}
.dg-st{display:flex;gap:2px}.dg .dg-st svg{width:15px;height:15px;margin:0;fill:var(--gold);stroke:none}
/* ---------- Diagnóstico: lectura cómoda (público adulto) y landing larga ---------- */
.dg{--muted:rgba(0,0,0,.7);--ink-2:rgba(0,0,0,.82);font-size:17.5px;line-height:1.7;letter-spacing:.2px}
.dg p,.dg li{font-size:17.5px}
.dg .lbl{font-size:13px;letter-spacing:.2em}
.dg .btn{min-height:56px;font-size:16.5px;padding:0 34px}
.dg-h h2{font-size:clamp(30px,3.6vw,46px)}
.dg-lede{font-size:clamp(18px,1.6vw,20px)!important}
.dg-ticks li{font-size:18px}
.dg-cta{margin-top:4px}
.dg-last{font-size:16px}
/* consulta */
.dg-cons{background:#fff}
.dg-cons .dg-h p{font-size:19px;max-width:52ch}
.dg-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dg-step{background:var(--cream);border-radius:var(--r);padding:30px 26px;display:grid;gap:10px;text-align:center;justify-items:center}
.dg-step b{font-weight:400;font-size:24px;color:var(--ink)}
.dg-step p{margin:0;max-width:30ch}
.dg-step .dg-n{width:52px;height:52px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:24px;color:var(--gold)}
/* lo que recibes */
.dg-get{background:var(--soft)}
.dg-get-in{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,5vw,64px);align-items:center}
.dg-get-t{display:grid;gap:16px;justify-items:start}
.dg-get-t h2{font-weight:400;letter-spacing:0;margin:0;font-size:clamp(28px,3.4vw,42px)}
.dg-get-l{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.dg-get-l li{display:flex;gap:12px;align-items:flex-start}.dg-get-l b{display:block;color:var(--ink);font-weight:600;font-size:18px}.dg-get-l span{display:block;color:var(--muted);font-size:16.5px}
.dg-get-img img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
/* confianza */
.dg-trust{background:#fff}
.dg-tr{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.dg-tr li{border:1px solid var(--line);border-radius:var(--r);padding:24px 22px;display:grid;gap:6px}
.dg-tr b{color:var(--ink);font-size:18px;font-weight:600}.dg-tr span{color:var(--muted);font-size:16px}
/* dudas */
.dg-faq{background:var(--cream)}
.dg-acc{max-width:780px;margin:0 auto;display:grid;gap:10px}
.dg-acc details{background:#fff;border-radius:14px;padding:4px 22px}
.dg-acc summary{cursor:pointer;padding:16px 0;font-size:18px;font-weight:600;color:var(--ink);list-style:none;display:flex;justify-content:space-between;gap:12px}
.dg-acc summary::-webkit-details-marker{display:none}
.dg-acc summary::after{content:"+";color:var(--gold);font-size:24px;line-height:1}.dg-acc details[open] summary::after{content:"−"}
.dg-acc details p{margin:0 0 16px}
/* empezar (al final) */
.dg-start{background:#fff}
.dg-area-t b{font-size:24px}.dg-area-t small{font-size:16px;color:var(--muted)}
/* preguntas y resultado: más grande */
.dg-card h1{font-size:clamp(28px,3.6vw,40px)}
.dg-s{font-size:17.5px}
.dg-opt{padding:18px 20px}
.dg-opt b{font-size:18px}.dg-opt small{font-size:15.5px}
.dg-ins p{font-size:17px}
.dg-cnt,.dg-back{font-size:16px}
.dg-pc p{font-size:16.5px}.dg-pc-f b{font-size:20px}
.dg-note,.dg-dis{font-size:15px!important}
.dg-heard blockquote{font-size:clamp(24px,2.8vw,32px)}
.dg-b span{font-size:16.5px}.dg-b small{font-size:14px}
.dg-rt-c b{font-size:17px}.dg-rt-s{font-size:12.5px}
.dg-q1 blockquote{font-size:16.5px}.dg-q1 figcaption{font-size:15px}
.dg-name input,.dg-mf input[type=email]{font-size:17px;height:56px}
@media(max-width:900px){.dg-steps{grid-template-columns:1fr}.dg-get-in{grid-template-columns:1fr}.dg-get-img{order:-1}.dg-get-img img{aspect-ratio:16/11}.dg-tr{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.dg-tr{grid-template-columns:1fr}.dg p,.dg li{font-size:17px}.dg .btn{width:100%}}
/* Amanda en la landing del diagnóstico */
.dg-am{margin:4px 0 0;display:flex;gap:14px;align-items:center;background:#fff;border-radius:18px;padding:12px 16px;box-shadow:0 12px 30px -24px rgba(0,0,0,.35);max-width:520px}
.dg-am img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:none}
.dg-am figcaption{display:grid;gap:4px}.dg-am q{font-size:16.5px;line-height:1.5;color:var(--ink);font-style:italic}.dg-am span{font-size:14px;color:var(--muted)}
.dg-me{background:var(--cream)}
.dg-me-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,5vw,64px);align-items:center}
.dg-me-img img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r)}
.dg-me-t{display:grid;gap:14px;justify-items:start}.dg-me-t h2{font-weight:400;letter-spacing:0;margin:0;font-size:clamp(30px,3.6vw,46px)}.dg-me-t p{margin:0;max-width:50ch}
.dg-me-sign{font-size:28px;color:var(--gold);margin-top:6px!important}
.dg-me-ig{color:var(--ink-2);text-decoration:underline;font-size:16px}
@media(max-width:900px){.dg-me-in{grid-template-columns:1fr}}
.dg-areas-q{grid-template-columns:1fr 1fr;margin-top:6px}
@media(max-width:560px){.dg-areas-q{grid-template-columns:1fr}}
.dg-alt{margin:0;font-size:16px!important;color:var(--muted);max-width:46ch}.dg-link{background:none;border:0;padding:0;font:inherit;color:var(--ink);text-decoration:underline;cursor:pointer;font-weight:600}
body.on-diag #cbBtn,body.on-diag #cb{display:none!important}
@media(max-width:900px){.dg-hero-img img{aspect-ratio:16/8}.dg-hero-t{gap:14px}.dg-am{padding:10px 14px}}
.promise{background:var(--cream);padding:clamp(34px,6vw,64px) 0;text-align:center}.promise .wrap{display:grid;gap:14px;justify-items:center}.promise h2{font-weight:400;letter-spacing:0;margin:0;font-size:clamp(26px,3.4vw,42px);line-height:1.2;max-width:26ch}.promise h2 em{color:var(--gold)}.promise p{margin:0;font-size:17.5px;max-width:48ch}.promise-b{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:4px}@media(max-width:560px){.promise-b .btn{width:100%}}
.hero-btn{white-space:nowrap;padding:0 26px}
/* ---------- Banner de cookies ---------- */
.ckb{position:fixed;left:16px;right:16px;bottom:16px;z-index:130;display:flex;justify-content:center;pointer-events:none;opacity:0;transform:translateY(20px);transition:opacity .3s var(--e),transform .3s var(--e)}
.ckb.on{opacity:1;transform:none}
.ckb-in{pointer-events:auto;width:min(720px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 60px -20px rgba(0,0,0,.35);border:1px solid var(--line);padding:22px 24px;display:grid;gap:12px}
.ckb h2{margin:0;font-weight:400;letter-spacing:0;font-size:22px;color:var(--ink)}
.ckb p{margin:0;font-size:15.5px;line-height:1.6;color:rgba(0,0,0,.78)}.ckb p a{text-decoration:underline;color:var(--ink)}
.ckb-b{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.ckb-b .btn{min-height:50px;padding:0 16px;font-size:15.5px}
.ck-cfg{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:12px}
.ck-row{display:flex;gap:14px;align-items:center;justify-content:space-between;cursor:pointer;padding:6px 0}
.ck-row b{display:block;color:var(--ink);font-size:15.5px}.ck-row small{display:block;color:rgba(0,0,0,.65);font-size:13.5px;line-height:1.45}
.ck-row input{position:absolute;opacity:0;width:1px;height:1px}
.ck-sw{flex:none;width:46px;height:26px;border-radius:26px;background:rgba(0,0,0,.18);position:relative;transition:background .2s}
.ck-sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}
.ck-row input:checked+.ck-sw{background:var(--gold)}.ck-row input:checked+.ck-sw::after{transform:translateX(20px)}
.ck-row input:disabled+.ck-sw{opacity:.55}
.ck-row input:focus-visible+.ck-sw{outline:2px solid var(--gold);outline-offset:2px}
[dir=rtl] .ck-sw::after{left:auto;right:3px}[dir=rtl] .ck-row input:checked+.ck-sw::after{transform:translateX(-20px)}
.ck-open{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}
body.on-diag .ckb{bottom:12px}
@media(max-width:560px){.ckb{left:10px;right:10px;bottom:10px}.ckb-in{padding:18px}.ckb-b{grid-template-columns:1fr 1fr}.ckb-b [data-cka="cfg"]{grid-column:1/-1}}
/* banner discreto (sustituye tamaños anteriores) */
.ckb{left:auto;right:16px;bottom:16px;justify-content:flex-end}
.ckb-in{width:min(440px,calc(100vw - 32px));padding:14px 16px;gap:10px;border-radius:14px}
.ckb p{font-size:14px;line-height:1.5}
.ckb-b{display:flex;gap:8px;align-items:center}
.ckb-b .btn{min-height:38px;padding:0 18px;font-size:14px;flex:0 0 auto}
.ck-lnk{background:none;border:0;padding:0 4px;font:inherit;font-size:14px;color:var(--ink);text-decoration:underline;cursor:pointer;margin-inline-start:auto}
.ck-row b{font-size:14.5px}.ck-row small{font-size:12.5px}
@media(max-width:560px){.ckb{left:8px;right:8px;bottom:8px}.ckb-in{width:100%;padding:12px 14px}.ckb-b{display:flex}.ckb-b [data-cka="cfg"]{grid-column:auto}}
body.ck-on #cbBtn{display:none!important}
.ck-lnk{white-space:nowrap}

/* ───────── Embajadoras (/embajadoras, assets/amb.js) ───────── */
/* Opiniones con foto */
.op-ph{display:grid;gap:8px}
.op-ph-b{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px dashed rgba(176,141,87,.7);border-radius:12px;cursor:pointer;color:var(--ink);font-size:15px;background:var(--cream)}
.op-ph-l{display:flex;gap:8px;flex-wrap:wrap}
.op-ph-l span{position:relative}.op-ph-l img{width:76px;height:76px;object-fit:cover;border-radius:10px}
.op-ph-l button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;background:#000;color:#fff;font-size:11px}
.op-ph small{font-size:12.5px;color:var(--muted)}
.rv2-ph{margin:18px 0 6px}.rv2-ph h3{font-size:15px;font-weight:500;margin-bottom:10px}
.rv2-ph>div{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x mandatory}
.rv2-ph button,.rv2-th button{flex:none;padding:0;border-radius:12px;overflow:hidden;scroll-snap-align:start}
.rv2-ph img{width:120px;height:120px;object-fit:cover;display:block}
.rv2-th{display:flex;gap:8px;margin:8px 0}.rv2-th img{width:72px;height:72px;object-fit:cover;display:block}
.rv2-lb{position:fixed;inset:0;z-index:999;background:rgba(16,15,13,.92);display:flex;align-items:center;justify-content:center;padding:20px;cursor:zoom-out}
.rv2-lb img{max-width:100%;max-height:100%;border-radius:12px}
.rv2-lb button{position:absolute;top:14px;right:16px;color:#fff;font-size:22px}
.amb{padding:clamp(36px,6vw,80px) 0;background:var(--cream)}
.amb h1,.amb h2{font-family:var(--f-title);font-weight:400;letter-spacing:0}
.amb-hero{text-align:center;max-width:820px}
.amb-hero h1{font-size:clamp(32px,5vw,56px);line-height:1.12;margin:12px 0 16px}
.amb-hero h1 em{font-style:italic;color:var(--gold)}
.amb-hero p{font-size:clamp(16px,1.6vw,19px);color:var(--ink-2);max-width:60ch;margin:0 auto}
.amb-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:26px 0}
.amb-nums{list-style:none;display:flex;justify-content:center;gap:clamp(18px,5vw,56px);margin-top:12px}
.amb-nums b{display:block;font-family:var(--f-title);font-weight:400;font-size:clamp(30px,4vw,44px);color:var(--ink);line-height:1.1}
.amb-nums span{font-size:14px;color:var(--muted)}
.amb-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:clamp(36px,6vw,70px)}
.amb-steps>div{background:#fff;border-radius:var(--r);padding:26px}
.amb-steps i{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gold);color:#fff;font-style:normal;font-weight:500;margin-bottom:12px}
.amb-steps h3{font-family:var(--f-title);font-weight:400;font-size:22px;margin-bottom:6px}
.amb-steps p,.amb-panelpv p{font-size:16px}
.amb-panelpv{margin-top:clamp(36px,6vw,70px);text-align:center;max-width:720px}
.amb-panelpv h2,.amb-faq h2,.amb-form h2{font-size:clamp(26px,3.4vw,38px);margin:8px 0 12px}
.amb-faq{max-width:760px;margin-top:clamp(36px,6vw,70px)}
.amb-faq details{background:#fff;border-radius:14px;padding:16px 20px;margin-bottom:10px}
.amb-faq summary{cursor:pointer;color:var(--ink);font-weight:500;font-size:17px}
.amb-faq details p{margin-top:8px;font-size:16px}
.amb-form{max-width:560px;margin-top:clamp(36px,6vw,70px);scroll-margin-top:90px}
.amb-form form{display:grid;gap:14px}
.amb-form label{display:grid;gap:6px;font-size:15px;color:var(--ink)}
.amb-form label i{color:var(--muted);font-style:normal}
.amb-form input:not([type=checkbox]),.amb-form textarea,.amb-pay input,.amb-pay select{width:100%;padding:13px 14px;border:1px solid rgba(0,0,0,.18);border-radius:12px;background:#fff;font-size:16px}
.amb-form .amb-ok{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--ink-2)}
.amb-form .amb-ok input{margin-top:4px}
.amb .ac-in{padding:0 var(--gut)}
.amb-p{max-width:1100px}
.amb-ph{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px}
.amb-ph h1{font-size:clamp(30px,4vw,44px);margin-top:6px}
.amb-share{background:#fff;border-radius:var(--r);padding:20px;display:grid;gap:12px;margin-bottom:18px}
.amb-share>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.amb-share span{min-width:80px;color:var(--muted);font-size:14px}
.amb-share code{flex:1;min-width:0;overflow-wrap:anywhere;background:var(--soft);padding:10px 14px;border-radius:10px;font-size:15px;color:var(--ink)}
.amb-share .btn{min-height:40px;padding:0 20px}
.amb-share p{font-size:15px}
.amb-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:12px}
.amb-k{background:#fff;border-radius:16px;padding:18px}
.amb-k b{display:block;font-family:var(--f-title);font-weight:400;font-size:28px;color:var(--ink);line-height:1.2}
.amb-k span{font-size:13.5px;color:var(--muted)}
.amb-k.gold{background:var(--night)}.amb-k.gold b{color:var(--gold-3)}.amb-k.gold span{color:rgba(255,255,255,.7)}
.amb-note{font-size:14px;color:var(--muted);margin-bottom:18px}
.amb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;margin-bottom:16px}
.amb-box{background:#fff;border-radius:var(--r);padding:22px;min-width:0}
.amb-box h3{font-family:var(--f-title);font-weight:400;font-size:22px;margin-bottom:14px}
.amb-box h4{margin:18px 0 8px;font-size:15px}
.amb-bars{display:flex;align-items:flex-end;gap:10px;height:180px}
.amb-bars>div{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}
.amb-bars span{width:100%;min-height:3px;background:var(--gold);border-radius:6px 6px 2px 2px}
.amb-bars b{font-size:11px;font-weight:500;color:var(--ink);white-space:nowrap}
.amb-bars i{font-style:normal;font-size:12px;color:var(--muted);text-transform:capitalize}
.amb-t{width:100%;border-collapse:collapse;font-size:14px}
.amb-t th{text-align:start;font-weight:500;color:var(--muted);padding:6px 4px;border-bottom:1px solid var(--line)}
.amb-t td{padding:9px 4px;border-bottom:1px solid var(--line)}
.amb-st{font-size:12px;padding:3px 9px;border-radius:20px;background:var(--soft);white-space:nowrap}
.amb-st.approved{background:#e9f3e6;color:#2f6b25}.amb-st.paid{background:#eef0f5;color:#334}.amb-st.cancelled{background:#f8e9e7;color:#9a2b1e}
.amb-empty,.amb-cur{font-size:15px}
.amb-warn{font-size:14.5px;color:#9a5b12;background:#fbf2e3;padding:10px 14px;border-radius:10px;margin:8px 0}
.amb-pay{display:grid;gap:10px;margin-top:12px}
.amb-pl{list-style:none;font-size:14px}.amb-pl li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--line)}
.amb-txt{background:var(--soft);padding:14px;border-radius:12px;font-size:15px;margin-bottom:10px}
.amb-tips{margin:16px 0 0 18px;font-size:14.5px;display:grid;gap:6px}
.sf-code{margin:6px 0 10px}
.sf-code label{font-size:14px;color:var(--ink)}
.sf-code-r{display:flex;gap:8px;margin-top:6px}
.sf-code-r input{flex:1;min-width:0;padding:11px 12px;border:1px solid rgba(0,0,0,.18);border-radius:10px;text-transform:uppercase;font-size:16px}
.sf-code-r .btn{min-height:44px;padding:0 18px}

/* ───────── Tarjeta regalo (/tarjeta-regalo, assets/gift.js) ───────── */
.gc{padding:clamp(36px,6vw,80px) 0;background:var(--cream)}
.gc-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:clamp(28px,5vw,64px);align-items:start}
@media(max-width:860px){.gc-in{grid-template-columns:1fr}}
.gc h1{font-family:var(--f-title);font-weight:400;letter-spacing:0;font-size:clamp(32px,4.6vw,52px);line-height:1.12;margin:12px 0 14px}
.gc h1 em{font-style:italic;color:var(--gold)}
.gc-sub{font-size:clamp(16px,1.6vw,18px);max-width:46ch}
.gc-card{margin-top:28px;max-width:420px;aspect-ratio:1.6;border-radius:18px;background:linear-gradient(135deg,#1b1915,#100F0D 60%,#2a241a);color:#fff;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 30px 60px -30px rgba(16,15,13,.6)}
.gc-card b{font-family:var(--f-title);font-weight:400;font-size:24px;letter-spacing:.3em;color:var(--gold-3)}
.gc-card span{font-size:11px;letter-spacing:.3em;color:rgba(255,255,255,.65)}
.gc-card strong{font-family:var(--f-title);font-weight:400;font-size:clamp(40px,6vw,56px);margin:6px 0}
.gc-card code{font-size:14px;letter-spacing:.12em;background:var(--cream);color:#100F0D;padding:6px 12px;border-radius:8px}
.gc-f{display:grid;gap:14px}
.gc-f label{display:grid;gap:6px;font-size:15px;color:var(--ink)}
.gc-f label i{color:var(--muted);font-style:normal}
.gc-f input:not([type=radio]),.gc-f textarea,.gc-f select{width:100%;padding:12px 14px;border:1px solid rgba(0,0,0,.18);border-radius:12px;background:#fff;font-size:16px}
.gc-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:520px){.gc-row{grid-template-columns:1fr}}
.gc-amts{border:0;display:flex;flex-wrap:wrap;gap:8px}
.gc-amts legend{font-size:15px;color:var(--ink);margin-bottom:8px}
.gc-amts label{display:block}
.gc-amts input{position:absolute;opacity:0;pointer-events:none}
.gc-amts span{display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:46px;padding:0 14px;border-radius:41px;border:1px solid rgba(0,0,0,.2);background:#fff;cursor:pointer;font-weight:500}
.gc-amts input:checked+span{background:#000;color:#fff;border-color:#000}
.gc-amts input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.gc-safe{font-size:13px;color:var(--muted);text-align:center}
.gc-faq{max-width:760px;margin-top:clamp(36px,6vw,64px)}
.gc-faq details{background:#fff;border-radius:14px;padding:16px 20px;margin-bottom:10px}
.gc-faq summary{cursor:pointer;color:var(--ink);font-weight:500}
.gc-faq details p{margin-top:8px;font-size:16px}

/* Promoción en curso (portada y ficha) */
.pband{background:var(--night);color:#fff;padding:clamp(28px,5vw,48px) 0;text-align:center}
.pband .wrap{display:grid;gap:10px;justify-items:center}
.pband .lbl{color:var(--gold-3)}
.pband-t{font-family:var(--f-title);font-size:clamp(22px,3vw,34px);line-height:1.25;max-width:30ch;color:#fff}
.pband-e{font-size:15px;color:rgba(255,255,255,.75)}
.pband-e b{color:#fff;font-weight:500;font-variant-numeric:tabular-nums}
.pband .btn{margin-top:6px}
.promo-p{margin:6px 0 0;font-size:15px;color:var(--gold)}
.promo-p b{font-size:18px;color:var(--ink)}

/* ───────── Navidad (body.xmas, promoción con theme "navidad"): toque festivo sin perder la esencia ───────── */
.pband-b{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px}
.btn.ghost-l{background:transparent;color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.7)}
.xmas{--xg:#123524;--xg2:#1b4a33}
.xmas .announce{background:var(--xg)}
.xmas .announce span::before{content:"✦ ";color:var(--gold-3)}
.xmas .pband{background:radial-gradient(circle at 20% 30%,rgba(202,174,105,.18) 0 2px,transparent 3px) 0 0/90px 90px,
  radial-gradient(circle at 70% 60%,rgba(202,174,105,.12) 0 1.5px,transparent 2.5px) 0 0/130px 130px,linear-gradient(160deg,var(--xg),#0c2318);
  border-top:1px solid rgba(202,174,105,.5);border-bottom:1px solid rgba(202,174,105,.5)}
.xmas .pband .lbl::before,.xmas .pband .lbl::after{content:" ✦ ";color:var(--gold-3)}
@media (prefers-reduced-motion:no-preference){.xmas .pband{animation:xsn 40s linear infinite}@keyframes xsn{to{background-position:0 900px,0 1300px,0 0}}}
.xmas .promise .lbl::after{content:" · Navidad";}
.xmas .promo-p{color:var(--xg2)}
.xmas .ftr{border-top:3px solid var(--gold-3)}
.gc-card.xm{background:radial-gradient(circle at 15% 20%,rgba(202,174,105,.35) 0 1.5px,transparent 2.5px) 0 0/60px 60px,linear-gradient(135deg,#1b4a33,#123524 60%,#0c2318);border:1px solid rgba(202,174,105,.6)}
.gc-card.xm span{color:var(--gold-3)}

/* Personalización con nombre (ficha de producto) */
.pe{border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin:14px 0;background:#fff;transition:border-color .2s}
.pe.on{border-color:var(--gold)}
.pe-t{display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.pe-t input{margin-top:5px;accent-color:#000;width:18px;height:18px}
.pe-t b{color:var(--ink);font-weight:500}.pe-t i{font-style:normal;color:var(--gold)}
.pe-t small{display:block;font-size:13.5px;color:var(--muted);line-height:1.5}
.pe-b{display:grid;gap:10px;margin-top:12px}
.pe-b label{font-size:14px;color:var(--ink)}
.pe-b input{width:100%;padding:12px 14px;border:1px solid rgba(0,0,0,.18);border-radius:12px;font-size:16px}
.pe-f{display:flex;flex-wrap:wrap;gap:8px}
.pe-f button{padding:8px 16px;border-radius:41px;border:1px solid rgba(0,0,0,.2);background:#fff;font-size:18px;line-height:1.2}
.pe-f button[aria-checked=true]{background:#000;color:#fff;border-color:#000}
.pe-pv{background:var(--cream);border-radius:12px;padding:22px 16px;display:grid;justify-items:center;gap:6px;text-align:center;border:1px dashed rgba(176,141,87,.5)}
.pe-pv span{font-family:var(--f-title);letter-spacing:.3em;font-size:13px;color:var(--gold)}
.pe-pv b{font-weight:400;font-size:clamp(24px,4vw,32px);color:var(--ink);line-height:1.2;overflow-wrap:anywhere}
.pe-pv em{font-style:normal;font-size:12px;color:var(--muted)}
.pe-n{font-size:12.5px;color:var(--muted);line-height:1.5}
.ci-pe{color:var(--gold)!important}

/* ───────── Blog (/blog, assets/blog.js) ───────── */
.bl{padding:clamp(36px,6vw,72px) 0;background:var(--cream)}
.bl-h{text-align:center;max-width:720px;margin:0 auto}
.bl-h h1,.blp h1,.blp h2,.bl-c b,.blp-rel h2,.blp-pr h2{font-family:var(--f-title);font-weight:400;letter-spacing:0}
.bl-h h1{font-size:clamp(30px,4.4vw,50px);line-height:1.15;margin:10px 0 12px}.bl-h h1 em{font-style:italic;color:var(--gold)}
.bl-h p{font-size:17px}
.bl-tags{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:24px 0 30px}
.bl-tags a{padding:7px 16px;border-radius:41px;border:1px solid rgba(0,0,0,.18);background:#fff;font-size:14px}
.bl-tags a[aria-current]{background:#000;color:#fff;border-color:#000}
.bl-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:20px}
.bl-c{display:flex;flex-direction:column;background:#fff;border-radius:var(--r);overflow:hidden;transition:transform .2s var(--e),box-shadow .2s}
.bl-c:hover{transform:translateY(-3px);box-shadow:0 18px 40px -24px rgba(16,15,13,.35)}
.bl-ci{aspect-ratio:16/10;overflow:hidden;background:var(--soft)}.bl-ci img{width:100%;height:100%;object-fit:cover}
.bl-ct{display:grid;gap:6px;padding:18px 20px 22px}
.bl-ct small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.bl-ct b{font-size:21px;line-height:1.3;color:var(--ink)}.bl-ct span{font-size:15px;color:var(--muted);line-height:1.6}
.bl-cta{margin:40px auto 0;max-width:760px;background:var(--night);color:#fff;border-radius:var(--r);padding:26px;display:grid;gap:8px;justify-items:center;text-align:center}
.bl-cta b{font-family:var(--f-title);font-weight:400;font-size:24px;color:#fff}.bl-cta span{color:rgba(255,255,255,.8)}.bl-cta .btn{background:#fff;color:#000;margin-top:6px}
.blp{padding:clamp(28px,5vw,60px) 0;background:#fff}
.blp-w{max-width:780px}
.blp-bc{font-size:13px;color:var(--muted);margin-bottom:12px}.blp-bc a{color:var(--gold)}
.blp h1{font-size:clamp(30px,4.6vw,46px);line-height:1.15}
.blp-m{font-size:14px;color:var(--muted);margin:10px 0 22px}
.blp-hero{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r);margin-bottom:28px}
.blp-b{font-size:17.5px;line-height:1.8;color:var(--ink-2)}
.blp-b p{margin:0 0 18px}.blp-b h2{font-size:clamp(24px,3vw,30px);margin:34px 0 12px;color:var(--ink)}.blp-b h3{font-size:20px;margin:24px 0 8px}
.blp-b ul{margin:0 0 18px 22px}.blp-b li{margin-bottom:6px}
.blp-b a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.bl-tip{background:var(--cream);border-left:3px solid var(--gold);border-radius:12px;padding:16px 20px;margin:22px 0}
.bl-tip span{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}.bl-tip p{margin:0}
.bl-pc{display:flex;gap:16px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:14px;margin:22px 0;background:#fff}
.bl-pc-i{flex:none;width:96px;height:96px;border-radius:12px;overflow:hidden;background:var(--soft)}.bl-pc-i img{width:100%;height:100%;object-fit:cover}
.bl-pc>div{display:grid;gap:4px;font-size:15px}.bl-pc b{color:var(--ink);font-weight:500;line-height:1.35}.bl-pc .btn{min-height:40px;padding:0 18px;font-size:14px;justify-self:start;margin-top:4px}
.blp-pr,.blp-rel{margin-top:44px}.blp-pr h2,.blp-rel h2{font-size:26px;margin-bottom:14px}
.blp-pr>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:12px}.blp-pr .bl-pc{margin:0}

/* Contenido previo para Google (scripts/prerender.mjs): se ve un instante hasta que carga la tienda */
.seo-pre{padding:28px var(--gut) 60px;max-width:1100px}
.seo-bc{font-size:13px;color:var(--muted);margin-bottom:10px}.seo-bc a{color:var(--gold)}
.seo-pre h1{font-family:var(--f-title);font-weight:400;font-size:clamp(28px,4vw,42px);letter-spacing:0}
.seo-price{font-size:20px;color:var(--ink);margin:6px 0 16px}
.seo-imgs{display:flex;gap:10px;overflow-x:auto;margin-bottom:18px}.seo-imgs img{width:min(320px,80vw);height:auto;border-radius:16px;flex:none}
.seo-body{max-width:760px}.seo-pre h2{font-family:var(--f-title);font-weight:400;margin:30px 0 14px}
.seo-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}
.seo-grid a{display:grid;gap:6px}.seo-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:14px}.seo-grid b{font-weight:500;color:var(--ink)}

/* Puntos IDARIA (/cuenta) */
.pt{display:grid;gap:12px}
.pt-n{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.pt-n b{font-family:var(--f-title);font-weight:400;font-size:42px;color:var(--ink);line-height:1}
.pt-n span{color:var(--ink)}.pt-n small{width:100%;font-size:13px;color:var(--muted)}
.pt-b{height:8px;border-radius:8px;background:var(--soft);overflow:hidden}.pt-b i{display:block;height:100%;background:var(--gold);border-radius:8px}
.pt-v{background:var(--cream);border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.9}.pt-v small{display:block;color:var(--muted)}.pt-v code{letter-spacing:1px;color:var(--ink)}
.pts-n{margin:4px 0 0;font-size:13.5px;color:var(--muted)}.pts-n b{color:var(--gold);font-weight:500}
@media(max-width:1100px){#nav a[href="/blog"]{display:none}}

/* Packs listos (/pages/packs) */
.rp{margin:0 0 40px}
.rp-hd{text-align:center;margin:0 auto 22px}
.rp .rp-hd h2{font-family:var(--f-title);font-weight:400;letter-spacing:0;font-size:clamp(26px,3.4vw,36px);line-height:1.2;margin:8px 0 0}.rp-hd h2 em{font-style:italic;color:var(--gold)}
.rp-g{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
@media(max-width:1000px){.rp-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.rp-g{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px}.rp-c{flex:0 0 78%;scroll-snap-align:start}}
.rp-c{display:flex;flex-direction:column;gap:6px}
.rp-im{position:relative;aspect-ratio:1;border-radius:var(--r);overflow:hidden;background:var(--soft);margin-bottom:6px}
.rp-im>img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--e)}.rp-c:hover .rp-im>img{transform:scale(1.04)}
.rp-badge{position:absolute;top:12px;left:12px;background:#000;color:#fff;font-size:12px;padding:4px 10px;border-radius:20px}
.rp-th{position:absolute;right:12px;bottom:12px;display:flex;align-items:center}
.rp-th img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid #fff;margin-left:-10px;box-shadow:0 4px 10px -4px rgba(0,0,0,.35);background:#fff}
.rp-th em{margin-left:-10px;width:44px;height:44px;border-radius:50%;background:var(--night);color:var(--gold-3);font-style:normal;font-size:13px;display:grid;place-items:center;border:2px solid #fff;display:none}
.rp .rp-c h3{font-family:var(--f-title)!important;font-weight:400!important;font-size:21px;letter-spacing:0;line-height:1.25}
.rp-c>p{font-size:14px;color:var(--muted);line-height:1.55;margin:0}
.rp-in summary{cursor:pointer;font-size:13px;color:var(--ink);text-decoration:underline;text-underline-offset:3px;list-style:none}.rp-in summary::-webkit-details-marker{display:none}
.rp-in ul{list-style:none;margin:6px 0 0;font-size:13px;display:grid;gap:3px}.rp-in a{color:var(--muted)}
.rp-pr{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:4px}.rp-pr b{font-size:18px;color:var(--ink);font-weight:500}.rp-pr s{font-size:13px;color:var(--muted)}
.rp-c .btn{min-height:44px}
.rp-or{display:flex;align-items:center;gap:14px;margin:38px 0 0;color:var(--muted);font-size:13px;letter-spacing:.2em;text-transform:uppercase}.rp-or::before,.rp-or::after{content:"";flex:1;height:1px;background:var(--line)}

/* Favoritos */
.card{position:relative}
.fav{position:absolute;top:10px;right:10px;z-index:3;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;box-shadow:0 4px 14px -6px rgba(0,0,0,.3)}
.fav svg{width:18px;height:18px;fill:none;stroke:#000;stroke-width:1.6;transition:fill .2s,stroke .2s}
.fav.on svg{fill:var(--gold);stroke:var(--gold)}
.fav-p{position:static;display:inline-grid;vertical-align:middle;margin-left:10px;box-shadow:none;border:1px solid var(--line)}
.fav-ic{position:relative}.fav-ic svg{fill:none}.favp{padding-top:36px;padding-bottom:70px}.favp h1{font-family:var(--f-title);font-weight:400;margin:8px 0 22px}

/* Puntos IDARIA: página /puntos y avisos */
.pts-n{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pts-n svg{width:15px;height:15px;fill:var(--gold)}.pts-n a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.pts-c{margin:6px 0 0;font-size:13.5px}.pts-c a{color:var(--ink-2)}.pts-c b{color:var(--gold);font-weight:500}
.pt-more{float:right;font-size:13px;color:var(--gold);text-decoration:underline}
.ptp{padding:clamp(36px,6vw,72px) 0;background:var(--cream)}.ptp .wrap{max-width:900px}
.ptp-h{text-align:center;max-width:640px;margin:0 auto 30px}.ptp-h h1{font-family:var(--f-title);font-weight:400;letter-spacing:0;font-size:clamp(30px,4.4vw,48px);line-height:1.15;margin:10px 0}.ptp-h h1 em{font-style:italic;color:var(--gold)}.ptp-h p{font-size:18px}
.ptp-s{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.ptp-s li{background:#fff;border-radius:var(--r);padding:24px}.ptp-s i{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gold);color:#fff;font-style:normal;margin-bottom:10px}
.ptp-s h3{font-family:var(--f-title);font-weight:400;font-size:23px;margin-bottom:6px}.ptp-s p{font-size:15.5px}
.ptp-ex{margin:20px 0;background:var(--night);color:rgba(255,255,255,.85);border-radius:var(--r);padding:20px 24px;display:grid;gap:4px}.ptp-ex b{color:var(--gold-3);font-weight:500}
.ptp-cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:24px 0}
.ptp-faq details{background:#fff;border-radius:14px;padding:16px 20px;margin-bottom:10px}.ptp-faq summary{cursor:pointer;color:var(--ink);font-weight:500}.ptp-faq p{margin-top:8px}
/* Favoritos en Mi cuenta */
#acFav h2 small{font-size:14px;color:var(--muted);font-family:var(--f-text)}
.acf{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.acf a{display:grid;gap:4px;font-size:13.5px}.acf img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;background:var(--soft)}.acf span{color:var(--ink);line-height:1.35}.acf b{font-weight:500}
.acf-l{margin-top:10px;font-size:14px}.acf-l a{color:var(--gold);text-decoration:underline}
/* Comparador */
.cmp{padding:clamp(30px,5vw,60px) 0 80px;background:var(--cream)}
.cmp-hd{text-align:center;max-width:620px;margin:0 auto 28px}.cmp-hd h1{font-family:var(--f-title);font-weight:400;letter-spacing:0;font-size:clamp(30px,4.4vw,46px);line-height:1.15;margin:8px 0}.cmp-hd h1 em{font-style:italic;color:var(--gold)}
.cmp-hd p{color:var(--muted)}.cmp-hd a{color:var(--gold);text-decoration:underline}
.cmp-t{background:#fff;border-radius:24px;padding:10px;box-shadow:0 24px 60px -36px rgba(16,15,13,.3);overflow-x:auto}
.cmp-r{display:grid;grid-template-columns:170px repeat(var(--n),minmax(220px,1fr))}
.cmp-r+.cmp-r .cmp-c,.cmp-r+.cmp-r .cmp-l{border-top:1px solid var(--line)}
.cmp-l{padding:16px 14px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);position:sticky;left:0;background:#fff;z-index:1}
.cmp-c{padding:16px 14px;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.cmp-h{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}
.cmp .cmp-im{display:block;width:150px;max-width:100%}.cmp .cmp-im img{position:static!important;inset:auto!important;width:100%!important;height:auto!important;max-height:none;aspect-ratio:1;object-fit:cover;border-radius:18px;background:var(--soft)}
.cmp-h h3{font-family:var(--f-title);font-weight:400;font-size:19px;letter-spacing:0;line-height:1.3;min-height:2.6em}.cmp-p{font-size:17px;color:var(--ink);font-weight:500}
.cmp-h .btn{min-height:40px;padding:0 20px;font-size:14px}
.cmp-sel{display:grid;gap:4px;width:100%;max-width:230px;font-size:12px;color:var(--muted)}.cmp-sel select{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:13px;color:var(--ink-2)}
.cmp-add{justify-content:center;min-height:330px;border:1.5px dashed rgba(176,141,87,.55);border-radius:18px;padding:18px}.cmp-plus{width:48px;height:48px;border-radius:50%;background:var(--cream);color:var(--gold);font-size:26px;display:grid;place-items:center}.cmp-add p{color:var(--muted);font-size:14px}
.cmp-ch{display:flex;flex-wrap:wrap;gap:6px}.cmp-ch i{font-style:normal;font-size:12.5px;background:var(--cream);color:var(--ink-2);padding:4px 10px;border-radius:20px}.cmp-no{color:var(--muted)}
@media(max-width:700px){.cmp-r{grid-template-columns:110px repeat(var(--n),minmax(170px,1fr))}.cmp .cmp-im{width:110px}}
/* Ficha: Guardar y Comparar */
.pd-x{display:flex;gap:10px;margin:12px 0 4px}
.pd-xb{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--line);border-radius:var(--pill);background:#fff;color:var(--ink);font-size:14px;transition:border-color .2s}
.pd-xb:hover{border-color:#000}.pd-xb svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.pd-xb.on svg{fill:var(--gold);stroke:var(--gold)}
/* Puntos: viñeta «¿Qué son?» */
.pts-q{position:relative;display:inline-block}.pts-q>button{color:var(--muted);text-decoration:underline;text-underline-offset:3px;font-size:13.5px}
.pts-pop{display:none;position:absolute;left:0;top:calc(100% + 8px);z-index:20;width:min(280px,80vw);background:var(--night);color:rgba(255,255,255,.9);font-size:13.5px;line-height:1.5;padding:12px 14px;border-radius:12px;box-shadow:0 14px 30px -12px rgba(0,0,0,.45)}
.pts-pop::before{content:"";position:absolute;top:-6px;left:22px;border:6px solid transparent;border-top:0;border-bottom-color:var(--night)}
.pts-pop a{color:var(--gold-3);text-decoration:underline;white-space:nowrap}
.pts-q.open .pts-pop{display:block}
@media(hover:hover){.pts-q:hover .pts-pop{display:block}}
.cmp .cmp-im{display:block;position:relative}.cmp .cmp-im img{position:static!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:1;object-fit:cover}
.cmp .cmp-im img{max-height:220px}
.ptp .ptp-s h3{font-family:var(--f-title)!important;font-weight:400!important;letter-spacing:0}

/* Gracias: completa tu rutina */
.th-rec{max-width:1000px;margin:10px auto 70px;padding:0 var(--gut);text-align:center}
.th-rec h2{font-family:var(--f-title);font-weight:400;letter-spacing:0;font-size:clamp(24px,3vw,32px);margin:8px 0}.th-rec>p{color:var(--muted);margin-bottom:20px}
.th-rec .grid{text-align:left}

/* Asistente con IA (assets/chatbot.js) */
.cb .cb-st{flex-direction:row;flex-wrap:wrap}.cb .cb-st button{border-radius:20px;font-size:12.5px;padding:7px 11px}
.cb .cb-st:empty{display:none}
.cb-f{display:flex;gap:8px;align-items:flex-end;padding:10px 12px 6px;border-top:1px solid var(--line);background:#fff}
.cb-f textarea{flex:1;resize:none;border:1px solid rgba(0,0,0,.18);border-radius:16px;padding:10px 12px;font-size:15px;line-height:1.4;max-height:110px;font-family:inherit}
.cb-f textarea:focus{outline:none;border-color:#000}
.cb-f textarea{overflow-y:auto;scrollbar-width:none}.cb-f textarea::-webkit-scrollbar{display:none}
.cb-f button{width:42px;height:42px;border-radius:50%;background:#000;display:grid;place-items:center;flex:none}.cb-f button:disabled{opacity:.4}
.cb-f svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linejoin:round}
.cb-legal{font-size:10.5px;color:var(--muted);text-align:center;padding:0 12px 8px;background:#fff;line-height:1.3}
.cb header .cb-new{margin-left:auto;font-size:18px;opacity:.75}.cb header .cb-new+button{margin-left:6px}
.cb-dots{display:inline-flex;gap:4px}.cb-dots i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:cbd 1s infinite}.cb-dots i:nth-child(2){animation-delay:.15s}.cb-dots i:nth-child(3){animation-delay:.3s}
@keyframes cbd{0%,80%,100%{opacity:.25}40%{opacity:1}}

/* Vídeo de portada fijo (index.html, #heroStatic): solo en la portada; la imagen va debajo del vídeo y se ve al instante */
.hero-static{display:none}.is-home .hero-static{display:block}.is-home .app-wait{display:none}
.hero-static .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-static video{z-index:1}.hero-static .hero-btn{z-index:2}

/* Aviso de fechas límite de Navidad (ficha y carrito) */
.xmas-n{margin:10px 0 0;padding:10px 12px;background:#f3f6f2;border-left:3px solid #123524;font-size:13px;line-height:1.5;color:#1f2a22}
.xmas-n a{color:#123524;text-decoration:underline}
[dir=rtl] .xmas-n{border-left:0;border-right:3px solid #123524}

/* packs: rutinas listas como botones que marcan sus productos */
.rk{text-align:center;margin:0 0 30px}
.rk-l{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.rk-c{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.rk-b{border:1px solid #d9d4cc;border-radius:999px;padding:9px 16px;font-size:14px;background:#fff;color:#000;transition:background .2s,border-color .2s,color .2s}
.rk-b:hover{border-color:#000}
.rk-b[aria-pressed="true"]{background:#000;border-color:#000;color:#fff}
.rk-d{min-height:1.4em;margin:12px auto 0;max-width:560px;font-size:14px;color:var(--muted)}
@media(max-width:600px){.rk-c{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px}.rk-c::-webkit-scrollbar{display:none}.rk-b{flex:none}}
.pk .it.on .ok{cursor:pointer}
/* ✓ del pack: rebota al añadir; al pasar el ratón encoge y se vuelve × para indicar que se quita */
@keyframes okPop{0%{transform:scale(0)}55%{transform:scale(1.3)}75%{transform:scale(.9)}100%{transform:scale(1)}}
.pk .it.on .ok{animation:okPop .45s var(--e)}
.pk .it.on .ok:hover{transform:scale(.85);background:#000;color:#fff;font-size:0}
.pk .it.on .ok:hover::before,.pk .it.on .ok:hover::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.6px;border-radius:1px;background:#fff;transform:translate(-50%,-50%) rotate(45deg)}
.pk .it.on .ok:hover::after{transform:translate(-50%,-50%) rotate(-45deg)}
.pk .it.on .ok:active{transform:scale(.7)}
/* beneficios en móvil: una columna compacta con 3 visibles y «Ver todos» */
.ben-more{display:none}
@media(max-width:749px){
  .pp-ben ul{grid-template-columns:1fr!important;gap:8px!important;padding-bottom:8px!important}
  .pp-ben li{flex-direction:row!important;align-items:center;min-height:0!important;padding:12px 16px!important;gap:12px!important;border-radius:14px}
  .pp-ben .bi{width:28px;height:28px}
  .pp-ben h4{font-size:15px}
  .pp-ben:not(.all) li:nth-child(n+4){display:none}
  .ben-more{display:block;margin:4px auto 24px;background:none;border:0;font-size:14px;text-decoration:underline;color:#000;cursor:pointer}
}
