/* css/estilo.css */
/* Plantify · sistema visual "Espacio Propio" (dirección de arte: Codex/ChatGPT, 2026-09-23) */
:root{
  --papel:#F4F3EE;--papel2:#ECEBE4;--blanco:#fff;--tinta:#25332B;--tinta2:#5b6660;--muted:#80877f;
  --bosque:#17392E;--bosque2:#0f2a21;--salvia:#778a71;--linea:#e4e6dd;
  --negro:#111111;--negro2:#000;--plomo:#E9E8E4;--plomo2:#DDDBD5;--oferta:#C8472B;
  --verde-a:#458236;--verde-b:#B5C84A;--grad-verde:linear-gradient(90deg,var(--verde-a),var(--verde-b));--grad-verde-claro:linear-gradient(90deg,#5FA36A,#CDDB5A);
  --clasico:#8B6446;--cocoa:#60402A;--expresso:#1F1D1B;--avellana:#D9CFB9;
  --r-card:8px;--r-btn:6px;--r:10px;--sombra:0 8px 24px #25332B14;
  --disp:"Manrope",system-ui,sans-serif;--texto:"Inter",system-ui,sans-serif;
  --w:1240px;--wh:1440px;--gut:48px;
}
@media (max-width:760px){:root{--gut:20px}}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip;scrollbar-gutter:stable}
body{font-family:var(--texto);font-size:16px;line-height:1.55;color:var(--tinta);background:var(--papel);font-synthesis:none;overflow-x:clip}
body.lock{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3,h4{font-family:var(--disp);font-weight:600;letter-spacing:-.02em;line-height:1.08}
h1{font-size:clamp(38px,5.4vw,64px);font-weight:500}
h2{font-size:clamp(30px,3.6vw,46px);font-weight:500}
h3{font-size:clamp(22px,2.2vw,28px)}
h4{font-size:17px;font-weight:600;letter-spacing:-.01em}
p{max-width:62ch}
.wrap{width:min(var(--w),100% - var(--gut)*2);margin-inline:auto}
section{padding:96px 0}
@media (max-width:760px){section{padding:56px 0}}
.eyebrow{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--salvia);margin-bottom:14px}
.lead{font-size:18px;color:var(--tinta2)}
.sechead{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px;flex-wrap:wrap}
.sechead p{margin-top:10px;color:var(--tinta2)}
.link{font-weight:600;border-bottom:1.5px solid currentColor;padding-bottom:2px;white-space:nowrap}
.link:hover{color:var(--bosque)}

/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:var(--r-btn);font-weight:600;font-size:15px;border:1.5px solid var(--negro);transition:.2s;white-space:nowrap}
.btn.primary{background:var(--negro);border-color:var(--negro);color:#fff}
.btn.primary:hover{background:var(--negro2)}
.btn.ghost:hover{background:var(--negro);color:#fff}
.btn.light{border-color:var(--papel);color:var(--papel)}
.btn.light:hover{background:var(--papel);color:var(--tinta)}
.btn.block{width:100%}
.btn.wa{background:#25D366;border-color:#25D366;color:#062b13}
.btn.wa:hover{filter:brightness(.95)}
.btn[disabled]{opacity:.5;pointer-events:none}

/* header */
#hdr{position:sticky;top:0;z-index:50;background:var(--negro);color:#fff;border-bottom:1px solid #ffffff14}
.topbar{background:#000;color:#ffffffcc;border-bottom:1px solid #ffffff12;font-size:12.5px;display:flex;justify-content:center;gap:12px;padding:7px var(--gut);letter-spacing:.01em}
.topbar span:nth-child(n+2){display:none}
@media (min-width:760px){.topbar span:nth-child(n+2){display:inline}}
.logo{display:flex;align-items:center;flex:none}
.logo img{height:30px;width:auto;display:block}
@media (max-width:900px){.logo img{height:26px}}
.nav{display:flex;gap:14px;font-size:14px;font-weight:500;margin-left:4px;color:#fff}
.nav a{padding:6px 0;border-bottom:1.5px solid transparent;color:#fff}
.nav a:hover,.nav a.on{border-color:#fff}
.hact{margin-left:auto;display:flex;gap:6px;align-items:center}
.ic{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font-size:20px;position:relative}
.ic{color:#fff}.ic:hover{background:#ffffff1f}
.cart-count{position:absolute;top:4px;right:2px;background:var(--salvia);color:#fff;font-size:10.5px;font-weight:700;min-width:18px;height:18px;border-radius:6px;display:none;place-items:center;padding:0 5px}
.cart-count.on{display:grid}
.burger{display:none;font-size:22px;width:42px;height:42px;color:#fff}
@media (max-width:900px){
  .burger{display:block}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--negro);flex-direction:column;gap:0;padding:8px var(--gut) 16px;border-bottom:1px solid #ffffff1a;margin:0;max-height:calc(100vh - 100px);overflow:auto}
  .nav.open{display:flex}.nav a{padding:12px 0;border-bottom:1px solid #ffffff1a}
}

/* carrito */
#overlay{position:fixed;inset:0;background:#25332B55;opacity:0;pointer-events:none;transition:.25s;z-index:60}
#overlay.show{opacity:1;pointer-events:auto}
#drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);background:var(--papel);z-index:70;transform:translateX(105%);transition:.3s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column;box-shadow:var(--sombra);visibility:hidden}
#drawer.open{transform:none;visibility:visible}
#drawer header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--linea);font-family:var(--disp);font-size:18px}
#drawer .x,.ci .x{font-size:26px;line-height:1;width:36px;height:36px;border-radius:50%;display:grid;place-items:center}
#drawer .x:hover,.ci .x:hover{background:var(--papel2)}
#drawerItems{flex:1;overflow:auto;padding:16px 24px}
#drawerItems .empty{text-align:center;color:var(--muted);padding:60px 0}
#drawerItems .empty a{color:var(--bosque);font-weight:600;border-bottom:1.5px solid}
.ci{display:grid;grid-template-columns:72px 1fr 36px;gap:14px;padding:14px 0;border-bottom:1px solid var(--linea);align-items:start}
.ci img{width:72px;height:72px;object-fit:cover;border-radius:8px;background:#fff}
.ci b{display:block;font-size:14px}.ci small{color:var(--muted);display:block;margin:2px 0 8px}
.ci-row{display:flex;justify-content:space-between;align-items:center}
.qty{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--linea);border-radius:6px;padding:2px 4px;font-weight:600;font-size:14px}
.qty button{width:26px;height:26px;border-radius:4px}.qty button:hover{background:var(--papel2)}
#drawer footer{padding:20px 24px;border-top:1px solid var(--linea);display:grid;gap:10px}
#drawer .tot{display:flex;justify-content:space-between;font-size:18px}
#drawer small{color:var(--muted)}
#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--tinta);color:var(--papel);padding:12px 20px;border-radius:8px;font-size:14px;opacity:0;transition:.25s;z-index:80;pointer-events:none}
#toast.show{opacity:1;transform:translate(-50%,0)}

/* tarjetas */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media (max-width:1000px){.grid{grid-template-columns:repeat(3,1fr);gap:18px}}
@media (max-width:640px){.grid{grid-template-columns:repeat(2,1fr);gap:12px}}
.card{display:flex;flex-direction:column;background:var(--blanco);border-radius:var(--r-card);overflow:hidden;border:1px solid var(--linea);transition:.25s;position:relative}
@media (hover:hover) and (pointer:fine){.card:hover{transform:translateY(-3px);box-shadow:var(--sombra);border-color:transparent}}
.cimg{aspect-ratio:7/8;position:relative;overflow:hidden;background:var(--plomo);display:block}
/* Próximamente: foto borrosa + cinta roja en diagonal, sin enlace */
.card.prox{cursor:default}
.card.prox .cimg img{filter:blur(14px) saturate(.7) brightness(.85);transform:scale(1.2)}
.prox-cinta{position:absolute;top:22px;right:-44px;width:180px;transform:rotate(38deg);background:#c62828;color:#fff;text-align:center;font:800 11px/1 Manrope,Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:9px 0;box-shadow:0 4px 12px rgba(0,0,0,.28)}
.card.prox h4{color:var(--negro)}
.card.prox .cnote{color:#c62828;font-weight:600}
.cimg img{width:100%;height:100%;object-fit:cover;transition:opacity .45s ease,transform .6s ease}
.cimg img.alt{position:absolute;inset:0;opacity:0}
.card.peek .cimg img.alt{opacity:1}
@media (hover:hover) and (pointer:fine){.card:hover .cimg img.alt{opacity:1}.card:hover .cimg img.base{transform:scale(1.02)}}
.badges{position:absolute;top:12px;left:12px;display:grid;gap:6px;z-index:2}
.badge{position:static;background:var(--negro);color:#fff;font-size:11.5px;font-weight:700;padding:5px 9px;border-radius:6px;letter-spacing:.02em;text-transform:uppercase;width:max-content}
.badge.off{background:var(--oferta)}.badge.hot{background:#F26B3A}.badge.new{background:var(--salvia)}.badge.own{background:#fff;color:var(--negro);border:1px solid var(--linea)}
.badge.gray{background:var(--muted)}
.gal .badge{position:absolute;top:12px;left:12px}
.cacts{position:absolute;top:10px;right:10px;display:grid;gap:6px;z-index:2}
.cacts button{width:36px;height:36px;border-radius:50%;background:#fff;color:var(--negro);display:grid;place-items:center;box-shadow:0 2px 8px #0000001f;font-size:16px;transition:.2s;opacity:0;transform:translateX(6px)}
.card:hover .cacts button,.cacts button.on,.cacts button.play{opacity:1;transform:none}
.cacts button:hover{background:var(--negro);color:#fff}
.cacts button.on{color:var(--oferta)}
.cacts button.play{opacity:1}
@media (hover:none){.cacts button{opacity:1;transform:none}}
.cplay{position:absolute;left:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:6px;background:#000000cc;color:#fff;border-radius:99px;padding:6px 12px 6px 8px;font-size:12px;font-weight:600;backdrop-filter:blur(4px)}
.cplay::before{content:"";width:0;height:0;border-left:9px solid #fff;border-top:6px solid transparent;border-bottom:6px solid transparent;margin-left:2px}
.cplay:hover{background:var(--negro)}
.cbody{padding:14px 16px 16px;display:grid;gap:4px;flex:1;align-content:start}
.cbody small{color:var(--muted);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase}
.cbody h4{margin:2px 0 2px;line-height:1.25;font-size:15.5px}
.cbody h4 a{color:inherit}
.crate{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.crate .st{color:#E8A317;letter-spacing:1px;font-size:12px}
.cprice{display:flex;gap:10px;align-items:baseline;margin-top:4px}
.cprice b{font-size:16px;color:var(--negro)}.cprice s{color:var(--muted);font-size:13px}.cprice .save{font-size:12px;color:var(--oferta);font-weight:600}
.sw{display:flex;gap:6px;margin-top:6px}
.sw i{width:15px;height:15px;border-radius:50%;border:1.5px solid #fff;box-shadow:0 0 0 1px var(--linea)}
.cfoot{display:flex;gap:8px;margin-top:10px}
.cfoot .btn{min-height:40px;padding:0 14px;font-size:13.5px;flex:1}
.cfoot .btn.mini{flex:none;width:40px;padding:0}
.cnote{font-size:12px;color:var(--salvia);font-weight:500;margin-top:6px}
@media (max-width:640px){.cbody{padding:10px 12px 12px}.cfoot .btn{min-height:38px;font-size:13px;padding:0 10px}.cbody h4{font-size:14px}}

/* modal de video */
#vmodal{position:fixed;inset:0;background:#000000d9;z-index:90;display:none;place-items:center;padding:24px}
#vmodal.open{display:grid}
#vmodal .vbox{width:min(900px,100%);background:#000;border-radius:8px;overflow:hidden;position:relative}
#vmodal video,#vmodal .vph{width:100%;aspect-ratio:16/9;display:block;background:#111;object-fit:contain}
#vmodal video{max-height:calc(100dvh - 150px)}
#vmodal .vph{display:grid;place-items:center;text-align:center;color:#fff;padding:32px;background:#151515 center/cover no-repeat;position:relative}
#vmodal .vph::before{content:"";position:absolute;inset:0;background:#000000a6}
#vmodal .vph>div{position:relative;display:grid;gap:8px;justify-items:center}
#vmodal .vph b{font-family:var(--disp);font-size:22px}
#vmodal .vph small{color:#ffffffb3;max-width:46ch}
#vmodal .vph .pl{width:64px;height:64px;border-radius:50%;background:#fff;display:grid;place-items:center;margin-bottom:8px}
#vmodal .vph .pl::before{content:"";border-left:20px solid #111;border-top:12px solid transparent;border-bottom:12px solid transparent;margin-left:5px}
#vmodal .vinfo{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;color:#fff;font-size:14px;flex-wrap:wrap}
#vmodal .vinfo b{font-family:var(--disp)}
#vmodal .vload{position:absolute;left:50%;top:40%;width:44px;height:44px;margin:-22px 0 0 -22px;border:3px solid #ffffff33;border-top-color:#fff;border-radius:50%;animation:vgira .8s linear infinite;z-index:1;pointer-events:none}
@keyframes vgira{to{transform:rotate(360deg)}}
#vmodal .vinfo .btn{min-height:38px;font-size:13.5px;border-color:#fff;color:#fff}#vmodal .vinfo .btn:hover{background:#fff;color:#111}
#vmodal .x{position:absolute;top:8px;right:8px;width:40px;height:40px;border-radius:50%;background:#00000080;color:#fff;font-size:26px;display:grid;place-items:center;z-index:2}
.gal .gplay{position:absolute;right:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:8px;background:var(--negro);color:#fff;border-radius:99px;padding:9px 16px 9px 12px;font-size:13.5px;font-weight:600}
.gal .gplay::before{content:"";border-left:10px solid #fff;border-top:6px solid transparent;border-bottom:6px solid transparent}
.gal .main{background:var(--plomo);aspect-ratio:7/8}
.gal .thumbs button.vid{position:relative}.gal .thumbs button.vid::after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;background:#0000008a;color:#fff;font-size:18px}

/* propuesta de valor + categorías marketplace */
.vp{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:800px){.vp{grid-template-columns:1fr}}
.vp article{background:#fff;border:1px solid var(--linea);border-radius:var(--r-card);padding:28px}
.vp article b{display:block;font-family:var(--disp);font-size:20px;margin:10px 0 8px;letter-spacing:-.01em}
.vp article p{font-size:14.5px;color:var(--tinta2)}
.vp .num{font-family:var(--disp);font-size:12px;letter-spacing:.14em;color:var(--salvia);font-weight:700}
.fams{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
@media (max-width:1000px){.fams{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.fams{grid-template-columns:repeat(2,1fr);gap:10px}}
.fam{display:block;background:#fff;border:1px solid var(--linea);border-radius:var(--r-card);overflow:hidden;transition:.2s;position:relative}
.fam:hover{transform:translateY(-3px);box-shadow:var(--sombra)}
.fam .fi{aspect-ratio:1/1;background:var(--plomo);display:grid;place-items:center;overflow:hidden}
.fam .fi img{width:100%;height:100%;object-fit:cover}
.fam .fi span{font-size:44px}
.fam div.t{padding:12px 14px 14px}
.fam b{display:block;font-family:var(--disp);font-size:15px}
.fam small{color:var(--muted);font-size:12.5px}
.fam.soon .fi{filter:grayscale(1);opacity:.7}
.fam .tag{position:absolute;top:10px;left:10px;background:var(--negro);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:5px}
.fam.soon .tag{background:#fff;color:var(--negro);border:1px solid var(--linea)}
.brands{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}
@media (max-width:800px){.brands{grid-template-columns:1fr}}
.brands article{border-radius:var(--r-card);padding:36px;position:relative;overflow:hidden;min-height:300px;display:flex;flex-direction:column;justify-content:end}
.brands .own{background:var(--negro);color:#fff}
.brands .own img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.brands .own>*{position:relative}
.brands .mk{background:#fff;border:1px solid var(--linea)}
.brands h3{margin:8px 0 10px}
.brands p{font-size:15px;max-width:44ch}
.brands .own p{color:#ffffffcc}
.brands .list{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}
.brands .list span{border:1px solid var(--linea);border-radius:20px;padding:6px 12px;font-size:13px}
.brands .own .list span{border-color:#ffffff40}
.trustbar{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:22px 0;border-top:1px solid var(--linea);border-bottom:1px solid var(--linea)}
@media (max-width:800px){.trustbar{grid-template-columns:repeat(2,1fr)}}
.trustbar div{font-size:13.5px;color:var(--tinta2)}.trustbar b{display:block;color:var(--tinta);font-size:14.5px}
.wishcount{position:absolute;top:4px;right:2px;background:var(--oferta);color:#fff;font-size:10.5px;font-weight:700;min-width:18px;height:18px;border-radius:6px;display:none;place-items:center;padding:0 5px}.wishcount.on{display:grid}

/* hero — banner ancho y bajo (tipo Meli): no secuestra la pantalla, deja ver categorías debajo */
.hero{position:relative;height:clamp(300px,30vw,440px);color:var(--papel);overflow:hidden;padding:0;background:var(--expresso)}
.hero-slide{position:absolute;inset:0;display:grid;align-items:center;opacity:0;visibility:hidden;transition:opacity 1.4s cubic-bezier(.4,0,.2,1),visibility 0s 1.4s}
.hero-slide.active{opacity:1;visibility:visible;z-index:1;transition:opacity 1.4s cubic-bezier(.4,0,.2,1)}
.hero-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.08);transition:transform 1.4s ease}
.hero-slide.active img{transform:scale(1);transition:transform 8s cubic-bezier(.2,.6,.3,1)}
.hero-slide .wrap>*{opacity:0;transform:translateY(18px);filter:blur(6px);transition:opacity .4s,transform .4s,filter .4s}
.hero-slide.active .wrap>*{opacity:1;transform:none;filter:none;transition:opacity 1s ease,transform 1s cubic-bezier(.2,.7,.2,1),filter 1s ease}
.hero-slide.active .wrap>:nth-child(1){transition-delay:.45s}
.hero-slide.active .wrap>:nth-child(2){transition-delay:.6s}
.hero-slide.active .wrap>:nth-child(3){transition-delay:.75s}
.hero-slide.active .wrap>:nth-child(4){transition-delay:.9s}
.hero-arrow{position:absolute;top:50%;z-index:3;width:46px;height:46px;margin-top:-23px;border-radius:50%;border:1px solid #ffffff40;background:#1f1d1b40;color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .35s,background .3s,transform .3s}
.hero-prev{left:18px}.hero-next{right:18px}
@media (min-width:761px){.hero .wrap{width:min(var(--w),100% - 168px)}}
.hero:hover .hero-arrow,.hero-arrow:focus-visible{opacity:1;pointer-events:auto}
@media (hover:none){.hero-arrow{display:none}}
.hero-arrow:hover{background:#fff;color:#111;transform:scale(1.06)}
@media (prefers-reduced-motion:reduce){.hero-slide,.hero-slide img,.hero-slide .wrap>*{transition:opacity .3s!important;transform:none!important;filter:none!important}}
.hero-slide::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#1f1d1bd9 0%,#1f1d1b99 30%,#1f1d1b33 55%,transparent 70%)}
.hero-slide img.pos-bajo{object-position:center 78%}
.hero .wrap{position:relative;z-index:1;padding:0 0 12px}
.hero-dots{position:absolute;left:50%;bottom:14px;z-index:3;display:flex;gap:8px;transform:translateX(-50%)}
.hero-dots button{width:8px;height:8px;padding:0;border-radius:99px;border:1px solid #fff9;background:#fff5;cursor:pointer}
.hero-dots button.on{background:#fff;border-color:#fff}
.hero-dots button{position:relative}.hero-dots button::after{content:"";position:absolute;inset:-12px -3px}/* área táctil ~24 px sin cambiar el punto */
.hero h1,.hero h2.h1{max-width:14ch;font-size:clamp(24px,3.6vw,42px)}
.hero p{margin:10px 0 20px;font-size:15px;max-width:50ch;color:#f4f3eecc}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap}
.hero .kpis{display:none}
@media (max-width:760px){
  .hero{height:340px}
  .hero-slide{align-items:end}
  .hero-arrow{width:36px;height:36px;top:32%}
  .hero-prev{left:10px}.hero-next{right:10px}
  .hero-slide img,.hero-slide img.pos-bajo{object-position:68% center}
  .hero-slide::after{background:linear-gradient(180deg,#1f1d1b00 25%,#1f1d1bd9 72%)}
  .hero .wrap{padding:20px 0 34px}
  .hero .eyebrow{margin-bottom:8px}
  .hero h1,.hero h2.h1{max-width:18ch;font-size:26px;line-height:1.1}
  .hero p{margin:8px 0 14px;font-size:14px;line-height:1.4;max-width:34ch}
}
.hero .kpis span{font-size:13px;color:#f4f3eeaa}
/* puntos del banner: cuadraditos arriba a la derecha */
.hero-dots{left:auto;right:28px;top:22px;bottom:auto;transform:none;gap:6px}
.hero-dots button{width:9px;height:9px;border-radius:3px;transition:background .3s,border-color .3s}
@media (max-width:760px){.hero-dots{right:16px;top:14px}}

/* vitrina: cuadros que muerden el borde inferior del banner (home) */
.hero.con-vitrina{--sube:52px}
@media (min-width:761px){.hero.con-vitrina{height:clamp(370px,31vw,460px)}}
.hero.con-vitrina .wrap{padding-bottom:calc(var(--sube) + 12px)}
.vitrina{--sube:52px;position:relative;z-index:4;margin-top:calc(var(--sube) * -1);padding:0}
/* carrusel: se ven 7 en escritorio y el resto sigue a la derecha; el padding vertical deja ver sombra y hover */
.vt-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 2px 30px;margin-block:-8px -30px;overscroll-behavior-x:contain}
.vt-grid::-webkit-scrollbar{display:none}
.vt{flex:0 0 calc((100% - 6 * 14px) / 7);scroll-snap-align:start;display:flex;flex-direction:column;gap:10px;color:var(--tinta);text-align:center;min-width:0}
.vt-nav{--x:max(4px,calc((100% - min(var(--w),100% - var(--gut) * 2)) / 2 - 20px));position:absolute;top:calc(50% - 38px);z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:#fff;color:var(--negro);font:500 26px/1 var(--disp);box-shadow:0 6px 18px #1f1d1b33;cursor:pointer;display:grid;place-items:center;padding-bottom:3px;transition:opacity .25s}
.vt-nav.prev{left:var(--x)}.vt-nav.next{right:var(--x)}
.vitrina.en-inicio .prev,.vitrina.en-fin .next{opacity:0;pointer-events:none}
@media (hover:none),(max-width:760px){.vt-nav{display:none}}
/* Vitrina: 4 accesos de decisión (dirección de arte de Codex, 2026-09-26). Las 7 tarjetas de antes no se tocan. */
.vitrina .vt:focus-visible{
  outline:2px solid var(--bosque);
  outline-offset:3px;
  border-radius:var(--r);
}
.vitrina .vt:focus-visible .vt-ft{
  transform:translateY(-3px);
}
.vt-ft.vt-cuota{
  background:var(--negro);
  color:var(--papel);
  border:1px solid color-mix(in srgb,var(--papel) 18%,transparent);
}
.vt-ft.vt-combo{
  background:var(--plomo);
  color:var(--negro);
}
.vt-ft.vt-gar{
  background:var(--papel2);
  color:var(--negro);
  border:1px solid var(--plomo2);
}
/* El contenedor conserva todo el ancho del cuadrado.
   El margen interior lo da .vt-face, no el padding. */
.vt-ft.vt-dato{
  container-type:inline-size;
  container-name:vt-card;
}
.vt-ft.vt-dato{
  display:block;
  padding:0;
  text-align:center;
  font-family:var(--texto);
}
.vt-face{
  position:absolute;
  inset:9%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  gap:2cqw;
  min-width:0;
}
.vt-eyebrow,
.vt-detail,
.vt-coverage,
.vt-provider{
  display:block;
  font-family:var(--texto);
  font-style:normal;
  font-weight:500;
  line-height:1.15;
}
.vt-eyebrow{
  font-size:10px;
  font-size:clamp(9px,6.5cqw,12px);
}
.vt-detail{
  font-size:11px;
  font-size:clamp(9px,7cqw,12px);
}
.vt-coverage,
.vt-provider{
  font-size:10px;
  font-size:clamp(9px,6cqw,11px);
}
.vt-cuota .vt-eyebrow,
.vt-cuota .vt-provider{
  color:var(--plomo2);
}

/* Guía y combos: foto lifestyle de Codex (2026-09-26) con un solo dato encima */
.vt-ft.vt-foto{
  container-type:inline-size;
  container-name:vt-card;
}
.vt-motor::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,#15130fd9 0,#15130f00 48%);
  pointer-events:none;
}
.vt-cap{
  position:absolute;
  inset:auto 0 7%;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  color:var(--papel);
  line-height:1;
}
.vt-cap strong{
  font:700 26px/1 var(--disp);
  font-size:clamp(17px,20cqw,34px);
  letter-spacing:-.03em;
}
.vt-cap span{
  font:500 11px/1.25 var(--texto);
  font-size:clamp(9px,7cqw,12px);
  color:var(--plomo2);
}
.vt-foto .vt-tag{z-index:1}

/* Cuotas: marco de tarjeta, importe y condiciones */
.vt-ft.vt-cuota::before{
  content:"";
  position:absolute;
  inset:5%;
  border:1px solid color-mix(in srgb,var(--papel) 20%,transparent);
  border-radius:calc(var(--r) * .7);
  pointer-events:none;
}
.vt-cuota .vt-face{
  inset:12% 9%;
  align-items:flex-start;
  text-align:left;
}
.vt-cuota .vt-eyebrow{
  max-width:75%;
}
.vt-credit-chip{
  position:absolute;
  top:0;
  right:0;
  width:17%;
  height:auto;
  fill:none;
  stroke:var(--salvia);
  stroke-width:1.2;
  transition:stroke .28s ease;
}
.vt-money{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  column-gap:3px;
  width:100%;
}
.vt-money strong{
  min-width:0;
  font:700 24px/1.08 var(--disp);
  font-size:clamp(13px,15cqw,29px);
  font-variant-numeric:tabular-nums;
  letter-spacing:-.045em;
  white-space:nowrap;
}
.vt-money>span{
  color:var(--plomo2);
  font:500 10px/1 var(--texto);
  font-size:clamp(9px,6cqw,11px);
}
.vt-pill{
  display:flex;
  flex-wrap:wrap;
  gap:0 3px;
  max-width:100%;
  box-sizing:border-box;
  padding:4px 6px;
  border-radius:var(--r-btn);
  background:color-mix(in srgb,var(--papel) 10%,transparent);
  color:var(--papel);
  font:600 10px/1.2 var(--texto);
  font-size:clamp(9px,6cqw,11px);
  transition:background .28s ease,color .28s ease;
}
.vt-pill>span{
  white-space:nowrap;
}

/* Garantía: número dentro del escudo; cobertura siempre visible */
.vt-gar .vt-face{
  gap:2px;
  gap:1.5cqw;
}
.vt-seal{
  position:relative;
  display:grid;
  place-items:center;
  width:100%;
  height:62%;
  flex:none;
}
.vt-seal svg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  fill:none;
  stroke-width:1.5;
  stroke-linejoin:round;
}
.vt-shield{
  stroke:var(--salvia);
}
.vt-shield-trace{
  stroke:var(--bosque);
  stroke-width:2.5;
  stroke-dasharray:1;
  stroke-dashoffset:1;
  transition:stroke-dashoffset .65s ease;
}
.vt-seal strong{
  position:relative;
  padding-bottom:3%;
  color:var(--negro);
  font:700 38px/1 var(--disp);
  font-size:clamp(27px,30cqw,56px);
  letter-spacing:-.06em;
}
.vt-gar .vt-detail{
  font-weight:600;
}
.vt-coverage{
  color:var(--tinta2);
}

/* Microinteracciones: también disponibles mediante teclado */
.vt:focus-visible .vt-credit-chip{
  stroke:var(--papel);
}
.vt:focus-visible .vt-pill{
  background:var(--papel);
  color:var(--negro);
}
.vt:focus-visible .vt-shield-trace{
  stroke-dashoffset:0;
}
.vitrina .vt:focus-visible .vt-chat .a{
  transform:none;
  opacity:1;
}
.vitrina .vt:focus-visible .vt-ruta .r1{
  stroke-dashoffset:0;
}

@media (hover:hover) and (pointer:fine){
  .vt:hover .vt-credit-chip{
    stroke:var(--papel);
  }
  .vt:hover .vt-pill{
    background:var(--papel);
    color:var(--negro);
  }
  .vt:hover .vt-shield-trace{
    stroke-dashoffset:0;
  }
}
/* Compactación por ancho real de tarjeta, también en escritorio */
@container vt-card (max-width:120px){
  .vt-face{
    inset:8%;
    gap:2px;
  }
  .vt-cuota .vt-face{
    inset:10%;
  }
  .vt-cuota .vt-eyebrow{
    max-width:none;
  }
  .vt-credit-chip,
  .vt-provider{
    display:none;
  }
  .vt-pill{
    flex-direction:column;
    align-items:flex-start;
    padding:3px 4px;
    gap:0;
  }
  .vt-gar .vt-face{
    inset:7%;
  }
}

/* Incluye los widgets anteriores y las reglas que vienen después */
@media (prefers-reduced-motion:reduce){
  .vitrina .vt-grid{
    scroll-behavior:auto!important;
  }
  .vitrina .vt *,
  .vitrina .vt *::before,
  .vitrina .vt *::after{
    animation:none!important;
    transition:none!important;
  }
  .vitrina .vt:hover .vt-ft,
  .vitrina .vt:focus-visible .vt-ft,
  .vitrina .vt:hover .vt-ft>img,
  .vitrina .vt .vt-ruta .pin,
  .vitrina .vt .vt-chat .a{
    transform:none!important;
  }
  .vitrina .vt .vt-wai::after,
  .vitrina .vt .vt-ruta .pulso{
    opacity:0!important;
  }
  .vitrina .vt .vt-shield-trace,
  .vitrina .vt .vt-ruta .r1{
    stroke-dashoffset:0;
  }
}

.vt-tag{
  position:absolute;
  left:8%;
  top:8%;
  padding:5px 7px;
  border-radius:var(--r-btn);
  background:var(--oferta);
  color:var(--blanco);
  font:700 10px/1 var(--disp);
  font-size:clamp(8px,6cqw,10px);
  letter-spacing:.03em;
  text-transform:uppercase;
}
.vt-ft{position:relative;aspect-ratio:1;border-radius:var(--r);overflow:hidden;background:var(--plomo);box-shadow:0 8px 24px #1f1d1b26;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
.vt-ft>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.vt:hover .vt-ft{transform:translateY(-5px);box-shadow:0 18px 34px #1f1d1b3a}
.vt:hover .vt-ft>img{transform:scale(1.06)}
.vt b{font-family:var(--disp);font-size:13.5px;font-weight:600;letter-spacing:0;line-height:1.25}
.vt small{font-size:12px;color:var(--muted);margin-top:-10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vt-mix{background:var(--negro);display:grid;grid-template:repeat(2,minmax(0,1fr))/repeat(2,minmax(0,1fr));gap:4px;padding:8px}
.vt-mix span{position:relative;border-radius:5px;overflow:hidden;background:var(--plomo);min-height:0}
.vt-mix img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* Asesoría: mini chat (pregunta del cliente + respuesta en verde) y asesor «en línea» con pulso */
.vt-wa,.vt-envio{container-type:inline-size}
.vt-wa{background:radial-gradient(120% 80% at 50% 0,#25d36626,#0000 60%),var(--negro);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:10%;text-align:left}
.vt-chat{display:grid;gap:4px;font-size:10.5px;line-height:1.2}
.vt-chat i{font-style:normal;padding:4px 8px;border-radius:10px;max-width:92%;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .45s}
.vt-chat .q{justify-self:start;background:#ffffff1f;border-bottom-left-radius:3px}
.vt-chat .a{justify-self:end;background:#25d366;color:#0b2e19;font-weight:600;border-bottom-right-radius:3px;transform:translateY(4px);opacity:.92}
.vt:hover .vt-chat .a{transform:none;opacity:1}
.vt-wab{display:flex;align-items:center;gap:7px}
.vt-wai{position:relative;flex:none;width:30px;height:30px;border-radius:50%;background:#25d366;display:grid;place-items:center;color:#fff}
.vt-wai svg{width:17px;height:17px}
.vt-wai::after{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:vt-pulso 2.4s ease-out infinite}
.vt-wab>span:last-child{min-width:0}.vt-wab strong{display:block;font:700 11.5px/1.15 var(--disp);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vt-wab em{display:flex;align-items:center;gap:4px;font-style:normal;font-size:10px;color:#ffffffb3}
.vt-wab em i{width:6px;height:6px;border-radius:50%;background:#25d366}
/* Envío: ruta Lima → destino (se dibuja al pasar el mouse), destino grande y costo/días */
.vt-envio{background:var(--plomo2);color:var(--tinta);display:flex;flex-direction:column;justify-content:space-between;padding:10% 11% 11%;text-align:left}
.vt-ruta{width:100%;height:auto;overflow:visible}
.vt-ruta path{fill:none;stroke-linecap:round}
.vt-ruta .r0{stroke:color-mix(in srgb,var(--negro) 45%,transparent);stroke-width:1.6;stroke-dasharray:3 4}
.vt-ruta .r1{stroke:var(--negro);stroke-width:2.2;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .9s cubic-bezier(.6,0,.2,1)}
.vt:hover .vt-ruta .r1{stroke-dashoffset:0}
.vt-ruta .o{fill:var(--negro)}
.vt-ruta text{font:600 7.5px var(--texto);fill:var(--tinta2);text-anchor:middle}
.vt-ruta .pin path{fill:var(--negro)}
.vt-ruta .pin{transform-box:fill-box;transform-origin:50% 100%}
.vt-ruta .pulso{fill:none;stroke:var(--negro);stroke-width:1.4;transform-box:fill-box;transform-origin:center;animation:vt-pulso 2.4s ease-out infinite}
.vt:hover .vt-ruta .pin{animation:vt-rebote .6s .75s cubic-bezier(.3,1.8,.5,1) both}
.vt-dest strong{display:block;font:700 clamp(15px,1.4vw,19px)/1.15 var(--disp);color:var(--negro);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vt-dest em{display:block;font-style:normal;font-size:11.5px;color:var(--tinta2);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@keyframes vt-pulso{0%{transform:scale(1);opacity:.7}80%,100%{transform:scale(1.7);opacity:0}}
@keyframes vt-rebote{0%{transform:translateY(0)}40%{transform:translateY(-5px)}100%{transform:translateY(0)}}
@container (max-width:105px){.vt-chat .q{display:none}.vt-ruta text{display:none}}
@media (prefers-reduced-motion:reduce){.vt-wai::after,.vt-ruta .pulso{animation:none;opacity:0}}
@media (max-width:760px){
  .hero.con-vitrina,.vitrina{--sube:30px}
  .hero.con-vitrina .wrap{padding-bottom:calc(var(--sube) + 20px)}
  /* móvil: una sola fila que se desliza; la 4.ª asoma para que se note que hay más */
  .vt-grid{gap:10px;width:100%;padding-inline:var(--gut);scroll-padding-inline:var(--gut)}
  .vt{flex-basis:calc((100% - 30px) / 3.4)}
  .vt-tag{top:5px;left:5px;padding:4px 5px}
  .vt{gap:7px}
  .vt b{font-size:10.5px;letter-spacing:.03em}
  .vt small{display:none}
  .vt-mix{padding:5px;gap:3px}
  .vt-wa{justify-content:center;align-items:center;padding:8px}.vt-chat,.vt-wab>span:last-child{display:none}
  .vt-wai{width:46px;height:46px}.vt-wai svg{width:25px;height:25px}
  .vt-envio{padding:10px}.vt-ruta text{display:none}.vt-dest strong{font-size:13px}.vt-dest em{font-size:10px}
}

/* categorías */
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:900px){.cats{grid-template-columns:repeat(2,1fr)}}
.cat{position:relative;border-radius:var(--r-card);overflow:hidden;aspect-ratio:4/5;background:var(--papel2);color:var(--papel)}
.cat img{width:100%;height:100%;object-fit:cover;transition:.6s}
.cat:hover img{transform:scale(1.04)}
.cat div{position:absolute;inset:auto 0 0;padding:22px;background:linear-gradient(transparent,#1f1d1bcc)}
.cat h3{font-size:22px}.cat span{font-size:13px;opacity:.85}

/* split / bloques */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media (max-width:900px){.split{grid-template-columns:1fr;gap:32px}}
.split img{border-radius:var(--r-card);width:100%;aspect-ratio:4/3;object-fit:cover}
.split ul{list-style:none;display:grid;gap:12px;margin:24px 0 32px}
.split li{display:flex;gap:12px;align-items:start}
.split li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--salvia);margin-top:9px;flex:none}
.acabados{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0}
.acabados div{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500}
.acabados i{width:32px;height:32px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--linea)}
.dark{background:var(--tinta);color:var(--papel)}
.dark .eyebrow{color:#a9b8a3}.dark .lead,.dark .sechead p{color:#f4f3eebb}
.dark .btn.ghost{border-color:var(--papel);color:var(--papel)}.dark .btn.ghost:hover{background:var(--papel);color:var(--tinta)}

/* comparador */
.comp{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media (max-width:760px){.comp{grid-template-columns:1fr}}
.cbox{background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-card);padding:32px;display:grid;gap:18px}
.cbox.top{border-color:var(--bosque);box-shadow:var(--sombra)}
.cbox h3{display:flex;justify-content:space-between;align-items:baseline}
.cbox h3 small{font-size:13px;font-weight:600;color:var(--salvia);text-transform:uppercase;letter-spacing:.08em}
.cbox .price{font-family:var(--disp);font-size:30px;font-weight:600}
.cbox .price s{font-size:16px;color:var(--muted);font-family:var(--texto);font-weight:400;margin-left:8px}
.specs{display:grid;gap:0;font-size:15px}
.specs div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--linea)}
.specs div span:first-child{color:var(--tinta2)}
.specs div b{font-weight:600}
.cbox img{border-radius:8px;aspect-ratio:16/10;object-fit:cover;width:100%}

/* franja beneficios */
.benef{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media (max-width:900px){.benef{grid-template-columns:repeat(2,1fr)}}
.benef div{padding:24px;border:1px solid var(--linea);border-radius:var(--r-card);background:var(--blanco)}
.benef b{display:block;font-family:var(--disp);font-size:18px;margin-bottom:6px}
.benef p{font-size:14px;color:var(--tinta2)}

/* testimonios */
.tests{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:900px){.tests{grid-template-columns:1fr}}
.test{background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-card);padding:28px}
.test p{font-size:15.5px;margin:12px 0 18px}
.test small{color:var(--muted)}
.stars{color:var(--bosque);letter-spacing:2px;font-size:13px}

/* corporativo banner */
.corp{position:relative;border-radius:var(--r-card);overflow:hidden;min-height:420px;display:grid;align-items:center;color:var(--papel)}
.corp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.corp::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#1f1d1bd9 0%,#1f1d1b66 70%,transparent)}
.corp .in{position:relative;z-index:1;padding:56px;max-width:560px}
@media (max-width:760px){.corp .in{padding:32px 24px}}

/* FAQ */
.faq{max-width:760px}
.faq details{border-bottom:1px solid var(--linea);padding:18px 0}
.faq summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px;font-family:var(--disp)}
.faq summary::after{content:"+";font-size:22px;color:var(--salvia);font-weight:400}
.faq details[open] summary::after{content:"–"}
.faq details p{margin-top:12px;color:var(--tinta2)}

/* footer: foto de pinar con niebla (img/footer-bosque*.jpg) detrás del contenido, contraste inverso:
   arriba (niebla clara) marca y newsletter en oscuro; abajo (bosque oscuro) avisos, columnas y legales en blanco */
#ftr{--fb:#111;--ff:#f4f3f0;--fm:#a8a7a1;--fl:#ffffff21;--oz:#1c1a18;position:relative;overflow:hidden;background:var(--fb);color:var(--ff);padding:0;margin-top:0;font-family:var(--texto)}
/* velocidad: el footer (y su foto de fondo) no se pinta ni se descarga hasta que el usuario se acerca */
#ftr{content-visibility:auto;contain-intrinsic-size:auto 700px}
#ftr .fin{position:relative;width:min(var(--w),100% - var(--gut)*2);margin-inline:auto}
#ftr .fhero{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:clamp(380px,30vw,440px);background:url(../img/footer-bosque.jpg) center 55%/cover no-repeat}
#ftr .fhero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(var(--papel) 0,color-mix(in srgb,var(--papel) 88%,transparent) 22%,color-mix(in srgb,var(--papel) 35%,transparent) 40%,transparent 52%,transparent 60%,#111111a6 78%,var(--fb) 100%)}
#ftr .ftop{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:40px 64px;align-items:start;padding-top:64px;color:var(--oz)}
#ftr .fmarca img{height:clamp(40px,4.2vw,58px);width:auto;display:block}
#ftr .fmarca p{margin-top:16px;max-width:430px;font:600 clamp(16px,1.35vw,19px)/1.45 var(--disp);color:#3a3632}
#ftr .fsoc{display:flex;gap:10px;margin-top:20px}
#ftr .fsoc a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid #1c1a1830;color:var(--oz);background:#ffffff66;transition:background .2s,color .2s}
#ftr .fsoc a:hover{background:var(--oz);color:#fff}
#ftr .fsoc svg,#ftr .ftrust svg{width:19px;height:19px}
#ftr .fnews{justify-self:end;width:min(100%,440px)}
#ftr .fnews p{font:800 clamp(18px,1.6vw,22px)/1.25 var(--disp);color:var(--oz)}
#ftr .fnews small{display:block;margin:6px 0 14px;font-size:14px;color:#4d4640}
#ftr .fform{display:flex;gap:8px}
#ftr .fform input{flex:1;min-width:0;height:48px;border:1px solid #1c1a1833;border-radius:999px;padding:0 18px;background:#ffffffd9;color:var(--oz);font:500 14.5px var(--texto)}
#ftr .fform input:focus{outline:2px solid var(--oz);outline-offset:1px}
#ftr .fform button{height:48px;border:0;border-radius:999px;padding:0 22px;background:var(--oz);color:#fff;font:800 14.5px var(--disp);cursor:pointer}
#ftr .fform button:hover{opacity:.88}
#ftr .ftrust{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 28px;margin-top:48px;padding:0 0 26px;border-bottom:1px solid var(--fl)}
#ftr .ftrust a{display:flex;align-items:center;gap:12px;color:var(--ff);font:700 14.5px/1.3 var(--disp)}
#ftr .ftrust span{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid #ffffff38;background:#ffffff0f}
#ftr .ftrust small{display:block;font:400 12.5px var(--texto);color:var(--fm)}
#ftr .fbody{position:relative;padding:40px 0 24px}
.fwrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
#ftr h5{font:800 15px var(--disp);margin-bottom:12px;color:var(--ff)}
#ftr .fcol a{display:block;font-size:14.5px;padding:5px 0;color:var(--ff);opacity:.78}
#ftr .fcol a:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
.fbot{display:flex;align-items:center;gap:10px 24px;flex-wrap:wrap;margin-top:36px;padding-top:20px;border-top:1px solid var(--fl);font-size:13px;color:var(--fm)}
#ftr .fcopy{margin-right:auto}
#ftr .flegal{display:flex;flex-wrap:wrap;gap:4px 18px}#ftr .flegal a{color:var(--fm)}#ftr .flegal a:hover{color:var(--ff)}
#ftr .fpay{display:flex;gap:6px}#ftr .fpay i{font:700 11px var(--disp);font-style:normal;padding:4px 8px;border:1px solid var(--fl);border-radius:6px;color:var(--ff)}
@media (max-width:900px){#ftr .ftop{grid-template-columns:1fr}#ftr .fnews{justify-self:start}#ftr .ftrust{grid-template-columns:1fr 1fr}.fwrap{grid-template-columns:1fr 1fr}
  #ftr .fhero{--fh:380px;background-color:var(--papel);background-size:auto var(--fh);background-position:center bottom}
  #ftr .ftrust{margin-top:calc(var(--fh) - 230px)}
  #ftr .fhero::before{background:linear-gradient(to top,var(--fb) 0,#11111180 110px,transparent 190px,transparent calc(var(--fh) - 110px),var(--papel) var(--fh))}}
@media (max-width:600px){#ftr .fhero{background-image:url(../img/footer-bosque-movil.jpg);--fh:330px;background-position:30% bottom}#ftr .ftop{padding-top:44px}.fwrap{gap:24px 16px}#ftr .ftrust{gap:16px 12px}#ftr .ftrust a{font-size:13px;gap:10px}#ftr .ftrust span{width:36px;height:36px}}
@media (max-width:420px){#ftr .fform{flex-direction:column}#ftr .fform button{width:100%}}

/* catálogo */
.cat-head{padding:56px 0 32px}
.cat-layout{display:grid;grid-template-columns:250px 1fr;gap:48px;align-items:start}
@media (max-width:900px){.cat-layout{grid-template-columns:1fr;gap:24px}}
.filters{position:sticky;top:96px;display:grid;gap:24px}
@media (max-width:900px){.filters{position:static;display:none}.filters.open{display:grid}}
.fgroup h5{font-family:var(--disp);font-size:14px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px;color:var(--tinta2)}
.fgroup label{display:flex;align-items:center;gap:10px;font-size:14.5px;padding:5px 0;cursor:pointer}
.fgroup input[type=checkbox],.fgroup input[type=radio]{accent-color:var(--bosque);width:16px;height:16px}
.fgroup .swl{display:flex;gap:8px;flex-wrap:wrap}
.fgroup .swl label{border:1px solid var(--linea);border-radius:20px;padding:5px 10px 5px 6px;background:#fff}
.fgroup .swl label:has(:checked){border-color:var(--tinta);box-shadow:0 0 0 1px var(--tinta)}
.fgroup .swl input{display:none}.fgroup .swl i{width:18px;height:18px;border-radius:50%}
.fgroup input[type=range]{width:100%;accent-color:var(--bosque)}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;flex-wrap:wrap}
.toolbar select,.toolbar input[type=search]{font:inherit;font-size:14px;padding:10px 14px;border:1px solid var(--linea);border-radius:var(--r-btn);background:#fff;color:inherit}
.toolbar input[type=search]{min-width:240px}
.toolbar .fbtn{display:none}
@media (max-width:900px){.toolbar .fbtn{display:inline-flex;min-height:40px}}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.chip{border:1px solid var(--linea);background:#fff;border-radius:20px;padding:8px 14px;font-size:13.5px;font-weight:500}
.chip.on{background:var(--negro);color:#fff;border-color:var(--negro)}
.noresult{padding:80px 0;text-align:center;color:var(--muted)}

/* PDP */
.crumbs{font-size:13px;color:var(--muted);padding:20px 0 0}
.crumbs a:hover{color:var(--tinta)}
.pdp{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;padding:24px 0 72px;align-items:start}
@media (max-width:900px){.pdp{grid-template-columns:1fr;gap:28px;padding-bottom:110px}}
.gal{display:grid;gap:12px;position:sticky;top:96px}
@media (max-width:900px){.gal{position:static}}
.gal .main{aspect-ratio:1/1;border-radius:var(--r-card);overflow:hidden;background:#fff;border:1px solid var(--linea);position:relative}
.gal .main img{width:100%;height:100%;object-fit:cover}
.gal .thumbs{display:flex;gap:10px;overflow:auto}
.gal .thumbs button{width:76px;height:76px;border-radius:8px;overflow:hidden;border:1.5px solid var(--linea);flex:none;background:#fff}
.gal .thumbs button.on{border-color:var(--tinta)}
.gal .thumbs img{width:100%;height:100%;object-fit:cover}
.buy{display:grid;gap:22px}
.buy .title small{display:block;color:var(--salvia);font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}
.buy h1{font-size:clamp(28px,3vw,40px)}
.buy .pr{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.buy .pr b{font-family:var(--disp);font-size:30px;font-weight:600}
.buy .pr s{color:var(--muted)}
.buy .pr .off{background:var(--bosque);color:var(--papel);font-size:12px;font-weight:700;padding:4px 8px;border-radius:6px}
.buy .cuotas{font-size:13.5px;color:var(--tinta2)}
.opt h5{font-size:13px;font-weight:600;margin-bottom:10px;display:flex;gap:8px}
.opt h5 span{color:var(--muted);font-weight:500}
.opt .row{display:flex;gap:10px;flex-wrap:wrap}
.opt .row button{border:1.5px solid var(--linea);background:#fff;border-radius:var(--r-btn);padding:11px 16px;font-size:14px;font-weight:600;min-width:64px}
.opt .row button.on{border-color:var(--tinta);box-shadow:0 0 0 1px var(--tinta)}
.opt .row button.sw{display:flex;align-items:center;gap:8px;padding:6px 14px 6px 6px}
.opt .row button.sw i{width:32px;height:32px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--linea)}
.buy .add{display:grid;grid-template-columns:110px 1fr;gap:10px}
.buy .add .qty{justify-content:space-between;padding:4px 8px;min-height:48px;border-radius:var(--r-btn)}
.buy .trust{display:grid;gap:8px;font-size:14px;color:var(--tinta2);border-top:1px solid var(--linea);padding-top:18px}
.buy .trust div{display:flex;gap:10px}
.buy .trust b{color:var(--tinta);font-weight:600}
.buy .desc{font-size:15px;color:var(--tinta2)}
.tabs{border-top:1px solid var(--linea)}
.tabs details{border-bottom:1px solid var(--linea)}
.tabs summary{cursor:pointer;list-style:none;padding:16px 0;font-weight:600;font-family:var(--disp);display:flex;justify-content:space-between}
.tabs summary::after{content:"+";color:var(--salvia)}.tabs details[open] summary::after{content:"–"}
.tabs details>div{padding:0 0 18px;font-size:14.5px;color:var(--tinta2)}
.tabs .specs{font-size:14px}
.ergo{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
@media (max-width:760px){.ergo{grid-template-columns:1fr}}
.ergo .steps{display:grid;gap:14px}
.ergo .steps div{display:flex;gap:14px;align-items:start}
.ergo .steps b{width:34px;height:34px;border-radius:50%;background:var(--bosque);color:var(--papel);display:grid;place-items:center;flex:none;font-family:var(--disp)}
.stickybar{display:none}
@media (max-width:900px){.stickybar{display:flex;position:fixed;left:0;right:0;bottom:0;background:var(--papel);border-top:1px solid var(--linea);padding:12px var(--gut);gap:12px;align-items:center;z-index:40}.stickybar b{font-family:var(--disp);font-size:20px}.stickybar .btn{margin-left:auto}}

/* páginas simples */
.page-hero{padding:72px 0 40px}
.prose{max-width:720px;font-size:17px;color:var(--tinta2);display:grid;gap:18px}
.prose h2,.prose h3{color:var(--tinta)}
.form{display:grid;gap:14px;max-width:560px}
.form input,.form textarea,.form select{font:inherit;padding:13px 16px;border:1px solid var(--linea);border-radius:var(--r-btn);background:#fff;width:100%}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.logos{display:flex;gap:40px;flex-wrap:wrap;align-items:center;opacity:.6;font-family:var(--disp);font-weight:700;font-size:20px;letter-spacing:-.02em}

/* reveal */
/* Aparición al bajar: solo lo que empieza fuera de pantalla (app.js le pone .oc); lo ya armado se ve sin esperar al JS y al volver atrás no se anima */
.rv{transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.rv.oc:not(.in){opacity:0;transform:translateY(18px);transition:none}
@media (prefers-reduced-motion:reduce){.rv{transition:none}.rv.oc:not(.in){opacity:1;transform:none}}

/* ===== v2: megamenú, buscador, WhatsApp flotante, accesibilidad ===== */
.skip{position:absolute;left:-999px;top:8px;background:var(--negro);color:#fff;padding:10px 14px;border-radius:8px;z-index:100}.skip:focus{left:12px}
.nav .ni{position:relative;display:flex;align-items:center;gap:2px}
.nav .nx{display:none;font-size:18px;line-height:1;padding:4px 6px;color:#ffffff99}
.mega{position:absolute;left:50%;top:100%;transform:translateX(-50%) translateY(8px);width:min(980px,calc(100vw - 32px));padding-top:14px;opacity:0;visibility:hidden;transition:.18s;z-index:60}
.mwrap{background:var(--papel);border:1px solid var(--linea);border-radius:var(--r);box-shadow:0 20px 50px #25332b22;padding:28px 32px;display:grid;grid-template-columns:repeat(3,1fr) 220px;gap:28px}
.mwrap h5{font-family:var(--disp);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.mwrap{color:var(--tinta)}.mwrap a{display:block;padding:6px 0;font-size:14.5px;font-weight:500;border:0;color:var(--tinta)}.mwrap a:hover{color:var(--negro);text-decoration:underline;text-underline-offset:3px}
.mwrap a:last-child{color:var(--negro);font-weight:600}
@media (min-width:901px){.nav .ni{position:static}}
@media (hover:hover) and (min-width:901px){.ni.has:hover .mega,.ni.has:focus-within .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.ni.has>a::after{content:" ⌄";font-size:12px;color:var(--muted)}}
@media (max-width:900px){
  .nav{max-height:calc(100dvh - 60px);overflow:auto;padding-bottom:24px}
  .nav .ni{display:grid;grid-template-columns:1fr auto;align-items:center;border-bottom:1px solid var(--linea)}
  .nav .ni>a{border:0;font-size:16px;padding:14px 0}.nav .nx{display:block;font-size:22px;padding:8px 12px;transition:.2s}.nav .ni.open .nx{transform:rotate(180deg)}
  .mega{position:static;transform:none;width:auto;padding:0;opacity:1;visibility:visible;display:none;grid-column:1/-1}.ni.open .mega{display:block}
  .mwrap{border:0;box-shadow:none;background:none;padding:0 0 16px;grid-template-columns:1fr 1fr;gap:16px}.mwrap a{padding:7px 0;font-size:14px}
  .nmob{display:grid;gap:4px;padding:16px 0 0}.nmob a{padding:8px 0;font-size:14px;color:var(--bosque);font-weight:500}
}
@media (min-width:901px){.nmob{display:none}}
.wafloat{position:fixed;right:18px;bottom:18px;z-index:45;background:#25d366;color:#fff;border-radius:99px;padding:12px 18px 12px 16px;display:flex;align-items:center;gap:8px;box-shadow:0 10px 24px #25332b33;font-weight:600;font-size:14px}.wafloat::before{content:"";width:22px;height:22px;background:#fff;border-radius:50%;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm0 18a8 8 0 0 1-4.1-1.1l-.3-.2-3 .8.8-2.9-.2-.3A8 8 0 1 1 12 20zm4.4-6c-.2-.1-1.4-.7-1.6-.8s-.4-.1-.5.1-.6.8-.8 1-.3.2-.5.1a6.5 6.5 0 0 1-3.3-2.9c-.2-.4.3-.4.7-1.3.1-.2 0-.3 0-.4l-.7-1.8c-.2-.5-.4-.4-.5-.4h-.5a1 1 0 0 0-.7.3 3 3 0 0 0-.9 2.2 5.2 5.2 0 0 0 1.1 2.8 12 12 0 0 0 4.6 4c1.7.7 2.3.8 3.1.7a2.7 2.7 0 0 0 1.8-1.3 2.2 2.2 0 0 0 .1-1.2c0-.1-.2-.2-.4-.3z'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm0 18a8 8 0 0 1-4.1-1.1l-.3-.2-3 .8.8-2.9-.2-.3A8 8 0 1 1 12 20zm4.4-6c-.2-.1-1.4-.7-1.6-.8s-.4-.1-.5.1-.6.8-.8 1-.3.2-.5.1a6.5 6.5 0 0 1-3.3-2.9c-.2-.4.3-.4.7-1.3.1-.2 0-.3 0-.4l-.7-1.8c-.2-.5-.4-.4-.5-.4h-.5a1 1 0 0 0-.7.3 3 3 0 0 0-.9 2.2 5.2 5.2 0 0 0 1.1 2.8 12 12 0 0 0 4.6 4c1.7.7 2.3.8 3.1.7a2.7 2.7 0 0 0 1.8-1.3 2.2 2.2 0 0 0 .1-1.2c0-.1-.2-.2-.4-.3z'/%3E%3C/svg%3E") center/contain no-repeat}
@media (max-width:900px){.wafloat{bottom:86px;padding:12px;right:14px}.wafloat b{display:none}body.nosticky .wafloat{bottom:18px}}
.afilters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}.afilters button{border:1px solid var(--linea);background:#fff;border-radius:99px;padding:5px 10px 5px 12px;font-size:13px}.afilters button::after{content:" ×";color:var(--muted)}
.fbtn .n{background:var(--bosque);color:var(--papel);border-radius:99px;font-size:11px;padding:1px 7px;margin-left:6px}
.rvw{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;padding:16px 20px;border:1px solid var(--linea);border-radius:8px;background:#fff;margin-top:14px}.rvw b{font-family:var(--disp);font-size:28px;line-height:1}.rvw .stars{color:#d5a021;letter-spacing:2px}.rvw small{color:var(--muted);display:block}
.pdp .ship{display:grid;gap:6px;margin-top:14px;font-size:13.5px}.pdp .ship input{padding:10px 12px;border:1.5px solid var(--linea);border-radius:8px;font-family:inherit;font-size:14px;width:100%}.pdp .ship .r{display:flex;gap:8px}.pdp .ship .r button{white-space:nowrap}.pdp .ship p{color:var(--bosque);font-weight:500;margin:0}

.buy .btn[data-wish].on{color:var(--oferta);border-color:var(--oferta)}

/* ---------- Vista previa CRO (paquete recomendado, en vivo) ---------- */
.ccuotas{font-size:12px;color:var(--tinta2);margin-top:2px}
#pfprev{position:fixed;left:16px;bottom:16px;z-index:60;font-size:14px}
#pfprevBtn{background:var(--negro);color:#fff;border:0;border-radius:99px;min-height:44px;padding:0 18px;font-weight:600;font-size:13.5px;box-shadow:0 4px 14px #00000040;display:inline-flex;align-items:center;gap:8px}
#pfprevBtn em{background:#fff;color:var(--negro);border-radius:99px;font-style:normal;font-size:11.5px;padding:1px 7px}
#pfprevBody{position:absolute;left:0;bottom:56px;width:min(340px,calc(100vw - 32px));max-height:70vh;overflow:auto;background:#fff;border-radius:10px;box-shadow:0 12px 32px #00000040;border:1px solid var(--linea)}
#pfprevBody header{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--linea);position:sticky;top:0;background:#fff}
#pfprevBody header small{display:block;color:var(--muted);font-weight:400;font-size:11.5px}
#pfprevBody header button{margin-left:auto;background:none;border:0;font-size:20px;line-height:1;color:var(--muted)}
.pv-row{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;border-bottom:1px solid var(--linea);cursor:pointer}
.pv-row span:last-child{font-size:13.5px}
.pv-row small{display:block;color:var(--muted);font-size:11.5px;margin-top:1px}
.pv-id{font-family:var(--disp);font-weight:700;font-size:11px;background:var(--papel2);border-radius:5px;padding:2px 6px;min-width:22px;text-align:center;flex:none;margin-top:1px}
.pv-done small,.pv-link small{color:var(--bosque)}
.pv-link{text-decoration:none;color:var(--tinta)}
.pv-all{display:block;text-align:center;padding:12px;font-size:13px;font-weight:600}
html.pv-o7 .cplay,html.pv-o7 .cfoot .mini{display:none}
@media (max-width:900px){html.pv-v3 #secCorp{display:none}}
#drawerShip{margin:0 20px 14px;font-size:12.5px;color:var(--tinta2)}
#drawerShip .bar{height:5px;background:var(--papel2);border-radius:99px;margin-top:6px;overflow:hidden}
#drawerShip .bar i{display:block;height:100%;background:var(--bosque)}
#drawer .pago{margin-top:12px}
#drawer .pago h5{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
#drawer .pago .row{display:flex;gap:14px;font-size:13.5px}
.faqlist{max-width:720px}.faqlist details{border-bottom:1px solid var(--linea);padding:14px 0}.faqlist summary{font-weight:600;cursor:pointer}.faqlist div{margin-top:8px;color:var(--tinta2);font-size:14px}
.bundle{display:flex;align-items:center;gap:14px;border:1px solid var(--linea);border-radius:8px;padding:12px 16px;margin-bottom:18px;flex-wrap:wrap}
.bundle .bimgs{display:flex}.bundle .bimgs img{width:44px;height:44px;object-fit:cover;border-radius:8px;border:2px solid #fff;box-shadow:0 0 0 1px var(--linea);margin-left:-10px}.bundle .bimgs img:first-child{margin-left:0}
.bundle b{display:block;font-size:14px}.bundle span{color:var(--muted);font-size:12.5px}
.bundle .btn{margin-left:auto}
@media (max-width:640px){.bundle{gap:10px}.bundle .btn{margin-left:0;width:100%}}

/* ---------- Motor de ambientes y estilos (js/ambientes.js) ---------- */
.amb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.amb{display:block}
.amb-img{display:block;aspect-ratio:7/5;border-radius:var(--r-card);overflow:hidden;background:var(--plomo)}
.amb-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.amb:hover .amb-img img{transform:scale(1.04)}
.amb b{display:block;margin-top:12px;font-family:Manrope,sans-serif;font-size:17px}
.amb small{color:var(--muted);font-size:13.5px}
.est-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:28px}
.est-row>span{font-weight:600;margin-right:6px}
.est{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--linea);background:#fff;border-radius:20px;padding:8px 14px;font-size:13.5px;font-weight:500}
.est:hover{border-color:var(--negro)}
.est i,.chip .dot{width:14px;height:14px;border-radius:50%;display:inline-block;box-shadow:0 0 0 1px var(--linea)}
.chip .dot{vertical-align:-2px;margin-right:6px}
.sw i[data-sw]{cursor:pointer}
.sw i.on{box-shadow:0 0 0 2px var(--negro)}
.cacab{font-size:12.5px;color:var(--muted);margin-top:2px}
.vacab{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muted);cursor:pointer}
@media (max-width:760px){.amb-grid{grid-template-columns:repeat(2,1fr);gap:12px}.amb small{display:none}}

/* ---------- js/home-extra.js + js/envios.js (2026-09-25) ---------- */
/* barra de televentas, sobre el topbar existente */
.pf-telbar{background:#000;color:#ffffffb3;font-size:11.5px;text-align:center;padding:5px var(--gut);border-bottom:1px solid #ffffff12}
.pf-telbar .wrap{display:flex;justify-content:center;gap:8px;align-items:center;flex-wrap:wrap}
.pf-telbar a{color:#fff;font-weight:600}
.pf-telbar a:hover{text-decoration:underline}

/* selector de envío en el header */
.shipbtn{width:auto !important;border-radius:99px !important;padding:0 12px !important;gap:6px;font-size:12.5px;font-weight:600;max-width:150px}
.shipbtn .shiptxt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:640px){.shipbtn .shiptxt{max-width:70px}}

.pf-modal{position:fixed;inset:0;background:#25332bcc;backdrop-filter:blur(6px);z-index:90;display:none;align-items:center;justify-content:center;padding:16px}
.pf-modal.open{display:flex}
.pf-modal .box{background:var(--papel);border-radius:10px;box-shadow:var(--sombra);max-width:420px;width:100%;max-height:86vh;overflow:auto;padding:22px}
.pf-modal h3{font-size:20px;margin-bottom:6px}
.pf-modal p.sub{color:var(--tinta2);font-size:14px;margin-bottom:16px}
.pf-modal .x{position:absolute;top:14px;right:14px;font-size:22px;color:var(--muted);width:32px;height:32px}
.pf-modal .box{position:relative}
.pf-modal select,.pf-modal input[type=text]{width:100%;padding:11px 12px;border:1.5px solid var(--linea);border-radius:8px;font-family:inherit;font-size:14px;background:#fff;margin-bottom:12px}
.pf-modal .btn{width:100%}

/* carrusel de categorías (círculos, estilo Wayfair) */
.ccat-wrap{position:relative;display:flex;align-items:center;gap:8px}
.ccat-track{display:flex;gap:22px;overflow-x:auto;scroll-behavior:smooth;padding:4px 2px 10px;scrollbar-width:none}
.ccat-track::-webkit-scrollbar{display:none}
.ccat{flex:none;width:112px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.ccat-circ{display:block;width:100px;height:100px;border-radius:50%;background:var(--plomo);overflow:hidden;transition:.2s}
.ccat-circ img{width:100%;height:100%;object-fit:cover}
.ccat:hover .ccat-circ{box-shadow:0 0 0 3px var(--negro)}
.ccat b{font-size:13px;font-weight:600;line-height:1.25}
.ccat-arrow{flex:none;width:38px;height:38px;border-radius:50%;border:1.5px solid var(--linea);background:#fff;font-size:18px;display:grid;place-items:center}
.ccat-arrow:hover{border-color:var(--negro)}
@media (max-width:760px){.ccat-arrow{display:none}.ccat{width:88px}.ccat-circ{width:76px;height:76px}}

/* franjas de "visto recientemente" */
.vistos-row{display:flex;gap:16px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:none}
.vistos-row::-webkit-scrollbar{display:none}
.vistos-row .card{flex:none;width:220px}
@media (max-width:640px){.vistos-row .card{width:168px}}

/* línea de envío inyectada en tarjeta y PDP */
.cenvio{font-size:12px;color:var(--bosque);font-weight:500;margin-top:2px}
.pf-ship-linea{display:flex;align-items:center;gap:8px;justify-content:space-between;background:var(--papel2);border-radius:8px;padding:10px 12px;font-size:13px;margin-bottom:12px}
.pf-ship-linea button{font-weight:600;text-decoration:underline;white-space:nowrap}

/* botón flotante "¿Te ayudo a elegir?" + cuestionario */
.helpfab{position:fixed;right:18px;bottom:82px;z-index:45;background:var(--negro);color:#fff;border-radius:99px;padding:11px 16px;font-weight:600;font-size:13.5px;box-shadow:0 10px 24px #25332b33}
@media (max-width:900px){.helpfab{bottom:150px}body.nosticky .helpfab{bottom:82px}}
.quiz-step{display:none}.quiz-step.on{display:block}
.quiz-opt{display:block;width:100%;text-align:left;border:1.5px solid var(--linea);border-radius:6px;padding:12px 14px;margin-bottom:8px;font-size:14px}
.quiz-opt:hover{border-color:var(--negro)}
.quiz-dots{display:flex;gap:6px;justify-content:center;margin-top:14px}
.quiz-dots i{width:6px;height:6px;border-radius:50%;background:var(--linea)}
.quiz-dots i.on{background:var(--negro)}
.quiz-reco{display:flex;gap:12px;align-items:center;border:1px solid var(--linea);border-radius:8px;padding:12px;margin:12px 0}
.quiz-reco img{width:64px;height:64px;object-fit:cover;border-radius:8px;background:var(--plomo)}
.quiz-reco b{display:block;font-size:14px}
.quiz-reco span{display:block;font-size:12.5px;color:var(--muted)}

/* filtro "Llega en 48 h" inyectado en el catálogo */
.f48{display:flex;align-items:center;gap:8px;font-size:14px;padding:10px 0;border-top:1px solid var(--linea);margin-top:6px}
.f48 small{display:block;color:var(--muted);font-size:11.5px}
@media (min-width:1240px){[data-search-open]{display:none}}

/* mega menú "Seleccionar por departamento" */
.dept-grid{grid-template-columns:repeat(4,1fr) !important;gap:16px !important;padding:24px !important}
@media (max-width:900px){.dept-grid{grid-template-columns:1fr 1fr !important;gap:12px !important;padding:0 !important}}

/* modal de medios de pago (MSI + Yape/transferencia) */
.pago-box{max-width:460px}
.pago-sec{border-top:1px solid var(--linea);padding-top:14px;margin-top:14px}
.pago-sec:first-of-type{border-top:0;padding-top:0;margin-top:0}
.pago-sec h5{font-family:var(--disp);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.pago-row{display:flex;justify-content:space-between;align-items:center;font-size:14.5px;padding:4px 0}
.pago-row.total{font-weight:700;border-top:1px dashed var(--linea);margin-top:4px;padding-top:8px}
.pago-cuotas{display:grid;gap:2px}

/* popup de primera compra (variante en js/reglas-precio.js: PF_PRECIO.POPUP_VARIANTE) */
.popup-box{max-width:400px;text-align:center;padding-top:32px}
.popup-box .eyebrow{display:block;margin-bottom:8px}
.popup-box h3{font-size:22px}
.popup-box .sub{margin-bottom:20px}

/* home storytelling 2026-09-25 */
/* protagonista: foto a todo el ancho + texto encima (img/protagonista-2-motores.jpg, 12:5, set en el 60% derecho) */
.prota{background:#141614;color:#fff;padding:0}
.prota-hero{position:relative;overflow:hidden;min-height:max(600px,41.6vw);display:flex;align-items:center}
.prota-bg{position:absolute;inset:0}
.prota-bg img{width:100%;height:100%;object-fit:cover;object-position:0% 50%}
.prota-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(12,13,12,.9) 0%,rgba(12,13,12,.6) 30%,rgba(12,13,12,0) 48%),linear-gradient(0deg,#141614 0%,rgba(20,22,20,0) 18%)}
.prota .wrap{position:relative;z-index:2}
.prota-in{padding:64px 0 56px}
.prota-in>*{max-width:440px}
.prota-tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:99px;padding:7px 14px;margin-bottom:20px;backdrop-filter:blur(6px)}
.prota h2{color:#fff;font-size:clamp(34px,3.9vw,58px);line-height:1.02;letter-spacing:-.03em;margin:0 0 16px}
.prota-lead{font-size:17px;line-height:1.55;color:#ffffffcc;margin:0 0 22px}
.prota-lead b{color:#fff}
.prota-precio{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.prota-precio .k{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:#ffffff99;width:100%}
.prota-precio b{font-family:var(--disp);font-size:clamp(32px,3vw,42px);letter-spacing:-.02em}
.prota-precio span:last-child{color:#ffffffb3;font-size:14px}
.prota-desg{font-size:13.5px;color:#ffffff99;margin:4px 0 22px}
.prota-desg a{color:#fff;text-decoration:underline}
.prota-cta{display:flex;gap:12px;flex-wrap:wrap}
.prota .btn.ghost{border-color:#fff;color:#fff}.prota .btn.ghost:hover{background:#fff;color:var(--negro)}
.prota-specs{display:grid;grid-template-columns:repeat(5,1fr);padding-bottom:56px;border-top:1px solid rgba(255,255,255,.18)}
.prota-specs>div{padding:22px 20px 0 0}
.prota-specs>div+div{padding-left:20px;border-left:1px solid rgba(255,255,255,.12)}
.prota-specs b{display:block;font-family:var(--disp);font-size:26px;letter-spacing:-.02em;margin-bottom:4px}
.prota-specs span{font-size:13px;color:#ffffffa6;line-height:1.4}
@media (max-width:900px){
  .prota-hero{display:block;min-height:0}
  .prota-bg{position:relative}
  .prota-bg img{aspect-ratio:4/3;height:auto;object-position:80% 50%}
  .prota-hero::before{background:linear-gradient(0deg,#141614 0%,rgba(20,22,20,0) 22%);height:75vw;bottom:auto}
  .prota-in{padding:8px 0 8px}
  .prota-in>*{max-width:none}
  .prota-specs{grid-template-columns:1fr 1fr;margin-top:32px;padding-bottom:40px}
  .prota-specs>div,.prota-specs>div+div{padding:16px 12px 16px 0;border-left:0;border-bottom:1px solid rgba(255,255,255,.1)}
  .prota-specs>div:last-child{grid-column:1/-1}
}
.cats-carousel .sechead h2{font-size:18px}
@media (max-width:760px){
  .mv-scroll{display:flex;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:14px;padding-bottom:6px}
  .mv-scroll::-webkit-scrollbar{display:none}
  .mv-scroll>*{flex:none;width:168px;scroll-snap-align:start}
}
#secMelaminaA .fam.soon{opacity:.55}
#secMelaminaA .fam.soon .tag{position:static;display:inline-block;margin-top:6px;background:var(--tinta);color:var(--papel);font-size:11px;padding:2px 8px;border-radius:20px}
#secMelaminaA .fam .fi span{font-size:28px}

/* ---- Transforma tu espacio (home, debajo de la vitrina): mosaico de fotos de ambiente ---- */
.espacios{padding:88px 0 104px}
@media (max-width:760px){.espacios{padding:56px 0 64px}}
.espacios h2{font-size:clamp(22px,2.2vw,30px);margin-bottom:24px}
.esp-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(2,clamp(160px,15vw,215px));gap:12px}
.esp{position:relative;overflow:hidden;border-radius:var(--r);background:var(--plomo);color:#fff;isolation:isolate}
.esp-a{grid-column:1/6;grid-row:1/3}.esp-b{grid-column:6/9}.esp-c{grid-column:9/13}.esp-d{grid-column:6/10}.esp-e{grid-column:10/13}
.esp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.esp::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0000008c 0,#00000033 34%,#0000 58%);transition:background .4s}
.esp>span{display:grid;justify-items:start;gap:3px;padding:clamp(18px,2vw,28px)}
.esp b{font:700 clamp(18px,1.6vw,24px)/1.15 var(--disp);letter-spacing:-.01em;text-shadow:0 1px 12px #0000004d}
.esp small{font-size:13.5px;opacity:.88;max-height:0;overflow:hidden;transition:max-height .4s,opacity .4s}
.esp em{font-style:normal;font-weight:600;font-size:14px;margin-top:6px;display:inline-flex;gap:6px;align-items:center}
.esp em i{font-style:normal;font-size:18px;line-height:1;transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.esp:hover img,.esp:focus-visible img{transform:scale(1.05)}
.esp:hover::before,.esp:focus-visible::before{background:linear-gradient(180deg,#000000a6 0,#00000040 40%,#0000 66%)}
.esp:hover small,.esp:focus-visible small{max-height:40px}
.esp:hover em i,.esp:focus-visible em i{transform:translateX(4px)}
.esp-a small{max-height:40px}
@media (max-width:900px){
  .esp-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:150px;gap:10px}
  .esp-a{grid-column:1/-1;grid-row:auto;height:auto}.esp-a{grid-row:span 2}
  .esp-b,.esp-c,.esp-d,.esp-e{grid-column:auto}
  .esp small{display:none}
  .esp>span{padding:16px}.esp b{font-size:17px}.esp em{font-size:13px;margin-top:3px}
}
@media (max-width:420px){.esp-grid{grid-auto-rows:125px}.esp b{font-size:15.5px}}
@media (prefers-reduced-motion:reduce){.esp img{transition:none}}

/* ---- Popup «Seguiste viendo» / «Lo más vendido» (2026-09-26 v2): lo último visto en grande + fila de vistos + completa tu setup ---- */
.vt-pop,.vt-pop *,.vt-pop *::before,.vt-pop *::after{box-sizing:border-box}
.vt-pop{padding:24px;overscroll-behavior:contain;font-family:var(--texto)}
.vt-pop .box{display:flex;flex-direction:column;width:100%;max-width:780px;max-height:min(760px,calc(100vh - 48px));max-height:min(760px,calc(100dvh - 48px));padding:0;border-radius:18px;overflow:hidden;background:var(--papel);box-shadow:0 30px 80px #0f0d0b59}
.vt-pop-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 26px 14px}
.vt-pop-eyebrow{display:block;font:600 11px/1 var(--texto);letter-spacing:.12em;text-transform:uppercase;color:var(--bosque);margin-bottom:6px}
.vt-pop h3{margin:0;font:700 26px/1.1 var(--disp);letter-spacing:-.02em;color:var(--negro)}
.vt-pop-x{flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--linea);background:#fff;color:var(--negro);font-size:22px;line-height:1;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.vt-pop-x:hover{background:var(--negro);color:var(--papel);transform:rotate(90deg)}
.vt-pop-in{flex:1;min-height:0;overflow:auto;padding:4px 26px 22px;display:flex;flex-direction:column;gap:22px}
.vt-pop-in>*{flex:none}
.vt-pop .vt-pop-row{padding:0;margin:0}
/* lo último que vio */
.vt-pop-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 1px 0 var(--linea),0 10px 30px #1f1d1b14}
.vt-pop-hero-ft{position:relative;display:block;aspect-ratio:1;background:var(--plomo);overflow:hidden}
.vt-pop-hero-ft img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.vt-pop-hero:hover .vt-pop-hero-ft img{transform:scale(1.04)}
.vt-pop-hero-tx{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:24px 24px 22px;min-width:0}
.vt-pop-tag{align-self:flex-start;padding:5px 9px;border-radius:999px;background:var(--papel2);color:var(--tinta2);font:600 10.5px/1 var(--texto);letter-spacing:.06em;text-transform:uppercase}
.vt-pop-hero-n{margin-top:4px;font:700 22px/1.15 var(--disp);letter-spacing:-.02em;color:var(--negro)}
.vt-pop-hero-p{font:700 24px/1.1 var(--disp);color:var(--negro);margin-top:4px}
.vt-pop-hero-c{font-size:13px;color:var(--tinta2)}
.vt-pop-hero-c b{color:var(--negro)}
.vt-pop-ok{list-style:none;margin:8px 0 4px;padding:0;display:grid;gap:5px;font-size:13px;color:var(--tinta)}
.vt-pop-ok li{display:flex;align-items:center;gap:8px}
.vt-pop-ok li::before{content:"";flex:none;width:16px;height:16px;border-radius:50%;background:var(--bosque) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.vt-pop-cta{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.vt-pop-btn,.vt-pop-wa{display:flex;align-items:center;justify-content:center;height:46px;padding:0 14px;border-radius:999px;font:600 14px var(--texto);text-align:center;transition:background .2s,color .2s}
.vt-pop-btn{background:var(--negro);color:var(--papel)}
.vt-pop-btn:hover{background:#000}
.vt-pop-wa{border:1.5px solid var(--negro);color:var(--negro)}
.vt-pop-wa:hover{background:var(--negro);color:var(--papel)}
/* filas: también viste / completa tu setup */
.vt-pop-row h4{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:0 0 12px;font:700 16px/1.2 var(--disp);color:var(--negro)}
.vt-pop-row h4 span{font:400 13px var(--texto);color:var(--tinta2)}
.vt-pop-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vt-pop-card{display:flex;flex-direction:column;gap:4px;min-width:0}
.vt-pop-card>a{display:flex;flex-direction:column;gap:8px;color:var(--negro)}
.vt-pop-card-ft{position:relative;display:block;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--plomo)}
.vt-pop-card-ft img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.vt-pop-card:hover .vt-pop-card-ft img{transform:scale(1.05)}
.vt-pop-card-n{font:500 13.5px/1.3 var(--texto);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
.vt-pop-card-p{font:700 14px/1.2 var(--disp);color:var(--negro)}
.vt-pop-add{margin-top:6px;height:36px;border-radius:999px;border:1.5px solid var(--negro);background:transparent;color:var(--negro);font:600 13px var(--texto);cursor:pointer;transition:background .2s,color .2s}
.vt-pop-add:hover{background:var(--negro);color:var(--papel)}
.vt-pop-noimg{position:absolute;inset:0;display:grid;place-items:center;font:600 12px var(--disp);color:var(--tinta2)}
.vt-pop-empty{margin:0;color:var(--tinta2)}
/* pie */
.vt-pop-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 26px;border-top:1px solid var(--linea);background:var(--papel2)}
.vt-pop-trust{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--tinta2)}
.vt-pop-trust span+span::before{content:"·";margin-right:14px;color:var(--plomo2)}
.vt-pop-foot a{font:600 14px var(--texto);color:var(--negro);white-space:nowrap}
.vt-pop-foot a span{display:inline-block;transition:transform .2s}
.vt-pop-foot a:hover span{transform:translateX(3px)}
.vt-pop a:focus-visible,.vt-pop button:focus-visible{outline:2px solid var(--bosque);outline-offset:2px}
/* móvil: hoja inferior */
@media (max-width:640px){
  .vt-pop{padding:0;align-items:flex-end}
  .vt-pop .box{max-width:none;max-height:88vh;max-height:88dvh;border-radius:18px 18px 0 0}
  .vt-pop-head{padding:16px 16px 10px}
  .vt-pop h3{font-size:22px}
  .vt-pop-in{padding:2px 16px 16px;gap:18px}
  .vt-pop-hero{grid-template-columns:120px minmax(0,1fr)}
  .vt-pop-hero-ft{aspect-ratio:auto}
  .vt-pop-hero-tx{padding:14px;gap:3px}
  .vt-pop-tag{font-size:9.5px;padding:4px 7px}
  .vt-pop-hero-n{font-size:16px}
  .vt-pop-hero-p{font-size:18px;margin-top:2px}
  .vt-pop-hero-c{font-size:11.5px}
  .vt-pop-ok{display:none}
  .vt-pop-cta{gap:6px;margin-top:8px}
  .vt-pop-btn,.vt-pop-wa{height:38px;font-size:12.5px}
  .vt-pop-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px;scrollbar-width:none}
  .vt-pop-cards::-webkit-scrollbar{display:none}
  .vt-pop-card{flex:0 0 40%;scroll-snap-align:start}
  .vt-pop-foot{padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px))}
  .vt-pop-trust{display:none}
}
@media (prefers-reduced-motion:reduce){.vt-pop *{transition:none!important}}

/* minimalista 2026-09-25: CTA del banner discreto (vidrio, borde fino) */
.hero .hero-cta{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:999px;border:1px solid #ffffff59;background:#ffffff14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font:500 14px var(--texto);transition:background .25s,color .25s,border-color .25s}
.hero .hero-cta span{transition:transform .25s}
.hero .hero-cta:hover{background:#fff;color:#111;border-color:#fff}
.hero .hero-cta:hover span{transform:translateX(3px)}
.hero .eyebrow{font-size:11.5px;letter-spacing:.14em}
.hero h1,.hero h2.h1{font-weight:600;letter-spacing:-.01em}
.hero p{margin:8px 0 22px;color:#f4f3eeb3}
[data-estilo="white"] .hero .hero-cta{border-color:#11111133;background:#ffffff80;color:#111}
[data-estilo="white"] .hero .hero-cta:hover{background:#111;color:#fff;border-color:#111}

/* ---- Comparador 1 vs 2 motores #secComp v3 (2026-09-26): compacto, cabe en una pantalla.
   Solo lo que decide: peso, tablero máximo, garantía y precio. ---- */
#secComp{padding:clamp(32px,4vw,48px) 0;background:var(--papel);color:var(--negro)}
#secComp .wrap{width:min(920px,100% - var(--gut)*2);margin-inline:auto}
#secComp .cx-head{text-align:center;margin-bottom:clamp(18px,2.4vw,28px)}
#secComp .cx-head h2{font:800 clamp(26px,3.2vw,40px)/1.1 var(--disp);letter-spacing:-.02em;margin-top:6px}
#secComp .cx-board{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,2vw,20px)}
#secComp .cx-card{position:relative;display:flex;flex-direction:column;background:var(--blanco);border:1px solid var(--linea);border-radius:14px;padding:clamp(14px,2.2vw,24px)}
#secComp .cx-top{background:var(--negro);color:#fff;border-color:var(--negro)}
#secComp .cx-tag{position:absolute;top:clamp(14px,2.2vw,24px);right:clamp(14px,2.2vw,24px);font:800 11px var(--disp);letter-spacing:.04em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:var(--verde-a);color:#fff}
#secComp .cx-card h3{font:800 clamp(18px,2vw,24px)/1.1 var(--disp)}
#secComp .cx-card img{width:100%;height:clamp(100px,12vw,160px);object-fit:contain;margin:clamp(8px,1.2vw,14px) 0;border-radius:10px;background:var(--plomo)}
#secComp .cx-specs{display:grid;gap:0;margin:0}
#secComp .cx-specs div{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:clamp(7px,1vw,11px) 0;border-top:1px solid var(--linea)}
#secComp .cx-top .cx-specs div{border-color:#ffffff24}
#secComp .cx-specs dt{font-size:clamp(12px,1.2vw,14px);color:var(--muted)}
#secComp .cx-top .cx-specs dt{color:#b9b8b2}
#secComp .cx-specs dd{margin:0;font:800 clamp(18px,2.2vw,26px)/1 var(--disp)}
#secComp .cx-specs small{font:600 .55em var(--texto)}
#secComp .cx-price{margin:clamp(10px,1.4vw,16px) 0 clamp(10px,1.2vw,14px);font:800 clamp(17px,1.9vw,22px) var(--disp)}
#secComp .cx-price small{font:500 12px var(--texto);opacity:.7}
#secComp .cx-btn{margin-top:auto;display:block;text-align:center;padding:12px 10px;border-radius:999px;font:800 clamp(13px,1.3vw,15px) var(--disp);border:1.5px solid var(--negro);color:var(--negro)}
#secComp .cx-top .cx-btn{background:#fff;border-color:#fff;color:var(--negro)}
#secComp .cx-btn:hover{opacity:.85}
#secComp .cx-foot{margin-top:clamp(14px,1.8vw,20px);text-align:center;font-size:13.5px;color:var(--tinta2)}
#secComp .cx-foot a{color:var(--negro);font-weight:700;white-space:nowrap}
@media (max-width:600px){
  #secComp .cx-tag{position:static;align-self:flex-start;margin-bottom:6px;font-size:10px}
  #secComp .cx-card:not(.cx-top) h3{margin-top:23px}
  #secComp .cx-specs div{flex-direction:column;align-items:flex-start;gap:3px}
}

/* Velocidad (2026-09-26): color de fondo mientras baja la foto y hueco reservado para la vitrina (evita el salto al pintarla) */
.vt-ft img,.ccat-circ img,.amb-img img,.esp img,.pg-slide img,.pg-f img,.ph-pr img,.ci-ph img,.dx img,.ck-it .ph img,.plp-sub-c img,.plp-hl img,.prota-bg img{background-color:var(--plomo)}
#vitrinaGrid:empty{min-height:clamp(148px,14vw + 44px,250px)}
/* el header fijo (hdr-variantes.js) empuja el banner al medir su alto: se reserva de entrada; y main no deja subir el footer antes de que JS pinte la ficha o el catálogo */
.hero.con-vitrina{box-sizing:content-box;padding-top:var(--hh,98px)}
@media (min-width:1024px){.hero.con-vitrina{padding-top:var(--hh,155px)}}
body>main#main{min-height:100vh}
/* CLS: el header y la ficha los arma JS; se reserva su alto antes de pintarlos */
#hdr:empty:not(.sobre-hero){display:block;min-height:98px}
@media (min-width:1024px){#hdr:empty:not(.sobre-hero){min-height:155px}}
#pdp:empty{min-height:150vh}

/* css/estilos.css */
/* Estilos por canal (js/estilos.js). Se carga después de estilo.css y solo pisa lo necesario.
   Black = sello Plantify (Blvck). White = todo blanco, nude y rosa empolvado, pensado para ella. */

/* ================= común a todos los estilos ================= */
/* selector Black/White arriba a la derecha (js/estilos.js) */
.topbar{position:relative}
.es-switch{position:absolute;right:var(--gut);top:50%;transform:translateY(-50%);display:flex;gap:4px}
.es-switch button{border:1px solid currentColor;background:transparent;color:inherit;font:inherit;font-size:10.5px;letter-spacing:.04em;padding:2px 9px;border-radius:99px;cursor:pointer;opacity:.55;transition:opacity .2s}
.es-switch button.on{opacity:1;font-weight:700}
@media (max-width:480px){.es-switch{display:none}}

/* megamenú tipo Branch: fila de más vendidos */
.es-best{grid-column:1/-1;border-top:1px solid var(--linea);padding-top:18px}
.es-bh{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.es-bh span{font-family:var(--disp);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.mwrap .es-bh a{display:inline;padding:0;font-size:13px;font-weight:600;color:var(--negro)}
.es-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.mwrap a.es-mini,.es-mini{display:block;padding:0;color:var(--tinta);font-weight:500}
.es-ph{display:block;background:var(--plomo);border-radius:8px;overflow:hidden;aspect-ratio:4/3;margin-bottom:8px}
.es-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.es-mini:hover .es-ph img{transform:scale(1.04)}
.es-mini b{display:block;font-size:13.5px;font-weight:600;line-height:1.3}
.es-mini small{display:block;font-size:12.5px;color:var(--tinta2);margin-top:2px}
.mwrap a.es-mini:last-child{color:var(--tinta)}
@media (max-width:900px){.es-grid{grid-template-columns:repeat(3,1fr);gap:10px}.es-mini b{font-size:12px}.es-mini small{font-size:11px}}

/* popup partido tipo Blvck */
.pf-modal .box.popup-box.es-split{max-width:760px;padding:0;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;text-align:center;border-radius:var(--r-card)}
.es-pp-img{position:relative;min-height:420px;background:var(--expresso)}
.es-pp-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.es-pp-img span{position:absolute;left:0;right:0;bottom:22px;font-family:var(--disp);font-weight:700;font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:#fff;text-shadow:0 1px 12px #0008}
.es-pp-txt{padding:48px 32px 28px;display:flex;flex-direction:column;justify-content:center}
.es-split h3{font-size:26px;text-transform:uppercase;letter-spacing:.02em;line-height:1.1}
.es-split .eyebrow{letter-spacing:.24em}
.es-split .x{z-index:2}
.es-pp-best{margin-top:22px;text-align:left}
.es-pp-best>span{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.es-pp-best>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.es-pp-best .es-ph{aspect-ratio:1;border-radius:var(--r-card)}
.es-pp-best .es-mini b{font-size:11.5px}.es-pp-best .es-mini small{font-size:11px}
@media (max-width:640px){.pf-modal .box.popup-box.es-split{grid-template-columns:1fr}.es-pp-img{min-height:160px}.es-pp-txt{padding:24px 20px 20px}.es-split h3{font-size:21px}}

/* ================= BLACK (Blvck) ================= */
[data-estilo="black"] .es-split{background:#000;color:#fff}
[data-estilo="black"] .es-split h3,[data-estilo="black"] .es-split .es-mini{color:#fff}
[data-estilo="black"] .es-split .sub,[data-estilo="black"] .es-split .es-mini small{color:#ffffffa6}
[data-estilo="black"] .es-split .eyebrow{color:#ffffff99}
[data-estilo="black"] .es-split .x{color:#fff;border:1.5px solid #fff;border-radius:50%}
[data-estilo="black"] .es-split .btn.primary{background:#fff;border-color:#fff;color:#000;border-radius:var(--r-btn)}
[data-estilo="black"] .es-split .es-ph{background:#1a1a1a}

/* ================= WHITE ================= */
[data-estilo="white"]{
  --papel:#FFFFFF;--papel2:#FBF7F4;--blanco:#fff;--tinta:#3E3532;--tinta2:#7D706A;--muted:#A89A93;
  --negro:#8E6B5E;--negro2:#7A5A4E;--plomo:#F7F2EE;--plomo2:#EEE4DD;--linea:#F0E6E0;
  --salvia:#C9A195;--bosque:#B48A7C;--bosque2:#9E7669;--expresso:#EFE4DC;
  --sombra:0 10px 30px #8e6b5e14;
}
[data-estilo="white"] body{background:#fff}
[data-estilo="white"] .topbar,[data-estilo="white"] .pf-telbar{background:#F7EEE9;color:#7D706A;border-color:#F0E6E0}
[data-estilo="white"] .pf-telbar a{color:#8E6B5E}
[data-estilo="white"] #hdr{background:#fff;color:var(--tinta);border-bottom:1px solid var(--linea)}
[data-estilo="white"] .nav,[data-estilo="white"] .nav a,[data-estilo="white"] .ic,[data-estilo="white"] .burger,[data-estilo="white"] .nav .nx{color:var(--tinta)}
[data-estilo="white"] .nav a:hover,[data-estilo="white"] .nav a.on{border-color:var(--negro)}
[data-estilo="white"] .ic:hover{background:var(--plomo)}
[data-estilo="white"] #hdr [style*="color:#fff"],[data-estilo="white"] #hdr [style*="color: #fff"]{color:var(--tinta)!important}
@media (max-width:900px){[data-estilo="white"] .nav{background:#fff;border-color:var(--linea)}[data-estilo="white"] .nav a{border-color:var(--linea)}}
[data-estilo="white"] .mwrap{background:#fff;box-shadow:0 24px 60px #8e6b5e1f;border-radius:var(--r-card)}
/* portada clara */
[data-estilo="white"] .hero{color:var(--tinta);background:#F7F2EE}
[data-estilo="white"] .hero-slide::after{background:linear-gradient(90deg,#ffffffe6 0%,#ffffffb3 40%,#fff0 70%)}
[data-estilo="white"] .hero p,[data-estilo="white"] .hero .kpis span{color:var(--tinta2)}
[data-estilo="white"] .hero .eyebrow{color:var(--negro)!important}
[data-estilo="white"] .hero .kpis{border-color:#3e353222}
[data-estilo="white"] .hero .btn.primary{background:var(--negro)!important;border-color:var(--negro)!important;color:#fff!important}
[data-estilo="white"] .hero .btn.light{border-color:var(--tinta);color:var(--tinta)}
@media (max-width:760px){[data-estilo="white"] .hero-slide::after{background:linear-gradient(180deg,#fff0 20%,#ffffffee 70%)}}
/* bloques que eran oscuros pasan a nude */
[data-estilo="white"] .dark,[data-estilo="white"] .xmas,[data-estilo="white"] .brands .own{background:#F7EEE9;color:var(--tinta)}
[data-estilo="white"] .dark h2,[data-estilo="white"] .xmas h2,[data-estilo="white"] .brands .own h3,[data-estilo="white"] .brands .own b{color:var(--tinta)}
[data-estilo="white"] .dark .lead,[data-estilo="white"] .dark p,[data-estilo="white"] .xmas p,[data-estilo="white"] .brands .own p,[data-estilo="white"] .xmas .xp span{color:var(--tinta2)}
[data-estilo="white"] .dark .eyebrow{color:var(--negro)}
[data-estilo="white"] .dark .btn.ghost{border-color:var(--tinta);color:var(--tinta)}
[data-estilo="white"] .dark .btn.ghost:hover{background:var(--tinta);color:#fff}
[data-estilo="white"] .xmas .xp{background:#fff;border-color:var(--linea)}
[data-estilo="white"] .brands .own img{opacity:.18}
[data-estilo="white"] .brands .own .list span{border-color:#3e353230}
/* botones y tarjetas más suaves */
[data-estilo="white"] .btn{border-radius:var(--r-btn)}
[data-estilo="white"] .btn.ghost{border-color:var(--negro);color:var(--negro)}
[data-estilo="white"] .card .cimg,[data-estilo="white"] .fam .fi{background:var(--plomo)}
[data-estilo="white"] .badge.hot,[data-estilo="white"] .fam .tag{background:var(--salvia)}
[data-estilo="white"] .cart-count{background:var(--salvia)}
/* popup White */
[data-estilo="white"] .pf-modal{background:#3e35324d}
[data-estilo="white"] .es-split{background:#fff}
[data-estilo="white"] .es-split .eyebrow{color:var(--salvia)}
/* megamenú: mini tarjetas compactas (foto + texto en fila) para no pasar la altura de pantalla */
.mwrap .es-best a.es-mini{display:grid;grid-template-columns:84px 1fr;column-gap:12px;align-items:center}
.es-best .es-ph{grid-row:span 2;aspect-ratio:1;margin:0}
.es-best .es-mini b{align-self:end}.es-best .es-mini small{align-self:start}

/* css/pulido.css */
/* Pulido visual (2026-09-25). Capa sobre estilo.css + estilos.css: no cambia paleta ni orden,
   solo ordena, compacta y reemplaza glifos por íconos SVG (js/iconos.js). */

.pfi{width:20px;height:20px;flex:none;display:block}
.ic .pfi{width:21px;height:21px}
.burger{place-items:center}.burger .pfi{width:24px;height:24px}
.nav .ni>a{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}
.ni.has>a::after{content:none!important}
.shipbtn .shiptxt{font-size:12.5px}
.cart-count,.wishcount{top:3px;right:1px;font-size:10px;min-width:17px;height:17px;padding:0 4px}
/* buscador visible también en pantallas medianas */
@media (min-width:1100px){[data-search-open].ic{display:none}.nav{gap:12px;font-size:13.5px}}
@media (min-width:1360px){.nav{gap:18px;font-size:14px}}
#drawer .x .pfi{width:20px;height:20px}

@media (max-width:900px){
  .topbar{font-size:11.5px;padding:6px var(--gut)}
  .pf-telbar{display:none}
  .burger{display:grid;margin-left:-8px}
  .logo{margin-right:auto}.logo img{height:24px}
  .nav{display:none!important}
  .hact{gap:0}
  .hact .hpago,.hact .hwish,.hact .shipbtn{display:none}
  .hact [data-search-open]{display:grid}
}


/* botones flotantes: apilados, sin taparse */
@media (max-width:900px){
  .helpfab{display:none}
  .wafloat{width:44px;height:44px;padding:0;justify-content:center;bottom:16px;right:14px}
  body:not(.nosticky) .wafloat{bottom:80px}
  body.nosticky .wafloat{bottom:16px}
  #pfprev{bottom:16px;left:12px;z-index:43}
  #pfprevBtn{font-size:12px;padding:8px 12px}
  body:not(.nosticky) #pfprev{bottom:80px}
}

/* carrito */
#drawer footer .btn{min-height:48px}
#drawer footer .btn .pfi{width:19px;height:19px}
#drawerGo.off{display:none}
.btn .pfi{width:19px;height:19px}

/* modal de video Vimeo */
.vbox.vm{width:min(960px,100%)}
.vbox .vframe{position:relative;aspect-ratio:16/9;background:#000;border-radius:8px;overflow:hidden}
.vbox .vframe iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vbox .x .pfi{width:22px;height:22px}

/* ================= TARJETAS ================= */
.card{border-radius:var(--r-card)}
.cimg{aspect-ratio:1/1}
.badges{display:flex;flex-wrap:wrap;gap:5px;top:10px;left:10px;right:52px}
.badge{font-size:10.5px;padding:4px 9px;border-radius:99px;letter-spacing:.04em}
.cacts{top:8px;right:8px}
.cacts button{width:34px;height:34px}
.cacts .pfi{width:18px;height:18px}
.cacts button.on .pfi{fill:currentColor}
.cplay{left:10px;bottom:10px;padding:5px 11px 5px 6px;font-size:11.5px;gap:5px}
.cplay::before{content:none}
.cplay .pfi{width:18px;height:18px}
.cbody{padding:12px 14px 14px;gap:3px}
.cbody small.cfam{display:block;font-size:10.5px;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cbody h4{font-size:15px;margin:1px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em}
.cmeta{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:18px}
.crate{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:600;color:var(--tinta)}
.crate .st{color:#d5a021;font-size:12px}
.crate em{font-style:normal;font-weight:400;color:var(--muted)}
.cmeta .sw{margin:0;gap:5px}
.cmeta .sw i{width:14px;height:14px}
.cprice{margin-top:4px;gap:8px;flex-wrap:wrap}
.cprice b{font-family:var(--disp);font-size:18px;font-weight:700;letter-spacing:-.01em}
.cprice s{font-size:12.5px}
.cbody .save{justify-self:start;font-size:11px;font-weight:700;color:var(--oferta);background:color-mix(in srgb,var(--oferta) 10%,transparent);padding:2px 7px;border-radius:5px}
.ccuotas{font-size:11.5px;margin:0}
.cnote,.cenvio{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--bosque);font-weight:500;margin:0;line-height:1.3}
.cenvio::before,.cnote::before{content:"";flex:none;width:14px;height:14px;background:currentColor;-webkit-mask:var(--truck) center/contain no-repeat;mask:var(--truck) center/contain no-repeat}
:root{--truck:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6.5h11v9.5H3zM14 9.5h3.8L21 13v3h-7'/%3E%3Ccircle cx='7' cy='17.5' r='1.8'/%3E%3Ccircle cx='17' cy='17.5' r='1.8'/%3E%3C/svg%3E")}
.cbody:has(.cenvio) .cnote{display:none}
.cacab{display:none!important}
.cfoot{margin-top:auto;padding-top:10px;gap:6px}
.cbody{display:flex;flex-direction:column}
.cfoot .btn{min-height:40px;font-size:13px;border-radius:6px}
.cfoot .btn.cwa{flex:none;width:40px;padding:0;background:#25D366;border-color:#25D366;color:#fff}
.cfoot .btn.cwa:hover{filter:brightness(.95)}
.cfoot .btn.cwa .pfi{width:20px;height:20px}
@media (max-width:640px){
  .cbody{padding:10px 10px 11px}
  .cbody h4{font-size:13.5px}
  .cprice b{font-size:16px}
  .cmeta .sw i{width:12px;height:12px}
  .crate{font-size:11px}.crate em{display:none}
  .ccuotas{display:none}
  .cfoot .btn{min-height:38px;font-size:12px;padding:0 8px}
  .cfoot .btn.cwa{width:38px}
  .badge{font-size:9.5px;padding:3px 6px}
  .cplay{font-size:0;padding:5px}.cplay .pfi{width:18px;height:18px}
}

/* ================= CATÁLOGO: más producto, filtros compactos ================= */
.cat-layout{grid-template-columns:212px 1fr;gap:32px}
.cat-layout .grid{grid-template-columns:repeat(3,1fr);gap:20px}
@media (min-width:1500px){.cat-layout .grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:1100px){.cat-layout{grid-template-columns:190px 1fr;gap:24px}.cat-layout .grid{gap:14px}}
.filters{gap:0;top:84px;max-height:calc(100vh - 100px);overflow:auto;padding-right:6px;scrollbar-width:thin}
.fgroup{padding:14px 0;border-bottom:1px solid var(--linea)}
.fgroup:first-child{padding-top:0}
.fgroup h5{font-size:11.5px;letter-spacing:.12em;margin-bottom:8px;color:var(--tinta)}
.fgroup label{font-size:13.5px;padding:4px 0;gap:9px;color:var(--tinta2)}
.fgroup label:hover{color:var(--tinta)}
.fgroup input[type=checkbox]{width:15px;height:15px;accent-color:var(--negro)}
.fgroup .swl{gap:6px}
.fgroup .swl label{font-size:12px;padding:3px 9px 3px 4px;gap:6px;color:var(--tinta)}
.fgroup .swl i{width:16px;height:16px}
.fgroup input[type=range]{accent-color:var(--negro);height:4px}
#pmaxTxt{font-size:12.5px;font-weight:600;color:var(--tinta)}
.f48{font-size:13px;border-top:0;margin:0;padding:12px 0}
#limpiar{margin-top:12px;font-size:12.5px;justify-self:start}
.toolbar{margin-bottom:14px;gap:10px}
.toolbar select,.toolbar input[type=search]{font-size:13.5px;padding:9px 12px}
#count{font-size:13px;color:var(--muted)}
@media (max-width:900px){
  .cat-layout{grid-template-columns:1fr}
  .cat-layout .grid{grid-template-columns:repeat(2,1fr);gap:10px}
  /* filtros como hoja inferior */
  .filters{display:grid!important;position:fixed;left:0;right:0;bottom:0;top:auto;z-index:78;max-height:82vh;background:var(--papel);border-radius:12px 12px 0 0;padding:8px 20px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -10px 40px #0003;transform:translateY(105%);transition:transform .3s cubic-bezier(.2,.7,.2,1);visibility:hidden}
  .filters.open{transform:none;visibility:visible}
  .filters::before{content:"Filtros";display:block;font-family:var(--disp);font-weight:700;font-size:17px;padding:10px 0 6px;position:sticky;top:-8px;background:var(--papel);z-index:1}
  body:has(.filters.open)::after{content:"";position:fixed;inset:0;background:#0006;z-index:77}
  body:has(.filters.open){overflow:hidden}
  .toolbar{position:sticky;top:0;z-index:5}
  .toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;background:var(--papel);padding:8px 0;margin:0 0 8px}
  .toolbar select{flex:1 1 55%;order:2}.toolbar #count{order:3;font-size:12.5px!important}.toolbar .vacab{order:4;margin-left:auto;font-size:12.5px}
  .toolbar>*{min-width:0}
  .toolbar input[type=search]{display:none}
  .toolbar .fbtn{min-height:40px;padding:0 14px;font-size:13.5px}
  .toolbar select{padding:9px 10px;font-size:13px;max-width:100%}
  .chips{flex-wrap:nowrap;overflow-x:auto;margin:0 calc(var(--gut)*-1) 16px;padding:0 var(--gut);scrollbar-width:none}
  .chips::-webkit-scrollbar{display:none}
  .chips>*{flex:none}
}

/* ================= HOME ================= */
.hero .eyebrow{color:#e8efe4!important;text-shadow:0 1px 12px #0008}
[data-estilo="white"] .hero .eyebrow{text-shadow:none}

/* ================= CHECKOUT (checkout.html) ================= */
.ck-page{background:var(--papel);padding-bottom:0!important}
.ck-hdr{background:#fff;border-bottom:1px solid var(--linea)}
.ck-hwrap{width:min(1180px,100% - var(--gut)*2);margin:0 auto;height:64px;display:flex;align-items:center;gap:16px}
.ck-hwrap .logo img{height:26px;width:auto}
.ck-safe{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--bosque);margin-right:auto}
.ck-safe .pfi{width:17px;height:17px}
.ck-back{display:flex;align-items:center;gap:4px;font-size:13.5px;font-weight:600;color:var(--tinta2)}
.ck-back .pfi{width:16px;height:16px}
.ck-main{width:min(1180px,100% - var(--gut)*2);margin:0 auto;padding:22px 0 64px}
.ck-steps{display:flex;gap:8px;list-style:none;padding:0;margin:0 0 22px;font-size:12.5px;color:var(--muted);counter-reset:s}
.ck-steps li{display:flex;align-items:center;gap:6px;counter-increment:s}
.ck-steps li::before{content:counter(s);width:20px;height:20px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font-size:11px;font-weight:700}
.ck-steps li+li::after{content:none}
.ck-steps li:not(:last-child){padding-right:10px;border-right:1px solid var(--linea)}
.ck-steps .on{color:var(--tinta);font-weight:600}.ck-steps .on::before{background:var(--negro);border-color:var(--negro);color:#fff}
.ck-steps .done{color:var(--bosque)}
.ck-grid{display:grid;grid-template-columns:1fr 400px;gap:36px;align-items:start}
.ck-grid[hidden]{display:none}
.ck-form{grid-column:1;grid-row:1;display:grid;gap:16px}
.ck-sum{grid-column:2;grid-row:1;position:sticky;top:20px;background:var(--plomo);border-radius:10px;padding:22px}
.ck-sumtog{display:none}
.ck-sum h2{font-size:17px;margin:0 0 14px}
.ck-items{display:grid;gap:12px;max-height:320px;overflow:auto}
.ck-it{display:grid;grid-template-columns:60px 1fr auto;gap:12px;align-items:center}
.ck-it .ph{position:relative;width:60px;height:60px;border-radius:6px;background:#fff;border:1px solid var(--linea)}
.ck-it img{width:100%;height:100%;object-fit:cover;border-radius:6px}
.ck-it i{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;border-radius:6px;background:var(--tinta2);color:#fff;font-style:normal;font-size:11px;font-weight:700;display:grid;place-items:center;padding:0 5px}
.ck-it b{font-size:13.5px;line-height:1.3;display:block}.ck-it small{font-size:12px;color:var(--muted)}
.ck-it .pr{font-size:13.5px;white-space:nowrap}
.ck-cupon{display:flex;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--linea)}
.ck-cupon input{flex:1;min-width:0;font:inherit;font-size:14px;padding:0 12px;height:44px;border:1.5px solid var(--linea);border-radius:6px;background:#fff;text-transform:uppercase}
.ck-cupon .btn{min-height:44px;padding:0 16px;font-size:13.5px}
.ck-cmsg{font-size:12.5px;margin:6px 0 0;min-height:0}
.ck-cmsg.ok{color:var(--bosque)}.ck-cmsg.bad{color:var(--oferta)}
.ck-tot{margin:14px 0 0;display:grid;gap:8px;font-size:14px}
.ck-tot div{display:flex;justify-content:space-between;gap:12px}
.ck-tot div[hidden]{display:none}
.ck-tot dt{color:var(--tinta2)}.ck-tot dt small{display:block;font-size:11.5px;color:var(--muted)}
.ck-tot dd{margin:0;font-weight:600;text-align:right}
#ckDtoRow dd,#ckPagoRow dd{color:var(--bosque)}
.ck-tot .big{border-top:1px solid var(--linea);padding-top:12px;margin-top:4px;align-items:baseline}
.ck-tot .big dt{color:var(--tinta);font-weight:600}.ck-tot .big dd{font-family:var(--disp);font-size:24px;font-weight:700}
.ck-trust{list-style:none;padding:14px 0 0;margin:14px 0 0;border-top:1px solid var(--linea);display:grid;gap:7px;font-size:12.5px;color:var(--tinta2)}
.ck-trust li{display:flex;align-items:center;gap:8px}.ck-trust .pfi{width:17px;height:17px;color:var(--bosque)}
.ck-toggles{display:grid;gap:8px}
.ck-toggles details{background:#fff;border:1px solid var(--linea);border-radius:8px;padding:0 16px;font-size:13.5px}
.ck-toggles summary{cursor:pointer;padding:12px 0;color:var(--tinta2);list-style:none}
.ck-toggles summary::-webkit-details-marker{display:none}
.ck-toggles summary b{color:var(--negro)}
.ck-toggles p{margin:0 0 12px;color:var(--tinta2)}
.ck-box{background:#fff;border:1px solid var(--linea);border-radius:10px;padding:22px}
.ck-box h2{display:flex;align-items:center;gap:10px;font-size:18px;margin:0 0 18px}
.ck-box h2 span{width:26px;height:26px;border-radius:50%;background:var(--negro);color:#fff;display:grid;place-items:center;font-size:13px}
.ck-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ck-fields .full{grid-column:1/-1}
.f{display:grid;gap:5px}
.f>span{font-size:12.5px;font-weight:600;color:var(--tinta2)}.f>span i{font-weight:400;color:var(--muted)}
.f input,.f select,.f textarea{font:inherit;font-size:15px;color:var(--tinta);width:100%;height:48px;padding:0 14px;border:1.5px solid var(--linea);border-radius:6px;background:#fff;transition:border-color .15s,box-shadow .15s}
.f textarea{height:auto;padding:12px 14px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:0;border-color:var(--negro);box-shadow:0 0 0 3px color-mix(in srgb,var(--negro) 12%,transparent)}
.f em{font-style:normal;font-size:11.5px;color:var(--muted);display:none}
.f.bad input,.f.bad select{border-color:var(--oferta)}
.f.bad em{display:block;color:var(--oferta)}
.chk{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;color:var(--tinta2);cursor:pointer}
.chk input{width:17px;height:17px;margin-top:1px;accent-color:var(--negro);flex:none}
.chk a{color:var(--negro);text-decoration:underline;text-underline-offset:2px}
.ck-pagos{display:grid;gap:10px}
.pg{display:grid;grid-template-columns:auto 1fr auto;gap:4px 12px;align-items:center;padding:14px 16px;border:1.5px solid var(--linea);border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s}
.pg input{width:18px;height:18px;accent-color:var(--negro);margin:0}
.pg-h b{display:block;font-size:14.5px}.pg-h small{display:block;font-size:12px;color:var(--muted)}
.pg-tag{font-size:11px;font-weight:700;padding:3px 8px;border-radius:99px;background:var(--plomo);color:var(--tinta2);white-space:nowrap}
.pg-tag:empty{display:none}
.pg-tag.ok{background:color-mix(in srgb,var(--bosque) 14%,transparent);color:var(--bosque)}
.pg-d{grid-column:2/-1;display:none;font-size:13px;color:var(--tinta2);padding-top:6px}
.pg:has(:checked){border-color:var(--negro);background:color-mix(in srgb,var(--plomo) 55%,#fff)}
.pg:has(:checked) .pg-d{display:block}
.ck-doc{display:flex;gap:16px;padding:2px 0 4px}
.ck-doc .rd{display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--tinta2);cursor:pointer}
.ck-doc .rd input{width:16px;height:16px;accent-color:var(--negro);margin:0}
.ck-nav{display:flex;gap:10px;margin-top:20px}
.ck-nav .btn{flex:1;min-height:52px}
.ck-terms{font-size:12.5px;color:var(--muted);text-align:center;margin:0}.ck-terms a{color:var(--tinta2);text-decoration:underline}
.ck-enc{margin:22px 0;padding:18px;border:1px solid var(--linea);border-radius:14px;text-align:left;display:grid;gap:12px}.ck-enc h3{margin:0;font-size:16px}
.ck-enc-q{display:grid;gap:6px}.ck-enc-q>span{font-size:14px}.ck-enc-es{display:flex;gap:6px}.ck-enc-es button{flex:1;min-height:44px;border:1px solid var(--linea);border-radius:10px;background:none;font-weight:600;cursor:pointer}
.ck-enc-es button.on{background:var(--negro);color:#fff;border-color:var(--negro)}.ck-enc-ley{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
.ck-enc textarea{min-height:64px;width:100%}.ck-enc-ok{margin:0;font-weight:600}
.ck-conocio{margin:14px 0 4px;display:grid;gap:6px}.ck-conocio small{display:block;color:var(--gris,#6b6b6b);font-weight:400}.ck-conocio select{min-height:44px}
.ck-err{color:var(--oferta);font-size:13.5px;font-weight:600;margin:0;min-height:0}
.ck-err:empty{display:none}
.ck-go{min-height:56px;font-size:16px;border-radius:8px}
.ck-note{font-size:12px;color:var(--muted);text-align:center;margin:0}
.ck-duda{display:flex;flex-direction:column;gap:2px;padding:12px 16px;margin-bottom:12px;border:1.5px solid #25d366;border-radius:12px;background:#f2fbf5;color:var(--negro);text-decoration:none}
.ck-duda b{font-size:15px}.ck-duda span{font-size:13px;color:#4a4a4a}
.ck-duda:hover{background:#e6f7ec}
.ck-wa{display:block;text-align:center;font-size:13.5px;font-weight:600;color:var(--bosque);text-decoration:underline;text-underline-offset:3px}
.ck-vacio,.ck-ok{max-width:520px;margin:40px auto;text-align:center;display:grid;gap:14px;justify-items:center}
.ck-vacio[hidden],.ck-ok[hidden]{display:none}
.ck-vacio h1,.ck-ok h1{font-size:28px;margin:0}
.ck-vacio p,.ck-ok p{color:var(--tinta2);margin:0;line-height:1.55}
.ck-okic{width:64px;height:64px;border-radius:50%;background:var(--bosque);color:#fff;display:grid;place-items:center}
.ck-okic .pfi{width:32px;height:32px;stroke-width:2.4}
.ck-ok .btn{min-height:52px}
.ck-back2{font-weight:600;color:var(--tinta2);text-decoration:underline}
.ck-ok small{color:var(--muted)}
@media (max-width:900px){
  .ck-grid{grid-template-columns:1fr;gap:14px}
  .ck-sum{grid-column:1;grid-row:1;position:static;padding:0;background:var(--plomo)}
  .ck-sumtog{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 16px;font:inherit;font-size:14px;font-weight:600;color:var(--negro)}
  .ck-sumtog b{font-family:var(--disp);font-size:17px;color:var(--tinta)}
  .ck-sumin{display:none;padding:0 16px 16px}
  .ck-sum.open .ck-sumin{display:block}
  .ck-sum h2{display:none}
  .ck-form{grid-row:2}
  .ck-box{padding:18px 16px}
  .ck-fields{grid-template-columns:1fr 1fr;gap:12px}
  .ck-hwrap{height:56px}.ck-safe{font-size:0;gap:0}.ck-safe .pfi{width:20px;height:20px}
  .ck-steps{font-size:11.5px;gap:6px}.ck-steps li:not(:last-child){padding-right:6px}
}
/* 2026-09-26: dos columnas también en celular (nombre+apellidos, DNI+celular, región+ciudad) */
@media (max-width:480px){
  .ck-fields{gap:12px 10px}
  .ck-fields .f span{font-size:12.5px}
  .ck-fields input,.ck-fields select{min-width:0}
}
.ck-nota summary{cursor:pointer;font-size:13.5px;color:var(--tinta2);text-decoration:underline;text-underline-offset:3px;list-style:none}
.ck-nota summary::-webkit-details-marker{display:none}
.ck-nota[open] summary{margin-bottom:10px}

/* ---------- carrito lateral (2026-09-25): blanco, limpio, radios suaves ---------- */
#drawer{width:min(440px,100%);background:#fff;color:var(--tinta);box-shadow:-12px 0 40px #0000001f}
#overlay{background:#0d0d0d59;backdrop-filter:blur(2px)}
#drawer header{padding:18px 20px 16px;border-bottom:1px solid #eeede9}
#drawer header b{display:block;font:700 19px var(--disp);letter-spacing:-.01em;color:var(--negro)}
#drawer header small{display:block;font:500 12.5px var(--texto);color:var(--muted);margin-top:2px}
#drawer header .x{width:38px;height:38px;border-radius:var(--r-btn);background:var(--plomo)}
#drawer header .x:hover{background:var(--plomo2)}
#drawer .dr-body{flex:1;overflow:auto;overscroll-behavior:contain}
#drawerItems{flex:none;overflow:visible;padding:4px 20px}
.ci{grid-template-columns:88px 1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid #eeede9;align-items:start}
.ci:last-child{border-bottom:0}
.ci-ph{display:block;width:88px;height:88px;border-radius:var(--r-card);background:var(--plomo);overflow:hidden}
.ci-ph img{width:100%;height:100%;object-fit:cover;border-radius:0;background:none;mix-blend-mode:multiply}
.ci-in{min-width:0;display:grid;gap:3px}
.ci-n{font:600 14px/1.3 var(--texto);color:var(--negro);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ci-n:hover{text-decoration:underline;text-underline-offset:2px}
.ci small{margin:0;font-size:12.5px;color:var(--muted)}
.ci-pr{font-size:13px;color:var(--tinta2)}.ci-pr s{margin-left:6px;color:var(--muted)}
.ci-row{justify-content:flex-start;gap:14px;margin-top:8px}
#drawer .qty{height:34px;gap:0;padding:0;border:1px solid #dcdad4;border-radius:var(--r-btn);background:#fff}
#drawer .qty button{width:32px;height:32px;border-radius:0;font-size:16px;color:var(--negro)}
#drawer .qty button:disabled{opacity:.3;cursor:default}
#drawer .qty button:not(:disabled):hover{background:var(--plomo)}
#drawer .qty em{min-width:24px;text-align:center;font-style:normal;font-size:13.5px;font-weight:600}
.ci-del{font-size:12.5px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.ci-del:hover{color:var(--negro)}
.ci-tot{font:700 14.5px var(--disp);color:var(--negro);white-space:nowrap}
/* vacío */
.dr-empty{display:grid;justify-items:center;text-align:center;gap:8px;padding:56px 12px 24px}
.dr-eic{width:64px;height:64px;border-radius:50%;background:var(--plomo);display:grid;place-items:center;margin-bottom:6px}
.dr-eic .pfi{width:26px;height:26px}
.dr-empty b{font:700 18px var(--disp);color:var(--negro)}
.dr-empty small{color:var(--muted);font-size:13.5px;margin-bottom:10px}
.dr-empty .btn{min-height:44px;padding:0 22px}
.dr-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:18px}
.dr-chips a{border:1px solid #e3e2dd;border-radius:99px;padding:6px 12px;font-size:12.5px;color:var(--tinta2)}
.dr-chips a:hover{border-color:var(--negro);color:var(--negro)}
#drawer.vacio footer{display:none}
/* venta cruzada */
#drawerX:empty{display:none}
#drawerX{margin:8px 20px 20px;padding:14px;background:#f7f6f3;border-radius:var(--r-card)}
#drawerX h6{font:700 12px var(--disp);letter-spacing:.06em;text-transform:uppercase;color:var(--tinta2);margin-bottom:10px}
.dx-list{display:grid;gap:8px}
.dx{display:grid;grid-template-columns:52px 1fr 32px;gap:12px;align-items:center;background:#fff;border-radius:var(--r-btn);padding:6px 8px 6px 6px}
.dx img{width:52px;height:52px;object-fit:cover;border-radius:var(--r-btn);background:var(--plomo);mix-blend-mode:multiply}
.dx span{min-width:0;display:grid;gap:1px;font-size:13px}
.dx span a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--negro);font-weight:500}
.dx span b{font-size:12.5px;color:var(--tinta2);font-weight:600}
.dx button{width:32px;height:32px;border-radius:var(--r-btn);border:1px solid #dcdad4;font-size:18px;line-height:1;color:var(--negro);transition:.15s}
.dx button:hover{background:var(--negro);border-color:var(--negro);color:#fff}
/* pie */
#drawer footer{padding:14px 20px max(18px,env(safe-area-inset-bottom));border-top:1px solid #eeede9;gap:10px;background:#fff}
.dr-trust{display:flex;gap:16px;font-size:12px;color:var(--tinta2)}
.dr-trust span{display:inline-flex;align-items:center;gap:6px}.dr-trust .pfi{width:15px;height:15px}
#drawer .tot{font:700 17px var(--disp);color:var(--negro);align-items:baseline}
#drawer .tot span{font:500 14px var(--texto);color:var(--tinta2)}
#drawer .dr-note{font-size:12.5px;margin-top:-6px}
#drawer footer .btn{min-height:50px;border-radius:var(--r-btn);font-size:14.5px}
#drawer footer .btn.wa{background:#fff;color:var(--negro);border-color:#dcdad4}
#drawer footer .btn.wa:hover{border-color:var(--negro)}
#drawer footer .btn.wa .pfi{color:#25d366}
body.lock .ph-theme{display:none}

/* 2026-09-26b · tarjetas: acabados en cuadrado, play minimalista; footer móvil ordenado */
.cmeta .sw{gap:6px}
.cmeta .sw i{width:20px;height:20px;border-radius:5px;border:2px solid #fff;box-shadow:0 0 0 1px var(--linea)}
.cplay{left:auto;right:12px;bottom:12px;width:38px;height:38px;padding:0;gap:0;border-radius:50%;justify-content:center;background:#ffffffe6;color:var(--negro);font-size:0;box-shadow:0 2px 10px #0000001f;transition:transform .2s,background .2s}
.cplay .pfi{display:none}
.cplay::before{content:"";border-left:10px solid currentColor;border-top:6.5px solid transparent;border-bottom:6.5px solid transparent;margin-left:3px}
.cplay:hover{background:var(--negro);color:#fff;transform:scale(1.06)}
#ftr .fcol a small{display:block;font-size:12.5px;opacity:.7;margin-top:1px}
/* PDP: beneficios bajo la bajada + WhatsApp como apoyo (la compra va por la web) */
.buy .benef{list-style:none;margin:10px 0 4px;padding:0;display:grid;gap:7px}
.buy .benef li{position:relative;padding-left:24px;font-size:14.5px;line-height:1.45;color:var(--tinta)}
.buy .benef li::before{content:"";position:absolute;left:2px;top:4px;width:12px;height:7px;border-left:2px solid var(--verde-a,#458236);border-bottom:2px solid var(--verde-a,#458236);transform:rotate(-45deg)}
.buy .wa-ask{display:inline-flex;align-items:center;gap:8px;margin:12px 0 2px;font-size:14px;color:var(--tinta2);text-decoration:underline;text-underline-offset:3px}
.buy .wa-ask .pfi{width:18px;height:18px;color:#1f9e4d}
.buy .wa-ask:hover{color:var(--negro)}
/* un solo play en todo el sitio: el redondo blanco de la tarjeta (también en la galería de la PDP) */
button.cplay{border:0;cursor:pointer;position:absolute;z-index:2;display:inline-flex;align-items:center}
.gal .cplay{width:52px;height:52px;right:16px;bottom:16px}
.gal .cplay::before{border-left-width:13px;border-top-width:8px;border-bottom-width:8px;margin-left:4px}
.gal .thumbs button.vid::after{content:"";inset:auto;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:#ffffffe6 no-repeat 55% 50%/9px 10px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 10'%3E%3Cpath d='M0 0l9 5-9 5z' fill='%23111'/%3E%3C/svg%3E");box-shadow:0 2px 8px #0000002e}
/* WhatsApp con menos peso (2026-09-26): la venta va por la web; el flotante queda chico, solo ícono */
.wafloat{width:44px;height:44px;padding:0;justify-content:center;opacity:.92;box-shadow:0 6px 16px #25332b26}.wafloat::before{width:20px;height:20px}

/* ---- Home: más vendidos, precio competitivo, beneficios y FAQ (2026-09-26) ---- */
#secHot{padding:clamp(40px,5vw,72px) 0}
#secHot .sechead{margin-bottom:clamp(18px,2.4vw,28px)}
#secHot .sechead h2{font-size:clamp(26px,3.2vw,40px)}
#secHot .ver-todo{font-weight:700;font-size:14px;white-space:nowrap}
#secPrecio{padding:clamp(40px,5vw,72px) 0;background:var(--negro);color:#fff}
#secPrecio .pz-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(24px,4vw,56px);align-items:center}
#secPrecio .eyebrow{color:#9fc38f}
#secPrecio h2{font:800 clamp(26px,3.4vw,44px)/1.08 var(--disp);letter-spacing:-.02em}
#secPrecio .pz-txt p{margin:14px 0 22px;color:#cfcdc6;font-size:clamp(15px,1.4vw,17px);max-width:46ch}
#secPrecio .btn{background:#fff;border-color:#fff;color:var(--negro)}
#secPrecio .pz-tabla{background:#ffffff0d;border:1px solid #ffffff24;border-radius:14px;padding:clamp(12px,2vw,22px)}
#secPrecio .pz-row{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:10px;padding:11px 0;border-top:1px solid #ffffff1f;font-size:clamp(13px,1.3vw,15px);align-items:baseline}
#secPrecio .pz-head{border-top:0;font:800 12px var(--disp);letter-spacing:.06em;text-transform:uppercase;color:#b9b8b2}
#secPrecio .pz-head span:nth-child(2){color:#9fc38f}
#secPrecio .pz-row>span:first-child{color:#b9b8b2}
#secPrecio .pz-row b{font:800 clamp(14px,1.5vw,17px) var(--disp)}
#secPrecio .pz-row>span:last-child{color:#cfcdc6}
#secPrecio .pz-nota{margin-top:10px;font-size:12px;color:#8f8d86}
#secBenef{padding:clamp(24px,3vw,36px) 0;background:var(--papel);border-bottom:1px solid var(--linea)}
#secBenef .bf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,2vw,28px)}
#secBenef b{display:block;font:800 clamp(14px,1.4vw,16px) var(--disp);margin-bottom:4px}
#secBenef b::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--verde-a);margin-right:8px;vertical-align:middle}
#secBenef span{font-size:13.5px;color:var(--tinta2)}
#secFaq{padding:clamp(40px,5vw,72px) 0}
#secFaq .fq-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(20px,4vw,56px);align-items:start}
#secFaq h2{font-size:clamp(26px,3.2vw,40px)}
#secFaq .fq-head p:not(.eyebrow){margin-top:12px;color:var(--tinta2)}
#secFaq .fq-head a{color:var(--negro);font-weight:700;text-decoration:underline}
#secFaq details{border-top:1px solid var(--linea);padding:4px 0}
#secFaq details:last-child{border-bottom:1px solid var(--linea)}
#secFaq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;padding:14px 0;font:700 clamp(15px,1.5vw,17px) var(--disp)}
#secFaq summary::-webkit-details-marker{display:none}
#secFaq summary::after{content:"+";font-weight:500;font-size:22px;line-height:1}
#secFaq details[open] summary::after{content:"–"}
#secFaq details p{padding:0 0 16px;color:var(--tinta2);max-width:62ch}
@media (max-width:900px){#secPrecio .pz-grid,#secFaq .fq-wrap{grid-template-columns:1fr}#secBenef .bf-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){#secPrecio .pz-row{grid-template-columns:1fr 1fr 1fr;gap:8px}#secBenef .bf-grid{gap:16px 14px}}

@media (max-width:640px){
  .cmeta .sw i{width:16px;height:16px;border-radius:4px}
  .cplay{width:40px;height:40px;right:8px;bottom:8px;font-size:0;padding:0}
  .cplay::before{border-left-width:10px;border-top-width:6.5px;border-bottom-width:6.5px;margin-left:3px}
  /* zona de toque más grande que el botón: un dedo que cae al lado abre el video, no la ficha */
  .cplay::after{content:"";position:absolute;inset:-14px}
  #vmodal video{max-height:62dvh}
  #vmodal .x{width:36px;height:36px;top:10px;right:10px}
}
@media (max-width:600px){
  .fwrap{gap:28px 18px}
  #ftr h5{font-size:14px;margin-bottom:8px}
  #ftr .fcol a{font-size:14px;line-height:1.3;padding:6px 0}
}
@media (max-width:420px){#ftr .fform input{flex:none;width:100%}}
/* checkout: envío visible en el paso 2 (en móvil el resumen va plegado) */
.ck-envpaso{margin:-2px 0 0;font-size:13.5px;color:var(--tinta2)}.ck-envpaso:empty{display:none}.ck-envpaso b{color:var(--tinta)}
/* móvil: 16 px en los campos para que iPhone no haga zoom al tocarlos */
@media (max-width:760px){.f input,.f select,.f textarea,.ck-cupon input{font-size:16px}}
.ck-subir{position:relative;width:100%;min-height:52px;cursor:pointer}.ck-subir.is-busy{opacity:.6;pointer-events:none}.ck-subir[hidden]{display:none}
.ck-copybox .ck-wa2{background:#fff;color:var(--negro);border-color:#dcdad4}.ck-copybox .ck-wa2 .pfi{color:#25d366}
.ck-submsg{font-size:13.5px;margin:0;color:var(--tinta2)}.ck-submsg:empty{display:none}.ck-submsg.ok{color:var(--bosque);font-weight:600}.ck-submsg.err{color:var(--oferta);font-weight:600}
@media (max-width:760px){.ck-fields .ck-region,.ck-fields .ck-ciudad,.ck-fields .ck-distrito{grid-column:1/-1}}
.ck-fields select:disabled{opacity:.55}
/* checkout sin desbordes en celulares angostos (320–400 px) */
@media (max-width:760px){.ck-grid{grid-template-columns:minmax(0,1fr)}.ck-form,.ck-sum,.ck-box{min-width:0}.pg{grid-template-columns:auto minmax(0,1fr) auto}.pg-h,.pg-d{min-width:0;overflow-wrap:anywhere}}
@media (max-width:400px){.pg{padding:12px}.pg-tag{grid-column:2/-1;justify-self:start}.ck-steps li:not(.on){font-size:0;gap:0}.ck-steps li:not(:last-child){padding-right:8px}.ck-sumtog{gap:8px}.ck-sumtog b{white-space:nowrap}}
@media (max-width:400px){.ck-nav .btn{min-width:0}.ck-nav .ck-back{flex:0 0 auto;padding-inline:16px}.ck-go{white-space:normal;line-height:1.2;padding-inline:12px}}

/* css/pdp.css */
/* PDP Plantify (2026-09-26): foto grande + collage y acordeones a la izquierda (Castlery); panel fijo a la derecha
   con migas, cupones en tarjetitas, complementos con vista rápida y entrega. En celular, carrusel.
   Solo aplica a producto.html (body.pdp-page). Tokens en css/estilo.css. */
.pdp-page{background:var(--papel)} /* mismo tono que la niebla de arriba del footer: sin corte */
.pdp-wrap{width:min(var(--wh),100% - var(--gut)*2);margin-inline:auto}
.pdp-crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px;color:var(--muted);padding:0 0 14px}
.pdp-crumbs a{color:var(--tinta2)}.pdp-crumbs a:hover{color:var(--negro);text-decoration:underline}
.pdp-crumbs i{font-style:normal;opacity:.5}.pdp-crumbs span{color:var(--negro);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:30ch}

.pdp2{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,1fr);gap:48px;align-items:start;padding:24px 0 64px}
.pdp-left{min-width:0}

/* ---------- galería: foto grande + collage 2 columnas (escritorio) / carrusel (celular) ---------- */
.pg-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pg-f{position:relative;margin:0;aspect-ratio:1;border-radius:var(--r-card);overflow:hidden;background:var(--plomo);cursor:zoom-in}
.pg-f.pg-hero{grid-column:1/-1;aspect-ratio:4/3}
.pg-f:not(.pg-hero):last-child:nth-child(even){grid-column:1/-1;aspect-ratio:2/1}
.pg-f img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .6s ease,transform .8s ease}
/* tapas de agenda (2026-10-04): foto 1:1 con aire, entera aunque el recuadro sea 4:3 */
.pg-f img[src*="agenda-diseno-"],.pg-slide img[src*="agenda-diseno-"]{object-fit:contain;background:#E5E4E0}
.pg-f img.ld{opacity:1}
.pg-f:hover img{transform:scale(1.025)}
.pg-f .cplay{width:52px;height:52px;right:16px;bottom:16px}
.pg-f .cplay::before{border-left-width:13px;border-top-width:8px;border-bottom-width:8px;margin-left:4px}
.pg-more{position:absolute;inset:0;display:grid;place-items:center;background:#111111a6;color:#fff;font:700 34px/1 var(--disp);letter-spacing:-.02em;pointer-events:none}
.pg-all{display:flex;align-items:center;gap:8px;margin:18px auto 0;padding:12px 22px;border:1.5px solid var(--negro);border-radius:var(--r-btn);font:600 14px var(--texto);color:var(--negro);background:#fff;transition:background .2s,color .2s}
.pg-all:hover{background:var(--negro);color:#fff}
.pg-all span{font-weight:400;opacity:.65}
.pg-all .pfi{width:17px;height:17px}
.pg-main{display:none;position:relative;background:var(--plomo)}
.pg-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:1}
.pg-track::-webkit-scrollbar{display:none}
.pg-slide{flex:0 0 100%;scroll-snap-align:start;margin:0}
.pg-slide img{width:100%;height:100%;object-fit:cover;display:block}
.pg-badges{position:absolute;top:14px;left:14px;display:flex;gap:6px;flex-wrap:wrap;pointer-events:none}
.pg-b{background:#fff;color:var(--negro);font:600 11.5px/1 var(--texto);padding:7px 10px;border-radius:99px;letter-spacing:.02em}
.pg-b.off{background:var(--oferta);color:#fff}
.pg-count{position:absolute;bottom:14px;left:14px;background:#111c;color:#fff;font:500 12px/1 var(--texto);padding:7px 10px;border-radius:99px;pointer-events:none}
.pg-main .cplay{left:auto;right:14px;bottom:14px}
.pg-nav{position:absolute;top:50%;translate:0 -50%;width:44px;height:44px;border-radius:50%;background:#fffffff0;display:grid;place-items:center;box-shadow:0 2px 10px #0000001a}
.pg-nav.prev{left:16px}.pg-nav.next{right:16px}
.pg-lb{position:fixed;inset:0;background:#0e0e0ef5;z-index:95;display:none;align-items:center;justify-content:center;padding:40px 40px 110px}
.pg-lb.open{display:flex}
.pg-lb>img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}
.pg-lbx{position:absolute;top:16px;right:16px;width:44px;height:44px;border-radius:50%;background:#fff;display:grid;place-items:center;z-index:1}
.pg-lbt{position:absolute;left:50%;bottom:18px;translate:-50% 0;display:flex;gap:8px;max-width:calc(100% - 32px);overflow-x:auto;scrollbar-width:none;padding:2px}
.pg-lbt::-webkit-scrollbar{display:none}
.pg-lbt button{flex:none;width:62px;height:62px;border-radius:6px;overflow:hidden;opacity:.5;outline:2px solid transparent;outline-offset:1px;transition:opacity .2s}
.pg-lbt button.on,.pg-lbt button:hover{opacity:1}.pg-lbt button.on{outline-color:#fff}
.pg-lbt img{width:100%;height:100%;object-fit:cover}

/* ---------- panel de compra ---------- */
.pdp-buy{min-width:0;position:sticky;top:96px;align-self:start}
.pb-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.pb-fam{font:600 11.5px/1.2 var(--texto);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.pdp-wish{width:40px;height:40px;border-radius:50%;border:1px solid var(--linea);display:grid;place-items:center;transition:.2s}
.pdp-wish:hover{border-color:var(--negro)}.pdp-wish.on{background:var(--negro);border-color:var(--negro);color:#fff}
.pdp-wish.on .pfi{fill:currentColor}
.pdp-buy h1{font:700 clamp(26px,2.4vw,34px)/1.12 var(--disp);letter-spacing:-.02em;color:var(--negro);margin:8px 0 10px}
.pb-rvw{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--tinta2)}
.pb-rvw b{color:var(--negro)}.pb-rvw small{text-decoration:underline;text-underline-offset:3px}
.pb-pr{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;margin:18px 0 6px}
.pb-pr>b{font:700 32px/1 var(--disp);color:var(--negro);letter-spacing:-.02em}
.pb-pr s{color:var(--muted);font-size:17px}
.pb-pr .off{background:var(--oferta);color:#fff;font:600 12.5px/1 var(--texto);padding:5px 8px;border-radius:4px;align-self:center}
.pb-msi{display:flex;flex-wrap:wrap;gap:4px 10px;text-align:left;font-size:14px;color:var(--tinta);padding:2px 0}
.pb-msi b{color:var(--verde-a);font-weight:600}
.pb-msi u{color:var(--tinta2);font-size:13px;text-underline-offset:3px}
.pb-msi:hover u{color:var(--negro)}
.pb-cup{display:block;margin:16px 0 4px;cursor:pointer}
.pb-cups{display:flex;flex-wrap:wrap;gap:8px}
.pb-c{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px 0 10px;border-radius:var(--r-btn);background:#4582361a;color:var(--negro);font-size:13px;white-space:nowrap;transition:background .2s}
.pb-c .pfi{width:16px;height:16px;color:var(--verde-a)}
.pb-c b{font-weight:600}
.pb-c.no{background:#0000000a;color:var(--tinta2)}.pb-c.no .pfi{color:var(--tinta2)}
.pb-c.mas{background:transparent;border:1px solid var(--linea);font-weight:600;padding:0 12px}
.pb-cup:hover .pb-c:not(.mas){background:#45823629}.pb-cup:hover .pb-c.mas{border-color:var(--negro)}
.pb-cupv{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:13px;color:var(--tinta2)}
.pb-cupv u{text-underline-offset:3px}.pb-cupv .pfi{width:16px;height:16px}
.pb-cup:hover .pb-cupv{color:var(--negro)}
.pb-lead{color:var(--tinta2);font-size:15px;line-height:1.55;margin:16px 0 8px}
.pdp-buy .benef{list-style:none;margin:8px 0 4px;padding:0;display:grid;grid-template-columns:1fr;gap:7px}
.pdp-buy .benef li{position:relative;padding-left:24px;font-size:14px;line-height:1.45;color:var(--tinta)}
.pdp-buy .benef li::before{content:"";position:absolute;left:2px;top:4px;width:12px;height:7px;border-left:2px solid var(--verde-a);border-bottom:2px solid var(--verde-a);transform:rotate(-45deg)}

.pb-opt{margin-top:22px}
.pb-opt h5{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px;font:600 14px/1.3 var(--texto);color:var(--negro);margin-bottom:10px}
.pb-opt h5 b{color:var(--tinta2);font-weight:500}
.pb-opt h5 span{margin-left:auto;font-size:12.5px;font-weight:400;color:var(--muted)}
.pb-pers h5 b{color:#b5471b;font-weight:600}
.pb-pers input{width:100%;min-height:46px;padding:10px 14px;border:1.5px solid var(--negro);border-radius:12px;font:15px var(--texto);color:var(--negro);background:#fff}
.pb-pers.bad input{border-color:#b5471b}
.pb-persprev{margin:8px 0 0;font-size:13px;color:var(--muted)}
.pb-row{display:flex;flex-wrap:wrap;gap:8px}
.pb-row a{display:flex;align-items:center;justify-content:center}
.pb-row button,.pb-row a{min-height:46px;padding:8px 20px;border:1.5px solid var(--negro);border-radius:99px;font-size:14px;font-weight:600;background:transparent;color:var(--negro);transition:background .15s,color .15s}
.pb-row button:hover,.pb-row a:hover{background:#0000000d}
.pb-row button.on{background:var(--negro);color:#fff}
.pb-row.sz{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}
.pb-row.sz button,.pb-row.sz a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:54px;padding:6px 12px;line-height:1.2}
.pb-row.sz b{font-weight:600}.pb-row.sz small{font-size:12px;font-weight:500;color:var(--muted)}
.pb-row.sz button.on small{color:#ffffffb3}
.pb-up{display:flex;gap:10px;align-items:flex-start;margin-top:10px;padding:10px 12px;border-radius:var(--r-btn);background:#4582361a;font-size:13px;line-height:1.45;color:var(--tinta)}
.pb-up b{color:var(--negro)}.pb-up .pfi{width:18px;height:18px;flex:none;color:var(--verde-a);margin-top:1px}
.pb-up:hover{background:#45823629}
.pb-row.sw{gap:10px}
.pb-row.sw button{position:relative;width:56px;height:56px;min-height:0;padding:3px;border:1.5px solid var(--linea);border-radius:12px;background:#fff}
.pb-row.sw button:hover{border-color:var(--tinta2);background:#fff}
.pb-row.sw button.on{border:2px solid var(--negro);padding:2.5px;background:#fff}
.pb-row.sw i{display:block;width:100%;height:100%;border-radius:8px;background:var(--c);box-shadow:inset 0 0 0 1px #0000001a}
.pb-row.sw i.mad{background:repeating-linear-gradient(97deg,#0000 0 3px,#00000017 3px 4px,#0000 4px 9px),repeating-linear-gradient(93deg,#ffffff14 0 1px,#0000 1px 6px),radial-gradient(ellipse 70% 25% at 65% 38%,#00000024,#0000 70%),radial-gradient(ellipse 50% 18% at 25% 75%,#ffffff1a,#0000 70%),var(--c)}
.pb-row.sw .pfi{position:absolute;left:50%;top:50%;width:24px;height:24px;margin:-12px 0 0 -12px;padding:5px;box-sizing:border-box;border-radius:50%;background:var(--negro);color:#fff;opacity:0;transform:scale(.6);transition:opacity .15s,transform .15s;pointer-events:none}
.pb-row.sw button.on .pfi{opacity:1;transform:none}

/* ---------- combo: arranca apagado como los sugeridos del carrito ---------- */
.pdp-combo{margin-top:26px;border:1px solid var(--linea);border-radius:var(--r-card);padding:16px;background:var(--papel);transition:border-color .25s}
.pdp-combo.has{border-color:var(--negro)}
.pc-head b{display:block;font:700 16px/1.2 var(--disp);color:var(--negro)}
.pc-head span{font-size:13px;color:var(--tinta2)}
.pc-head em{font-style:normal;font-weight:600;color:var(--verde-a)}
.pc-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.pc-it{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;align-items:center;padding:8px;border:1.5px dashed #d6d4ce;border-radius:var(--r-btn);background:#fff;text-align:left;cursor:pointer;min-width:0;transition:border-color .25s}
.pc-it:hover{border-color:var(--negro);border-style:solid}
.pc-it.on{border-style:solid;border-color:var(--negro)}
.pc-img{position:relative;display:block}
.pc-img img{width:52px;height:52px;border-radius:4px;object-fit:cover;background:var(--plomo);filter:grayscale(1);opacity:.5;transition:filter .3s,opacity .3s;display:block}
.pc-it .pc-info{opacity:.6;transition:opacity .3s}
.pc-it.on .pc-img img{filter:none;opacity:1}
.pc-it.on .pc-info,.pc-it:hover .pc-info{opacity:1}
.pc-chk{position:absolute;top:-6px;left:-6px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1.5px solid #bdbab2;color:var(--tinta2);font:600 14px/1 var(--texto);font-style:normal;transition:.2s}
.pc-chk::before{content:"+"}.pc-chk .pfi{display:none;width:12px;height:12px;stroke-width:2.6}
.pc-it.on .pc-chk{background:var(--negro);border-color:var(--negro);color:#fff}
.pc-it.on .pc-chk::before{content:none}.pc-it.on .pc-chk .pfi{display:block}
.pc-info{display:flex;flex-direction:column;gap:2px;min-width:0}
.pc-n{font-size:13px;font-weight:600;color:var(--negro);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pc-pr{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;font-size:13px}
.pc-pr s{color:var(--muted);font-size:11.5px}.pc-pr b{color:var(--negro);font-weight:600}
.pc-tag{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-it.on .pc-tag{color:var(--verde-a);font-weight:600}
.pc-sum{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:baseline;margin-top:12px;padding-top:12px;border-top:1px solid var(--linea);font-size:13px;color:var(--tinta2);animation:pcIn .3s ease}
.pc-sum[hidden]{display:none}
.pc-tot s{color:var(--muted);margin-right:6px}.pc-tot b{font:700 17px var(--disp);color:var(--negro)}
.pc-sum em{grid-column:1/-1;font-style:normal;font-weight:600;color:var(--verde-a)}
@keyframes pcIn{from{opacity:0;transform:translateY(-4px)}}

.pb-add{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-top:22px}
.pb-add .qty{min-height:52px;padding:4px 8px;border-radius:var(--r-btn)}
.pb-add .btn{min-height:52px;font-size:15.5px;min-width:0;white-space:normal;line-height:1.2;padding:0 16px;text-align:center}
.pb-seg{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;margin:12px 0 0;font-size:12.5px;color:var(--tinta2)}
.pb-seg span{display:inline-flex;align-items:center;gap:6px}
.pb-seg .pfi{width:16px;height:16px}

.pdp-ent{margin-top:18px;border:1px solid var(--linea);border-radius:var(--r-card);overflow:hidden}
.pe-row{display:grid;grid-template-columns:22px 1fr;gap:12px;padding:14px 16px;font-size:13.5px;color:var(--tinta2)}
.pe-row+.pe-row{border-top:1px solid var(--linea)}
.pe-row>.pfi{width:22px;height:22px;color:var(--negro)}
.pe-row b{color:var(--negro);font-weight:600}
.pe-row>div>b{display:block;margin-bottom:2px}
.pe-h.free{color:var(--verde-a)!important}
.pe-row span,.pe-row small{display:block}
.pe-row small{font-size:12.5px;margin-top:4px}
.pe-falta{color:var(--tinta)}
.pe-loc{display:inline-flex;align-items:center;gap:3px;font-weight:600;color:var(--negro);vertical-align:bottom}
.pe-loc em{font-style:normal}.pe-loc:hover em{text-decoration:underline;text-underline-offset:3px}
.pe-loc .pfi{width:15px;height:15px}.pe-loc .pfi:last-child{width:13px;height:13px;opacity:.55}
.pb-wa{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;margin-top:10px;border:1px solid var(--linea);border-radius:var(--r-btn);background:#fff;font-size:14px;font-weight:600;color:var(--negro);transition:border-color .2s}
.pb-wa:hover{border-color:var(--negro)}.pb-wa svg{width:20px;height:20px;flex:none}
/* «Combina con» y «Visto recientemente» más juntos y más cerca del footer */
section:has(#rel){padding:56px 0 20px}
.vistos-sec{padding:20px 0 56px}

.pdp-acc{margin-top:48px}
.pa-t{font:700 22px/1.2 var(--disp);letter-spacing:-.01em;color:var(--negro);padding-bottom:14px;border-bottom:1px solid var(--linea)}
.pdp-acc details{border-bottom:1px solid var(--linea)}
.pdp-acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:20px 0;font:600 16px var(--disp);color:var(--negro);cursor:pointer}
.pdp-acc summary::-webkit-details-marker{display:none}
.pdp-acc summary::after{content:"";width:8px;height:8px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(-45deg);margin-right:4px;transition:transform .25s}
.pdp-acc details[open] summary::after{transform:rotate(45deg)}
.pdp-acc details>div{padding:0 0 22px;font-size:14.5px;line-height:1.65;color:var(--tinta2);max-width:68ch}
.pdp-acc details>div p+p{margin-top:10px}
.pdp-acc h4{font:600 14px var(--disp);color:var(--negro);margin:18px 0 8px}
.pdp-acc .pa-d+.specs{margin-top:14px}
.pdp-acc .specs{display:grid;gap:0}
.pdp-acc .specs div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px dashed var(--linea)}
.pdp-acc .specs div:last-child{border:0}
.pdp-acc .specs b{color:var(--negro);font-weight:500;text-align:right}
.pdp-acc .inc{display:flex;align-items:center;gap:8px;margin:0}
.pdp-acc .inc+.inc{margin-top:6px}
.pdp-acc .inc .pfi{width:16px;height:16px;color:var(--verde-a)}

.pdp-mbox h3{font:700 20px var(--disp)}
.pf-modal .box.pdp-mbox:has(.qv){max-width:820px;padding:0;overflow:auto}
.qv{display:grid;grid-template-columns:1fr 1fr}
.qv-img{background:var(--plomo);min-height:100%}
.qv-img img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;display:block}
.qv-info{display:flex;flex-direction:column;gap:6px;padding:28px 26px 24px}
.pf-modal .qv h3{font:700 22px/1.2 var(--disp);letter-spacing:-.01em;margin:2px 0 4px;padding-right:28px}
.qv-pr{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}
.qv-pr b{font:700 24px/1 var(--disp);color:var(--negro)}
.qv-pr s{color:var(--muted);font-size:14px}
.qv-pr .off{background:var(--verde-a);color:#fff;font:600 12px/1 var(--texto);padding:4px 7px;border-radius:4px;align-self:center}
.qv-res{font-size:14px;line-height:1.55;color:var(--tinta2);margin-top:6px}
.qv .pb-opt{margin-top:14px}
.pf-modal .qv .qv-add{margin-top:20px;min-height:50px;font-size:15px}
.qv-add:not(.primary){border:1.5px solid var(--negro);background:#fff;color:var(--negro)}
.qv-ver{align-self:center;margin-top:10px;font-size:13px}
.pdp-mbox .x{z-index:2}
.cup{display:grid;grid-template-columns:86px 1fr;border:1px solid var(--linea);border-radius:var(--r-card);background:#fff;margin-top:10px;overflow:hidden}
.cup-l{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--plomo);border-right:2px dashed var(--papel);padding:12px 6px;color:var(--negro);text-align:center}
.cup-l b{font:700 18px/1 var(--disp)}.cup-l small{font-size:10.5px;letter-spacing:.1em;margin-top:4px}
.cup-l .pfi{width:28px;height:28px}
.cup.ok .cup-l,.cup.auto .cup-l{background:var(--verde-a);color:#fff}
.cup-r{padding:12px 14px;font-size:13px;color:var(--tinta2);display:flex;flex-direction:column;gap:3px}
.cup-r b{color:var(--negro);font-size:14px}
.cup-r em{font-style:normal;font-weight:600;color:var(--verde-a)}
.cup-cp{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;margin-top:6px;font:600 12.5px var(--texto);border:1.5px solid var(--negro);border-radius:var(--r-btn);padding:6px 10px}
.cup-cp .pfi{width:14px;height:14px;display:none}
.cup-cp.done{background:var(--negro);color:#fff}.cup-cp.done .pfi{display:block}

.pdp-rv{padding:56px 0;border-top:1px solid var(--linea)}
.rv-grid{display:grid;grid-template-columns:300px 1fr;gap:48px}
.rv-sum{display:flex;flex-direction:column;gap:6px}
.rv-n{font:700 52px/1 var(--disp);color:var(--negro);margin-top:6px}
.rv-sum small{color:var(--muted);font-size:12.5px}
.rv-bars{display:grid;gap:6px;margin-top:14px;font-size:12.5px;color:var(--tinta2)}
.rv-bars div{display:grid;grid-template-columns:24px 1fr 34px;gap:8px;align-items:center}
.rv-bars i{height:6px;background:var(--plomo);border-radius:99px;overflow:hidden}
.rv-bars em{display:block;height:100%;background:var(--negro)}
.rv-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rv-list article{border:1px solid var(--linea);border-radius:var(--r-card);padding:20px;display:flex;flex-direction:column;gap:10px}
.rv-list p{font-size:14.5px;line-height:1.55;color:var(--tinta);flex:1}
.rv-list small{font-size:12.5px;color:var(--muted)}

/* ---------- tablet / móvil ---------- */
@media (max-width:1100px){.pdp2{gap:32px}.rv-list{grid-template-columns:1fr 1fr}.rv-list article:nth-child(3){display:none}}
@media (max-width:900px){
  .pdp2{grid-template-columns:minmax(0,1fr);gap:22px;padding:0 0 40px}
  .pdp-left{display:contents}
  .pdp-gal{order:1;margin-inline:calc(var(--gut)*-1)}
  .pdp-buy{order:2;position:static}
  .pdp-acc{order:3;margin-top:8px}
  .pg-col,.pg-all{display:none}
  .pg-main{display:block}
  .pdp-crumbs{padding-top:0}
  .rv-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .pdp-page footer{padding-bottom:84px}
  .stickybar>div{min-width:0;flex:1}
  .stickybar small{display:block;font-size:12px;color:var(--tinta2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media (max-width:640px){
  .qv{grid-template-columns:minmax(0,1fr)}
  .qv-img img{aspect-ratio:4/3}
  .qv-info{padding:20px 18px}
}
@media (max-width:560px){
  .pdp-crumbs{padding:0 0 10px}
  .pdp-crumbs span{max-width:22ch}
  .pc-it{grid-template-columns:44px minmax(0,1fr);gap:8px;padding:7px}
  .pc-img img{width:44px;height:44px}
  .pg-lb{padding:12px 12px 96px}
  .rv-list{grid-template-columns:minmax(0,1fr)}.rv-list article:nth-child(3){display:flex}
}

@media (max-width:760px){section:has(#rel){padding:40px 0 12px}.vistos-sec{padding:12px 0 40px}}
.pb-med{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:12px;padding:12px 14px;border-radius:14px;background:var(--plomo,#f1f1ef)}
.pb-med label{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600}
.pb-med input,.pb-med select{width:82px;min-height:40px;padding:6px 10px;border:1.5px solid var(--negro);border-radius:10px;font:inherit;background:#fff}
.pb-med small{flex-basis:100%;font-size:12px;color:#555}

/* tapas con diseño de la agenda (js/agendas-disenos.js) */
.pb-dis{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px;margin:0 0 14px}
.pb-dis button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:4px;border:1.5px solid var(--linea,#ddd);border-radius:10px;background:#fff;cursor:pointer;font:11px/1.2 var(--texto);color:var(--negro);text-align:center}
.pb-dis button.on{border-color:var(--negro);box-shadow:0 0 0 1px var(--negro)}
.pb-dis img{width:100%;aspect-ratio:1;height:auto;object-fit:cover;border-radius:6px;background:var(--plomo,#eee)}
.pb-disnom{width:100%;aspect-ratio:1;display:grid;place-items:center;border-radius:6px;background:#1b1b1b;color:#fff;font:600 20px var(--titulo,inherit)}

/* css/tipografia.css */
/* Tipografía y formas de Plantify: elección del dueño en guia-estilo.html (2026-09-26).
   Se carga al final de cada página. Para cambiar la elección: abrir la guía, copiar tokens y reemplazar el :root.
   Elección: {"disp":"Archivo","texto":"Manrope","disp-w":500,"disp-w-sub":500,"disp-ls":-1,"disp-lh":101,"disp-wdth":100,"disp-tt":"none","texto-w":300,"texto-w-fuerte":500,"lh":140,"base":16,"ratio":"1.25","movil":62,"r-card":8,"r-foto":0,"r-btn":"6","r-input":6,"r-chip":"999","r-badge":6,"card":"plana","btn-h":48,"btn-w":600,"btn-font":"texto","btn-tt":"none","label-font":"texto","label-ls":2,"precio-font":"disp","precio-w":700,"card-nom-font":"texto"} */
:root{
  /* Familias */
  --disp:"Archivo",system-ui,sans-serif;
  --texto:"Manrope",system-ui,sans-serif;
  /* Títulos */
  --disp-w:500;
  --disp-w-sub:500;
  --disp-ls:-.01em;
  --disp-lh:1.01;
  --disp-wdth:100%;
  --disp-tt:none;
  /* Texto */
  --texto-w:300;
  --texto-w-fuerte:500;
  --lh:1.40;
  /* Escala */
  --fs-2xs:11px;
  --fs-xs:13px;
  --fs-sm:14px;
  --fs-base:16px;
  --fs-md:18px;
  --fs-lg:20px;
  --fs-xl:clamp(22px, 21.47px + 0.141vw, 23.5px);
  --fs-2xl:clamp(24px, 21.36px + 0.704vw, 31.5px);
  --fs-3xl:clamp(27px, 21.19px + 1.549vw, 43.5px);
  --fs-4xl:clamp(38px, 29.9px + 2.16vw, 61px);
  --fs-btn:15px;
  --fs-card:15px;
  /* Formas */
  --r-card:8px;
  --r-foto:0px;
  --r-btn:6px;
  --r-input:6px;
  --r-chip:999px;
  --r-badge:6px;
  --card-borde:0;
  --card-sombra:none;
  --card-sombra-hover:0 10px 28px #1112;
  --card-pad-foto:0;
  /* Botones */
  --btn-h:48px;
  --btn-font:var(--texto);
  --btn-w:600;
  --btn-tt:none;
  --btn-ls:0;
  /* Etiquetas */
  --label-font:var(--texto);
  --label-w:600;
  --label-ls:.02em;
  --label-tt:uppercase;
  /* Precios */
  --precio-font:var(--disp);
  --precio-w:700;
  --precio-ls:-.01em;
  /* Tarjeta */
  --card-nom-font:var(--texto);
  --card-nom-w:500;
}

/* ---- Base: solo elementos sin estilo propio; las clases de cada sección siguen mandando en tamaño ---- */
body{font-weight:var(--texto-w);line-height:var(--lh)}
b,strong{font-weight:var(--texto-w-fuerte)}
input,select,textarea,button{font-family:inherit}
h1,h2,h3,h4{font-family:var(--disp);font-weight:var(--disp-w);letter-spacing:var(--disp-ls);line-height:var(--disp-lh);text-transform:var(--disp-tt);font-stretch:var(--disp-wdth)}
h3,h4{font-weight:var(--disp-w-sub)}
h1{font-size:var(--fs-4xl)}
h2{font-size:var(--fs-3xl)}
h3{font-size:var(--fs-2xl)}

/* Botones */
.btn{font-family:var(--btn-font);font-weight:var(--btn-w);font-size:var(--fs-btn);min-height:var(--btn-h);border-radius:var(--r-btn);text-transform:var(--btn-tt);letter-spacing:var(--btn-ls)}

/* Etiquetas, chips y campos */
.badge{font-family:var(--label-font);font-weight:var(--label-w);font-size:var(--fs-2xs);letter-spacing:var(--label-ls);text-transform:var(--label-tt);border-radius:var(--r-badge)}
.chip{border-radius:var(--r-chip);font-size:var(--fs-sm)}
input[type=text],input[type=email],input[type=tel],input[type=search],input[type=number],select,textarea{border-radius:var(--r-input)}

/* Tarjeta de producto (tamaños los define cada grilla) */
.card{border-radius:var(--r-card)}
.cbody h4{font-family:var(--card-nom-font);font-weight:var(--card-nom-w);letter-spacing:0;text-transform:none;line-height:1.25}
.cfam{font-family:var(--label-font);letter-spacing:var(--label-ls)}
.cprice b{font-family:var(--precio-font);font-weight:var(--precio-w);letter-spacing:var(--precio-ls);font-variant-numeric:tabular-nums}
.cprice s,.ccuotas{font-variant-numeric:tabular-nums}

/* ---- Escala de textos amarrada (2026-09-30, pedido del dueño: textos uniformes, como plantify.pe) ----
   Cada rol tiene un tamaño de escritorio (--t-*) y uno de celular (--tm-*). Se ajustan en m.plantify.pe → Panel →
   Ajustes → Tipografía (el servidor inyecta los valores guardados en el <head>); aquí van los de fábrica.
   Capa final con !important porque varias secciones fijan tamaños con #id o en línea.
   Los mini gráficos de las tarjetas de categoría (.vt-*) no se tocan. */
:root{
  --t-h1:42px;--t-h2:40px;--t-h3:24px;--t-h4:15px;--t-h5:14px;--t-h6:13px;
  --t-txt:16px;--t-sec:14px;--t-etq:12px;--t-btn:15px;--t-precio:18px;
  --tm-h1:30px;--tm-h2:26px;--tm-h3:20px;--tm-h4:15px;--tm-h5:15px;--tm-h6:13px;
  --tm-txt:16px;--tm-sec:14px;--tm-etq:13px;--tm-btn:16px;--tm-precio:17px;
  --e-h1:var(--t-h1);--e-h2:var(--t-h2);--e-h3:var(--t-h3);--e-h4:var(--t-h4);--e-h5:var(--t-h5);--e-h6:var(--t-h6);
  --e-txt:var(--t-txt);--e-sec:var(--t-sec);--e-etq:var(--t-etq);--e-btn:var(--t-btn);--e-precio:var(--t-precio);
}
@media (max-width:767px){:root{
  --e-h1:var(--tm-h1);--e-h2:var(--tm-h2);--e-h3:var(--tm-h3);--e-h4:var(--tm-h4);--e-h5:var(--tm-h5);--e-h6:var(--tm-h6);
  --e-txt:var(--tm-txt);--e-sec:var(--tm-sec);--e-etq:var(--tm-etq);--e-btn:var(--tm-btn);--e-precio:var(--tm-precio);
}}
main h1,main .h1{font-size:var(--e-h1)!important}
main h2:not(.h1){font-size:var(--e-h2)!important}
main h3{font-size:var(--e-h3)!important}
main h4{font-size:var(--e-h4)!important}
main h5,.fcol h5{font-size:var(--e-h5)!important}
main h6{font-size:var(--e-h6)!important}
.badge,.crate,.eyebrow,.prota-tag,.cx-tag,.cfam,.sg-k,.fpay i,.vt>b,.dr-trust span,dt,th,span.c{font-size:var(--e-etq)!important}
small:not([class^="vt"] *),.cprice s,.pz-row span,.pz-nota,.k,.dr-chips a,.fval,.pdp-crumbs a,
.fcopy,.flegal a,.sg-by,.plp-more p,.sc small,.swl label,
#hdr .ph-topin a,.ph-note,.ph-mbox label,.ph-lpn,.ph-lpt button{font-size:var(--e-sec)!important}
main p:not([class]),.prota-desg,.prota-desg a,.cx-foot,.cx-foot a,.prota-precio span,.ver-todo,.pz-txt p,summary,
td,.fgroup summary,.fgroup label,.sg-s p,.sg-lead,.fcol a,
.ph-back,.ph-sw a,.ph-mbox p,.ph-row,.ph-grow,.ph-loctxt,.ph-all,.ph-v>a,.ph-ver{font-size:var(--e-txt)!important}
.btn,.hero-cta,.cx-btn,.fform button,.ph-btn,.plp-fbtn{font-size:var(--e-btn)!important}
.cprice b{font-size:var(--e-precio)!important}
