/* Llits i Sofàs — hoja de estilos de producción */
:root{
  --navy:#212A47; --navy-hover:#2E3A5F; --paper:#F4F1EC; --paper-deep:#E8E3DA;
  --white:#FFFFFF; --line:rgba(33,42,71,0.14); --line-soft:rgba(33,42,71,0.10);
  --ink-70:rgba(33,42,71,0.70); --ink-78:rgba(33,42,71,0.78); --ink-66:rgba(33,42,71,0.66);
  --ok:#5C7A62; --max:1500px; --pad:48px;
  --serif:'Playfair Display',Georgia,serif; --sans:'DM Sans',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--white);color:var(--navy);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--navy);text-decoration:none}
a:hover{color:var(--navy-hover)}
a:focus-visible,summary:focus-visible,input:focus-visible,button:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
::selection{background:var(--navy);color:var(--white)}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-0.015em;line-height:1.1;margin:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.eyebrow{font-size:12px;letter-spacing:0.2em;text-transform:uppercase;color:var(--navy);margin-bottom:18px}
.lead{font-size:18px;line-height:1.65;color:var(--ink-70);max-width:48ch;text-wrap:pretty}
.muted{color:var(--ink-78)}
.mono{font-family:var(--mono)}

/* cabecera */
.site-head{position:sticky;top:0;z-index:60;background:var(--white);border-bottom:1px solid var(--line-soft)}
.site-head .wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.site-head img{height:74px;width:auto;display:block;margin:-6px 0}
.nav{display:flex;align-items:center;gap:26px;font-size:15px;flex-wrap:wrap}
.nav a{padding:8px 0;white-space:nowrap}
.head-right{display:flex;align-items:center;gap:20px}
.lang{display:flex;align-items:center;gap:7px;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-66)}
.lang .on{color:var(--navy)}
.crumbs{font-size:13px;color:var(--ink-78);padding-top:14px}
.crumbs a{color:var(--ink-78)}

/* botones */
.btn,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:0 30px;font-size:15.5px;transition:transform .24s ease,background-color .24s ease,box-shadow .24s ease}
.btn:hover,.btn-ghost:hover{transform:translateY(-2px)}
.btn{background:var(--navy);color:var(--white)}
.btn:hover{background:var(--navy-hover);color:var(--white)}
.btn-ghost{box-shadow:inset 0 0 0 1px rgba(33,42,71,0.22)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1px var(--navy)}
.btn-sm{min-height:48px;padding:0 24px;font-size:14.5px}
.btn-inv{background:var(--white);color:var(--navy)}
.link-u{border-bottom:1px solid rgba(33,42,71,0.35);padding-bottom:4px;font-size:15px;display:inline-flex;align-items:center;gap:9px}
.ctas{display:flex;gap:12px;flex-wrap:wrap}

/* secciones */
section{padding-top:88px}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:56px;align-items:center}
.split-top{align-items:start}
.h1{font-size:56px}
.h2{font-size:36px}
.lema{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--ink-70);margin:0 0 18px}

/* fotos */
.ph{position:relative;min-width:0;background:var(--paper-deep);overflow:hidden}
.ph img{width:100%;height:100%;object-fit:cover;display:block}
.r45{aspect-ratio:4/5;max-height:560px}
.r169{aspect-ratio:16/9}

/* franja de confianza */
.trust{margin-top:72px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.trust .wrap{padding:36px var(--pad);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:28px 40px;align-items:start}
.trust .wrap>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;align-content:start;min-width:0}
.trust .wrap>div>div{min-width:0}
.trust span.n{font-family:var(--mono);font-size:12.5px;color:var(--ink-66);padding-top:3px}
.trust b{font-weight:400;font-size:16px;display:block;margin-bottom:5px;text-wrap:pretty}
.trust p{margin:0;font-size:14.5px;line-height:1.55;color:var(--ink-78);text-wrap:pretty}

/* tarjetas */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:var(--white);box-shadow:inset 0 0 0 1px var(--line);padding:30px 26px;display:block;transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease}
a.card:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px var(--line),0 14px 34px rgba(33,42,71,.08)}
a.card:hover{background:var(--paper)}
.card h3{font-size:23px;margin-bottom:8px}
.card p{margin:0;font-size:14px;line-height:1.5;color:var(--ink-78)}
.steps{display:grid;gap:12px}
.step{background:var(--white);box-shadow:inset 0 0 0 1px var(--line);padding:24px 26px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px}
.step .n{font-family:var(--mono);font-size:12.5px;padding-top:3px}
.step b{font-weight:400;font-size:16.5px;display:block;margin-bottom:5px}
.step p{margin:0;font-size:14.5px;line-height:1.55;color:var(--ink-78)}

/* datos de tienda */
.dl{display:grid;gap:14px;max-width:52ch}
.dl>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;font-size:15.5px;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}
.dl dt{color:var(--ink-78)}
.dl dd{margin:0}
.mapcard{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:22px 26px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}
.mapcard:hover{background:var(--white)}
.mapcard b{font-weight:400;font-size:16px;display:block;margin-bottom:4px}
.mapcard small{font-size:14.5px;color:var(--ink-78)}

/* carrusel */
.carousel{position:relative;min-width:0;aspect-ratio:4/5;max-height:620px;background:var(--paper-deep);overflow:hidden}
.carousel .track{position:absolute;inset:0;display:flex;width:100%;transition:transform 720ms cubic-bezier(0.16,1,0.3,1)}
.carousel .track>div{position:relative;flex:0 0 100%;min-width:0;height:100%}
.carousel .track img{width:100%;height:100%;object-fit:cover;display:block}
.carousel nav{position:absolute;bottom:14px;left:0;right:0;display:flex;justify-content:center;gap:7px}
.carousel nav button{width:8px;height:7px;border:0;padding:0;background:rgba(255,255,255,0.85);cursor:pointer;transition:all 420ms cubic-bezier(0.16,1,0.3,1)}
.carousel nav button[aria-current="true"]{width:26px;background:var(--navy)}
.carousel .arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.92);border:0;font-size:17px;cursor:pointer;color:var(--navy)}
.carousel .prev{left:14px}.carousel .next{right:14px}

/* reseñas */
.quotes{display:grid;gap:12px}
.quote{background:var(--white);box-shadow:inset 0 0 0 1px var(--line);padding:28px 30px}
.quote p{font-family:var(--serif);font-size:18px;line-height:1.5;margin:0 0 18px;text-wrap:pretty}
.quote cite{font-style:normal;font-size:13.5px;display:block}
.quote small{font-size:13px;color:var(--ink-78)}

/* faq */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:22px 0;font-size:17px;display:flex;justify-content:space-between;gap:20px;align-items:baseline}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{font-family:var(--mono);font-size:16px;color:var(--ink-66)}
.faq p{font-size:16px;line-height:1.65;color:var(--ink-70);padding:0 0 24px;margin:0;max-width:64ch;text-wrap:pretty}

/* locator */
.stores{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:28px}
.store{background:var(--white);box-shadow:inset 0 0 0 1px var(--line)}
.store .body{padding:34px 36px 38px}
.store h3{font-size:32px;margin-bottom:20px}
.store .hours{display:grid;gap:9px;padding:20px 0;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);margin:22px 0 24px}
.store .hours div{display:flex;justify-content:space-between;gap:14px;font-size:14px}
.cp{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.cp input{min-height:54px;padding:0 18px;font-family:var(--mono);font-size:15px;border:0;box-shadow:inset 0 0 0 1px rgba(33,42,71,0.22);background:var(--white);color:var(--navy);width:180px}
.cp button{min-height:54px;padding:0 28px;border:0;background:var(--navy);color:var(--white);font-family:var(--sans);font-size:15.5px;cursor:pointer}
.cp button:hover{background:var(--navy-hover)}
#cp-msg{margin-top:14px;font-size:15px;min-height:1.4em}

/* cierre */
.closer{margin-top:88px;background:var(--paper);padding:80px 0}
.closer .split{align-items:center}
.stack{display:flex;flex-direction:column;gap:12px}

/* pie */
.site-foot{background:var(--navy);color:rgba(244,241,236,0.78)}
.site-foot a{color:rgba(244,241,236,0.78)}
.site-foot a:hover{color:#F4F1EC}
.foot-grid{padding:64px var(--pad) 36px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:48px}
.foot-grid img{height:86px;width:auto;display:block;margin-bottom:20px}
.foot-grid h2{font-size:20px;color:#F4F1EC;margin-bottom:20px}
.foot-col{display:flex;flex-direction:column;gap:11px;font-size:14.5px}
.foot-legal{border-top:1px solid rgba(244,241,236,0.14)}
.foot-legal .wrap{padding:28px var(--pad);display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:13px;color:rgba(244,241,236,0.72)}

/* enlace de salto */
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--navy);color:#fff;padding:12px 18px}
.skip:focus{left:8px;top:8px}

/* menú móvil */
.burger{display:none;width:46px;height:46px;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:none;border:0;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;padding:0}
.burger span{display:block;width:20px;height:1.5px;background:var(--navy);transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.drawer{position:fixed;inset:0;z-index:80}
.drawer[hidden]{display:none}
.drawer-scrim{position:absolute;inset:0;background:rgba(10,13,24,0.5)}
.drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(86vw,360px);background:#fff;padding:20px 24px 28px;display:flex;flex-direction:column;gap:18px;overflow-y:auto;transform:translateX(0);box-shadow:-10px 0 40px rgba(10,13,24,.16)}
.drawer-top{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:46px}
.drawer-top .eyebrow{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-66)}
.drawer-x{width:46px;height:46px;background:none;border:0;font-size:26px;line-height:1;color:var(--navy);cursor:pointer}
.drawer-links{display:flex;flex-direction:column}
.drawer-links a{font-size:17px;padding:13px 0;border-bottom:1px solid var(--line-soft)}
.drawer-sep{height:1px;background:var(--line);margin:4px 0}
.drawer-foot{margin-top:auto;display:flex;flex-direction:column;gap:16px}
.drawer-foot .btn{width:100%;justify-content:center}
.drawer-lang{justify-content:center;font-size:13px}
body.no-scroll{overflow:hidden}

/* WhatsApp flotante y movimiento progresivo */
.wa-float-wrap,.wa-float-direct{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:70}
.wa-float{border:0;background:#176B50;color:#fff;min-height:58px;padding:0 20px;display:inline-flex;align-items:center;gap:10px;border-radius:999px;box-shadow:0 12px 30px rgba(18,79,59,.28);font:500 14px/1 var(--sans);cursor:pointer;isolation:isolate;transition:transform .25s ease,background-color .25s ease,box-shadow .25s ease}
.wa-float:not(.wa-float-direct){position:relative}
.wa-float::before{content:"";position:absolute;inset:-5px;border:1px solid rgba(23,107,80,.38);border-radius:inherit;z-index:-1;animation:wa-pulse 2.8s ease-out infinite}
.wa-float:hover{background:#125840;color:#fff;transform:translateY(-3px);box-shadow:0 16px 36px rgba(18,79,59,.34)}
.wa-float svg{width:25px;height:25px;flex:0 0 auto}
.wa-float-menu{position:absolute;right:0;bottom:70px;width:230px;padding:12px;background:#fff;box-shadow:0 16px 44px rgba(10,13,24,.18),inset 0 0 0 1px var(--line);display:grid;gap:4px}
.wa-float-menu[hidden]{display:none}
.wa-float-menu>span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-66);padding:8px 10px}
.wa-float-menu a{min-height:46px;padding:0 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px}
.wa-float-menu a:hover{background:var(--paper)}
body.consent-open .wa-float-wrap,body.consent-open .wa-float-direct{opacity:0;pointer-events:none}
/* V4.1: también se retira mientras el menú lateral está abierto (el drawer bloquea el scroll) */
body.no-scroll .wa-float-wrap,body.no-scroll .wa-float-direct{opacity:0;pointer-events:none}
@keyframes wa-pulse{0%,55%{opacity:0;transform:scale(.92)}75%{opacity:1}100%{opacity:0;transform:scale(1.18)}}
.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal-ready.reveal-in{opacity:1;transform:none}

/* ---------- tablet ---------- */
@media (max-width:1100px){
  .nav{gap:18px;font-size:14px}
  .head-right{gap:14px}
  .site-head img{height:62px}
}
@media (max-width:900px){
  :root{--pad:24px}
  section{padding-top:56px}
  .split{gap:36px}
  .dl>div{grid-template-columns:1fr;gap:4px}
  .mapcard{flex-direction:column;align-items:flex-start;gap:12px}
  .carousel{max-height:460px}
  .trust .wrap{padding:28px var(--pad);gap:22px 32px}
}

/* ---------- móvil: cabecera propia ---------- */
@media (max-width:1099px){
  .site-head .wrap{min-height:66px;flex-wrap:nowrap;gap:12px;padding-top:8px;padding-bottom:8px}
  .site-head img{height:60px;margin:0}
  .nav{display:none}
  .head-tiendas{display:none}
  .head-cta{display:none}
  .head-right{gap:12px}
  .burger{display:flex}
  .lang{font-size:13px;gap:6px}
}

/* ---------- móvil: contenido ---------- */
@media (max-width:720px){
  :root{--pad:20px}
  section{padding-top:48px}
  .h1{font-size:clamp(30px,8.4vw,40px);line-height:1.08;text-wrap:balance}
  .h2{font-size:clamp(25px,6.4vw,32px);line-height:1.12;text-wrap:balance}
  .lead{font-size:16.5px}
  .split{grid-template-columns:1fr;gap:28px}
  .hero-media,.carousel{max-height:none;aspect-ratio:4/3}
  .actions{gap:10px}
  .btn,.btn-ghost{width:100%;justify-content:center;min-height:52px;font-size:15.5px}
  .btn-sm{width:auto;min-height:44px}
  .actions .wa-link{width:100%;justify-content:center;min-height:48px;box-shadow:inset 0 0 0 1px var(--line);padding:0 18px}
  .cards,.grid-cards,.stores,.quotes{grid-template-columns:1fr}
  .quote,.store,.card{min-width:0}
  .quote{padding:24px 22px}
  .quote p{font-size:17px}
  .store .body{padding:26px 22px 28px}
  .card{padding:24px 22px}
  .trust .wrap{grid-template-columns:1fr;gap:20px}
  .foot-grid{gap:32px}
  .foot-legal .wrap{flex-direction:column;gap:12px;align-items:flex-start}
  .crumbs{font-size:12.5px}
  .dl dt,.dl dd{font-size:15px}
  a[data-evento]{min-height:44px;display:inline-flex;align-items:center}
  .legal{padding-bottom:64px}
  .legal table{display:block;overflow-x:auto;white-space:nowrap}
}
@media (max-width:420px){
  :root{--pad:16px}
  .cp input,.cp button{width:100%}
  .site-head img{height:54px}
  .drawer-panel{width:92vw}
}

@media (max-width:720px){
  .wa-float-wrap,.wa-float-direct{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}
  .wa-float{width:56px;height:56px;min-height:56px;padding:0;justify-content:center}
  .wa-float>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .wa-float-menu{bottom:66px;width:min(240px,calc(100vw - 28px))}
}

@media (prefers-reduced-motion:reduce){
  html:focus-within{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
  .reveal-ready{opacity:1;transform:none}
}

/* Páginas legales */
.legal { max-width: 78ch; padding-top: 24px; padding-bottom: 88px; }
.legal h1 { font-family: "Playfair Display", serif; font-weight: 400; font-size: clamp(34px, 5vw, 48px); line-height: 1.08; letter-spacing: -0.02em; margin: 0 0 18px; }
.legal-aviso { font-size: 14px; line-height: 1.6; color: rgba(33,42,71,0.66); padding: 14px 18px; box-shadow: inset 0 0 0 1px rgba(33,42,71,0.14); margin: 0 0 40px; }
.legal section { margin-bottom: 36px; }
.legal h2 { font-family: "Playfair Display", serif; font-weight: 400; font-size: 26px; line-height: 1.2; margin: 0 0 14px; }
.legal h3 { font-size: 16px; font-weight: 500; margin: 26px 0 10px; }
.legal p, .legal li { font-size: 16px; line-height: 1.7; color: rgba(33,42,71,0.82); }
.legal p { margin: 0 0 14px; }
.legal ul { margin: 0 0 14px; padding-left: 20px; }
.legal li { margin-bottom: 7px; }
.legal table { width: 100%; border-collapse: collapse; margin: 0 0 18px; font-size: 14px; }
.legal th, .legal td { text-align: left; padding: 10px 12px; border-bottom: 1px solid rgba(33,42,71,0.14); vertical-align: top; }
.legal th { font-weight: 500; background: #F4F1EC; }
.legal .mono { font-family: "JetBrains Mono", monospace; font-size: 13px; }

/* Banner de consentimiento */
.consent { position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; padding: 16px; display: flex; justify-content: center; box-sizing: border-box; max-width: 100vw; }
.consent[hidden] { display: none; }
.consent-box { background: #FFFFFF; box-shadow: inset 0 0 0 1px rgba(33,42,71,0.16), 0 10px 40px rgba(10,13,24,0.14); width: min(780px, 100%); max-width: 100%; min-width: 0; padding: 26px 28px; display: grid; gap: 18px; box-sizing: border-box; overflow-wrap: anywhere; }
.consent-box h2 { font-family: "Playfair Display", serif; font-weight: 400; font-size: 22px; margin: 0 0 8px; }
.consent-box p { font-size: 14.5px; line-height: 1.6; color: rgba(33,42,71,0.76); margin: 0; }
.consent-cfg { display: grid; gap: 12px; padding-top: 16px; border-top: 1px solid rgba(33,42,71,0.14); }
.consent-cfg[hidden] { display: none; }
.consent-row { display: grid; grid-template-columns: 22px minmax(0,1fr); gap: 12px; align-items: start; font-size: 14.5px; cursor: pointer; }
.consent-row span { min-width: 0; }
.consent-row small { display: block; font-size: 13.5px; color: rgba(33,42,71,0.62); margin-top: 3px; }
.consent-acts { display: flex; flex-wrap: wrap; gap: 10px; }
.consent-acts .btn { min-height: 46px; padding: 0 22px; font-size: 14.5px; }
.consent-acts .btn[hidden] { display: none; }
.link-btn { background: none; border: 0; padding: 0; font: inherit; color: inherit; text-decoration: underline; cursor: pointer; }
.link-btn:hover { text-decoration: none; }
.foot-links a, .foot-links .link-btn { color: inherit; }
@media (max-width: 720px) {
  .consent { padding: 0; }
  .consent-box { width: 100%; max-height: 72dvh; overflow-y: auto; -webkit-overflow-scrolling: touch; padding: 18px 16px calc(18px + env(safe-area-inset-bottom)); gap: 14px; box-shadow: inset 0 0 0 1px rgba(33,42,71,0.16), 0 -8px 30px rgba(10,13,24,0.16); }
  .consent-box h2 { font-size: 20px; }
  .consent-box p { font-size: 14px; }
  .consent-acts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .consent-acts .btn { width: 100%; min-height: 48px; padding: 0 12px; font-size: 14px; }
  .consent-acts .btn[data-consent-open] { grid-column: 1 / -1; }
  .consent-acts .btn[data-consent-save] { grid-column: 1 / -1; }
}

/* página 404 */
.e404{padding:72px 0 96px;max-width:70ch}
.e404-block{padding:0}
.e404-block .lead{margin:0 0 28px}
.e404-block .h1,.e404-block .h2{margin:0 0 16px}
.e404-sep{border:0;border-top:1px solid var(--line);margin:56px 0}
@media (max-width:720px){.e404{padding:48px 0 64px}.e404-sep{margin:40px 0}}



/* ==========================================================================
   V4 — landings locales (Martorell · L’Hospitalet). Mobile-first.
   ========================================================================== */
:root{
  --arena:#F2ECE3; --arena-deep:#E7DECF;
  --terra:#96583F; --terra-soft:rgba(150,88,63,0.10); --terra-line:rgba(150,88,63,0.30);
  --navy-deep:#1A2139; --inv:#F4F1EC; --inv-70:rgba(244,241,236,0.78);
  --ease:cubic-bezier(0.16,1,0.3,1);
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ic{display:block;flex:0 0 auto}

/* bandas y ritmo */
section.sec{padding-top:68px}
.sec{padding-bottom:0}
.band-arena{background:var(--arena)}
.band-navy{background:var(--navy);color:var(--inv)}
.band-arena.sec,.band-navy.sec{padding-bottom:68px}
.band-navy .h2,.band-navy h3,.band-navy .h1{color:var(--inv)}
.band-navy .eyebrow{color:rgba(244,241,236,0.70)}
.band-navy .lead,.band-navy p{color:var(--inv-70)}
.sec-head{max-width:56ch}
.sec-head .h2{margin:0}
.sec-head p{margin:10px 0 0;font-size:16px;line-height:1.55;color:var(--ink-70);text-wrap:pretty}
.band-navy .sec-head p{color:var(--inv-70)}

/* hero local */
.hero-v4{padding-top:20px}
.hero-grid{display:grid;gap:18px;align-items:start}
.hero-grid>.eyebrow{margin:0;color:var(--terra)}
.hero-v4 .h1{font-size:clamp(30px,7.4vw,54px);line-height:1.06;margin:0;text-wrap:balance}
.hero-lead{margin:0;font-size:17px;line-height:1.55;color:var(--ink-78);max-width:42ch;text-wrap:pretty}
.hero-media{position:relative;overflow:hidden;background:var(--arena-deep);aspect-ratio:4/3}
.hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-size:14.5px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .22s var(--ease),background .22s var(--ease)}
.chip .ic{color:var(--terra)}
.chip:hover{box-shadow:inset 0 0 0 1px var(--navy);background:var(--paper)}
.chip:active{transform:translateY(0.5px)}
.hero-ctas{display:grid;gap:10px;max-width:560px}
.hero-ctas-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hero-ctas .btn,.hero-ctas .btn-ghost{width:100%;min-height:54px;padding:0 16px;gap:8px}
.hero-info{margin:0;font-size:14.5px;line-height:1.6;color:var(--ink-70)}
@media (min-width:900px){
  .hero-grid{grid-template-columns:minmax(0,1.04fr) minmax(0,0.96fr);column-gap:56px;row-gap:20px;
    grid-template-areas:"eyebrow media" "h1 media" "lead media" "chips media" "ctas media" "info media"}
  .hero-grid>.eyebrow{grid-area:eyebrow}
  .hero-grid>.h1{grid-area:h1}
  .hero-grid>.hero-lead{grid-area:lead}
  .hero-grid>.chips{grid-area:chips}
  .hero-grid>.hero-ctas{grid-area:ctas}
  .hero-grid>.hero-info{grid-area:info}
  .hero-grid>.hero-media{grid-area:media;align-self:start;aspect-ratio:4/5;max-height:620px}
  .hero-ctas{grid-template-columns:auto auto auto;max-width:none;justify-content:start}
  .hero-ctas-2{display:contents}
  .hero-ctas .btn,.hero-ctas .btn-ghost{width:auto;padding:0 24px}
}

/* banda de confianza compacta */
.trust-v4{margin-top:32px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.trust-v4 .wrap{padding-top:22px;padding-bottom:22px}
.trust-row{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}
.trust-i{display:grid;grid-template-columns:22px minmax(0,1fr);gap:11px;align-items:start;min-width:0}
.trust-i .ic{color:var(--terra);margin-top:2px}
.trust-i b{font-weight:400;font-size:14.5px;line-height:1.3;display:block;margin-bottom:3px;text-wrap:pretty}
.trust-i p{margin:0;font-size:13px;line-height:1.45;color:var(--ink-70);text-wrap:pretty}
@media (min-width:760px){
  .trust-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
  .trust-i b{font-size:15.5px}.trust-i p{font-size:14px}
}

/* carrusel nativo con scroll-snap */
.swipe{position:relative;margin-top:22px}
.swipe-track{display:flex;gap:12px;margin:0;padding:2px var(--pad) 6px;list-style:none;max-width:var(--max);
  overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.swipe-track::-webkit-scrollbar{display:none}
.swipe-item{flex:0 0 78%;min-width:0;scroll-snap-align:start;display:flex}
.swipe-item>*{width:100%}
.swipe-ui{display:flex;align-items:center;gap:14px;max-width:var(--max);margin:14px auto 0;padding:0 var(--pad)}
.swipe-ui[hidden]{display:none}
.dots{display:flex;flex-wrap:wrap;gap:0;flex:1 1 auto;margin-left:-6px}
.dots button{position:relative;width:20px;height:44px;padding:0;border:0;background:none;cursor:pointer}
.dots button::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;
  background:rgba(33,42,71,0.24);transition:width .3s var(--ease),background .3s var(--ease),border-radius .3s var(--ease)}
.dots button[aria-current="true"]::after{width:24px;border-radius:4px;background:var(--navy)}
.dots button[aria-current="true"]{width:36px}
.swipe-arrows{display:flex;gap:8px;flex:0 0 auto}
.swipe-arrows button{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:0;padding:0;background:none;
  box-shadow:inset 0 0 0 1px var(--line);color:var(--navy);cursor:pointer;transition:box-shadow .22s var(--ease),opacity .22s var(--ease),transform .12s var(--ease)}
.swipe-arrows button:hover{box-shadow:inset 0 0 0 1px var(--navy)}
.swipe-arrows button:active{transform:translateY(0.5px)}
.swipe-arrows button[disabled]{opacity:.32;cursor:default}
.band-navy .dots button::after{background:rgba(244,241,236,0.34)}
.band-navy .dots button[aria-current="true"]::after{background:var(--inv)}
.band-navy .swipe-arrows button{box-shadow:inset 0 0 0 1px rgba(244,241,236,0.30);color:var(--inv)}
.band-navy .swipe-arrows button:hover{box-shadow:inset 0 0 0 1px var(--inv)}
@media (min-width:900px){
  .swipe-grid .swipe-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));overflow:visible;margin:0 auto}
  .swipe-grid .swipe-item{flex:none}
  .swipe-grid .swipe-ui{display:none}
}

/* “Así es nuestra tienda” */
.gal-main{overflow:hidden;background:var(--navy-deep);aspect-ratio:16/10;margin-top:22px}
.gal-main img{width:100%;height:100%;object-fit:cover;display:block}
.gal-two{display:grid;gap:12px;margin-top:22px}
.gal-two .ph{aspect-ratio:4/3;background:var(--navy-deep)}
@media (min-width:760px){.gal-two{grid-template-columns:1.35fr 1fr}.gal-two .ph:first-child{aspect-ratio:16/11}}
.gal .swipe-item{flex:0 0 72%}
.gal .ph{aspect-ratio:4/3;background:var(--navy-deep)}
.gal-pie{margin:14px 0 0;font-size:13.5px;color:var(--inv-70)}

/* tarjetas de categoría */
.cat-card{display:block;height:100%;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .22s var(--ease)}
.cat-card .ph{aspect-ratio:4/3;background:var(--arena-deep)}
.cat-b{padding:16px 18px 20px}
.cat-b h3{font-size:20px;margin:0 0 6px;line-height:1.15}
.cat-b p{margin:0;font-size:14px;line-height:1.45;color:var(--ink-70);text-wrap:pretty}
a.cat-card:hover{box-shadow:inset 0 0 0 1px var(--navy)}
.cat-card.con-graf .cat-b h3{font-family:var(--serif)}

/* beneficios */
.ben-card{height:100%;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);padding:22px 20px;display:grid;gap:9px;align-content:start}
.ben-card .ic{color:var(--terra)}
.ben-card b{font-weight:400;font-size:17px;line-height:1.25}
.ben-card p{margin:0;font-size:14.5px;line-height:1.5;color:var(--ink-70);text-wrap:pretty}

/* marcas */
.marca-strip{display:grid;gap:12px;margin-top:24px}
.marca{padding:22px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:6px}
.marca b{font-family:var(--serif);font-weight:400;font-size:27px;letter-spacing:-0.015em}
.marca span{font-size:14.5px;line-height:1.5;color:var(--ink-70)}
.marca-nota{margin:14px 0 0;font-size:13.5px;color:var(--ink-66)}
@media (min-width:760px){.marca-strip{grid-template-columns:1fr 1fr}}

/* reseñas */
.rating{display:flex;align-items:baseline;gap:10px;margin:14px 0 0;flex-wrap:wrap}
.rating .num{font-family:var(--mono);font-size:22px}
.rating .stars{color:var(--terra);letter-spacing:.1em;font-size:15px}
.rating .cap{font-size:13.5px;color:var(--ink-70)}
.rev-card{height:100%;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);padding:22px 20px;display:grid;gap:12px;align-content:start}
.rev-card p{font-family:var(--serif);font-size:17px;line-height:1.45;margin:0;text-wrap:pretty}
.rev-card cite{font-style:normal;font-size:13.5px}
.rev-card small{font-family:var(--mono);font-size:12.5px;color:var(--ink-66)}

/* ficha local escaneable */
.info-rows{margin-top:20px;border-top:1px solid var(--line)}
.info-row{display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px;padding:14px 0;border-bottom:1px solid var(--line);align-items:start}
.info-row .ic{color:var(--terra);margin-top:3px}
.info-row .lbl{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-66);margin:0 0 3px}
.info-row .val{margin:0;font-size:16px;line-height:1.5}
.info-row a{display:inline-flex;align-items:center;min-height:44px;box-shadow:inset 0 -1px 0 rgba(33,42,71,0.30)}
.info-row a:hover{box-shadow:inset 0 -1px 0 var(--navy)}
.info-hours{display:grid;gap:5px;font-size:15px}
.info-hours div{display:flex;justify-content:space-between;gap:4px 16px;max-width:38ch;flex-wrap:wrap}
.info-hours span+span{font-family:var(--mono)}
.ficha-cta{margin-top:22px;display:flex;gap:10px;flex-wrap:wrap}

/* visita / mapa */
.visita-card{background:rgba(244,241,236,0.06);box-shadow:inset 0 0 0 1px rgba(244,241,236,0.20);padding:24px 22px;display:grid;gap:16px;margin-top:22px}
.visita-dir{font-family:var(--serif);font-size:clamp(22px,5.4vw,30px);line-height:1.18;margin:0;color:var(--inv)}
.visita-card p{margin:0}
.btn-inv{background:var(--inv);color:var(--navy)}
.btn-inv:hover{background:#fff;color:var(--navy)}
.band-navy .btn-ghost{box-shadow:inset 0 0 0 1px rgba(244,241,236,0.34);color:var(--inv)}
.band-navy .btn-ghost:hover{box-shadow:inset 0 0 0 1px var(--inv);color:#fff}
@media (min-width:760px){.visita-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:28px}}

/* FAQ */
.faq-v4{margin-top:22px;border-top:1px solid var(--line)}
.faq-v4 details{border-bottom:1px solid var(--line)}
.faq-v4 summary{cursor:pointer;list-style:none;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;font-size:16.5px;line-height:1.35;text-wrap:pretty}
.faq-v4 summary::-webkit-details-marker{display:none}
.faq-v4 summary:hover{color:var(--navy-hover)}
.faq-v4 .mark{flex:0 0 auto;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:19px;color:var(--terra);transition:transform .28s var(--ease)}
.faq-v4 details[open] .mark{transform:rotate(45deg)}
.faq-v4 .faq-a{overflow:hidden}
.faq-v4 .faq-a p{margin:0;padding:0 0 20px;font-size:15.5px;line-height:1.62;color:var(--ink-70);max-width:64ch;text-wrap:pretty}
@media (prefers-reduced-motion:no-preference){
  .faq-v4 details[open] .faq-a{animation:faqIn .32s var(--ease)}
}
@keyframes faqIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* cierre navy */
.closer-navy{background:var(--navy);color:var(--inv);padding:64px 0}
.closer-navy .h2{color:var(--inv);font-size:clamp(28px,6.6vw,40px)}
.closer-navy .lead{color:rgba(244,241,236,0.84)}
.closer-navy .btn{background:var(--inv);color:var(--navy)}
.closer-navy .btn:hover{background:#fff;color:var(--navy)}
.closer-navy .btn-ghost{box-shadow:inset 0 0 0 1px rgba(244,241,236,0.34);color:var(--inv)}
.closer-navy .btn-ghost:hover{box-shadow:inset 0 0 0 1px var(--inv);color:#fff}
.closer-navy .split{gap:36px}

/* motion: entrada única, sin bloquear ni ocultar si falla el JS */
@media (prefers-reduced-motion:no-preference){
  .js .reveal{opacity:0;transform:translateY(14px);transition:opacity .62s var(--ease),transform .62s var(--ease)}
  .js .reveal.in{opacity:1;transform:none}
}

@media (max-width:720px){
  section.sec{padding-top:46px}
  .band-arena.sec,.band-navy.sec{padding-bottom:46px}
  .closer-navy{padding:46px 0}
  .swipe-item{flex:0 0 80%}
  .gal .swipe-item{flex:0 0 76%}
  .hero-ctas .btn,.hero-ctas .btn-ghost{font-size:15px}
  .ficha-cta .btn,.ficha-cta .btn-ghost{width:100%}
}
@media (max-width:1099px){
  /* Hasta el mismo corte que el menú lateral: por encima de 1024 también hay táctil.
     :not(.wa-float) — el acceso flotante conserva su propia altura de V3 (58/56 px) */
  a[data-evento]:not(.wa-float){min-height:44px;display:inline-flex;align-items:center}
}
@media (max-width:360px){
  .hero-ctas-2{grid-template-columns:1fr}
  .trust-row{grid-template-columns:1fr}
  .info-hours div{max-width:none}
}


/* V4.1 — reserva inferior: el acceso flotante de WhatsApp nunca se apoya sobre el pie legal */
.foot-legal .wrap{padding-bottom:84px}
@media (min-width:1100px){.foot-legal .wrap{padding-bottom:92px}}


/* ==========================================================================
   V4.3 — logos de marca, chips 2×2, composición gráfica y ajustes ópticos
   ========================================================================== */

/* Sección de marcas: tarjetas uniformes, logo contenido, sin deformar */
.marca-card{height:100%;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);
  padding:24px 20px;display:grid;gap:12px;align-content:center;justify-items:center;text-align:center;min-height:148px}
.marca-logo{width:100%;height:70px;display:flex;align-items:center;justify-content:center}
.marca-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.marca-txt{font-family:var(--serif);font-weight:400;font-size:27px;letter-spacing:-0.015em;line-height:1}
.marca-pie{font-size:13.5px;line-height:1.45;color:var(--ink-70);text-wrap:pretty}
#marcas .swipe-item{flex:0 0 62%}
@media (min-width:900px){#marcas .swipe-grid .swipe-track{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}}
@media (max-width:420px){#marcas .swipe-item{flex:0 0 74%}}

/* Chips: misma altura y padding; rejilla 2×2 en móvil cuando son cuatro */
.chip{min-height:46px;padding:0 15px;justify-content:flex-start}
.chips-4{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.chips-4 .chip{min-width:0}
.chips-4 .chip span,.chips-4 .chip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (min-width:900px){.chips-4{display:flex;flex-wrap:wrap}.chips-4 .chip{white-space:nowrap}}

/* Categoría sin fotografía real: composición gráfica, nunca banco de imágenes */
/* Composición gráfica para categorías sin fotografía real de tienda.
   Nunca banco de imágenes ni imagen generada que simule una foto. */
.cat-graf{aspect-ratio:4/3;display:grid;place-items:center;align-content:center;gap:14px;
  position:relative;overflow:hidden;padding:18px;
  background:
    repeating-linear-gradient(90deg,transparent 0 25px,rgba(150,88,63,0.075) 25px 26px),
    repeating-linear-gradient(0deg,transparent 0 25px,rgba(150,88,63,0.075) 25px 26px),
    var(--arena)}
.cat-graf::before,.cat-graf::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.cat-graf::before{width:180px;height:180px;right:-58px;top:-58px;background:rgba(150,88,63,0.06)}
.cat-graf::after{width:110px;height:110px;left:-38px;bottom:-40px;box-shadow:inset 0 0 0 1px rgba(33,42,71,0.10)}
.cat-graf-ic{position:relative;width:96px;height:96px;display:grid;place-items:center;border-radius:50%;
  background:var(--white);box-shadow:inset 0 0 0 1px var(--terra-line);color:var(--terra)}
.cat-graf-ic .ic{width:40px;height:40px}

/* WhatsApp flotante: centrado óptico del icono dentro del círculo */
.wa-float svg{width:24px;height:24px;display:block;flex:0 0 auto}
@media (max-width:720px){
  /* rejilla en vez de flex: el glifo queda exactamente en el centro de los 56 px */
  .wa-float{display:grid;place-items:center;padding:0}
  /* la cola del bocadillo cuelga abajo-izquierda: se compensa 0.5 px arriba-derecha */
  .wa-float svg{width:26px;height:26px;transform:translate(0.5px,-0.5px)}
}

/* Flechas de carrusel a la izquierda en móvil: nunca comparten esquina con el flotante */
@media (max-width:720px){
  .swipe-ui{gap:12px}
  .swipe-arrows{order:-1}
  .dots{justify-content:flex-end}
  .swipe-ui{padding-right:calc(var(--pad) + 62px)}
}

/* Indicador activo del carrusel más legible */
.dots button::after{background:rgba(33,42,71,0.22)}
.dots button[aria-current="true"]::after{background:var(--terra);width:26px}
.band-navy .dots button[aria-current="true"]::after{background:var(--inv)}

/* Logo de cabecera.
   El PNG original era un cuadrado 1254×1254 con la marca ocupando solo el 54 % del alto:
   a 60 px de caja, la marca medía 32 px reales. Recortado el margen muerto, la misma caja
   de 60 px da una marca de 57 px. Las alturas de caja NO se reducen respecto a V4.2
   (60 px hasta 1099 px, 54 px bajo 420 px); la cabecera móvil crece 66 → 72 px para alojarla. */
@media (max-width:1099px){.site-head .wrap{min-height:72px}}

/* Pie móvil algo más compacto, sin perder objetivos táctiles */
@media (max-width:720px){
  .foot-grid{gap:26px}
  .foot-grid h2{font-size:18px;margin-bottom:14px}
  .foot-col{gap:8px}
  .foot-legal .wrap{padding-top:20px;gap:10px}
}


/* ===================== V5 ===================== */
/* Tipografía B (aprobada): DM Sans en titulares e interfaz; Playfair solo como acento
   (lema y citas). Cifras, teléfonos y horarios con DM Sans tabular: sin JetBrains Mono. */
:root{--mono:'DM Sans',system-ui,sans-serif}
h1,h2,h3{font-family:var(--sans);font-weight:500;letter-spacing:-0.02em;line-height:1.12}
.h1{font-size:clamp(32px,7.6vw,52px)}
.h2{font-size:clamp(26px,5.6vw,36px)}
.hero-v4 .h1{font-size:clamp(32px,7.6vw,52px);line-height:1.08}
.mono,.info-hours span+span,.rev-card small{font-variant-numeric:tabular-nums;letter-spacing:0}
.btn,.btn-ghost{font-size:16px}
.marca-txt,.marca b,.visita-dir,.cat-card.con-graf .cat-b h3{font-family:var(--sans);font-weight:500;letter-spacing:-0.02em}

/* catálogo */
.cat-hero{padding-top:18px}
.cat-hero .lead{max-width:62ch;margin:12px 0 0}
.cat-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.cat-bloque-top{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:14px}
.prod-card{display:flex;flex-direction:column;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .22s var(--ease)}
.prod-card:hover{box-shadow:inset 0 0 0 1px var(--navy)}
.prod-card[hidden]{display:none}
.prod-img{aspect-ratio:4/3;background:#fff;overflow:hidden;border-bottom:1px solid var(--line-soft)}
.prod-img img{width:100%;height:100%;object-fit:contain;display:block}
.prod-b{padding:14px 16px 18px;display:grid;gap:4px;align-content:start}
.prod-b h3{font-size:21px;margin:0}
.prod-marca{margin:0;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-66)}
.prod-tec{margin:0 0 8px;font-size:14px;color:var(--ink-70)}
.cat-tienda{justify-self:start;display:inline-flex;align-items:center;min-height:28px;padding:3px 10px;font-size:13px;line-height:1.3;
  background:var(--paper);color:var(--navy);border:1px solid var(--line)}
.filtro{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px}
.filtro-lbl{font-size:14px;color:var(--ink-70);margin-right:4px}
.filtro button{min-height:44px;padding:0 16px;font:inherit;font-size:15px;background:var(--white);color:var(--navy);
  border:1px solid var(--line);cursor:pointer;transition:background .22s var(--ease),border-color .22s var(--ease)}
.filtro button:hover{border-color:var(--navy)}
.filtro button[aria-pressed="true"]{background:var(--navy);color:var(--white);border-color:var(--navy)}
.cat-lista{padding-top:24px}
.cat-vacio{margin:20px 0 0;font-size:15.5px}
.cat-nota{margin:22px 0 0;max-width:70ch;font-size:14px;line-height:1.55;color:var(--ink-70)}

/* ficha */
.ficha{padding-top:12px}
.ficha-grid{display:grid;gap:28px}
@media (min-width:900px){.ficha-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);gap:56px;align-items:start}.ficha .gal{position:sticky;top:100px}}
.ficha .gal .gal-main{aspect-ratio:4/3;background:#fff;box-shadow:inset 0 0 0 1px var(--line);margin:0}
.ficha .gal .gal-main img{width:100%;height:100%;object-fit:contain;display:block}
.gal-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px;margin-top:10px}
.gal-thumbs button{padding:0;border:1px solid var(--line);background:#fff;cursor:pointer;aspect-ratio:4/3;min-height:44px}
.gal-thumbs button[aria-pressed="true"]{border:2px solid var(--navy)}
.gal-thumbs img{width:100%;height:100%;object-fit:contain;display:block}
.gal-nota{margin:10px 0 0;font-size:13.5px;color:var(--ink-70)}
.ficha-info .h1{margin:4px 0 12px}
.ficha-datos{margin:20px 0 0;border-top:1px solid var(--line)}
.ficha-datos div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}
.ficha-datos dt{color:var(--ink-70);font-size:14.5px}
.ficha-datos dd{margin:0;font-size:15px;text-align:right}
.ficha-lbl{margin:22px 0 8px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-66)}
.medidas{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.medidas li{padding:6px 10px;font-size:14px;font-variant-numeric:tabular-nums;background:var(--paper);border:1px solid var(--line)}
.ficha-nota{margin:8px 0 0;font-size:13.5px;line-height:1.5;color:var(--ink-70)}
.ficha-precio p:last-child{margin:0;font-size:15.5px;line-height:1.55}
.ficha-sel{display:block}
.ficha-sel select{width:100%;min-height:48px;padding:0 12px;font:inherit;font-size:16px;color:var(--navy);background:var(--white);border:1px solid var(--line)}
.ficha-tienda{padding:18px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:10px;margin-top:10px}
.ficha-tienda-n{margin:0;font-size:18px;font-weight:500}
.ficha-tienda-d{margin:0;font-size:14.5px;line-height:1.55;color:var(--ink-70)}
.ficha-tienda-ctas{display:grid;gap:8px}
.ficha-tienda-ctas .btn,.ficha-tienda-ctas .btn-ghost{width:100%;min-height:48px}
@media (min-width:560px){.ficha-tienda-ctas{grid-template-columns:1fr 1fr}.ficha-tienda-ctas .btn{grid-column:1/-1}}

.cat-tienda,.medidas li{white-space:nowrap;height:auto;line-height:1.3;width:auto;max-width:none;flex:0 0 auto}
.medidas li{display:inline-flex;align-items:center}
.ficha-info>.cat-tienda{display:inline-flex}

/* borde real: la sombra interior queda debajo del fondo blanco de la imagen */
.prod-card{box-shadow:none;border:1px solid var(--line);transition:border-color .22s var(--ease)}
.prod-card:hover{box-shadow:none;border-color:var(--navy)}
.ficha .gal .gal-main{box-shadow:none;border:1px solid var(--line)}


/* ===================== V5.1 ===================== */
.hero-trio{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:8px;aspect-ratio:16/11}
.hero-trio .ph{margin:0;overflow:hidden;background:var(--paper-deep)}
.hero-trio .t1{grid-row:1/3}
.hero-trio img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:720px){.hero-trio{aspect-ratio:4/3.4}}
.cat-video{padding-top:4px;padding-bottom:0}
.video-box{margin:0;background:var(--navy-deep)}
.video-box video{display:block;width:100%;height:auto;aspect-ratio:2966/1080;object-fit:cover;background:#1A2139}
@media (max-width:720px){.video-box video{aspect-ratio:4/3}}
.video-box figcaption{padding:8px 0 0;font-size:13px;color:var(--ink-70);background:var(--white)}
.ficha-tienda.elegida{border:2px solid var(--navy)}
.ficha-tienda-tag{margin:0;justify-self:start;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--white);background:var(--navy);padding:4px 9px}
.ficha-tienda-tag[hidden]{display:none}
.ficha-tienda .link-u{display:inline-flex;align-items:center;min-height:44px;justify-self:start}
.hero-cat{justify-self:start;display:inline-flex;align-items:center;min-height:44px}
.prod-cat-cta{margin-top:22px}
.gal .ph img,.gal-main img{object-position:center}


/* ===================== V5.3 — hero con vídeo ===================== */
.hero-video{position:relative;isolation:isolate;overflow:hidden;background:var(--navy-deep);color:#fff;min-height:clamp(520px,78vh,760px);display:flex;align-items:flex-end}
.hv-media,.hv-scrim{position:absolute;inset:0;z-index:-1}
.hv-media video{width:100%;height:100%;object-fit:cover;display:block}
.hv-scrim{z-index:-1;background:linear-gradient(90deg,rgba(26,33,57,.86) 0%,rgba(26,33,57,.62) 42%,rgba(26,33,57,.12) 78%),linear-gradient(0deg,rgba(26,33,57,.55),rgba(26,33,57,0) 45%)}
.hv-inner{position:relative;padding-top:64px;padding-bottom:56px;max-width:var(--max);width:100%}
.hv-inner>*{max-width:620px}
.hero-video .eyebrow{color:rgba(255,255,255,.82)}
.hero-video .h1{color:#fff;margin:14px 0 6px}
.hero-video .lema{color:rgba(255,255,255,.9)}
.hero-video .lead{color:rgba(255,255,255,.92);margin:14px 0 28px}
.hero-video .btn{background:#fff;color:var(--navy);border-color:#fff}
.hero-video .btn:hover{background:var(--paper);color:var(--navy)}
.hero-video .btn-ghost{color:#fff;border-color:rgba(255,255,255,.7);background:transparent}
.hero-video .btn-ghost:hover{background:rgba(255,255,255,.12);color:#fff}
.hv-cats{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;max-width:760px!important}
.hv-cats a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;font-size:14.5px;color:#fff;border:1px solid rgba(255,255,255,.42);background:rgba(26,33,57,.35);backdrop-filter:blur(6px);transition:background .22s var(--ease),border-color .22s var(--ease)}
.hv-cats a:hover{background:rgba(255,255,255,.16);border-color:#fff;color:#fff}
.hv-toggle{position:absolute;right:max(16px,var(--pad));top:16px;min-height:44px;padding:0 14px;font:inherit;font-size:13.5px;color:#fff;background:rgba(26,33,57,.55);border:1px solid rgba(255,255,255,.4);cursor:pointer}
.hv-toggle:hover{background:rgba(26,33,57,.8)}
.hv-toggle[hidden],.hv-toggle [hidden]{display:none}
.hv-credit{position:absolute;right:max(16px,var(--pad));bottom:10px;margin:0;font-size:11.5px;color:rgba(255,255,255,.7)}
@media (max-width:720px){
  .hero-video{min-height:0;display:block}
  .hv-media{position:relative;inset:auto;height:clamp(220px,56vw,340px)}
  .hv-scrim{inset:auto;top:0;left:0;right:0;height:clamp(220px,56vw,340px);background:linear-gradient(0deg,rgba(26,33,57,.5),rgba(26,33,57,0) 60%)}
  .hv-inner{padding-top:26px;padding-bottom:34px;background:var(--navy-deep)}
  .hv-toggle{top:12px}
  .hv-credit{top:calc(clamp(220px,56vw,340px) - 26px);bottom:auto}
  .hv-cats a{font-size:14px;padding:0 12px}
}

.patas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px}
.patas li{display:grid;gap:6px;justify-items:center;text-align:center;font-size:12.5px;line-height:1.3;color:var(--ink-70)}
.patas img{width:72px;height:72px;border-radius:50%;display:block;box-shadow:0 0 0 1px var(--line)}

/* V5.3 — hero sin vídeo: mosaico de fotos reales de las dos tiendas */
/* V5.4: Martorell primero, L’Hospitalet después; a la derecha, sofá y cama de ambiente */
.hv-mosaic{display:grid;grid-template-columns:1.1fr .7fr 1.2fr;grid-template-rows:1fr 1fr;gap:4px;background:var(--navy-deep)}
.hv-mosaic img{width:100%;height:100%;object-fit:cover;display:block;min-width:0;min-height:0}
.hv-mosaic .m-mart{grid-column:1;grid-row:1/3}
.hv-mosaic .m-hosp{grid-column:2;grid-row:1/3;object-position:30% 60%}
.hv-mosaic .m-sofa{grid-column:3;grid-row:1}
.hv-mosaic .m-cama{grid-column:3;grid-row:2}
.cat-bloque[hidden]{display:none}
/* V5.4: proceso de atención y marcas visibles de una vez, sin carrusel */
.proceso{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:10px}
.paso{background:var(--white);box-shadow:inset 0 0 0 1px var(--line);padding:18px 18px 20px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}
.paso-n{font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--terra);line-height:1.5;min-width:22px}
.paso b{display:block;font-weight:500;font-size:16.5px;line-height:1.3;margin:0 0 4px}
.paso p{margin:0;font-size:14.5px;line-height:1.5;color:var(--ink-70);text-wrap:pretty}
@media (min-width:760px){.proceso{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1080px){.proceso{grid-template-columns:repeat(5,minmax(0,1fr))}.paso{grid-template-columns:1fr;gap:10px;padding:22px 20px 24px}}
.logos{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.logo-cel{background:var(--white);box-shadow:inset 0 0 0 1px var(--line);height:72px;padding:14px 12px;display:flex;align-items:center;justify-content:center;min-width:0}
.logo-cel img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.logo-cel .marca-txt{font-size:16px;text-align:center;line-height:1.2}
@media (min-width:600px){.logos{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}
@media (min-width:1000px){.logo-cel{height:84px}}
.tienda-aviso{margin:18px 0 0;padding:12px 16px;background:var(--arena);box-shadow:inset 0 0 0 1px var(--line);font-size:15px;line-height:1.5;display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;max-width:70ch}
.tienda-aviso[hidden],.tienda-aviso [hidden]{display:none}
.tienda-aviso a{text-decoration:underline;min-height:44px;display:inline-flex;align-items:center}
@media (max-width:720px){
  .hv-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
  .hv-mosaic .m-sofa{grid-column:1;grid-row:1}
  .hv-mosaic .m-cama{grid-column:2;grid-row:1}
  .hv-mosaic .m-mart{grid-column:1;grid-row:2}
  .hv-mosaic .m-hosp{grid-column:2;grid-row:2}
  .hv-media.hv-mosaic{height:clamp(300px,82vw,460px)}
  .hv-mosaic~.hv-scrim{height:clamp(300px,82vw,460px);background:linear-gradient(0deg,rgba(26,33,57,.35),rgba(26,33,57,0) 30%)}
}

/* ===================== V5.6 — ficha de producto (PDP), franja y asistente ===================== */
.pdp-band{display:grid;grid-template-columns:1fr 1fr;background:linear-gradient(180deg,#34426B 0%,#263156 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}
.pdp-band>*{min-height:50px;display:flex;align-items:center;justify-content:center;padding:0 10px;border:0;background:none;color:#fff;font:500 15px/1.2 var(--sans);letter-spacing:.01em;cursor:pointer;text-align:center;text-decoration:none}
.pdp-band>*:first-child{box-shadow:inset -1px 0 0 rgba(255,255,255,.28)}
.pdp-band>*:hover{background:rgba(255,255,255,.06);color:#fff}
.pdp.sec{padding-top:18px}
.pdp-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
.pdp-gal{display:grid;gap:10px;min-width:0}
.pdp-gal-main{position:relative;aspect-ratio:4/3;background:var(--paper);border-radius:6px;overflow:hidden}
.pdp-gal-main img{width:100%;height:100%;object-fit:cover;display:block}
.pdp-badge{position:absolute;top:12px;right:12px;width:66px;height:66px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-content:center;text-align:center;line-height:1;gap:3px;font-variant-numeric:tabular-nums}
.pdp-badge span{font-size:10.5px;letter-spacing:.1em}.pdp-badge b{font-size:19px;font-weight:700}
.pdp-arrow{position:absolute;top:50%;margin-top:-20px;width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.94);box-shadow:0 1px 4px rgba(26,33,57,.18);cursor:pointer;font-size:20px;line-height:1;color:var(--navy)}
.pdp-prev{left:10px}.pdp-next{right:10px}
.pdp-count{position:absolute;left:12px;bottom:10px;font-size:12px;padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.92);font-variant-numeric:tabular-nums}
.pdp-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px}
.pdp-thumbs button{aspect-ratio:4/3;padding:0;border:0;border-radius:4px;overflow:hidden;cursor:pointer;background:var(--paper);opacity:.72}
.pdp-thumbs button[aria-pressed="true"]{opacity:1;box-shadow:inset 0 0 0 2px var(--navy)}
.pdp-thumbs img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.pdp-info{display:grid;gap:18px;min-width:0;container-type:inline-size}
.pdp-brand{margin:0;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-78)}
.pdp-h1{margin:-8px 0 0;font-family:var(--sans);font-weight:700;letter-spacing:-.025em;line-height:1.05;font-size:clamp(24px,10.6cqi,48px);text-wrap:balance}
.pdp-lead{margin:0;font-size:16.5px;line-height:1.55;color:var(--ink-78);max-width:52ch;text-wrap:pretty}
.pdp-avail{margin:-4px 0 0;font-size:13.5px;color:var(--ink-78);display:flex;align-items:center;gap:8px}
.pdp-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);flex:0 0 auto;display:inline-block;animation:pdpPulse 2s ease-out infinite}
@keyframes pdpPulse{0%{box-shadow:0 0 0 0 rgba(92,122,98,.55)}70%{box-shadow:0 0 0 6px rgba(92,122,98,0)}100%{box-shadow:0 0 0 0 rgba(92,122,98,0)}}
@media (prefers-reduced-motion:reduce){.pdp-dot{animation:none}}
.pdp-feats{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:18px;row-gap:14px;align-items:end;padding:18px 0;box-shadow:inset 0 1px 0 var(--line),inset 0 -1px 0 var(--line)}
.pdp-f-l{font-size:15px;white-space:nowrap;font-variant-numeric:tabular-nums}.pdp-f-l b{font-weight:700}
.pdp-f-b{display:grid;gap:4px;min-width:0}
.pdp-f-ends{display:flex;justify-content:space-between;font-size:11.5px;line-height:1;color:var(--ink-70)}
.pdp-meter{display:block;height:10px;border-radius:999px;background:#EDE7DD;overflow:hidden}
.pdp-meter>span{display:block;height:100%;background:var(--navy);border-radius:999px}
.pdp-config{display:grid;gap:16px}
.pdp-field{display:grid;gap:6px;border:0;margin:0;padding:0;min-width:0}
.pdp-lbl{font-size:15px;font-weight:700;padding:0;margin-bottom:0}
fieldset.pdp-field .pdp-lbl{margin-bottom:6px}
.pdp-select{position:relative;display:block}
.pdp-select::after{content:"";position:absolute;right:17px;top:50%;width:9px;height:9px;margin-top:-7px;border-right:2px solid var(--navy);border-bottom:2px solid var(--navy);transform:rotate(45deg);pointer-events:none}
.pdp-select select{appearance:none;-webkit-appearance:none;width:100%;min-height:52px;padding:0 44px 0 14px;border:0;border-radius:6px;background:#fff;box-shadow:inset 0 0 0 1px rgba(33,42,71,.34);color:var(--navy);font:400 16px var(--sans);font-variant-numeric:tabular-nums;cursor:pointer}
.pdp-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:6px}
.pdp-opt{min-height:48px;padding:6px 10px;border:0;border-radius:6px;cursor:pointer;background:#fff;color:var(--navy);box-shadow:inset 0 0 0 1px rgba(33,42,71,.30);font:400 15px var(--sans)}
.pdp-opt[aria-pressed="true"]{background:var(--navy);color:#fff;box-shadow:none}
.pdp-opt[aria-pressed="true"]::before{content:"✓ "}
.pdp-opt[aria-disabled="true"]{background:var(--paper);color:rgba(33,42,71,.45);box-shadow:inset 0 0 0 1px rgba(33,42,71,.10)}
.pdp-msg{margin:0;font-size:14px;color:var(--ink-78)}
.pdp-alert{margin:0;font-size:14.5px;padding:10px 12px;background:rgba(150,88,63,.10);border-radius:6px}
.pdp-price{display:grid;gap:6px;padding-top:18px;box-shadow:inset 0 1px 0 var(--line)}
.pdp-price>div{display:grid;gap:6px}
.pdp-pr{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;font-variant-numeric:tabular-nums}
.pdp-pr s{font-size:22px;font-weight:500;color:rgba(33,42,71,.55)}
.pdp-pr b{font-weight:700;font-size:clamp(40px,14cqi,54px);line-height:1;letter-spacing:-.02em}
.pdp-pr2{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:14.5px;font-variant-numeric:tabular-nums}
.pdp-pr2 b{white-space:nowrap}
.pdp-dto{font-weight:700;padding:3px 8px;border-radius:4px;background:var(--navy);color:#fff}
.pdp-cp{margin:0;font-weight:700;font-size:28px;line-height:1.2}.pdp-cn{margin:0;font-size:14px;color:var(--ink-78)}
.pdp-note{margin:0;font-size:13.5px;color:var(--ink-78)}
.pdp-cta-box{display:grid;gap:8px}
.pdp-cta{width:100%;min-height:56px;border:0;border-radius:6px;background:var(--navy);color:#fff;font:700 17px var(--sans);cursor:pointer;padding:0 18px;display:flex;align-items:center;justify-content:center;gap:10px}
.pdp-cta:hover{background:var(--navy-hover)}
.pdp-cta-sub{margin:0;font-size:13px;color:var(--ink-70);text-align:center}
.pdp-eyebrow{margin:0 0 8px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:500}
.pdp-h2{margin:0;font-family:var(--sans);font-weight:700;letter-spacing:-.02em;line-height:1.1;font-size:clamp(24px,5.6vw,36px)}
.pdp-pack{background:#F7F4EF;box-shadow:inset 0 1px 0 rgba(33,42,71,.08);padding-bottom:44px;margin-top:40px}
.pdp-pack .wrap{display:grid;gap:14px}
.pdp-pack .pdp-lead{margin-top:-4px}
.pdp-pack-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,64%);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 10px;margin:4px -2px 0}
.pdp-pcard{scroll-snap-align:start;text-align:left;border:0;border-radius:6px;cursor:pointer;padding:0;overflow:hidden;background:#fff;color:var(--navy);box-shadow:inset 0 0 0 1px rgba(33,42,71,.12);display:grid;align-content:start;font-family:var(--sans)}
.pdp-pcard[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--navy)}
.pdp-pcard img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--paper)}
.pdp-pcard>span{padding:12px 14px 14px;display:grid;gap:4px}
.pdp-pcard small{font-size:12px;color:var(--ink-70)}.pdp-pcard strong{font-size:16.5px;font-weight:700}
.pdp-pcard .pp{display:flex;gap:8px;align-items:baseline;font-variant-numeric:tabular-nums;flex-wrap:wrap}
.pdp-pcard .pp s{font-size:13.5px;color:rgba(33,42,71,.55)}.pdp-pcard .pp b{font-size:18px;font-weight:700}
.pdp-pcard em{font-style:normal;font-size:12.5px;color:var(--ink-78);font-weight:500}
.pdp-pack-sel{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;background:#fff;border-radius:8px;padding:14px;box-shadow:inset 0 0 0 1px rgba(33,42,71,.12)}
.pdp-ps-gal{display:grid;gap:8px;min-width:0}
.pdp-ps-main{aspect-ratio:4/3;border-radius:6px;overflow:hidden;background:var(--paper)}.pdp-ps-main img{width:100%;height:100%;object-fit:cover;display:block}
.pdp-ps-th{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px}
.pdp-ps-th button{aspect-ratio:4/3;padding:0;border:0;border-radius:4px;overflow:hidden;cursor:pointer;background:var(--paper);opacity:.72}
.pdp-ps-th button[aria-pressed="true"]{opacity:1;box-shadow:inset 0 0 0 2px var(--navy)}
.pdp-ps-th img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.pdp-ps-info{display:grid;gap:16px;align-content:start;min-width:0}
.pdp-ps-t{margin:0;font-weight:700;font-size:24px;line-height:1.15}
.pdp-ps-rows{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;font-size:15px;font-variant-numeric:tabular-nums}
.pdp-ps-rows b{font-weight:500;text-align:right}
.pdp-ps-tot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;padding-top:12px;box-shadow:inset 0 1px 0 rgba(33,42,71,.14);font-variant-numeric:tabular-nums}
.pdp-ps-tot>span{font-size:15px;font-weight:700}.pdp-ps-tot s{font-size:16px;color:rgba(33,42,71,.55);margin-right:10px}.pdp-ps-tot b{font-weight:700;font-size:34px;letter-spacing:-.015em}
.pdp-ps-save{margin:0;font-size:15px;font-weight:700}
.pdp-fine{margin:0;font-size:12.5px;color:var(--ink-70)}
.pdp-pack-s{padding-bottom:28px}.pdp-bp-h{margin:0;font-weight:700;font-size:22px;line-height:1.2}
.pdp-donde{margin-top:8px}
.pdp-stores{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;margin-top:14px}
.pdp-store{border-radius:8px;box-shadow:inset 0 0 0 1px rgba(33,42,71,.14);padding:18px;display:grid;gap:10px;align-content:start;background:#fff}
.pdp-store-n{margin:0;display:flex;align-items:center;gap:8px;font-weight:700;font-size:18px}
.pdp-store-d{margin:0;font-size:14.5px;line-height:1.5}
.pdp-hours{display:grid;gap:2px;font-size:14px;font-variant-numeric:tabular-nums}.pdp-hours>span{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pdp-store-wa{margin-top:4px;min-height:50px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:6px;background:var(--navy);color:#fff!important;text-decoration:none;font-size:15.5px;font-weight:700}
.pdp-store-wa:hover{background:var(--navy-hover)}
.pdp-store-l{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:14.5px}.pdp-store-l a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline}
.pdp-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;box-shadow:0 -1px 0 var(--line),0 -8px 24px rgba(26,33,57,.08);padding:10px max(16px,var(--pad)) calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.pdp-bar[hidden]{display:none}
.pdp-bar-t{display:grid;min-width:0}.pdp-bar-t>span:first-child{font-size:12.5px;color:var(--ink-78);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pdp-bar-t>span:last-child{display:flex;gap:8px;align-items:baseline;font-variant-numeric:tabular-nums}.pdp-bar-t b{font-weight:700;font-size:21px}.pdp-bar-t s{font-size:13px;color:rgba(33,42,71,.55)}
.pdp-bar-b{min-height:48px;padding:0 18px;border:0;border-radius:6px;background:var(--navy);color:#fff;font:700 15px var(--sans);cursor:pointer}
body.pdp-bar-on .wa-float-wrap{display:none}
.pdp-dlg{position:fixed;inset:0;z-index:5000;background:rgba(10,11,12,.55);display:grid;align-items:end;justify-items:center}
.pdp-dlg[hidden]{display:none}
.pdp-dlg-box{background:#fff;border-radius:12px 12px 0 0;max-width:620px;width:100%;max-height:92vh;overflow-y:auto;padding:22px 20px calc(26px + env(safe-area-inset-bottom));display:grid;gap:16px}
.pdp-dlg-top{display:flex;justify-content:space-between;align-items:start;gap:12px}
.pdp-dlg-t{margin:0;font-weight:700;font-size:21px}.pdp-dlg-s{margin:2px 0 0;font-size:14px;color:var(--ink-78)}
.pdp-x{width:44px;height:44px;flex:0 0 auto;border:0;border-radius:50%;background:var(--paper);cursor:pointer;font-size:20px;color:var(--navy)}
.pdp-dlg .pdp-stores{margin-top:0}
.pdp-quiz{display:grid;gap:16px}.pdp-quiz fieldset{border:0;margin:0;padding:0;min-width:0}.pdp-quiz legend{padding:0;font-size:15.5px;font-weight:700;margin-bottom:8px}
.pdp-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:6px}
.pdp-chip{position:relative;cursor:pointer}.pdp-chip input{position:absolute;opacity:0;inset:0}
.pdp-chip>span{min-height:52px;padding:6px 10px;border-radius:6px;display:grid;place-content:center;text-align:center;gap:1px;background:#fff;color:var(--navy);box-shadow:inset 0 0 0 1px rgba(33,42,71,.30);font-size:15px}
.pdp-chip small{font-size:11.5px;opacity:.8}
.pdp-chip input:checked+span{background:var(--navy);color:#fff;box-shadow:none}
.pdp-chip input:focus-visible+span{outline:2px solid var(--navy);outline-offset:2px}
.pdp-quiz-res{display:grid;gap:10px;padding-top:14px;box-shadow:inset 0 1px 0 var(--line)}
.pdp-quiz-rt{margin:0;font-weight:700;font-size:17px}
.pdp-quiz-list{display:grid;gap:8px}
.pdp-qr{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:center;padding:8px;border-radius:8px;box-shadow:inset 0 0 0 1px rgba(33,42,71,.12);text-decoration:none;color:var(--navy)}
.pdp-qr:hover{box-shadow:inset 0 0 0 1px var(--navy)}
.pdp-qr img{width:96px;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:4px;background:var(--paper);display:block}
.pdp-qr>span{display:grid;gap:2px;min-width:0}.pdp-qr .h{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.pdp-qr .h b{font-size:16px}.pdp-qr .h em{font-style:normal;font-size:11.5px;color:var(--ink-78);font-weight:500;white-space:nowrap}
.pdp-qr .sp{font-size:13px;color:var(--ink-78)}.pdp-qr .pp{display:flex;gap:8px;align-items:baseline;font-variant-numeric:tabular-nums;flex-wrap:wrap;font-size:12.5px}.pdp-qr .pp s{font-size:13px;color:rgba(33,42,71,.55)}.pdp-qr .pp b{font-size:17px}
.pdp-qr .wh{font-size:12.5px;color:var(--ink-70)}
/* tarjetas de listado con precio */
.prod-img{position:relative}
.prod-dto{position:absolute;top:10px;right:10px;z-index:1;padding:4px 8px;border-radius:4px;background:var(--navy);color:#fff;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.prod-precio{margin:6px 0 8px;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-variant-numeric:tabular-nums;font-size:13px}
.prod-precio s{color:rgba(33,42,71,.55);font-size:13.5px}.prod-precio b{font-size:18px;font-weight:700}
@media (min-width:760px){.pdp-pack-cards{grid-auto-columns:260px}.pdp-dlg{align-items:center}.pdp-dlg-box{border-radius:12px}}
@media (min-width:860px){
  .pdp-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,4vw,56px)}
  .pdp-gal{position:sticky;top:20px}
  .pdp-pack-sel{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);padding:24px}
  .pdp-bar{display:none!important}
}
.pdp [hidden],.pdp-pack[hidden],.pdp-pack-sel[hidden],.pdp-store[hidden],.pdp-pack-s[hidden]{display:none!important}
.prod-precio s,.prod-precio b,.pdp-pr s,.pdp-pr b{white-space:nowrap}
.pdp-dlg .pdp-stores{grid-template-columns:minmax(0,1fr)}
.pdp-store-l a{white-space:nowrap}
/* V5.7 — asistente paso a paso */
.pdp-wiz{align-items:stretch;justify-items:stretch}
.pdp-wiz-box{background:#fff;width:100%;height:100%;overflow-y:auto;display:flex;flex-direction:column}
.pdp-wiz-head{background:linear-gradient(180deg,#34426B 0%,#212A47 100%);color:#fff;padding:14px 16px 28px;display:grid;gap:18px;min-height:min(44vh,340px);align-content:space-between}
.pdp-wiz-top{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px}
.pdp-wiz-res .pdp-wiz-top,.pdp-wiz-box>.pdp-wiz-top{padding:14px 16px 0}
.pdp-wiz-nav{width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:24px;line-height:1;cursor:pointer}
.pdp-wiz-box>.pdp-wiz-top .pdp-wiz-nav{background:var(--paper);color:var(--navy)}
.pdp-wiz-prog{text-align:center;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.pdp-wiz-head .pdp-x{background:rgba(255,255,255,.14);color:#fff}
.pdp-wiz-q{margin:0;font-family:var(--sans);font-weight:700;font-size:clamp(30px,8.4vw,46px);line-height:1.08;letter-spacing:-.02em;text-align:center;text-wrap:balance;padding:0 8px;outline:none}
.pdp-wiz-bar{display:block;height:4px;border-radius:2px;background:rgba(255,255,255,.2);overflow:hidden}.pdp-wiz-bar>span{display:block;height:100%;background:#fff;border-radius:2px}
.pdp-wiz-opts{display:grid;gap:10px;padding:26px 20px 32px;max-width:520px;width:100%;margin:0 auto}
.pdp-wiz-who{margin:0 0 4px;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.pdp-wiz-o{min-height:56px;display:flex;align-items:center;gap:12px;padding:0 16px;border:0;border-radius:6px;background:#fff;color:var(--navy);box-shadow:inset 0 0 0 1px rgba(33,42,71,.34);font:500 16.5px var(--sans);cursor:pointer;text-align:left}
.pdp-wiz-o:hover{box-shadow:inset 0 0 0 1.5px var(--navy)}
.pdp-wiz-r{width:20px;height:20px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--navy);flex:0 0 auto}
.pdp-wiz-o[aria-checked="true"]{background:var(--navy);color:#fff;box-shadow:none}.pdp-wiz-o[aria-checked="true"] .pdp-wiz-r{box-shadow:inset 0 0 0 6px #fff}
.pdp-wiz-go{margin-top:10px}.pdp-wiz-go:disabled{opacity:.45;cursor:default}
.pdp-wiz-res{display:grid;gap:14px;padding:6px 16px 32px;max-width:720px;width:100%;margin:0 auto}
.pdp-wiz-rt{margin:0;font-family:var(--sans);font-weight:700;font-size:clamp(26px,7vw,38px);line-height:1.1;letter-spacing:-.02em;text-align:center;text-wrap:balance;outline:none}
.pdp-wiz-res>.pdp-fine{text-align:center}
.pdp-wr{position:relative;display:grid;border-radius:8px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(33,42,71,.14);text-decoration:none;color:var(--navy);background:#fff}
.pdp-wr:hover{box-shadow:inset 0 0 0 1.5px var(--navy)}
.pdp-wr-top{position:absolute;top:10px;left:10px;z-index:1;padding:4px 9px;border-radius:4px;background:var(--navy);color:#fff;font-size:12.5px;font-weight:700}
.pdp-wr-img{position:relative;display:block;aspect-ratio:16/9;background:var(--paper)}.pdp-wr-img img{width:100%;height:100%;object-fit:cover;display:block}
.pdp-wr-dto{position:absolute;top:10px;right:10px;width:54px;height:54px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:700;font-size:15px}
.pdp-wr-b{display:grid;gap:10px;padding:14px 16px 16px}
.pdp-wr-h{display:flex;justify-content:space-between;align-items:baseline;gap:6px 12px;flex-wrap:wrap}.pdp-wr-h>b{font-size:19px;font-weight:700}
.pdp-wr-h .pp{font-variant-numeric:tabular-nums;font-size:13px;white-space:nowrap}.pdp-wr-h .pp s{color:rgba(33,42,71,.55)}.pdp-wr-h .pp b{font-size:18px;font-weight:700}
.pdp-wr-f{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr);gap:12px;align-items:center;font-size:14px;font-variant-numeric:tabular-nums}
.pdp-wr-a{font-size:14px}.pdp-wr-a b{font-weight:700}
.pdp-wr-s{font-size:12.5px;color:var(--ink-70)}.pdp-wr-go{font-size:14.5px;font-weight:700}
.pdp-wiz-redo{justify-self:center;min-height:44px;padding:0 16px;border:0;background:none;text-decoration:underline;color:var(--navy);font:500 15px var(--sans);cursor:pointer}
@media (min-width:760px){.pdp-wiz{align-items:center;justify-items:center;padding:24px}.pdp-wiz-box{max-width:640px;height:auto;max-height:92vh;border-radius:12px}}
.pdp-ps-main img,.pdp-ps-th img,.pdp-wr-img img,.pdp-thumbs img,.pdp-gal-main img{max-height:none}
.pdp-pcard>span{gap:3px}.pdp-pcard em{line-height:1.35}
.pdp-pcard .pp s,.pdp-pcard .pp b{white-space:nowrap}
.pdp-wiz-nav[data-hide]{visibility:hidden}
body.pdp-dlg-on .wa-float-wrap{display:none}
.pdp-wr-top{white-space:nowrap;width:auto;right:auto}
@media (min-width:560px){.pdp-wr{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}.pdp-wr-img{aspect-ratio:4/3;height:100%}}
/* V5.8 — conjunto con canapé o base: tarjetas y resumen */
.pdp-pack-step{margin:6px 0 0;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy)}
.pdp-pack-cards{grid-auto-columns:minmax(220px,70%);gap:14px;padding:4px 2px 12px}
.pdp-pcard{grid-template-rows:auto 1fr;border-radius:10px;box-shadow:inset 0 0 0 1px rgba(33,42,71,.14);transition:box-shadow .22s}
.pdp-pcard:hover{box-shadow:inset 0 0 0 1.5px rgba(33,42,71,.5)}
.pdp-pcard[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--navy)}
.pdp-pc-img{position:relative;display:block;aspect-ratio:4/3;background:#fff;overflow:hidden;border-bottom:1px solid rgba(33,42,71,.08)}
.pdp-pc-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);display:block}
.pdp-pc-dto{position:absolute;top:10px;left:10px;padding:3px 8px;border-radius:4px;background:var(--navy);color:#fff;font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums}
.pdp-pcard>.pdp-pc-b{padding:14px 14px 14px;display:grid;gap:4px;align-content:start}
.pdp-pc-b small{font-size:12px;color:var(--ink-70)}
.pdp-pc-b strong{font-size:18px;font-weight:700;line-height:1.2}
.pdp-pc-b em{margin-top:6px;font-style:normal;font-size:12px;color:var(--ink-78)}
.pdp-pc-b .pp{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.pdp-pc-b .pp b{font-size:21px;font-weight:700;white-space:nowrap}.pdp-pc-b .pp s{font-size:13.5px;color:rgba(33,42,71,.55);white-space:nowrap}
.pdp-pc-add{margin-top:10px;min-height:42px;display:flex;align-items:center;justify-content:center;border-radius:6px;box-shadow:inset 0 0 0 1px var(--navy);font-size:14.5px;font-weight:700;color:var(--navy)}
.pdp-pcard[aria-pressed="true"] .pdp-pc-add{background:var(--navy);color:#fff}
.pdp-pack-sel{border-radius:10px;padding:16px;gap:18px}
.pdp-ps-step{grid-column:1/-1;margin:0}
.pdp-ps-main{background:#fff;box-shadow:inset 0 0 0 1px rgba(33,42,71,.08)}
.pdp-ps-th{grid-template-columns:repeat(auto-fill,64px);gap:8px}
.pdp-ps-th button{width:64px;aspect-ratio:1;background:#fff;box-shadow:inset 0 0 0 1px rgba(33,42,71,.12)}
.pdp-ps-th img{object-fit:cover}
.pdp-ps-rows{padding:12px 0 0;box-shadow:inset 0 1px 0 rgba(33,42,71,.10)}
.pdp-store-wa{height:auto;min-height:50px;padding:10px 16px;white-space:nowrap;line-height:1.2;overflow:visible}
@media (min-width:760px){.pdp-pack-cards{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-auto-columns:auto;overflow:visible}}
.pdp-ps-th button{height:64px;padding:0}.pdp-ps-th button img{height:64px;width:64px}

/* ===================== V5.9 — franja, hero, reseñas y sofás ===================== */
.topbar{background:#212A47;color:#fff;font-size:13px;letter-spacing:.02em}
.topbar .wrap{min-height:36px;display:flex;align-items:center;justify-content:center;text-align:center}
.topbar p{margin:0}.topbar-all{display:none}
.topbar-i span{display:inline-block;animation:tbIn .5s ease}.topbar-i span[hidden]{display:none}
@keyframes tbIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media (min-width:1100px){.topbar-i{display:none}.topbar-all{display:flex;gap:28px;flex-wrap:wrap;justify-content:center}.topbar-all span+span::before{content:"·";margin-right:28px;opacity:.55}}
.hx{position:relative;min-height:min(86vh,720px);display:grid;align-items:end;overflow:hidden;background:#1a2139;color:#fff}
.hx-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 60%}
.hx-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,23,40,.10) 0%,rgba(18,23,40,.18) 40%,rgba(18,23,40,.78) 100%)}
.hx-in{position:relative;z-index:1;display:grid;gap:14px;justify-items:center;text-align:center;padding-top:120px;padding-bottom:44px}
.hx-eye{margin:0;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;opacity:.92}
.hx-h1{margin:0;font-family:var(--sans);font-weight:700;letter-spacing:-.03em;line-height:1.02;font-size:clamp(36px,7.4vw,76px);max-width:16ch;text-wrap:balance;color:#fff}
.hx-lead{margin:0;font-size:clamp(16px,2vw,19px);line-height:1.5;max-width:52ch;opacity:.94;text-wrap:pretty}
.hx-ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;width:100%}
.hx-btn,.hx-btn2{min-height:54px;padding:0 30px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:700;font-size:16px;text-decoration:none;flex:0 1 auto}
.hx-btn{background:#fff;color:#212A47!important}.hx-btn:hover{background:#EEF0F6}
.hx-btn2{color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.8)}.hx-btn2:hover{background:rgba(255,255,255,.1)}
.hx-proof{margin-top:6px;font-size:13.5px;color:#fff!important;text-decoration:none;opacity:.95}.hx-proof span{color:#F2C14E;letter-spacing:2px;margin-right:4px}
@media (max-width:560px){.hx-btn,.hx-btn2{flex:1 1 100%}}
.hx-cats-sec{padding:22px 0 8px}
.hx-cats{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,62%);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
.hx-cat{position:relative;display:block;aspect-ratio:4/5;border-radius:12px;overflow:hidden;scroll-snap-align:start;color:#fff!important;text-decoration:none;background:#EDE7DD}
.hx-cat img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.hx-cat:hover img{transform:scale(1.04)}
.hx-cat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,23,40,0) 45%,rgba(18,23,40,.72) 100%)}
.hx-cat-n{position:absolute;left:16px;right:16px;bottom:14px;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:8px;font-weight:700;font-size:19px;line-height:1.15}
.hx-cat-n i{font-style:normal;width:36px;height:36px;border-radius:50%;background:#fff;color:#212A47;display:grid;place-items:center;font-size:16px;flex:0 0 auto}
.hx-cat-d{position:absolute;top:12px;left:12px;z-index:1;padding:4px 9px;border-radius:4px;background:#212A47;font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums}
@media (min-width:860px){.hx-cats{grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}}
.rv{background:#F7F4EF}
.rv-top{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px}
.rv-big{margin:0 0 6px;color:#E0A43A;font-size:22px;letter-spacing:3px;line-height:1}
.rv-sub{margin:8px 0 0;font-size:15px;color:var(--ink-78)}
.rv-nav{display:none;gap:8px}.rv-nav button{width:46px;height:46px;border-radius:50%;border:0;background:#fff;box-shadow:inset 0 0 0 1px rgba(33,42,71,.2);color:var(--navy);font-size:22px;cursor:pointer}
.rv-nav button:hover{box-shadow:inset 0 0 0 1.5px var(--navy)}
@media (min-width:760px){.rv-nav{display:flex}}
.rv-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,84%);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 14px;scrollbar-width:thin}
@media (min-width:760px){.rv-track{grid-auto-columns:340px}}
.rv-card{margin:0;scroll-snap-align:start;background:#fff;border-radius:12px;padding:22px 22px 20px;display:grid;grid-template-rows:auto 1fr auto;gap:12px;box-shadow:0 1px 0 rgba(33,42,71,.06),0 8px 24px rgba(33,42,71,.06)}
.rv-st{margin:0;color:#E0A43A;letter-spacing:2px;font-size:17px;line-height:1}
.rv-card blockquote{margin:0;font-size:16px;line-height:1.55;color:var(--navy);text-wrap:pretty}
.rv-card figcaption{display:flex;align-items:center;gap:10px;padding-top:12px;box-shadow:inset 0 1px 0 rgba(33,42,71,.08)}
.rv-av{width:38px;height:38px;border-radius:50%;color:#fff;display:grid;place-items:center;font-weight:700;font-size:16px;flex:0 0 auto}
.rv-card figcaption>span:last-child{display:grid;gap:1px}.rv-card figcaption b{font-size:15px}.rv-card figcaption small{font-size:12.5px;color:var(--ink-70)}
.rv-more{margin:14px 0 0}
.sf-rasgos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.sf-rasgos li{display:grid;gap:2px;padding:12px 14px;border-radius:8px;background:#F7F4EF}
.sf-rasgos b{font-size:15px}.sf-rasgos span{font-size:13px;color:var(--ink-78)}
.sf-steps{display:grid;gap:20px}
.sf-step{border:0;margin:0;padding:0;min-width:0;display:grid;gap:10px}
.sf-leg{padding:0;display:flex;align-items:center;gap:10px;font-size:15.5px;font-weight:700;margin-bottom:10px}
.sf-n{width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700;flex:0 0 auto}
.sf-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sf-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.sf-card{min-height:64px;padding:12px;border:0;border-radius:8px;background:#fff;color:var(--navy);box-shadow:inset 0 0 0 1px rgba(33,42,71,.28);display:grid;gap:3px;align-content:center;justify-items:start;text-align:left;cursor:pointer;font-family:var(--sans)}
.sf-card b{font-size:15.5px}.sf-card small{font-size:12.5px;color:var(--ink-70)}
.sf-from{font-size:13px;font-variant-numeric:tabular-nums;color:var(--ink-78)}.sf-from b{font-size:14px;color:var(--navy)}
.sf-card[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--navy);background:#F4F6FB}
.sf-card[aria-pressed="true"] b:first-child::before{content:"✓ "}
.sf-card:disabled{opacity:.45;cursor:default}
.sf-note{margin:0;font-size:13px;color:var(--ink-70)}
.sf-extra{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:0;border-radius:8px;background:#fff;color:var(--navy);box-shadow:inset 0 0 0 1px rgba(33,42,71,.28);text-align:left;cursor:pointer;font-family:var(--sans)}
.sf-extra>span:nth-child(2){display:grid;gap:2px}.sf-extra b{font-size:15px}.sf-extra small{font-size:12.5px;color:var(--ink-70)}
.sf-chk{width:22px;height:22px;border-radius:5px;box-shadow:inset 0 0 0 1.5px var(--navy);display:grid;place-items:center}
.sf-extra[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--navy);background:#F4F6FB}
.sf-extra[aria-pressed="true"] .sf-chk{background:var(--navy)}.sf-extra[aria-pressed="true"] .sf-chk::after{content:"✓";color:#fff;font-size:14px}
.sf-ex-p{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:14px}.sf-ex-p s{color:rgba(33,42,71,.55);font-size:12.5px}
.sf-dims-g{display:grid;gap:24px;align-items:center}
.sf-dl{margin:18px 0 0;display:grid;gap:0}
.sf-dl>div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;box-shadow:inset 0 -1px 0 rgba(33,42,71,.1);font-size:15.5px}
.sf-dl dt{color:var(--ink-78)}.sf-dl dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
.sf-dims-img{border-radius:10px;overflow:hidden;background:#fff;box-shadow:inset 0 0 0 1px rgba(33,42,71,.1)}.sf-dims-img img{width:100%;height:auto;display:block}
@media (min-width:860px){.sf-dims-g{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px}}
.sf-card b{white-space:nowrap}.sf-card[aria-pressed="true"] b:first-child::before{content:none}
.sf-card{position:relative}.sf-card[aria-pressed="true"]::after{content:"✓";position:absolute;top:8px;right:9px;width:18px;height:18px;border-radius:50%;background:var(--navy);color:#fff;font-size:11px;display:grid;place-items:center;line-height:1}
.sf-from{display:block;white-space:nowrap}
.sf-dl dd{white-space:nowrap}
.hx-cat::after{background:linear-gradient(180deg,rgba(18,23,40,0) 30%,rgba(18,23,40,.82) 100%)}
.rv-card figcaption small{white-space:nowrap}

/* ===================== V5.10 — home y catálogo ===================== */
.topbar{overflow:hidden}
.topbar-t{display:flex;width:max-content;animation:mqRun 26s linear infinite}
.topbar-g{display:flex;align-items:center;gap:22px;padding-right:22px;min-height:36px;white-space:nowrap}
.topbar-g i{font-style:normal;opacity:.5}
@media (min-width:1100px){.topbar-t{width:100%;animation:none;justify-content:center}.topbar-g{padding-right:0}.topbar-g+.topbar-g{display:none}.topbar-g>i:last-child{display:none}}
@keyframes mqRun{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.topbar-t,.mq-t{animation:none!important}}
.hx-in{justify-items:center;text-align:center}
.hx-proof{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px 8px;text-align:center}
@media (max-width:640px){.hx-lead{display:none}.hx-eye{font-size:11px;letter-spacing:.18em}.hx{min-height:min(78vh,620px)}.hx-in{padding-top:90px;padding-bottom:30px}}
.mq{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mq-t{display:flex;width:max-content;animation:mqRun 32s linear infinite}
.mq-g{display:flex;align-items:center;gap:56px;padding-right:56px}
.mq-sec{padding:26px 0;box-shadow:inset 0 -1px 0 rgba(33,42,71,.08)}
.mq-lbl{margin:0 0 16px;text-align:center;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-70)}
.mq-logos img{height:34px;width:auto;display:block;filter:grayscale(1);opacity:.8}
.mq-word{font-weight:700;font-size:22px;letter-spacing:.02em;color:rgba(33,42,71,.7);white-space:nowrap}
.mq-sec-f{padding:34px 0;box-shadow:none;background:#212A47}
.mq-frase .mq-t{animation-duration:38s}
.mq-f{font-family:var(--sans);font-weight:700;letter-spacing:-.03em;font-size:clamp(34px,6vw,72px);line-height:1;color:#fff;white-space:nowrap}
.mq-f:nth-of-type(2n){color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.75)}
.mq-dot{color:rgba(255,255,255,.5);font-size:24px}
.mq-frase .mq-g{gap:40px;padding-right:40px}
.hc-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.hc-grid{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px}
.hc-t{position:relative;display:block;aspect-ratio:3/4;border-radius:14px;overflow:hidden;scroll-snap-align:start;color:#fff!important;text-decoration:none;background:#EDE7DD}
.hc-t img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.hc-t:hover img{transform:scale(1.05)}
.hc-t::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,23,40,0) 40%,rgba(18,23,40,.8) 100%)}
.hc-d{position:absolute;top:14px;left:14px;z-index:1;padding:5px 10px;border-radius:999px;background:#fff;color:#212A47;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.hc-b{position:absolute;left:18px;right:18px;bottom:18px;z-index:1;display:flex;justify-content:space-between;align-items:end;gap:10px}
.hc-b>span{display:grid;gap:2px}.hc-b b{font-size:26px;line-height:1.05;letter-spacing:-.02em}.hc-b small{font-size:13.5px;opacity:.9}
.hc-b i{font-style:normal;width:44px;height:44px;border-radius:50%;background:#fff;color:#212A47;display:grid;place-items:center;font-size:18px;flex:0 0 auto;transition:transform .3s}
.hc-t:hover .hc-b i{transform:translateX(3px)}
@media (min-width:860px){.hc-grid{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));overflow:visible;height:min(78vh,720px)}
  .hc-t{aspect-ratio:auto}.hc-big{grid-row:span 2}.hc-big .hc-b b{font-size:38px}}
.mv-r{display:flex;align-items:center;gap:16px}
.mv-track{grid-auto-columns:minmax(230px,70%)}
@media (min-width:760px){.mv-track{grid-auto-columns:270px}}
.mv-track .prod-card{scroll-snap-align:start}
.cm-track{grid-auto-columns:minmax(250px,78%)}
@media (min-width:760px){.cm-track{grid-auto-columns:300px}}
.cm-card{margin:0;scroll-snap-align:start;display:grid;gap:12px;align-content:start}
.cm-img{position:relative;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:#EDE7DD}
.cm-img img{width:100%;height:100%;object-fit:cover;display:block}
.cm-tag{position:absolute;left:10px;bottom:10px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.94);color:#212A47;font-size:12.5px;font-weight:700}
.cm-card figcaption{display:grid;gap:4px}
.cm-n{margin:0;display:flex;align-items:center;gap:6px;font-size:16px}.cm-v{flex:0 0 auto}
.cm-card blockquote{margin:2px 0 0;font-size:14.5px;line-height:1.5;color:var(--ink-78);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.cm-card small{font-size:12.5px;color:var(--ink-70)}.cm-card small a{color:var(--navy)}
.cat-sort{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:14.5px}
.cat-sort .pdp-select{min-width:230px}.cat-sort select{min-height:44px}
.hc-top .link-u,.mv-r .link-u,.cm .rv-more .link-u{white-space:nowrap}
.cm-tag{white-space:nowrap}

/* ===================== V5.11 — ficha: valoración y ventajas; landings ===================== */
.pdp-rating{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:-8px 0 -6px;font-size:14px;color:var(--navy)!important;text-decoration:none}
.pdp-stars{color:#E0A43A;letter-spacing:2px;font-size:16px;line-height:1}
.pdp-rating b{font-weight:700}
.pdp-vent{list-style:none;margin:0;padding:14px 16px;display:grid;gap:10px;border-radius:10px;background:#F7F4EF}
.pdp-vent li{display:flex;align-items:center;gap:12px;font-size:14.5px;line-height:1.35}
.pdp-vent svg{flex:0 0 auto;color:var(--navy)}
.pdp-guar{margin:4px 0 0;font-size:13px;text-align:center;color:var(--ink-78)}
.lp-rate{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0;font-size:15px;color:var(--navy)!important;text-decoration:none}
.lp-rate>span:first-child{color:#E0A43A;letter-spacing:2px;font-size:17px}
.lp-new .pdp-dot{margin-right:2px}
.lp-vent{background:#212A47;color:#fff}
.lp-vent ul{list-style:none;margin:0;padding:18px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.lp-vent li{display:grid;gap:2px;padding-left:14px;box-shadow:inset 2px 0 0 rgba(255,255,255,.35)}
.lp-vent b{font-size:15.5px}.lp-vent span{font-size:13px;opacity:.85}
@media (min-width:860px){.lp-vent ul{grid-template-columns:repeat(4,minmax(0,1fr))}}
.lp-rate{display:block;line-height:1.5}
.lp-rate>span:first-child{margin-right:8px;vertical-align:-1px}
.lp-new .pdp-dot{margin-right:8px;vertical-align:1px}
.hx-img{object-position:60% 52%}
.hx-scrim{background:linear-gradient(180deg,rgba(18,23,40,.18) 0%,rgba(18,23,40,.22) 38%,rgba(18,23,40,.82) 100%)}
@media (max-width:759px){.hx-img{object-position:50% 50%}}
/* V5.11 — menos azul en landings: ventajas en claro, bloques azules con esquinas superiores redondeadas */
.lp-vent{background:var(--arena);color:var(--navy)}
.lp-vent ul{padding:16px 0 18px;gap:10px}
.lp-vent li{box-shadow:none;background:#fff;border-radius:14px;padding:12px 14px 12px 40px;position:relative;align-content:center}
.lp-vent li::before{content:"";position:absolute;left:14px;top:50%;width:16px;height:16px;margin-top:-8px;border-radius:50%;background:var(--navy) 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}
.lp-vent b{font-size:15px;line-height:1.25}
.lp-vent span{font-size:13px;opacity:1;color:var(--ink-78)}
.band-navy.gal,.closer-navy{border-radius:28px 28px 0 0}
.lp-vent+.band-navy.gal{margin-top:0}
.closer-navy{margin-top:8px}
.closer-navy+.site-foot,.closer-navy~.site-foot{box-shadow:inset 0 1px 0 rgba(244,241,236,.14)}
.band-arena+.mq-sec,.mq-sec+.band-arena{background:var(--arena)}
.band-arena+.mq-sec{box-shadow:inset 0 1px 0 rgba(33,42,71,.08),inset 0 -1px 0 rgba(33,42,71,.08)}
@media (min-width:760px){.band-navy.gal,.closer-navy{border-radius:40px 40px 0 0}}
/* V5.12 — «Así es» en fichas de sofá */
.sf-det{background:var(--arena)}
.sf-det-g{display:grid;gap:22px}
.sf-pts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:10px}
.sf-pts li{background:#fff;border-radius:14px;padding:16px 18px;display:grid;gap:4px}
.sf-pts b{font-size:16px;font-weight:700}.sf-pts span{font-size:14.5px;line-height:1.5;color:var(--ink-78)}
.sf-specs{background:#fff;border-radius:14px;padding:0 18px}
.sf-specs summary{cursor:pointer;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700;font-size:15.5px;list-style:none}
.sf-specs summary::-webkit-details-marker{display:none}
.sf-specs summary::after{content:"+";font-size:22px;font-weight:400;flex:0 0 auto}
.sf-specs[open] summary::after{content:"−"}
.sf-specs ul{margin:0;padding:0 0 16px 18px;display:grid;gap:6px;font-size:14.5px;line-height:1.5}
@media (min-width:860px){.sf-det-g{grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:48px;align-items:start}.sf-det-g>div{grid-row:span 2}.sf-specs{grid-column:2}}

/* V5.16 */
.prod-ex{margin:4px 0 0;font-size:12.5px;line-height:1.35;color:#4A5268}
.pdp-ex{margin:8px 0 0;font-size:14px;line-height:1.4;color:#4A5268}
.pdp-bar-ex{display:block;font-size:11.5px;color:#4A5268;line-height:1.2}
.pdp-bar-ex[hidden]{display:none}
.pdp-rating{display:inline-block;margin:14px 0 0;font-size:14px;color:var(--navy);text-decoration:underline;text-underline-offset:3px}
.cm-g{flex:none;margin-left:6px;vertical-align:-3px}
.rv-src{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;align-items:start;margin-top:26px;padding:18px 20px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px rgba(33,42,71,.12)}
.rv-src>svg{width:24px;height:24px;margin-top:2px}
.rv-src p{margin:0;display:grid;gap:3px}
.rv-src p span{font-size:14px;color:#4A5268}
.rv-src ul{grid-column:1/-1;list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px}
.rv-src a{color:var(--navy);font-weight:500;font-size:14.5px}
.hx-cats{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;justify-content:inherit}
.hx-cats a{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);color:#fff;font-size:14px;font-weight:500;text-decoration:none;backdrop-filter:blur(6px);transition:background .22s}
.hx-cats a:hover{background:rgba(255,255,255,.26)}
@media (max-width:759px){.hx-cats{justify-content:center}.hx-cats a{font-size:13px;padding:7px 12px}}
.hc-mob .hc-d{background:#fff;color:var(--navy)}
.sec-cpf{padding:8px 0 28px}
.cpf{margin:0 0 30px;padding:24px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px rgba(33,42,71,.12);max-width:760px}
.cpf-h{margin:0 0 12px;font-size:22px;line-height:1.2;color:var(--navy)}
.cpf-f label{display:block;font-size:14px;font-weight:500;margin-bottom:6px}
.cpf-row{display:flex;gap:10px;flex-wrap:wrap}
.cpf-row input{flex:1 1 160px;min-width:0;height:48px;padding:0 14px;border-radius:10px;border:1px solid rgba(33,42,71,.28);font:inherit;font-size:17px;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.cpf-row input:focus{outline:2px solid var(--navy);outline-offset:2px}
.cpf-row button{height:48px;padding:0 20px;border-radius:10px;border:0;background:var(--navy);color:#fff;font:inherit;font-weight:600;cursor:pointer}
.cpf-help{margin:10px 0 0;font-size:13.5px;line-height:1.45;color:#4A5268}
.cpf-out:empty{display:none}
.cpf-out{margin-top:16px;padding-top:16px;border-top:1px solid rgba(33,42,71,.12)}
.cpf-out p{margin:0 0 8px}
.cpf-err p{color:#8A3B2E}
.cpf-r{font-size:17px}
.cpf-ctas{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin:12px 0}
.cpf-alt{font-size:14px;color:#4A5268}
.cpf-pl{display:flex;flex-wrap:wrap;gap:8px}
.cpf-pl button{min-height:44px;padding:0 14px;border-radius:10px;border:1px solid rgba(33,42,71,.28);background:#fff;font:inherit;cursor:pointer}
.cpf-man{margin:14px 0 0;font-size:14px}
.cpf-man a{color:var(--navy);font-weight:500}

.f-off{display:none!important}
.cat-tools{display:grid;gap:14px;margin-top:22px}
.cat-sels{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center}
.filtro-a{align-self:center;font-size:14px;font-weight:500;color:var(--navy);margin-left:6px}
.pdp-band3{grid-template-columns:repeat(3,1fr)}
.pdp-band a,.pdp-band button{text-align:center}
@media (max-width:759px){.pdp-band3{grid-template-columns:1fr 1fr}.pdp-band3>:last-child{grid-column:1/-1}}
.sq-brand{display:block;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:#4A5268;margin-top:2px}
.sq-chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}
.sq-chip{font-size:12.5px;padding:3px 9px;border-radius:999px;background:#EEF1F7;color:var(--navy)}
.sq-chip.on{background:var(--navy);color:#fff}

.mq-sec-f{padding:14px 0;background:#F3EFE8;box-shadow:inset 0 1px 0 rgba(33,42,71,.08),inset 0 -1px 0 rgba(33,42,71,.08)}
.mq-f{font-weight:600;font-size:clamp(20px,2.6vw,30px);letter-spacing:-.015em;color:#212A47}
.mq-f:nth-of-type(2n){color:#212A47;-webkit-text-stroke:0;opacity:.55}
.mq-dot{color:rgba(33,42,71,.35);font-size:14px}
.mq-frase .mq-g{gap:28px;padding-right:28px}

/* V5.17 — franja en movimiento también en escritorio */
@media (min-width:1100px){.topbar-t{width:max-content;animation:mqRun 40s linear infinite;justify-content:flex-start}
.topbar-g{padding-right:22px}
.topbar-g+.topbar-g{display:flex}
.topbar-g>i:last-child{display:inline}}
.topbar:hover .topbar-t{animation-play-state:paused}
/* V5.17 — frase ancha, casi transparente */
.mq-sec-f{padding:clamp(28px,5vw,64px) 0;background:#fff;box-shadow:none}
.mq-f,.mq-f:nth-of-type(2n){font-family:var(--sans);font-weight:400;font-size:clamp(40px,7vw,96px);letter-spacing:-.035em;line-height:1.05;color:rgba(33,42,71,.09);-webkit-text-stroke:0;opacity:1}
.mq-dot{display:none}
.mq-frase .mq-g{gap:clamp(36px,4vw,64px);padding-right:clamp(36px,4vw,64px)}
.mq-frase .mq-t{animation-duration:60s}
/* V5.17 — bloques rectos */
.band-navy.gal,.closer-navy{border-radius:0!important}
/* V5.17 — cookies */
.consent{padding:20px;justify-content:flex-start}
.consent-box{width:min(440px,100%);padding:22px 22px 20px;gap:16px;border-radius:16px;box-shadow:0 0 0 1px rgba(33,42,71,.08),0 18px 48px rgba(10,13,24,.16);font-family:var(--sans)}
.consent-box h2{font-family:var(--sans);font-weight:700;font-size:17px;letter-spacing:-.01em;color:#212A47;margin:0 0 6px}
.consent-box p{font-size:14px;line-height:1.55;color:#4A5268}
.consent-box p a{color:#212A47;text-decoration:underline;text-underline-offset:2px}
.consent-acts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.consent-acts .btn{width:100%;min-height:44px;padding:0 14px;font-family:var(--sans);font-size:14px;font-weight:600;border-radius:999px;border:0;box-shadow:none;background:#212A47;color:#fff}
.consent-acts .btn[data-consent-none]{background:#fff;color:#212A47;box-shadow:inset 0 0 0 1px rgba(33,42,71,.28)}
.consent-acts .btn[data-consent-open]{grid-column:1/-1;background:none;color:#212A47;min-height:36px;text-decoration:underline;text-underline-offset:3px;font-weight:500}
.consent-acts .btn[data-consent-save]{grid-column:1/-1}
.consent-row{font-size:14px}
@media (max-width:720px){.consent{padding:10px}
.consent-box{width:100%;border-radius:16px;padding:18px 16px calc(16px + env(safe-area-inset-bottom))}}

/* V5.24 — conjunto Gea + Elba */
.pdp-desde{font-size:16px;font-weight:600;color:#4A5268;margin-right:2px}
.pdp-ast{font-size:.6em;font-weight:700;vertical-align:super;line-height:0;color:#212A47;text-decoration:none;margin-left:2px}
.pdp-conj-nota{margin:10px 0 0;font-size:14px;line-height:1.5;color:#3A4258;font-style:normal;max-width:52ch;text-wrap:pretty}

/* V5.24 — conjunto Gea + Elba */
.pdp-conj-inc{margin:10px 0 0;font-size:14px;line-height:1.5;color:#212A47;font-weight:500;text-wrap:pretty}
.pdp-fin{margin:12px 0 0;padding:12px 16px;background:#F6F1E8;border-radius:10px;display:flex;flex-direction:column;gap:2px;max-width:340px;color:#212A47}.pdp-fin b{font-size:24px;font-weight:700;line-height:1.15;letter-spacing:-.01em}.pdp-fin span{font-size:15px;color:#3A4258}
.pdp-gal-cap{margin:8px 0 0;font-size:13px;color:#4A5268}

/* V5.28 — aire entre servicios y «Así es…» */
.pdp-info>.pdp-vent:last-child{margin-bottom:clamp(28px,5vw,48px)}

/* V5.29 — aire bajo «Especificaciones técnicas» */
.sec.sf-det{padding-bottom:clamp(44px,6vw,80px)}
