/* 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}
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}
.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}
.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:hover .cimg img.alt,.card.peek .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 .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 .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:#ffffff26;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 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 p{display:none}
}
.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)}
#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 */
.rv{opacity:0;transform:translateY(18px);transition:.7s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition: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}
}
