/* ============================================================
   Soul Home — sistema de diseño (Paleta A cálida clara)
   ============================================================ */
:root{
  --bg:#f2ece1; --cream:#faf5ec; --surface:#fffcf6; --greige:#e9dfcd;
  --ink:#2a231c; --muted:#6f6353; --faint:#a99c88;
  --line:#ddd0bc; --line-soft:#eadfcc;
  --terra:#bb5c34; --terra-deep:#a04b28; --gold:#a07d2c; --dark:#241a12;
  --ok:#3f7d54; --wa:#25a866;
  --shadow-sm:0 1px 2px rgba(70,45,20,.06);
  --shadow:0 4px 14px -6px rgba(80,50,25,.18);
  --shadow-lg:0 22px 50px -26px rgba(70,45,20,.45);
  --serif:"Fraunces",Georgia,serif;
  --sans:"Inter",system-ui,-apple-system,Segoe UI,sans-serif;
  --mono:"Spline Sans Mono",ui-monospace,Menlo,monospace;
  --brand-font:"Cormorant Garamond",Georgia,serif;
  --rad:16px; --wrap:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;margin:0;text-wrap:balance;letter-spacing:-.01em}
p{margin:0 0 1em}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--terra);outline-offset:3px;border-radius:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(16px,4vw,48px)}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--terra-deep);font-weight:500}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-weight:600;font-size:15px;padding:14px 24px;border-radius:999px;border:1px solid transparent;cursor:pointer;transition:transform .15s,background .15s}
.btn.primary{background:var(--terra);color:#fff;box-shadow:var(--shadow)}
.btn.primary:hover{background:var(--terra-deep);transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--cream)}
.btn.onimg{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.6);backdrop-filter:blur(3px)}
.btn.onimg:hover{background:#fff;color:var(--ink)}
.btn.light{background:var(--cream);color:var(--ink);border-color:transparent}
.btn.light:hover{background:#fff;transform:translateY(-1px)}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}

/* ---- header: marca elegante + menú amplio en franja oscura ---- */
/* --sh-top: alto de la barra de admin de WordPress cuando esta fija (si no, 0).
   Sin esto, al scrollear el header se mete debajo de esa barra y corta la marca. */
/* buscador del header: panel que se despliega debajo de la barra */
/* el boton de la lupa es un <button>: sin el fondo gris que pone el navegador */
.site-header .icons button{background:none;border:0;padding:0;color:inherit;cursor:pointer;display:inline-flex;align-items:center}
.sh-search{background:var(--dark);border-top:1px solid rgba(250,245,236,.12);position:sticky;top:var(--sh-header,96px);z-index:49}
.sh-search[hidden]{display:none}
.sh-search form{max-width:var(--wrap);margin:0 auto;display:flex;align-items:center;gap:14px;padding:18px clamp(16px,4vw,48px)}
.sh-search input[type=search]{flex:1;min-width:0;background:transparent;border:0;border-bottom:1px solid rgba(250,245,236,.35);color:var(--cream);
  font:400 clamp(18px,2.4vw,30px) var(--serif);padding:10px 0;outline:0}
.sh-search input[type=search]::placeholder{color:#8f7f6c}
.sh-search input[type=search]:focus{border-color:#e7a878}
.sh-search button{background:none;border:0;color:#e7a878;cursor:pointer;font:500 11px var(--mono);letter-spacing:.18em;text-transform:uppercase;padding:8px}
.sh-search .cerrar{color:#b9a88f}
.site-header{background:var(--dark);color:var(--cream);position:sticky;top:var(--sh-top,0px);z-index:50;box-shadow:0 8px 24px -16px rgba(0,0,0,.6)}
.site-header .brandbar{display:flex;justify-content:center;align-items:center;padding:clamp(12px,1.7vw,19px) 0 clamp(6px,.9vw,10px)}
.site-header .brand{display:block;font-family:var(--brand-font);font-weight:600;font-size:clamp(26px,3.9vw,43px);letter-spacing:.2em;text-transform:uppercase;line-height:1;color:#f7f0e4;padding-left:.2em;text-align:center}
.site-header .brand small{display:block;font-family:var(--mono);font-weight:400;font-size:clamp(8px,.85vw,10px);letter-spacing:.55em;color:#c3ac8c;text-align:center;margin-top:7px;padding-left:.55em}
.menubar{position:relative;z-index:40;background:var(--dark)}
.menubar .bar{max-width:1720px;margin:0 auto;padding:0 clamp(20px,3vw,52px);display:grid;grid-template-columns:1fr auto;align-items:center;height:50px;gap:24px}
.menubar nav{display:flex;align-items:center;gap:clamp(38px,5vw,76px)}
.menubar nav a{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#e7dbc7;white-space:nowrap}
.menubar nav a:hover,.menubar nav a.on{color:#e7a878}
.menubar .right{display:flex;align-items:center;gap:clamp(34px,4.6vw,68px)}
.menubar .icons{display:flex;gap:18px;align-items:center}
.menubar .icons a{display:inline-flex;position:relative;color:#e7dbc7}
.menubar .icons svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6}
.menubar .icons a:hover{color:#e7a878}
.menubar .badge{position:absolute;top:-7px;right:-8px;background:var(--terra);color:#fff;font-family:var(--mono);font-size:9px;min-width:16px;height:16px;padding:0 3px;border-radius:999px;display:grid;place-items:center}
/* ---- menú del celular ---- */
.sh-burger{display:none;background:none;border:0;padding:6px 2px;cursor:pointer;
  flex-direction:column;justify-content:center;gap:5px;width:30px}
.sh-burger span{display:block;height:1.5px;background:#e7dbc7;border-radius:2px;transition:transform .25s,opacity .2s}
.sh-burger span:nth-child(1){width:22px}
.sh-burger span:nth-child(2){width:16px}
.sh-burger span:nth-child(3){width:22px}
.sh-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.sh-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.sh-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);width:22px}

.sh-movil{position:fixed;inset:0;z-index:120}
.sh-movil[hidden]{display:none}
.sh-movil .velo{position:absolute;inset:0;background:rgba(14,10,7,.62);opacity:0;transition:opacity .3s}
.sh-movil.abierto .velo{opacity:1}
.sh-movil .panel{position:absolute;top:0;bottom:0;left:0;width:min(86vw,380px);background:var(--dark);
  color:#e7dbc7;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;
  transform:translateX(-100%);transition:transform .32s cubic-bezier(.3,.8,.3,1);
  padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));box-shadow:14px 0 40px -18px rgba(0,0,0,.7)}
.sh-movil.abierto .panel{transform:none}

.sh-movil .cab{display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:calc(18px + env(safe-area-inset-top,0px)) 20px 18px;border-bottom:1px solid rgba(255,255,255,.1)}
.sh-movil .marca{font-family:var(--brand-font);font-weight:600;font-size:21px;letter-spacing:.2em;
  text-transform:uppercase;color:#f7f0e4;line-height:1}
.sh-movil .marca small{display:block;font:400 8px var(--mono);letter-spacing:.5em;color:#c3ac8c;margin-top:5px}
.sh-movil .cerrar{background:none;border:0;color:#c3ac8c;font-size:19px;cursor:pointer;padding:4px 6px;line-height:1}

.sh-movil .fila{display:flex;align-items:center;justify-content:space-between;width:100%;
  font:600 13px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#e7dbc7;
  padding:17px 20px;border-bottom:1px solid rgba(255,255,255,.07);background:none;border-left:0;border-right:0;
  border-top:0;text-align:left;cursor:pointer}
.sh-movil .fila:hover{color:#e7a878}
.sh-movil .desplegar i{width:9px;height:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);transition:transform .25s;margin-top:-4px}
.sh-movil .desplegar[aria-expanded="true"]{color:#e7a878}
.sh-movil .desplegar[aria-expanded="true"] i{transform:rotate(-135deg);margin-top:2px}

.sh-movil .hijos{background:rgba(0,0,0,.22);padding:6px 20px 16px;border-bottom:1px solid rgba(255,255,255,.07)}
.sh-movil .hijos[hidden]{display:none}
.sh-movil .todos{display:block;font:500 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;
  color:#e7a878;padding:12px 0 6px}
.sh-movil .sub{padding:12px 0 4px;border-top:1px solid rgba(255,255,255,.07)}
.sh-movil .sub-t{display:block;font:600 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;
  color:#c3ac8c;margin-bottom:6px}
.sh-movil .sub a:not(.sub-t){display:block;font-size:14.5px;color:#d8ccb8;padding:7px 0 7px 12px}
.sh-movil .sub a:not(.sub-t):hover{color:#fff}

.sh-movil .pie{margin-top:auto;padding:24px 20px 8px}
.sh-movil .wa{display:block;text-align:center;background:var(--wa);color:#fff;font:600 13.5px var(--sans);
  padding:14px 18px;border-radius:999px}
.sh-movil .pie p{margin:16px 0 0;font-size:12.5px;line-height:1.7;color:#9d8e7c}
body.sh-menu-abierto{overflow:hidden}

@media(max-width:860px){
  .site-header .brand{letter-spacing:.14em;padding-left:.14em}
  /* el menú de texto se va: entra en la hamburguesa */
  .sh-burger{display:flex}
  .menubar .bar{grid-template-columns:auto 1fr;padding:0 16px;gap:0}
  .menubar .left,.menubar .right nav{display:none}
  .menubar .right{justify-content:flex-end}
  .menubar .icons{gap:22px}
  .mega{display:none}
}
@media(max-width:520px){
  .menubar .icons{gap:18px}
}
/* mega-menú de Productos (estilo editorial) */
.menubar .mega-trigger.active{color:#e7a878}
.mega{position:absolute;top:100%;left:0;right:0;background:var(--dark);border-top:1px solid rgba(255,255,255,.10);box-shadow:0 26px 44px -22px rgba(0,0,0,.65);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .18s,transform .18s,visibility .18s;z-index:39}
.mega.open{opacity:1;visibility:visible;transform:none}
.mega .mega-inner{max-width:1720px;margin:0 auto;padding:clamp(26px,2.4vw,36px) clamp(20px,3vw,52px) clamp(30px,3vw,42px);display:grid;grid-template-columns:repeat(5,1fr);gap:22px 28px}
.mega .mcol h4{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#e7a878;font-weight:600;margin:0 0 13px}
.mega .mcol a{display:block;font-family:var(--sans);font-size:14px;color:#d8ccb8;padding:6px 0;letter-spacing:.005em}
.mega .mcol a:hover{color:#fff}
.mega .mcol h4 a{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;padding:0;display:inline-block}
.mega .mcol h4 a:hover{color:#fff}
@media(max-width:1040px){.mega .mega-inner{grid-template-columns:repeat(3,1fr)}}
@media(max-width:860px){.mega{display:none}}

/* ---- HERO ---- */
/* El hero ocupa lo que queda de pantalla debajo del header.
   --sh-header lo mide nav.js; el 96px es por si el JS todavia no corrio. */
.hero{position:relative;min-height:calc(100vh - var(--sh-header,96px));display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.hero .kb{position:absolute;inset:0;background-size:cover;background-position:center 42%;animation:kb 18s ease-in-out infinite alternate;will-change:transform;transform-origin:center 45%}
@keyframes kb{0%{transform:scale(1.07) translateY(-1%)}100%{transform:scale(1) translateY(0)}}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,16,9,.30) 0%,rgba(24,16,9,.04) 38%,rgba(24,16,9,.30) 62%,rgba(24,16,9,.80) 100%)}
.hero .wrap{position:relative;z-index:2;width:100%;padding-top:70px;padding-bottom:clamp(36px,6vw,66px)}
@media (prefers-reduced-motion:reduce){.hero .kb{animation:none;transform:scale(1.05)}}
.hero .eyebrow{color:#f2d9a6}
.hero h1{font-size:clamp(42px,7.4vw,82px);line-height:1;color:#fff;margin:16px 0 0;max-width:15ch;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.hero h1 em{font-style:italic;color:#f0c088}
.hero .sub{font-size:clamp(16px,1.8vw,19px);color:#f3ebdd;margin-top:20px;max-width:46ch;text-shadow:0 1px 12px rgba(0,0,0,.4)}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}

/* ---- secciones ---- */
.section{padding:clamp(40px,6vw,78px) 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px}
.sec-head h2{font-size:clamp(26px,3.6vw,38px);line-height:1.08}
.sec-head p{color:var(--muted);font-size:15px;margin:8px 0 0;max-width:52ch}
.sec-head .link{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--terra-deep);white-space:nowrap;border-bottom:1px solid var(--terra);padding-bottom:3px}

/* colecciones */
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.col-card{position:relative;border-radius:var(--rad);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/5;display:block}
.col-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.col-card:hover img{transform:scale(1.04)}
.col-card .grad{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,8,0) 38%,rgba(20,14,8,.82) 100%)}
.col-card .cap{position:absolute;left:0;right:0;bottom:0;padding:20px 22px;color:#fff}
.col-card .cap .badge{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#f0d9a8}
.col-card .cap h3{color:#fff;font-size:26px;margin:4px 0 3px}
.col-card .cap .desc{font-size:13px;opacity:.85}
@media(max-width:760px){.cols{grid-template-columns:1fr}.col-card{aspect-ratio:16/10}}
/* racks individuales (home) */
.racks{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.8vw,24px)}
.rcard{display:block}
/* marco visible pero sobrio, para que la tarjeta no quede suelta */
.rcard .rimg{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--rad);background:radial-gradient(120% 100% at 50% 32%, #ddd0ba, #c3b192 60%, #b09a76);
  border:1px solid var(--line);box-shadow:0 0 0 1px rgba(255,255,255,.5) inset;transition:border-color .35s,box-shadow .35s}
.rcard:hover .rimg{border-color:var(--terra);box-shadow:0 0 0 1px rgba(187,92,52,.25) inset}
.rcard .rimg img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.rcard:hover .rimg img{transform:scale(1.05)}
.rcard .rbadge{position:absolute;top:12px;left:12px;z-index:2;font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;background:rgba(36,26,18,.82);color:#f3e9da;padding:5px 10px;border-radius:2px;backdrop-filter:blur(3px)}
.rcard .rmeta{padding:14px 2px 4px}
.rcard .rmeta .rnm{display:block;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);font-weight:500}
.rcard:hover .rmeta .rnm{color:var(--terra-deep)}
.rcard .rmeta .rdesc{display:block;font-size:12.5px;color:var(--muted);line-height:1.5;margin-top:6px;max-width:30ch}
.rcard .rmeta .rmore{display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--terra-deep);margin-top:11px;border-bottom:1px solid var(--terra);padding-bottom:2px}
.rcard:hover .rmeta .rmore{color:var(--ink);border-color:var(--ink)}
@media(max-width:900px){.racks{grid-template-columns:repeat(2,1fr)}}

/* banda configurador */
.confband{background:linear-gradient(120deg,#241a12,#3a2617);color:var(--cream);border-radius:calc(var(--rad) + 8px);overflow:hidden;box-shadow:var(--shadow-lg)}
.confband .in{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;padding:clamp(28px,4vw,50px)}
.confband .eyebrow{color:var(--gold)}
.confband h2{color:#fff;font-size:clamp(26px,3.4vw,40px);line-height:1.06;margin:12px 0 14px}
.confband p{color:#e6dccb;font-size:16px;max-width:46ch}
.confband .steps{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 0}
.confband .steps span{font-family:var(--mono);font-size:11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:6px 12px;color:#e6dccb}
.confband .cta{margin-top:26px}
.mockcard{background:var(--cream);border-radius:14px;padding:18px;box-shadow:var(--shadow-lg);color:var(--ink)}
.mockcard .q{font-family:var(--serif);font-size:19px;margin:0 0 12px}
.mockcard .opts{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.mockcard .opt{border:1px solid var(--line);border-radius:10px;padding:11px 12px;font-size:13px;font-weight:500;background:#fff}
.mockcard .opt.on{border-color:var(--terra);background:#fbeee6;box-shadow:0 0 0 1px var(--terra) inset}
.mockcard .opt small{display:block;color:var(--muted);font-weight:400;font-size:11px}
.mockcard .bar{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}
.mockcard .bar .tot{font-family:var(--mono);font-size:12px;color:var(--muted)}
.mockcard .bar .tot b{font-size:16px;color:var(--ink)}
.mockcard .bar .go{background:var(--terra);color:#fff;font-size:12px;font-weight:600;padding:8px 14px;border-radius:999px}
@media(max-width:820px){.confband .in{grid-template-columns:1fr;gap:26px}}

/* lineas */
/* otras lineas: producto centrado sobre fondo claro + nombre serif + subtitulo */
.lineas-h{text-align:center;font-family:var(--serif);font-weight:600;font-size:clamp(19px,2vw,24px);letter-spacing:.01em;color:var(--ink);margin:0 0 clamp(26px,3.2vw,46px)}
.lineas-h em{font-style:normal;color:var(--terra)}
.lineas2{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,50px);align-items:start}
.linea2{display:block;text-align:center}
.linea2 .lph{position:relative;aspect-ratio:4/3;background:transparent;overflow:hidden}
.linea2 .lph img{position:absolute;inset:auto 0 0 0;margin:0 auto;max-width:86%;max-height:100%;width:auto;height:auto;object-fit:contain;transform-origin:50% 100%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.linea2:hover .lph img{transform:scale(1.05)}
.linea2 h3{font-family:var(--serif);font-weight:600;font-size:15px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink);margin:22px 0 0;line-height:1.3}
.linea2:hover h3{color:var(--terra-deep)}
.linea2 .lsub{font-size:14px;color:var(--faint);margin-top:5px}
@media(max-width:760px){.lineas2{grid-template-columns:1fr;gap:32px}}

/* trust strip */
.trust-strip{background:var(--ink);color:var(--cream);border-radius:var(--rad)}
.trust-strip .g{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}
.trust-strip .t{padding:26px 22px;text-align:center}
.trust-strip .t .n{font-family:var(--serif);font-size:24px;color:#fff}
.trust-strip .t .l{font-size:13px;color:#c9bda9;margin-top:4px}
@media(max-width:760px){.trust-strip .g{grid-template-columns:1fr 1fr}}

/* ---- footer ---- */
.site-ft{background:var(--cream);border-top:1px solid var(--line);margin-top:clamp(40px,6vw,80px)}
/* columnas al ancho de su contenido y el aire repartido igual entre ellas:
   con 1fr cada una el blanco dependia de lo largo de los textos */
.site-ft .top{display:grid;grid-template-columns:repeat(4,auto);justify-content:space-between;gap:30px;padding:clamp(34px,5vw,58px) 0 34px}
.site-ft .brand-f{font-family:var(--serif);font-weight:600;font-size:20px;letter-spacing:.28em;text-transform:uppercase}
.site-ft p.bl{color:var(--muted);font-size:14px;margin-top:12px;max-width:32ch}
.site-ft h4{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-weight:500;margin-bottom:13px}
.site-ft ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;font-size:14px;color:var(--muted)}
.site-ft ul a:hover{color:var(--terra-deep)}
/* barra legal: obligatoria en Argentina, con el boton de arrepentimiento a la vista */
.site-ft .legal{border-top:1px solid var(--line);padding:15px 0;display:flex;flex-wrap:wrap;gap:10px 26px;font-size:13px}
.site-ft .legal a{color:var(--muted)}
.site-ft .legal a:hover{color:var(--terra-deep)}
.site-ft .legal a.arr{color:var(--ink);font-weight:600;border-bottom:1px solid var(--terra);padding-bottom:2px}
.site-ft .legal a.arr:hover{color:var(--terra-deep)}
.site-ft .bar{border-top:1px solid var(--line);padding:16px 0;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--faint);font-family:var(--mono)}
.site-ft .bar .fiscal{text-align:center}
/* el cartel de "falta completar" tambien se ve en el pie */
.sh-falta{background:#ffe9c9;color:#8a5a12;font:500 11px var(--mono);padding:2px 7px;border-radius:4px;text-transform:uppercase;letter-spacing:.06em}
@media(max-width:820px){.site-ft .top{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.site-ft .top{grid-template-columns:1fr}}

/* whatsapp float */
.wa-float{position:fixed;right:20px;bottom:20px;z-index:50;background:var(--wa);color:#fff;display:flex;align-items:center;gap:9px;padding:12px 17px;border-radius:999px;box-shadow:var(--shadow-lg);font-weight:600;font-size:14px}
.wa-float svg{width:20px;height:20px;fill:#fff}
.wa-float:hover{transform:translateY(-2px)}

/* páginas de contenido genéricas */
.page-body{padding-block:clamp(30px,5vw,60px);max-width:760px}
.page-body h1{font-size:clamp(28px,4vw,40px);margin-bottom:16px}

/* ===== TIENDA (WooCommerce · editorial) ===== */
/* ---- descripcion larga en la ficha de deco ---- */
.pdp-larga{font-size:14.5px;line-height:1.75;color:var(--muted)}
.pdp-larga p{margin:0 0 12px}
.pdp-larga h3{font:500 10.5px var(--mono);letter-spacing:.18em;text-transform:uppercase;
  color:var(--faint);margin:18px 0 10px}
.pdp-larga ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.pdp-larga li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;font-size:13.5px;line-height:1.5}
.pdp-larga li strong{color:var(--ink);font-weight:500;white-space:nowrap}

/* ---- cabecera de las paginas sueltas (carrito, pago, legales) ---- */
.page-head{padding:clamp(26px,3.6vw,52px) 0 clamp(20px,2.6vw,32px);border-bottom:1px solid var(--line)}
.page-head .k{font:500 11px var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--terra-deep)}
.page-head h1{font-size:clamp(32px,3.8vw,54px);font-weight:400;line-height:1.04;margin:12px 0 0;letter-spacing:-.01em}
.page-head .pasos{display:flex;flex-wrap:wrap;gap:12px 26px;list-style:none;margin:20px 0 0;padding:0;
  font:500 10.5px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--faint)}
.page-head .pasos li{display:flex;align-items:center;gap:9px}
.page-head .pasos li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--line)}
.page-head .pasos li.on{color:var(--ink)}
.page-head .pasos li.on::before{background:var(--terra)}
.page-body > .page-content{padding-bottom:clamp(40px,6vw,90px)}

.woocommerce .woocommerce-breadcrumb{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin:0 0 4px}
.woocommerce .woocommerce-breadcrumb a{color:var(--faint)}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--terra-deep)}
.cat-hero{text-align:center;padding:clamp(22px,3.5vw,42px) 0 clamp(12px,2vw,22px)}
.cat-hero .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--terra-deep)}
.cat-hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(32px,5vw,56px);line-height:1.02;margin:10px 0 0}
.cat-hero .ch-desc{color:var(--muted);font-size:15px;margin:12px auto 0;max-width:52ch}
/* Banner de sección: full-bleed (rompe el ancho del .wrap), imagen de ambiente + nombre + texto */
.cat-banner{position:relative;left:50%;width:calc(100vw - var(--sh-sb,0px));max-width:none;margin-left:calc((100vw - var(--sh-sb,0px)) / -2);margin-top:calc(clamp(24px,4vw,52px) * -1);margin-bottom:clamp(22px,3vw,36px);min-height:clamp(220px,32vw,380px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:var(--dark)}
.cat-banner .bg{position:absolute;inset:0;background-size:cover;background-position:center 58%}
.cat-banner .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,8,.40),rgba(20,14,8,.70))}
.cat-banner .bin{position:relative;z-index:2;color:#faf5ec;padding:0 24px}
.cat-banner h1{font-family:var(--serif);font-weight:600;font-size:clamp(44px,8vw,96px);letter-spacing:.24em;line-height:1;margin:0 0 0 .24em;text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.5),0 6px 30px rgba(0,0,0,.35)}
.cat-banner .sub{font-family:var(--mono);font-size:clamp(12px,1.3vw,15px);letter-spacing:.24em;text-transform:uppercase;margin-top:16px;color:#f0e6d4;text-shadow:0 1px 8px rgba(0,0,0,.55)}

/* ============================================================
   BANNER DE LA FICHA DE PRODUCTO
   Para ajustarlo a mano solo hacen falta estos 3 valores:

   --ban-alto  : que tan alto es el banner. El valor del medio (56vw)
                 manda en pantallas normales; 620px es el techo.
                 Mas alto = el mueble se ve mas grande.
   --ban-fit   : "cover" (lo normal) llena el banner sin dejar franjas.
                 Funciona porque las fotos de banner se guardan ya ensanchadas
                 a 5.6:1, repitiendo su columna de borde hacia los costados:
                 son mas anchas que cualquier pantalla, asi que siempre entra
                 el alto completo y solo se recorta ese relleno.
                 "contain" muestra la foto entera pero deja franjas al costado.
   --ban-fondo : el color de los costados. Tiene que ser igual al fondo
                 de la foto para que no se note donde termina.

   OJO: con "contain" el tamano del mueble depende sobre todo de cuanto
   margen vacio tenga la foto. Si el mueble se ve chico, lo que conviene
   es recortar la foto mas ajustada, no agrandar el banner.
   ============================================================ */
.rk-banner{--ban-alto:clamp(170px,45vw,620px);--ban-fit:cover;--ban-fondo:#030303;
  position:relative;left:50%;width:calc(100vw - var(--sh-sb,0px));max-width:none;margin-left:calc((100vw - var(--sh-sb,0px)) / -2);margin-top:calc(clamp(24px,4vw,52px) * -1);margin-bottom:clamp(22px,3vw,36px);height:var(--ban-alto);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:var(--ban-fondo)}
.rk-banner video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.rk-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:var(--ban-fit);object-position:center;display:block;margin:0;max-width:none}
.rk-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.34));z-index:1}
.rk-banner .bin{position:relative;z-index:2;color:#faf5ec;padding:0 24px}
.rk-banner h2{font-family:var(--serif);font-weight:600;font-size:clamp(34px,6vw,72px);letter-spacing:.24em;line-height:1;margin:0 0 0 .24em;text-transform:uppercase;text-shadow:0 2px 6px rgba(0,0,0,.8),0 8px 44px rgba(0,0,0,.7)}
.rk-banner .sub{font-family:var(--mono);font-size:clamp(11px,1.2vw,14px);letter-spacing:.24em;text-transform:uppercase;margin-top:16px;color:#f0e6d4;text-shadow:0 1px 14px rgba(0,0,0,.6)}
@media(prefers-reduced-motion:reduce){.rk-banner video{display:none}}
.shop-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:clamp(20px,3vw,34px)}
.shop-toolbar .stb-in{display:flex;justify-content:space-between;align-items:center;height:52px;gap:16px}
.shop-toolbar .count,.shop-toolbar .count p{margin:0;font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.filtros-btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--ink);background:none;border:0;cursor:pointer;padding:8px 0}
.filtros-btn svg{width:16px;height:16px}
.filtros-btn:hover{color:var(--terra-deep)}
/* grilla (forzamos grid sobre el layout float de WooCommerce) */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid !important;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.8vw,24px) clamp(10px,1.4vw,18px);margin:0 !important;padding:0 !important;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none !important;display:none !important}
.woocommerce ul.products li.product{width:auto !important;margin:0 !important;padding:0 !important;float:none !important;clear:none !important}
.pitem .pimg{position:relative;aspect-ratio:4/5;overflow:hidden;background:radial-gradient(120% 100% at 50% 32%, #ddd0ba, #c3b192 60%, #b09a76)}
.pitem .pimg-link{display:block;width:100%;height:100%}
.pitem .pimg img,
.woocommerce ul.products li.product .pimg img{width:100%;height:100%;object-fit:cover;transition:transform .5s;margin:0;display:block}   /* gana a la hoja de WooCommerce, que impone height:auto */
.pitem:hover .pimg img{transform:scale(1.03)}
/* ===== Deco: bandas alternadas por fila (4 / 2 / 3 / 1) estilo Zara Home ===== */
.sh-deco.woocommerce ul.products{grid-template-columns:repeat(12,1fr);gap:clamp(14px,1.8vw,26px) clamp(10px,1.3vw,18px)}
.sh-deco.woocommerce ul.products li.product{grid-column:span 3}            /* fila de 4 iguales */
.sh-deco.woocommerce ul.products li.product:nth-child(10n+5),
.sh-deco.woocommerce ul.products li.product:nth-child(10n+6){grid-column:span 6}   /* fila de 2 grandes */
.sh-deco.woocommerce ul.products li.product:nth-child(10n+7),
.sh-deco.woocommerce ul.products li.product:nth-child(10n+8),
.sh-deco.woocommerce ul.products li.product:nth-child(10n+9){grid-column:span 4}   /* fila de 3 iguales */
.sh-deco.woocommerce ul.products li.product:nth-child(10n){grid-column:3 / span 8} /* 1 centrada grande */
/* Categorias con pocas piezas: que no queden chiquitas y pegadas a la izquierda */
.sh-deco.woocommerce ul.products li.product:only-child{grid-column:4 / span 6}
.sh-deco.woocommerce ul.products li.product:first-child:nth-last-child(2),
.sh-deco.woocommerce ul.products li.product:first-child:nth-last-child(2) ~ li.product{grid-column:span 6}
.sh-deco.woocommerce ul.products li.product:first-child:nth-last-child(3),
.sh-deco.woocommerce ul.products li.product:first-child:nth-last-child(3) ~ li.product{grid-column:span 4}
.sh-deco.woocommerce ul.products li.product:only-child .pimg,
.sh-deco.woocommerce ul.products li.product:first-child:nth-last-child(2) .pimg,
.sh-deco.woocommerce ul.products li.product:first-child:nth-last-child(2) ~ li.product .pimg{aspect-ratio:5/4}
.sh-deco.woocommerce ul.products li.product:nth-child(10n+5) .pimg,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+6) .pimg{aspect-ratio:5/4}
.sh-deco.woocommerce ul.products li.product:nth-child(10n) .pimg{aspect-ratio:16/10}
/* Filas incompletas al final del listado: la ultima fila se redistribuye para
   que nunca quede una tarjeta suelta con el tamano de una fila de 3 o de 4. */
.sh-deco.woocommerce ul.products li.product:nth-child(10n+1):not(:first-child):last-child,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+5):last-child,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+7):last-child{grid-column:3 / span 8}
.sh-deco.woocommerce ul.products li.product:nth-child(10n+1):not(:first-child):last-child .pimg,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+5):last-child .pimg,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+7):last-child .pimg{aspect-ratio:16/10}
.sh-deco.woocommerce ul.products li.product:nth-child(10n+1):not(:first-child):nth-last-child(2),
.sh-deco.woocommerce ul.products li.product:nth-child(10n+1):not(:first-child):nth-last-child(2) + li.product,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+7):nth-last-child(2),
.sh-deco.woocommerce ul.products li.product:nth-child(10n+7):nth-last-child(2) + li.product{grid-column:span 6}
.sh-deco.woocommerce ul.products li.product:nth-child(10n+1):not(:first-child):nth-last-child(2) .pimg,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+1):not(:first-child):nth-last-child(2) + li.product .pimg,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+7):nth-last-child(2) .pimg,
.sh-deco.woocommerce ul.products li.product:nth-child(10n+7):nth-last-child(2) + li.product .pimg{aspect-ratio:5/4}
.sh-deco.woocommerce ul.products li.product:nth-child(10n+1):not(:first-child):nth-last-child(3),
.sh-deco.woocommerce ul.products li.product:nth-child(10n+1):not(:first-child):nth-last-child(3) ~ li.product{grid-column:span 4}
@media(max-width:900px){
  .sh-deco.woocommerce ul.products{grid-template-columns:repeat(2,1fr) !important}
  .sh-deco.woocommerce ul.products li.product{grid-column:auto !important}
  .sh-deco.woocommerce ul.products li.product .pimg{aspect-ratio:4/5 !important}
}
.pitem .pbadge{position:absolute;top:12px;left:12px;font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;background:var(--terra);color:#fff;padding:4px 9px;border-radius:2px;z-index:2}
.pitem .padd{position:absolute;left:12px;right:12px;bottom:12px;opacity:0;transform:translateY(8px);transition:.2s;z-index:2}
.pitem:hover .padd{opacity:1;transform:none}
.pitem .padd .button{display:block;width:100%;text-align:center;font-family:var(--sans);font-weight:600;font-size:13px;background:rgba(250,245,236,.94);color:var(--ink) !important;border:0;border-radius:2px;padding:12px;cursor:pointer;backdrop-filter:blur(4px);text-transform:none;line-height:1.2;letter-spacing:.01em}
.pitem .padd .button:hover{background:var(--ink);color:var(--cream) !important}
.pitem .padd .added_to_cart{display:none !important}
.pitem .pmeta{display:block;padding:13px 2px 4px}
.pitem .pmeta .nm{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink);font-weight:500;line-height:1.35}
.pitem:hover .pmeta .nm{color:var(--terra-deep)}
.pitem .pmeta .pr{display:block;font-size:13.5px;color:var(--muted);margin-top:5px;font-variant-numeric:tabular-nums}
.pitem .pmeta .pr del{opacity:.55;margin-right:6px}
.pitem .pmeta .pr ins{text-decoration:none;color:var(--terra-deep);font-weight:600}
/* Recorrido en bandas de la portada de Racks.
   La grilla de la tienda se desarma: cada producto pasa a ser una franja a todo
   el ancho, con el fondo alternado (crema / marron del header) y la foto
   cambiando de lado. */
.sh-racks-bandas.woocommerce ul.products{display:block !important;grid-template-columns:none !important;gap:0 !important;
  position:relative;left:50%;width:calc(100vw - var(--sh-sb,0px));max-width:none;
  margin-left:calc((100vw - var(--sh-sb,0px)) / -2) !important}
.sh-racks-bandas .rk-todos{margin-bottom:0}
li.product.rkb{display:block;width:100% !important;background:var(--cream);padding:clamp(30px,4vw,64px) 0;list-style:none}
li.product.rkb.alt{background:var(--dark)}
.rkb-in{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,70px);align-items:center;padding:0 clamp(20px,5vw,90px)}
/* Al invertir el lado hay que invertir tambien las columnas: si no, la foto cae
   en la angosta y las bandas alternas quedan con la imagen mas chica. */
.rkb.inv .rkb-in{grid-template-columns:.85fr 1.15fr}
.rkb.inv .rkb-f{order:2}
.rkb-f{overflow:hidden;border-radius:4px;background:var(--greige)}
.rkb-f img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;margin:0;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.rkb:hover .rkb-f img{transform:scale(1.04)}
.rkb-t .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--terra-deep)}
.rkb-t h3{font-family:var(--serif);font-size:clamp(24px,3vw,36px);margin:10px 0 0;font-weight:600}
.rkb-t p{color:var(--muted);font-size:15px;line-height:1.65;margin:12px 0 0;max-width:40ch}
.rkb-t .pp{display:block;font-size:19px;margin-top:16px;font-variant-numeric:tabular-nums}
.rkb-t .pp del{opacity:.5;margin-right:6px}
.rkb-t .pp ins{text-decoration:none}
.rkb-t .cta{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--terra-deep);border-bottom:1px solid var(--terra);padding-bottom:3px;margin-top:18px}
/* en la banda oscura hay que invertir el texto o se pierde */
.rkb.alt .rkb-t .k{color:#e7a878}
.rkb.alt .rkb-t h3,.rkb.alt .rkb-t .pp{color:#faf5ec}
.rkb.alt .rkb-t p{color:#c9bca8}
.rkb.alt .rkb-t .cta{color:#e7a878;border-bottom-color:#e7a878}
.rkb.alt .rkb-f{background:#2f2318}
@media(max-width:860px){.rkb-in{grid-template-columns:1fr}.rkb.inv .rkb-f{order:0}}


/* Categoria con un solo producto: en vez de un cuadradito pegado a la izquierda,
   la pieza va centrada y grande, que es la unica forma de que se vea bien sola. */
.woocommerce ul.products li.product:only-child{grid-column:1 / -1;width:min(560px,100%) !important;margin:0 auto !important}
.woocommerce ul.products li.product:only-child .pimg{aspect-ratio:4/5}
.woocommerce ul.products li.product:only-child .pnm,
.woocommerce ul.products li.product:only-child .pprice{text-align:center}
@media(max-width:900px){.woocommerce ul.products li.product:only-child{grid-column:1 / -1}}

@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr) !important}}
/* paginación */
.woocommerce nav.woocommerce-pagination{margin:34px 0 10px;text-align:center}
.woocommerce nav.woocommerce-pagination ul{border:0;display:inline-flex;gap:6px;margin:0}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0;overflow:visible}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;font-size:14px;font-weight:600;color:var(--ink);background:var(--surface);padding:0;margin:0}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink);color:var(--cream);border-color:var(--ink)}
/* drawer de filtros */
.sh-backdrop{position:fixed;inset:0;background:rgba(24,16,9,.42);z-index:60;opacity:0;visibility:hidden;transition:.25s}
.sh-backdrop.open{opacity:1;visibility:visible}
.sh-drawer{position:fixed;top:0;right:0;height:100%;width:min(400px,92vw);background:var(--cream);z-index:61;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:-24px 0 60px -24px rgba(40,25,10,.5)}
.sh-drawer.open{transform:none}
.sh-drawer .dh{display:flex;justify-content:space-between;align-items:center;padding:22px 26px;border-bottom:1px solid var(--line)}
.sh-drawer .dh h3{font-family:var(--mono);font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--ink);margin:0}
.sh-drawer .dh .x{background:none;border:0;font-size:24px;line-height:1;color:var(--muted);cursor:pointer}
.sh-drawer .dbody{flex:1;overflow-y:auto;padding:6px 26px 26px}
.sh-drawer .fsec{border-bottom:1px solid var(--line-soft);padding:18px 0}
.sh-drawer .fsec:last-child{border-bottom:0}
.sh-drawer .fh{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-weight:600;margin-bottom:14px}
.sh-drawer .fbody{display:flex;flex-direction:column;gap:3px}
.sh-drawer .fopt{display:flex;justify-content:space-between;align-items:center;font-size:14.5px;color:var(--ink);padding:7px 0}
.sh-drawer .fopt:hover{color:var(--terra-deep)}
.sh-drawer .fopt .cnt{font-family:var(--mono);font-size:11px;color:var(--faint)}
.sh-drawer .sh-order .woocommerce-ordering{margin:0}
.sh-drawer .sh-order select{width:100%;font-family:var(--sans);font-size:14px;border:1px solid var(--line);border-radius:8px;padding:11px 12px;background:var(--surface);color:var(--ink);cursor:pointer}

/* ============================================================
   Ficha de producto DECO (estilo Zara Home)
   ============================================================ */
.sh-pdp .sh-crumb{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:2px 0 14px}
.sh-pdp .sh-crumb a:hover{color:var(--terra-deep)}
.sh-pdp .sh-crumb span{margin:0 6px}
.sh-pdp .pdp{display:grid;grid-template-columns:84px 1fr 400px;gap:clamp(16px,2vw,30px);align-items:start;padding-bottom:clamp(40px,5vw,72px)}
.sh-pdp.one-img .pdp{grid-template-columns:1fr 400px}
.sh-pdp .thumbs{display:flex;flex-direction:column;gap:8px;justify-content:flex-end;align-self:stretch}   /* juntas, apiladas desde abajo */
.sh-pdp .thumb{padding:0;border:1px solid var(--line);background:var(--greige);cursor:pointer;flex:0 0 auto;aspect-ratio:1/1;overflow:hidden;opacity:.45;transition:opacity .2s,border-color .2s}
.sh-pdp .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.sh-pdp .thumb:hover{opacity:.75}
.sh-pdp .thumb.on{opacity:1;border-color:var(--ink)}   /* la seleccionada, nítida */
.sh-pdp .stage{position:relative;background:var(--greige);overflow:hidden;aspect-ratio:4/5;align-self:start;width:100%}
.sh-pdp .stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.sh-pdp .stage .base{z-index:1}
.sh-pdp .stage .rev{z-index:2;clip-path:inset(100% 100% 100% 100%)}
@keyframes square-in-center{from{clip-path:inset(100% 100% 100% 100%)}to{clip-path:inset(0 0 0 0)}}
@keyframes square-in-top-right{from{clip-path:inset(100% 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.sh-pdp .stage .rev.run-a{animation:1.1s cubic-bezier(.25,1,.30,1) square-in-center both}
.sh-pdp .stage .rev.run-b{animation:1.1s cubic-bezier(.25,1,.30,1) square-in-top-right both}
.sh-pdp .stage .fav{position:absolute;top:16px;right:16px;z-index:3;font-size:20px;color:#3a2c1c;opacity:.8}
.sh-pdp .info{align-self:stretch;display:flex;flex-direction:column}
.sh-pdp .info .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--terra-deep)}
.sh-pdp .pdp-title{font-family:var(--serif);font-weight:600;font-size:clamp(17px,1.7vw,22px);line-height:1.15;margin:0;text-transform:uppercase;letter-spacing:.03em}
.sh-pdp .pdp-price{font-size:22px;margin:16px 0 0;font-variant-numeric:tabular-nums;color:var(--ink)}
.sh-pdp .pdp-price del{opacity:.55;margin-right:8px}
.sh-pdp .pdp-price ins{text-decoration:none;color:var(--terra-deep);font-weight:600}
.sh-pdp .pdp-desc{color:var(--muted);font-size:14.5px;line-height:1.65;margin:20px 0 0;max-width:42ch}
.sh-pdp .pdp-desc p{margin:0 0 8px}
/* añadir al carrito (form de WooCommerce) */
.sh-pdp form.cart{display:flex;gap:10px;margin:24px 0 0;align-items:stretch;flex-wrap:wrap}
.sh-pdp form.cart .quantity{display:flex;align-items:center;border:1px solid var(--line);background:var(--cream);flex:0 0 auto}
.sh-pdp form.cart .quantity .qbtn{width:15px;height:46px;border:0;background:none;font-size:12px;cursor:pointer;color:var(--muted);line-height:1;padding:0}
.sh-pdp form.cart .quantity .qbtn:hover{color:var(--ink)}
.sh-pdp form.cart .quantity input.qty{width:18px;height:46px;border:0;background:none;text-align:center;font-size:12px;color:var(--ink);-moz-appearance:textfield;font-variant-numeric:tabular-nums;padding:0}
.sh-pdp form.cart .quantity input.qty::-webkit-outer-spin-button,
.sh-pdp form.cart .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.sh-pdp form.cart .single_add_to_cart_button{flex:1;min-width:180px;height:46px;border:0;border-radius:0;background:var(--ink);color:var(--cream);font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s}
.sh-pdp form.cart .single_add_to_cart_button:hover{background:var(--terra-deep)}
/* selector de variantes (racks: Medida + Color) */
.sh-pdp .variations{width:100%;border-collapse:collapse;margin:18px 0 4px}
.sh-pdp .variations tr{border-bottom:1px solid var(--line-soft)}
.sh-pdp .variations th.label{text-align:left;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:12px 14px 12px 0;vertical-align:middle;width:1%;white-space:nowrap}
.sh-pdp .variations td.value{padding:8px 0}
.sh-pdp .variations select{width:100%;min-width:240px;font-family:var(--sans);font-size:14px;border:1px solid var(--line);background:var(--cream);color:var(--ink);padding:12px 13px;cursor:pointer;border-radius:0}
.sh-pdp .reset_variations{display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--terra-deep);margin:8px 0 0}
.sh-pdp .single_variation .price{display:none}   /* el precio de la variante se refleja arriba, en .pdp-price */
.sh-pdp .single_variation{margin:0}
.sh-pdp .woocommerce-variation-add-to-cart{display:flex;gap:10px;align-items:stretch;margin-top:16px;flex-wrap:wrap}
.sh-pdp .woocommerce-variation-add-to-cart.woocommerce-variation-add-to-cart-disabled{opacity:.5}
/* sección Detalle (racks) */
.sh-detalle{border-top:1px solid var(--line);padding:clamp(34px,4vw,56px) 0 0;max-width:760px}
.sh-detalle .sh-sec-sub{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--terra-deep)}
.sh-detalle .sh-sec-h{font-family:var(--serif);font-weight:600;font-size:clamp(22px,2.4vw,30px);margin:6px 0 18px}
.sh-detalle .sh-detalle-body{color:var(--muted);font-size:15px;line-height:1.75}
.sh-detalle .sh-detalle-body p{margin:0 0 14px}
.sh-detalle .sh-detalle-body strong{color:var(--ink)}

/* ============================================================
   Ficha de RACK (estilo BoConcept Lugano)
   ============================================================ */
.sh-rack .sh-crumb{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:2px 0 14px}
.sh-rack .sh-crumb a:hover{color:var(--terra-deep)}
.sh-rack .sh-crumb span{margin:0 6px}
/* en la ficha de rack el contenedor va más ancho y con márgenes parejos al hueco central */
.sh-rack-page .wrap{max-width:1640px;padding-left:clamp(16px,6vw,110px) !important;padding-right:clamp(16px,6vw,110px) !important}
.rk-stage{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,.76fr);gap:clamp(36px,7vw,120px);align-items:start;padding-bottom:20px}
/* izquierda: principal + mosaico */
/* El hero respeta la proporcion real de la foto (se la pasa el PHP en un style inline).
   Sin max-height: recortar una foto vertical dejaba el mueble afuera del encuadre.
   El panel de la derecha es sticky, asi que un hero alto no estorba. */
.rk-hero{position:relative;width:100%;border-radius:calc(var(--rad) + 2px);overflow:hidden;background:var(--greige);aspect-ratio:4/3;box-shadow:var(--shadow)}
.rk-hero img{width:100%;height:100%;object-fit:cover}
.rk-hero .kick{position:absolute;left:16px;top:16px;background:rgba(35,25,16,.6);color:#fff;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:6px 11px;border-radius:999px}
.rk-mosaic{column-count:2;column-gap:clamp(10px,1vw,14px);margin-top:clamp(10px,1vw,14px)}
.rk-mosaic .mcard{break-inside:avoid;margin:0 0 clamp(10px,1vw,14px);border-radius:var(--rad);overflow:hidden;background:var(--greige)}
.rk-mosaic .mcard .ph{overflow:hidden}
.rk-mosaic .mcard.sq .ph{aspect-ratio:1/1}.rk-mosaic .mcard.tall .ph{aspect-ratio:3/4}
.rk-mosaic .mcard .ph img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.rk-mosaic .mcard:hover .ph img{transform:scale(1.04)}
.rk-wideimg{border-radius:var(--rad);overflow:hidden;background:var(--greige);aspect-ratio:16/9;margin-top:clamp(10px,1vw,14px)}
.rk-wideimg img{width:100%;height:100%;object-fit:cover}
/* derecha: config */
.rk-cfg{position:sticky;top:22px}
.rk-title{font-family:var(--serif);font-weight:600;font-size:clamp(28px,3.2vw,40px);line-height:1.03;margin:0}
.rk-sub{color:var(--muted);font-size:14px;margin-top:6px}
.rk-elige{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--terra-deep);margin:24px 0 12px}
.rk-opt{border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:10px;overflow:hidden}
.rk-opt .head{display:flex;align-items:center;gap:13px;padding:14px 16px}
.rk-opt .oic{width:24px;height:24px;flex:0 0 auto;color:var(--terra-deep)}.rk-opt .oic svg{width:100%;height:100%}
.rk-opt .ol{flex:1;min-width:0}
.rk-opt .ok{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rk-opt .ov{font-size:14.5px;font-weight:600;color:var(--ink);margin-top:2px}
.rk-opt .ch{background:none;border:0;color:var(--terra-deep);font-weight:600;font-size:13px;cursor:pointer;white-space:nowrap}
.rk-opt .ch:hover{color:var(--ink)}
.rk-panel{display:none;padding:0 16px 16px;border-top:1px solid var(--line-soft)}
.rk-panel.open{display:block}
.rk-sizes{display:flex;flex-wrap:wrap;gap:7px;padding-top:14px}
.rk-sizes button{border:1px solid var(--line);border-radius:9px;padding:9px 12px;font-weight:600;font-size:13px;background:var(--cream);cursor:pointer;color:var(--ink);font-variant-numeric:tabular-nums}
.rk-sizes button.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.rk-sizes button:hover:not(.on){border-color:var(--terra)}
.rk-swrow{display:flex;gap:9px;flex-wrap:wrap;padding-top:14px}
.rk-swrow button{width:42px;height:42px;border-radius:9px;overflow:hidden;border:1px solid var(--line);padding:0;cursor:pointer;background:var(--greige)}
.rk-swrow button.on{box-shadow:0 0 0 2px var(--terra);border-color:var(--terra)}
.rk-swrow img{width:100%;height:100%;object-fit:cover}
.rk-swrow .noimg{display:grid;place-items:center;width:100%;height:100%;font-family:var(--mono);font-size:14px;color:var(--muted)}
.rk-price{font-weight:700;font-size:30px;font-variant-numeric:tabular-nums;margin:22px 0 2px;color:var(--ink)}
.rk-price del{opacity:.5;margin-right:8px;font-weight:500}.rk-price ins{text-decoration:none}
.rk-fin{font-size:13px;color:var(--muted);margin-top:6px}.rk-fin b{color:var(--ink)}
/* form de WooCommerce oculto, manejado por la UI custom */
.sh-rack .variations,.sh-rack .single_variation,.sh-rack .reset_variations,.sh-rack form.cart .quantity{display:none !important}
.sh-rack form.cart{margin:0}
.sh-rack .woocommerce-variation-add-to-cart{margin-top:16px;opacity:1;transition:opacity .2s}
.sh-rack .woocommerce-variation-add-to-cart.woocommerce-variation-add-to-cart-disabled{opacity:.45}
.sh-rack .single_add_to_cart_button{width:100%;background:var(--ink) !important;color:var(--cream) !important;border:0;border-radius:999px;padding:16px;font-family:var(--sans);font-weight:600;font-size:15px;cursor:pointer;letter-spacing:.02em;text-transform:none}
.sh-rack .single_add_to_cart_button:hover{background:var(--terra-deep) !important}
.rk-wa{display:block;text-align:center;font-size:13px;color:var(--terra-deep);margin-top:12px;text-decoration:underline;text-underline-offset:3px}
.rk-wa:hover{color:var(--ink)}
/* acordeones */
.rk-acc{margin-top:22px;border-top:1px solid var(--line)}
.rk-acc .ai{border-bottom:1px solid var(--line)}
.rk-acc .at{width:100%;display:flex;align-items:center;gap:12px;padding:16px 2px;background:none;border:0;cursor:pointer;text-align:left;font-size:14.5px;font-weight:600;color:var(--ink);font-family:var(--sans)}
.rk-acc .at .ic{width:20px;height:20px;flex:0 0 auto;color:var(--terra-deep)}.rk-acc .at .ic svg{width:100%;height:100%}
.rk-acc .at .cv{margin-left:auto;transition:transform .2s;color:var(--muted)}
.rk-acc .at.open .cv{transform:rotate(90deg)}
.rk-acc .ab{display:none;padding:0 2px 18px;color:var(--muted);font-size:14px;line-height:1.7}
.rk-acc .ab.open{display:block}
.rk-acc .ab p{margin:0 0 10px}.rk-acc .ab strong{color:var(--ink)}
.rk-acc .ab table{width:100%;border-collapse:collapse}
.rk-acc .ab td{padding:9px 2px;border-bottom:1px solid var(--line-soft)}
.rk-acc .ab tr:last-child td{border-bottom:0}.rk-acc .ab td:last-child{text-align:right;color:var(--ink);font-weight:600}
@media(max-width:900px){.rk-stage{grid-template-columns:1fr}.rk-cfg{position:static}}
/* imágenes clickeables */
.rk-hero img,.rk-mosaic .mcard img,.rk-wideimg img,.sh-pdp .stage .base{cursor:zoom-in}

/* ============================================================
   Carrusel "También te puede interesar" (full-bleed oscuro)
   ============================================================ */
.rel-carousel{--relpad:clamp(16px,6vw,110px);--relgap:14px;position:relative;left:50%;width:calc(100vw - var(--sh-sb,0px));max-width:none;margin-left:calc((100vw - var(--sh-sb,0px)) / -2);background:var(--dark);color:var(--cream);padding:clamp(40px,5vw,72px) 0 clamp(36px,4.5vw,62px);margin-top:clamp(40px,5vw,72px)}
.rel-carousel .rel-head{max-width:1640px;margin:0 auto;padding:0 clamp(16px,6vw,110px) clamp(22px,2.6vw,34px)}
.rel-carousel .rel-sub{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#e7a878}
.rel-carousel .rel-h{font-family:var(--serif);font-weight:600;font-size:clamp(22px,2.6vw,32px);color:#fff;margin:6px 0 0;line-height:1.1}
.rel-wrap{position:relative}
.rel-track{display:flex;gap:var(--relgap);overflow-x:auto;padding:0 var(--relpad);scrollbar-width:none;-ms-overflow-style:none}
.rel-track::-webkit-scrollbar{display:none}
.rel-card{flex:0 0 calc((100vw - var(--sh-sb,0px) - (2 * var(--relpad)) - (4 * var(--relgap))) / 5);display:block}
.rel-card .rel-img{aspect-ratio:3/4;overflow:hidden;background:#33261b}
.rel-card .rel-img img{width:100%;height:100%;object-fit:cover;display:block;margin:0;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.rel-card:hover .rel-img img{transform:scale(1.05)}
.rel-card .rel-name{margin-top:14px;font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;line-height:1.3}
.rel-card:hover .rel-name{color:#e7a878}
.rel-nav{position:absolute;top:calc(50% - 22px);transform:translateY(-50%);z-index:3;width:46px;height:46px;border-radius:50%;background:rgba(250,245,236,.14);border:1px solid rgba(250,245,236,.3);color:#f7f0e4;font-size:22px;line-height:1;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(4px);transition:background .2s,opacity .2s}
.rel-nav:hover{background:rgba(250,245,236,.3)}
.rel-prev{left:18px}.rel-next{right:18px}
@media(max-width:1100px){.rel-card{flex-basis:calc((100vw - var(--sh-sb,0px) - (2 * var(--relpad)) - (3 * var(--relgap))) / 4)}}
@media(max-width:820px){.rel-card{flex-basis:calc((100vw - var(--sh-sb,0px) - (2 * var(--relpad)) - (2 * var(--relgap))) / 3)}}
@media(max-width:640px){.rel-nav{display:none}.rel-card{flex-basis:calc((100vw - var(--sh-sb,0px) - (2 * var(--relpad)) - var(--relgap)) / 2)}}
@media(max-width:460px){.rel-card{flex-basis:calc(100vw - var(--sh-sb,0px) - (2 * var(--relpad)) - 40px)}}

/* ============================================================
   Lightbox (ver fotos en grande y pasar entre ellas)
   ============================================================ */
.sh-lb{position:fixed;inset:0;z-index:120;background:rgba(20,14,8,.95);display:none;align-items:center;justify-content:center;opacity:0;transition:opacity .25s}
.sh-lb.open{display:flex}
.sh-lb.shown{opacity:1}
.sh-lb .lb-fig{max-width:92vw;max-height:84vh;display:flex;align-items:center;justify-content:center}
.sh-lb .lb-img{max-width:92vw;max-height:84vh;width:auto;height:auto;object-fit:contain;border-radius:6px;box-shadow:0 30px 80px -30px rgba(0,0,0,.8);transition:opacity .2s}
.sh-lb button{position:absolute;background:rgba(250,245,236,.12);color:#f7f0e4;border:1px solid rgba(250,245,236,.25);border-radius:999px;cursor:pointer;display:grid;place-items:center;transition:background .2s,border-color .2s;backdrop-filter:blur(4px)}
.sh-lb button:hover{background:rgba(250,245,236,.24);border-color:rgba(250,245,236,.5)}
.sh-lb .lb-close{top:20px;right:22px;width:44px;height:44px;font-size:22px;line-height:1}
.sh-lb .lb-prev,.sh-lb .lb-next{top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:24px;line-height:1}
.sh-lb .lb-prev{left:22px}.sh-lb .lb-next{right:22px}
.sh-lb .lb-count{position:absolute;bottom:24px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:#e7dbc7}
body.sh-lb-open{overflow:hidden}
@media(max-width:640px){
  .sh-lb .lb-prev,.sh-lb .lb-next{width:44px;height:44px}
  .sh-lb .lb-prev{left:10px}.sh-lb .lb-next{right:10px}
  .sh-lb .lb-close{top:12px;right:12px}
}
.sh-pdp .pdp-ship{display:flex;gap:8px;align-items:center;font-size:11px;letter-spacing:.02em;color:var(--muted);margin-top:16px;border-top:1px solid var(--line);padding-top:14px}
.sh-pdp .pdp-ship svg{width:15px;height:15px;stroke:var(--terra-deep);flex:0 0 auto}
/* combiná el look (en el panel derecho) */
.sh-pdp .combo-side{margin-top:auto;border-top:1px solid var(--line);padding-top:20px}  /* pegado al borde inferior de la foto */
.sh-pdp .combo-side .cs-h{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--terra-deep);margin-bottom:14px}
.sh-pdp .combo-side .combo{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.sh-pdp .combo-side .mnm{font-size:11px}
.sh-pdp .combo-side .mpr{font-size:12.5px}
/* mini-cards (combo + relacionados) */
.sh-pdp .mini .mimg{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--greige)}
.sh-pdp .mini .mimg img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;margin:0}
.sh-pdp .mini:hover .mimg img{transform:scale(1.03)}
.sh-pdp .mini .mmeta{padding:11px 2px 2px}
.sh-pdp .mini .mnm{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);font-weight:500;line-height:1.35}
.sh-pdp .mini:hover .mnm{color:var(--terra-deep)}
.sh-pdp .mini .mpr{display:block;font-size:12.5px;color:var(--muted);margin-top:4px}
/* relacionados abajo */
.sh-pdp .sh-sec{border-top:1px solid var(--line);padding:clamp(34px,4vw,56px) 0 0}
.sh-pdp .sh-sec-sub{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--terra-deep);text-align:center}
.sh-pdp .sh-sec-h{font-family:var(--serif);font-weight:600;font-size:clamp(22px,2.4vw,30px);margin:6px 0 clamp(22px,2.6vw,34px);text-align:center}
.sh-pdp .related{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(10px,1.2vw,18px)}
@media(max-width:1080px){.sh-pdp .pdp{grid-template-columns:76px 1fr 340px}.sh-pdp .related{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){
  .sh-pdp .pdp{grid-template-columns:1fr}
  .sh-pdp .thumbs{flex-direction:row;order:2;position:static;flex-wrap:wrap}
  .sh-pdp .thumb{width:72px}
  .sh-pdp .stage{order:1}
  .sh-pdp .info{order:3;position:static}
  .sh-pdp .related{grid-template-columns:repeat(2,1fr)}
}

/* ============================================================
   Nosotros (sección del home)
   ============================================================ */
/* ===== Reveal al scrollear (fade-up, estilo Fontenla) ===== */
@media (prefers-reduced-motion: no-preference){
  .sh-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1);will-change:opacity,transform}
  .sh-reveal.in{opacity:1;transform:none}
}

.nosotros{padding:clamp(56px,8vw,110px) 0;position:relative;overflow:hidden}
.nosotros::before{content:"";position:absolute;inset:0;z-index:0;background:
   radial-gradient(120% 90% at 88% 8%, rgba(187,92,52,.06), transparent 60%),
   linear-gradient(180deg,var(--surface),var(--bg))}
.nosotros .wrap{position:relative;z-index:1}
.nosotros .nos-grid{display:grid;grid-template-columns:1.02fr 1.1fr;gap:clamp(34px,5.5vw,90px);align-items:center}
/* composición de imágenes */
.nosotros .nos-media{position:relative;padding:0 clamp(30px,4vw,64px) clamp(40px,5vw,72px) 0}
.nosotros .m-main{position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--greige);box-shadow:var(--shadow-lg)}
.nosotros .m-main img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.nosotros .nos-media:hover .m-main img{transform:scale(1.045)}
.nosotros .m-label{position:absolute;left:0;bottom:0;z-index:3;background:var(--dark);color:#f3e9da;font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;padding:9px 15px}
.nosotros .m-accent{position:absolute;right:0;bottom:0;z-index:2;width:60%;aspect-ratio:3/2;overflow:hidden;border:8px solid var(--bg);box-shadow:var(--shadow-lg);background:var(--greige)}
.nosotros .m-accent img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.nosotros .nos-media:hover .m-accent img{transform:scale(1.06)}
.nosotros .badge{position:absolute;left:0;top:26px;z-index:4;width:96px;height:96px;border-radius:50%;background:var(--terra-deep);color:#fff;display:grid;place-content:center;text-align:center;box-shadow:0 14px 30px -12px rgba(160,75,40,.6);transform:rotate(-6deg)}
.nosotros .badge b{display:block;font-family:var(--serif);font-weight:600;font-size:30px;line-height:.9}
.nosotros .badge span{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;margin-top:4px;opacity:.92}
/* texto */
.nosotros .kicker{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--terra-deep)}
.nosotros .kicker::before{content:"";width:34px;height:1px;background:var(--terra)}
.nosotros .nos-text .lead{font-family:var(--serif);font-weight:500;font-size:clamp(24px,3vw,36px);line-height:1.18;letter-spacing:.005em;color:var(--ink);margin:0 0 22px;max-width:none}
.nosotros .nos-text .lead em{font-style:italic;color:var(--terra-deep)}
.nosotros .nos-text p{color:var(--muted);font-size:clamp(14.5px,1vw,15.8px);line-height:1.75;margin:0 0 13px;max-width:56ch}
.nosotros .nos-text p b{color:var(--ink);font-weight:600}
.nosotros .nos-stats{display:flex;gap:clamp(18px,2.4vw,34px);margin:26px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.nosotros .nos-stats .s{display:flex;flex-direction:column;gap:3px}
.nosotros .nos-stats .s b{font-family:var(--serif);font-weight:600;font-size:22px;color:var(--ink);line-height:1}
.nosotros .nos-stats .s span{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.nosotros .nos-text .cta{margin-top:28px}
.nosotros .nos-text .btn{display:inline-flex;align-items:center;gap:9px;background:var(--ink);color:var(--cream);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:15px 26px;transition:background .2s}
.nosotros .nos-text .btn:hover{background:var(--terra-deep)}
@media(max-width:900px){
  .nosotros .nos-grid{grid-template-columns:1fr;gap:clamp(30px,7vw,48px)}
  .nosotros .nos-media{max-width:520px;margin:0 auto}
  .nosotros .lead{font-size:clamp(23px,6vw,30px)}
}
@media(max-width:520px){
  .nosotros .m-accent{width:62%}
  .nosotros .badge{width:80px;height:80px}
  .nosotros .badge b{font-size:25px}
  .nosotros .nos-stats{flex-wrap:wrap;gap:16px}
}

/* ---- filtro de precio del cajón ---- */
.sh-drawer .fh{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.sh-drawer .flimpiar{font-family:var(--mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--terra-deep);font-weight:500}
.sh-drawer .flimpiar:hover{text-decoration:underline}
.sh-drawer .fopt.on{background:var(--greige);font-weight:600}
.sh-drawer .fopt.on .cnt{color:var(--terra-deep)}
