/* Base común de /cocinas/ (sistema de la home, Manual v3): retícula 12/4, un solo tema claro de marca */
:root{
  --hueso:#ECE9E2; --piedra:#D8D2C6; --carbon:#1F1C19; --gris:#6B655B; --oliva:#6B8A0E;
  --linea:#CFCAC0; --renova-claro:#57524A; --renova-oscuro:#B5AFA3; --negro:#000000; --blanco:#FFFFFF;
  --f-disp:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
  --f-body:'Barlow',Arial,Helvetica,sans-serif;
  --f-acc:'Instrument Serif',Georgia,'Times New Roman',serif;
  --gut:80px; --hd:88px; --edge:12px; --scene:200px;
  --ease:cubic-bezier(.22,.61,.36,1);
  color-scheme:light;
}
@media (max-width:900px){ :root{ --gut:20px; --hd:72px; --edge:8px; --scene:120px } }
html{scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--blanco);color:var(--carbon);font:400 18px/1.5 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:40;background:var(--blanco)}
p,h1,h2,h3,ul,ol,figure,table{margin:0}
a{color:var(--carbon)}
a:hover{color:var(--negro)}
:focus-visible{outline:2px solid var(--carbon);outline-offset:3px}
.w{max-width:1440px;margin-inline:auto;padding-left:max(var(--gut),env(safe-area-inset-left,0px));padding-right:max(var(--gut),env(safe-area-inset-right,0px))}
.g{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.c5{grid-column:1/6;min-width:0}
.c7{grid-column:6/13;min-width:0}
.c6a{grid-column:1/7;min-width:0}
.c6b{grid-column:7/13;min-width:0}

/* Botones y enlaces */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;background:var(--carbon);color:var(--hueso);font:600 16px/1 var(--f-body);padding:16px 26px;text-decoration:none;border:0;white-space:nowrap;transition:background .2s}
.btn:hover{background:var(--negro);color:var(--hueso)}
.btn::after{content:'';position:absolute;left:0;bottom:-10px;width:48px;height:6px;background:var(--oliva);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.btn:hover::after{transform:scaleX(1)}
.btn-inv{background:var(--hueso);color:var(--carbon)}
.btn-inv:hover{background:var(--blanco);color:var(--carbon)}
.lk{font-weight:600;font-size:17px;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px}
.lk .ar{display:inline-block;transition:transform .25s var(--ease)}
.lk:hover .ar{transform:translateX(4px)}
.tag{font-weight:600;font-size:12px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:var(--carbon)}
.ph-tag{position:absolute;left:20px;top:20px;z-index:2}
.crumbs{display:flex;gap:8px;align-items:center;margin-bottom:20px;font:600 12px/1.2 var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.crumbs a{color:var(--gris);text-decoration:none}
.crumbs a:hover{color:var(--carbon);text-decoration:underline}
.crumbs [aria-current]{color:var(--carbon)}

/* Titulares y texto */
.h1{margin:0;font-weight:400}
.cur{display:block;font-family:var(--f-acc);font-style:italic;font-weight:400;font-size:34px;line-height:1.1;text-transform:lowercase}
.disp{display:block;margin-top:16px;font-family:var(--f-disp);font-weight:900;font-size:88px;line-height:.86;text-transform:uppercase;text-wrap:balance}
.h2{font-family:var(--f-disp);font-weight:900;font-size:56px;line-height:.92;text-transform:uppercase;text-wrap:balance;max-width:100%}
.h3{font-family:var(--f-disp);font-weight:900;font-size:32px;line-height:.95;text-transform:uppercase}
.body{font-size:19px;max-width:640px}
.body+.body{margin-top:16px}
.small{font-size:15px;color:var(--gris)}
.scene{padding-top:var(--scene)}
.hl{position:relative;z-index:0;display:inline-block;color:var(--carbon);padding:0 .12em;line-height:.86}
.hl::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--oliva);transform-origin:left;animation:sweep .7s 1.3s cubic-bezier(.6,0,.2,1) both}
.ln{display:block;overflow:hidden;padding-bottom:.03em}
.ln>span{display:inline-block;animation:rise 1s var(--ease) both}
.ln:nth-child(1)>span{animation-delay:.6s}
.ln:nth-child(2)>span{animation-delay:.72s}
.ln:nth-child(3)>span{animation-delay:.84s}
.ln:nth-child(4)>span{animation-delay:.96s}
.fade-up{animation:fadeup .8s 1.4s var(--ease) both}
@keyframes rise{from{transform:translateY(105%)}}
@keyframes sweep{from{transform:scaleX(0)}}
@keyframes fade{from{opacity:0}}
@keyframes fadeup{from{opacity:0;transform:translateY(16px)}}
#hero .cur,#hero .ln>span,#hero .hl::before,#hero .fade-up{animation:none}
[data-rv]{transition:opacity .8s var(--ease),transform .8s var(--ease)}
[data-rv].pre{opacity:0;transform:translateY(24px)}

/* Escenas fijas */
.pinsec{position:relative}
.pin{position:sticky;top:var(--hd);height:calc(100svh - var(--hd));padding-bottom:var(--edge);transform-origin:50% 0;will-change:transform}
.panel{height:100%;margin-inline:max(var(--edge),env(safe-area-inset-left,0px));background:var(--hueso);position:relative;overflow:hidden}
.ind{display:flex;gap:8px;align-items:center}
.ind span{display:block;width:24px;height:3px;background:var(--gris);transition:width .4s var(--ease),height .4s var(--ease),background .4s}
.ind span.on{width:48px;height:6px;background:var(--oliva)}
.obar{height:2px;background:var(--linea);position:relative}
.obar i{position:absolute;left:0;top:-2px;height:6px;width:100%;background:var(--oliva);transform-origin:left;transform:scaleX(0)}

/* Prueba palabra a palabra */
.stmt{padding-block:var(--scene)}
.stmt-l{list-style:none;margin:0 auto;padding:0;max-width:980px;text-align:center;font:500 44px/1.2 var(--f-body);text-wrap:balance}
.stmt-l li{display:inline}
.stmt-l li:not(:last-child)::after{content:" · ";color:var(--gris)}
.wd{transition:color .35s var(--ease)}
.wd.dim{color:var(--gris)}

/* Dibujo de cocina */
.k-ln{fill:none;stroke:var(--carbon);stroke-width:1.5;vector-effect:non-scaling-stroke}
.k-lg{fill:none;stroke:var(--gris);stroke-width:1;vector-effect:non-scaling-stroke}
.k-c{fill:var(--carbon)} .k-g{fill:var(--gris)} .k-h{fill:var(--hueso)} .k-p{fill:var(--piedra)} .k-o{fill:var(--oliva)} .k-b{fill:var(--blanco)}
.k-t{font:600 11px var(--f-body);letter-spacing:.08em;fill:var(--gris);text-transform:uppercase}

/* Hueco de foto real */
.ph{position:relative;background:var(--piedra);margin:0;max-width:100%;overflow:hidden}

/* Tabla de precios */
.ptab{width:100%;border-collapse:collapse;border-top:1.5px solid var(--carbon);font-variant-numeric:tabular-nums}
.ptab th,.ptab td{padding:16px 12px;border-bottom:1px solid var(--linea);text-align:left;vertical-align:baseline}
.ptab thead th{font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gris);padding-block:12px}
.ptab tbody th{font-weight:400;font-size:17px}
.ptab .pr{font-family:var(--f-disp);font-weight:900;font-size:28px;line-height:1;text-transform:uppercase;white-space:nowrap;text-align:right}
.ptab .pl{font-size:16px;white-space:nowrap;text-align:right;color:var(--gris)}
.ptab thead .pr,.ptab thead .pl{font-family:var(--f-body);font-size:12px}
.notes{display:flex;flex-direction:column;gap:8px;margin-top:20px;font-size:15px;color:var(--gris);max-width:720px}
.inc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:40px}
.inc h3{font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.inc p{margin-top:10px;font-size:16px}

/* Antes y después */
.ad-ph{row-gap:24px}
.ad-f{grid-column:span 6;aspect-ratio:4/3}
.trust{margin-top:72px;align-items:start}

/* Garantía */
.gar{align-items:end}

/* Preguntas: foco por scroll */
.faq-g{align-items:start}
.faq-t{grid-column:1/5;position:sticky;top:calc(var(--hd) + 40px)}
.faq{grid-column:6/13;min-width:0}
.qa{padding:28px 0;border-top:1px solid var(--linea);opacity:.32;transition:opacity .5s var(--ease)}
.qa:first-child{border-top:1.5px solid var(--carbon)}
.qa:last-child{border-bottom:1px solid var(--linea)}
.qa.on{opacity:1}
.q{font-weight:600;font-size:22px;line-height:1.3}
.ans{margin-top:12px;font-size:17px;max-width:640px}

/* Banda final */
.cta-w{margin-top:200px;margin-bottom:12px;background:var(--carbon);color:var(--hueso)}
.cta{padding-block:120px;align-items:end;row-gap:24px}
.cta-cur{grid-column:1/6;font-family:var(--f-acc);font-style:italic;font-size:34px;line-height:1.1;text-transform:lowercase;color:var(--hueso)}
.cta-big{grid-column:1/9;font-family:var(--f-disp);font-weight:900;font-size:80px;line-height:.86;text-transform:uppercase;color:var(--hueso)}
.cta-act{grid-column:9/13;display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.cta-act p{font-size:16px;color:var(--renova-oscuro)}
.cta-act .tel{font-weight:600;font-size:17px;color:var(--hueso);text-underline-offset:5px}
.cta .ln>span{animation:none;transition:transform 1s var(--ease)}
.cta.pre .ln>span{transform:translateY(105%)}
.cta .cta-big .ln>span{transition-delay:.12s}
.mbar{display:none}

@media (max-width:900px){
  .g{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:16px}
  .c5,.c7,.c6a,.c6b,.faq-t,.faq,.cta-cur,.cta-big,.cta-act{grid-column:1/-1}
  .c7,.c6b{margin-top:24px}
  .cur{font-size:24px}
  .disp{font-size:44px}
  .h2{font-size:38px}
  .h3{font-size:26px}
  .body{font-size:17px}
  .stmt-l{font-size:26px}
  .ad-f{grid-column:1/-1;aspect-ratio:4/5}
  .trust{margin-top:40px}
  .ptab th,.ptab td{padding:12px 6px}
  .ptab tbody th{font-size:15px}
  .ptab .pr{font-size:20px;white-space:normal}
  .ptab .pl{font-size:13px}
  .inc{grid-template-columns:minmax(0,1fr)}
  .faq-t{position:static;margin-bottom:24px}
  .q{font-size:19px}
  .qa{padding:22px 0}
  .cta-w{margin-top:120px}
  .cta{padding-block:72px}
  .cta-cur{font-size:26px}
  .cta-big{font-size:48px}
  .mbar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:35;padding-top:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:var(--blanco);border-top:1px solid var(--linea);transform:translateY(110%);transition:transform .4s var(--ease)}
  .mbar.show{transform:none}
  .mbar .btn{width:100%}
  .mbar .btn::after{display:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none !important;transition:none !important}
}

/* ===== CTA (Héctor, 28 oct.): sin el subrayado verde; el estilo «tecla partida» lo pone post.py ===== */
.btn::after{display:none}


/* ===== Base de páginas de servicio (de /cocinas/) ===== */
/* Concepto A · la misma cocina protagoniza la página; cada sección la cuenta con un ritmo distinto
   (fija partida, rejilla, tarjetas que llegan, reloj, diagnóstico, planta, corte del canto) */
.sw-defs{position:absolute;width:0;height:0;overflow:hidden}
main .h2 + .body{margin-top:24px}

/* Escenas fijas partidas (hero, precio) */
.sc{height:var(--len,300svh)}
.sc.scene{height:calc(var(--len,300svh) + var(--scene))}
.sc .panel{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:56px;padding:40px 48px 40px}
.sc-t{display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:0}
.sc-t .h2{font-size:clamp(36px,3.6vw,52px)}
.stw{min-width:0;min-height:0;display:flex}
.stg{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;gap:18px}
.fig{position:relative;flex:1;min-width:0;min-height:0;margin:0;background:var(--blanco);display:flex;flex-direction:column}
.fig svg{display:block;width:100%;flex:1;min-height:0}
.f-top{display:flex;justify-content:space-between;gap:16px;padding:18px 20px 0;min-height:36px}
.f-bot{padding:0 20px 20px;min-height:84px}
.f-d{display:block;margin-top:6px}
.big{display:block;font-family:var(--f-disp);font-weight:900;font-size:clamp(40px,4.4vw,68px);line-height:.9;text-transform:uppercase}
.stg>.obar{flex:none}
.small{font-size:15px;color:var(--gris)}

/* Hero */
.sc-hero .h1 .cur{font-size:32px}
.sc-hero .disp{font-size:clamp(44px,4.6vw,68px);margin-top:14px}
.sc-hero .lead{margin-top:22px;font-size:18px}
.sc-hero .acts{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:28px}
.sc-hero .acts .lk{font-size:16px}

/* Cambiar: se queda / cambia */
.qc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,260px) minmax(0,1fr);gap:40px;align-items:center;margin:56px 0 0;padding:48px;background:var(--hueso)}
.qc-col ul{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-direction:column;gap:6px}
.qc-col li{font-family:var(--f-disp);font-weight:900;font-size:52px;line-height:.95;text-transform:uppercase}
.qc-r{text-align:right}
.qc-r li{color:var(--renova-oscuro);transition:color .5s var(--ease)}
.qc-r li.on{color:var(--carbon)}
#qc-svg{display:block;width:100%;height:auto}

/* Acabados: el muestrario */
.ab{margin-top:56px;align-items:start;row-gap:24px}
.ab-tiles{grid-column:1/8;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 24px;min-width:0}
.ab-k{grid-column:8/13;position:sticky;top:calc(var(--hd) + 32px);min-width:0}
.ab-f{margin:0;background:var(--hueso);padding:16px}
#ab-svg{display:block;width:100%;height:auto;background:var(--blanco);padding:16px}
.tile{min-width:0;opacity:.5;transition:opacity .4s var(--ease)}
.tile.on{opacity:1}
.tl-ph{aspect-ratio:4/3;outline:1.5px solid transparent;outline-offset:6px;transition:outline-color .3s}
.tile.on .tl-ph{outline-color:var(--carbon)}
.tl-chip{position:absolute;left:20px;bottom:20px;width:72px;height:72px;display:block;border:1.5px solid var(--carbon);background:var(--blanco)}
.tile .h3{margin-top:22px}
.tile p{margin-top:8px;font-size:17px}
.ab-az{margin-top:64px}

/* Muestras sobre tu propia puerta */
.ac{align-items:start}
.ac-t{grid-column:1/6;min-width:0;position:sticky;top:calc(var(--hd) + 48px)}
.ac-t .body+.body{margin-top:16px}
.ac-sw{grid-column:7/13;min-width:0;height:300svh}
.ac-s{position:sticky;top:var(--hd);height:calc(100svh - var(--hd) - 12px);background:var(--hueso);padding:24px;display:flex;flex-direction:column;gap:16px}
.ms{flex:1;min-height:0;margin:0;background:var(--blanco);display:flex;flex-direction:column;padding:16px 20px 20px}
.ms svg{flex:1;min-height:0;width:100%;display:block}
.ms-n{margin-top:8px}
.ac-s>.obar{flex:none}

/* Un día: el reloj manda */
.ud{height:calc(var(--scene) + 440svh)}
.ud .panel{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:48px;padding:36px 44px}
.ud-t{display:flex;flex-direction:column;justify-content:center;min-width:0}
.ud-t .h2{font-size:clamp(36px,3.4vw,48px)}
.ud-ps{margin-top:24px;display:flex;flex-direction:column;gap:14px}
.ud-ps .body{font-size:16px;margin:0 !important;opacity:.28;transition:opacity .45s var(--ease)}
.ud-ps .body.on{opacity:1}
.ud-sw{min-width:0;min-height:0;display:flex}
.ud-s{flex:1;min-width:0;min-height:0;margin:0;background:var(--blanco);display:flex;flex-direction:column;padding:22px 22px 18px}
.ud-h{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}
.ud-clk{font-family:var(--f-disp);font-weight:900;font-size:clamp(56px,6.2vw,96px);line-height:.86;text-transform:uppercase}
.ud-task{font-size:17px;max-width:30ch;padding-bottom:6px;min-height:3em;display:flex;align-items:flex-end}
.ud-s svg{flex:1;min-height:0;width:100%;display:block;margin-block:8px}
.phs{display:grid;grid-template-columns:45fr 35fr 20fr;border-top:1.5px solid var(--carbon);position:relative}
.phs span{font:600 12px/1 var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--gris);padding-top:10px;padding-left:6px;border-left:1px solid var(--linea)}
.phs i{position:absolute;left:0;top:-4px;height:6px;width:100%;background:var(--oliva);transform-origin:left;transform:scaleX(0)}

/* Qué se puede: diagnóstico */
.dg{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:center;margin:56px 0 0;padding:40px;background:var(--hueso)}
#dg-svg{width:100%;height:auto;display:block;background:var(--blanco);padding:16px}
.dg-b{display:flex;flex-direction:column;gap:12px;min-width:0}
.dgx{background:var(--blanco);padding:18px 20px;opacity:.38;transition:opacity .4s var(--ease)}
.dgx.on{opacity:1}
.dg-k{display:flex;align-items:center;gap:12px;font-family:var(--f-disp);font-weight:900;font-size:28px;line-height:1;text-transform:uppercase}
.dg-i{margin-top:10px;font-size:16px}
.mk{width:18px;height:18px;flex:none;display:inline-block}
.mk-si{background:var(--piedra);border:1.5px solid var(--carbon)}
.mk-val{border:2px dashed var(--carbon)}
.mk-no{border:1.5px solid var(--carbon);background:var(--blanco) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6'%3E%3Cpath d='M-1 7 L7 -1' stroke='%231F1C19' stroke-width='1.5'/%3E%3C/svg%3E") repeat}

/* Precio */
.pr-h{align-items:end;padding-bottom:40px}
.sc-pr .sc-t{justify-content:center}
.sc-pr .ptab tbody tr{opacity:.3;transition:opacity .4s var(--ease)}
.sc-pr .ptab tbody tr.on{opacity:1}
.sc-pr .ptab tbody th{font-size:16px}
.sc-pr .ptab thead .pl{white-space:normal;width:7.5em}
.pr-f{padding-top:40px}

/* Vinilo frente a rollo: el primer verano */
.vr{align-items:start}
.vr-t{grid-column:1/6;min-width:0;position:sticky;top:calc(var(--hd) + 24px)}
.vr-t .h2{font-size:clamp(34px,3.2vw,44px)}
.vr-t .body{margin-top:20px;font-size:17px}
.vr-sw{grid-column:7/13;min-width:0;height:220svh}
.vr-s{position:sticky;top:var(--hd);height:calc(100svh - var(--hd) - 12px);margin:0;background:var(--hueso);padding:28px;display:flex;flex-direction:column;justify-content:center;gap:28px}
.vr-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.vr-c{background:var(--blanco);padding:16px;min-width:0}
.vr-c svg{display:block;width:100%;height:auto;margin-bottom:12px}
.vr-d{font-size:15px;color:var(--gris);margin-top:4px}
.vr-r .obar{display:block}
.vr-rl{display:flex;justify-content:space-between;margin-top:10px;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.vr-flap{fill:var(--blanco);stroke:var(--carbon);stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-linejoin:miter}

@media (max-width:900px){
  /* Escenas fijas partidas: texto arriba, escenario a pantalla completa debajo */
  .sc,.sc.scene{height:auto}
  .sc-hero{padding-top:var(--hd)}
  .sc .pin{position:static;height:auto;padding-bottom:0}
  .sc .panel{display:block;height:auto;overflow:visible;padding:32px 16px 16px}
  .sc-t{display:block}
  .stw{display:block;height:var(--mlen,280svh);margin:28px -8px 0}
  .stg{position:sticky;top:var(--hd);height:calc(100svh - var(--hd) - 8px);padding-bottom:12px;gap:12px}
  .fig{justify-content:center}
  .fig svg.k{flex:0 0 auto;height:auto;aspect-ratio:520/450;margin-block:8px}
  #k-plan{aspect-ratio:520/330 !important}
  .f-top{padding:12px 12px 0;min-height:30px}
  .f-hide-m{display:none}
  .f-bot{padding:0 12px 12px;min-height:0 !important}
  .big{font-size:36px}
  .sc-hero .h1 .cur{font-size:22px}
  .sc-hero .disp{font-size:38px}
  .sc-hero .lead{font-size:17px}
  .sc-hero .acts .btn{width:100%}
  .sc-pr .ptab tbody tr{opacity:1}
  .sc-pr .ptab tbody th{font-size:14px}

  .qc{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:24px 16px;gap:24px;margin-top:40px}
  #qc-svg{grid-column:1/-1;grid-row:1;max-width:200px;margin-inline:auto}
  .qc-r{text-align:left}
  .qc-col li{font-size:30px}

  .ab-tiles{grid-column:1/-1;grid-template-columns:minmax(0,1fr);gap:40px}
  .ab-k{grid-column:1/-1;order:-1;top:var(--hd);z-index:3}
  .ab-f{padding:8px;border-bottom:1.5px solid var(--carbon)}
  #ab-svg{height:24svh;padding:8px}
  .tl-ph{outline-offset:-1.5px}
  .ab-az{margin-top:48px}

  .ac-t{grid-column:1/-1;position:static}
  .ac-sw{grid-column:1/-1;height:300svh;margin:32px calc(var(--gut) * -1) 0}
  .ac-s{padding:14px 16px}
  .ms{padding:10px 12px 14px;justify-content:center}
  .ms svg{flex:0 0 auto;height:auto;aspect-ratio:520/560;max-height:calc(100% - 60px)}

  .ud{height:auto}
  .ud .pin{position:static;height:auto;padding-bottom:0}
  .ud .panel{display:block;height:auto;overflow:visible;padding:28px 16px 8px}
  .ud-t .h2{font-size:36px}
  .ud-ps .body{opacity:1;font-size:16px}
  .ud-sw{display:block;height:320svh;margin:28px -8px 0}
  .ud-s{position:sticky;top:var(--hd);height:calc(100svh - var(--hd) - 12px);padding:14px 14px 12px}
  .ud-h{gap:6px;flex-direction:column;align-items:flex-start}
  .ud-clk{font-size:48px}
  .ud-task{font-size:15px;min-height:2.8em;padding-bottom:0}
  .phs span{font-size:10px;padding-left:4px}

  .dg{grid-template-columns:minmax(0,1fr);padding:16px;gap:16px;margin-top:40px}
  #dg-svg{padding:8px}
  .dg-k{font-size:24px}

  .vr-t{grid-column:1/-1;position:static}
  .vr-t .h2{font-size:32px}
  .vr-sw{grid-column:1/-1;height:220svh;margin:32px calc(var(--gut) * -1) 0}
  .vr-s{padding:16px;gap:20px}
  .vr-pair{gap:10px}
  .vr-c{padding:10px}
  .vr-c .tag{font-size:10px}
  .vr-d{font-size:13px}
}
#simulacion{padding-top:calc(var(--scene) * .6)}

/* ===== Ambiente 3D y fotos (28 oct.) ===== */
.k-iso{position:relative;flex:1;min-height:0;margin-block:8px}
.k-iso-s{position:absolute;inset:0;width:100%;height:100%;display:block;transition:none}
.fig svg.k{aspect-ratio:auto}
@media (max-width:900px){.fig svg.k{flex:1 1 0;height:auto;min-height:0;aspect-ratio:auto;margin-block:4px}}
.tl-full{position:absolute;inset:0;width:100%;height:100%;display:block}
.cph{margin:32px 0 0;position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--hueso)}
.cph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.cph-s{margin:0 0 28px;aspect-ratio:4/5;max-width:420px}
.tl-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tl-ph{position:relative;overflow:hidden}
.cta-ph{margin:0;grid-column:span 4;grid-row:1/4;align-self:stretch;position:relative;min-height:320px;overflow:hidden}
.cta-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.cta .cta-cur,.cta .cta-big,.cta .cta-act{grid-column:5/-1}
@media (max-width:900px){
  .k-iso{flex:0 0 auto;aspect-ratio:4/3}
  .cta-ph{grid-column:1/-1;grid-row:auto;aspect-ratio:4/3;min-height:0}
  .cta .cta-cur,.cta .cta-big,.cta .cta-act{grid-column:1/-1}
  .cph-s{max-width:none;aspect-ratio:4/3}
}
/* ===== Cabecera tipográfica (28 oct.): tachado en gris, remate en oliva ===== */
.hx-cur{display:block;font:italic 400 clamp(26px,2.6vw,38px)/1.1 var(--f-acc);color:var(--carbon)}
.hx-t{display:block;margin-top:clamp(14px,1.6vw,22px);font-family:var(--f-disp);font-weight:900;text-transform:uppercase;letter-spacing:-.005em}
.hx-x{position:relative;display:table;font-size:clamp(40px,4.9vw,76px);line-height:.98;color:var(--gris)}
.hx-x::after{content:"";position:absolute;left:-.04em;right:-.04em;top:52%;height:.085em;background:var(--carbon);transform:scaleX(1);transform-origin:left}
.hx-k{display:block;font-size:clamp(40px,4.4vw,68px);line-height:.98;color:var(--carbon)}
.hx-big{display:block;margin-top:.06em;font-size:clamp(84px,10.6vw,168px);line-height:.86;color:var(--oliva)}
.hx-side .lead{margin:0;font-size:18px;line-height:1.55}
.hx-btn{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;margin-top:26px;padding:20px 24px}
.hx-btn svg{flex:none}
.hx-tel{display:inline-flex;align-items:center;gap:10px;margin-top:18px;font:600 16px/1.2 var(--f-body);color:var(--carbon);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px}
.hx-ok{list-style:none;margin:24px 0 0;padding:20px 0 0;border-top:1px solid var(--linea);display:grid;gap:10px}
.hx-ok li{position:relative;padding-left:26px;font-size:15px;line-height:1.3}
.hx-ok li::before{content:"";position:absolute;left:2px;top:3px;width:10px;height:6px;border-left:2px solid var(--carbon);border-bottom:2px solid var(--carbon);transform:rotate(-45deg)}
/* entrada: las líneas suben, el tachado se dibuja y el remate aparece al final */
@media (prefers-reduced-motion:no-preference){
  .hx-in{animation:hxUp .8s var(--ease) both;animation-delay:calc(var(--i,0) * 160ms + 150ms)}
  .hx-x::after{transform:scaleX(0);animation:hxStrike .45s var(--ease) forwards;animation-delay:calc(var(--i,0) * 160ms + 650ms)}
  .hx-big.hx-in{animation:hxBig .9s var(--ease) both;animation-delay:calc(var(--i,0) * 160ms + 700ms)}
}
@keyframes hxUp{from{opacity:0;transform:translateY(.35em)}to{opacity:1;transform:none}}
@keyframes hxStrike{to{transform:scaleX(1)}}
@keyframes hxBig{from{opacity:0;transform:translateY(.18em) scale(.96);transform-origin:left bottom}to{opacity:1;transform:none}}

.sc-hero .hx-h .hx-k{font-size:clamp(38px,3.6vw,56px)}
.sc-hero .hx-h .hx-big{font-size:clamp(72px,7.4vw,124px)}
.sc-hero .hx-h .hx-cur{font-size:clamp(24px,2.2vw,32px)}
@media (max-width:900px){.sc-hero .hx-h .hx-k{font-size:clamp(30px,9vw,44px)}.sc-hero .hx-h .hx-big{font-size:clamp(64px,19vw,96px)}}
/* H1 aprobado de /cocinas/ (29 oct.): la línea verde es larga */
.sc-hero .hx-h .hx-big{font-size:clamp(46px,4.6vw,74px)}
@media (max-width:900px){.sc-hero .hx-h .hx-big{font-size:clamp(38px,11.4vw,56px)}}

/* ===== Páginas de servicio: piezas comunes (armarios, puertas) ===== */
.pend{background:#FFF3B0;color:var(--carbon);font-weight:600}
.svc .c7 .body+.body{margin-top:18px}
#funciona .cph{aspect-ratio:4/5;max-width:440px}

/* Calculadora */
.ca{margin-top:8px;align-items:start;row-gap:32px}
.ca-calc{grid-column:1/7;background:var(--hueso);padding:28px;min-width:0}
#ca-svg{display:block;width:100%;height:auto;aspect-ratio:560/330;background:var(--blanco)}
.ca-hp{font:600 15px/1 var(--f-body);fill:var(--gris)}
.ca-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin-top:22px}
.ca-step{display:flex;align-items:stretch;border:1.5px solid var(--carbon)}
.ca-b{width:52px;height:52px;border:0;background:var(--blanco);color:var(--carbon);font:400 26px/1 var(--f-body);cursor:pointer}
.ca-b:hover{background:var(--carbon);color:var(--hueso)}
.ca-b:disabled{opacity:.3;cursor:default;background:var(--blanco);color:var(--carbon)}
.ca-b:focus-visible{outline:2px solid var(--carbon);outline-offset:2px}
.ca-n{display:flex;align-items:center;justify-content:center;min-width:120px;padding:0 12px;border-inline:1.5px solid var(--carbon);font:900 26px/1 var(--f-disp);text-transform:uppercase;background:var(--blanco)}
.ca-r{display:flex;align-items:baseline;gap:10px;margin:0}
.ca-d{font:italic 400 28px/1 var(--f-acc)}
.ca-v{font:900 clamp(56px,5.4vw,80px)/.85 var(--f-disp)}
.ca-k{margin-top:10px;text-align:right;font-size:14px;color:var(--gris)}
.ca-t{grid-column:8/13;min-width:0}
.ca-tab{width:100%}
.ca-tab td.pr{white-space:normal}
.ptab td.ca-ms{font:400 15px/1.4 var(--f-body);text-transform:none;letter-spacing:0;max-width:16em;margin-left:auto}
.ca-notes{margin-top:24px;display:grid;gap:10px}

/* Forrar, lacar o cambiar */
.fl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:48px}
.fl-c{padding:28px 28px 32px;background:var(--hueso);color:var(--gris);min-width:0}
.fl-c .h3{color:inherit;margin-top:18px}
.fl-c p{margin-top:10px;font-size:17px}
.fl-i{font:900 40px/1 var(--f-disp);color:inherit;opacity:.6}
.fl-on{background:var(--carbon);color:var(--hueso)}
.fl-on .fl-i{opacity:1}
.fl-h{grid-column:1/9}
.fl-f{margin-top:32px}
.fl-f .body{font-weight:600}

/* Qué forro + canto */
.cn{align-items:center;row-gap:32px}
.cn-t{grid-column:1/7;min-width:0}
.cn-l{list-style:none;margin:32px 0 0;padding:0;border-top:1.5px solid var(--carbon)}
.cn-l li{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--linea)}
.cn-l .num{font:900 30px/1 var(--f-disp)}
.cn-l .body{margin:0}
.cn-f{grid-column:8/13;margin:0;background:var(--hueso);padding:24px;min-width:0}
#cn-svg{display:block;width:100%;height:auto;background:var(--blanco);margin-bottom:16px}

/* Colores */
.fam{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:48px}
.fam .tile{opacity:1}
.fam .tl-ph{aspect-ratio:4/5;outline:0;border:1px solid var(--linea)}
.fam .tile .h3{margin-top:16px}
.col-f{margin-top:40px}

/* Instalación */
.sin{margin:28px 0;font:900 clamp(32px,3.2vw,48px)/.95 var(--f-disp);text-transform:uppercase}

/* Banda final sin foto */
.svc-cta .cta .cta-cur,.svc-cta .cta .cta-big{grid-column:1/9}
.svc-cta .cta .cta-act{grid-column:9/-1;grid-row:1/3;align-self:end}
.svc-cta .cta-act .btn{width:100%}

@media (max-width:900px){
  #hero .fig{justify-content:center}
  #hero svg.k{flex:0 1 auto;width:100%;height:auto;max-height:100%}
  .ca-calc,.ca-t,.cn-t,.cn-f{grid-column:1/-1}
  .ca-calc{padding:16px;margin-inline:-4px}
  .ca-n{min-width:96px;font-size:22px}
  .ca-b{width:48px;height:48px}
  .ca-row{align-items:center}
  .ca-k{text-align:left}
  .fl{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:32px}
  .fl-c{padding:22px 20px 24px}
  .cn-f{padding:12px}
  .fam{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;margin-top:32px}
  .svc-cta .cta .cta-cur,.svc-cta .cta .cta-big,.svc-cta .cta .cta-act{grid-column:1/-1;grid-row:auto}
}

/* Escena del bloque 1 (antes en la cabecera) */
#esc{flex:none;display:block;margin-top:32px;border:1px solid var(--linea)}
#esc svg.k{display:block;width:100%;height:auto;flex:none;aspect-ratio:auto;margin:4px 0}
#esc .big{font-size:clamp(36px,3.4vw,52px)}
#esc .obar{margin:0 20px 20px}
@media (max-width:900px){#esc svg.k{height:auto;flex:none}#esc .obar{margin:0 12px 12px}}

/* ===== /nuestra-historia/ (copy v2, 28 oct.) ===== */
.his-hero{padding-top:var(--hd)}
.his-p{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,4vw,64px);align-items:center;min-height:calc(100svh - var(--hd) - var(--edge));margin-inline:max(var(--edge),env(safe-area-inset-left,0px));padding:clamp(40px,5vw,72px) clamp(20px,5.6vw,80px);background:var(--hueso)}
.his-t{min-width:0}
#hero .hx-h .hx-cur{font-size:clamp(26px,2.6vw,38px)}
#hero .hx-h .hx-k{font-size:clamp(36px,4vw,62px)}
#hero .hx-h .hx-big{font-size:clamp(72px,8.6vw,138px)}
.his-hero .lead{max-width:560px;margin-top:26px;font-size:18px;line-height:1.55}
.his-hero .acts{display:flex;flex-wrap:wrap;align-items:center;gap:16px 36px;margin-top:30px}
.his-hero .acts .tel-a{margin-top:0}
.his-ph{margin:0;align-self:stretch;min-height:420px;background:var(--piedra);display:grid;place-items:center;text-align:center;padding:24px}
.his-ph .ph-tag{position:static!important;max-width:16em;line-height:1.5;color:var(--gris)!important;background:none!important}

/* La mitad y la mitad */
#oficio .c7 .body+.body,#por-que .c7 .body+.body,.por-f .body+.body{margin-top:18px}
.mitad{display:grid;grid-template-columns:1fr 1fr;margin-top:56px;border-top:1.5px solid var(--carbon)}
.mitad p{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:0;padding:24px 24px 28px;min-height:180px}
.mitad span{font:italic 400 clamp(22px,2vw,30px)/1.15 var(--f-acc);max-width:14em}
.mitad b{font:900 clamp(72px,7vw,112px)/.8 var(--f-disp)}
.mitad-a{background:var(--hueso);color:var(--gris)}
.mitad-b{background:var(--carbon);color:var(--hueso)}

/* Hoteles */
#hoteles .cn-t .body{margin-top:20px}

/* El mueble de la tele */
.tv{margin-top:56px;align-items:center;row-gap:24px}
.tv-f{grid-column:1/8;margin:0;background:var(--hueso);padding:24px;min-width:0}
#tv-svg{display:block;width:100%;height:auto;background:var(--blanco);margin-bottom:16px}
.tv-t{grid-column:8/13;min-width:0}
.tv-t .body{font-size:19px}
.por-f{margin-top:48px}

/* Promesa por escrito */
.pro-i{margin-top:20px}
.pro{list-style:none;margin:0;padding:0;border-top:1.5px solid var(--carbon)}
.pro li{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--linea)}
.pro .num{font:900 30px/1 var(--f-disp)}
.pro p{margin:0;font-size:19px;line-height:1.4}
.pro b{font-weight:600}
.pro-f{display:flex;justify-content:flex-end;margin:28px 0 0}
.pro-firma{display:inline-block;min-width:220px;padding-top:6px;border-top:1px solid var(--carbon);text-align:center;font:italic 400 34px/1.1 var(--f-acc)}

/* Qué renuevo */
.qr{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.qr li{background:var(--hueso);padding:28px 28px 32px;min-width:0}
.qr-k{display:block;font:900 clamp(36px,3.2vw,52px)/.9 var(--f-disp);text-transform:uppercase}
.qr p{margin-top:16px;font-size:17px;line-height:1.45}

@media (max-width:900px){
  .his-p{grid-template-columns:minmax(0,1fr);min-height:0;padding:36px 20px 28px;margin-inline:0}
  #hero .hx-h .hx-k{font-size:clamp(26px,7.4vw,36px)}
  #hero .hx-h .hx-big{font-size:clamp(52px,16vw,84px)}
  .his-hero .lead{font-size:17px;margin-top:20px}
  .his-hero .acts .btn{width:100%}
  .his-ph{min-height:0;aspect-ratio:4/3}
  .mitad{grid-template-columns:minmax(0,1fr);margin-top:36px}
  .mitad p{min-height:0;padding:20px 16px}
  .tv-f,.tv-t{grid-column:1/-1}
  .tv-f{padding:12px}
  .qr{grid-template-columns:minmax(0,1fr);gap:10px}
  .qr li{padding:22px 20px}
  .pro-firma{min-width:160px;font-size:28px}
}



/* ===== Banda final de confianza ===== */
.tb{row-gap:0;align-items:start}
.tb-h{grid-column:1/8;grid-row:1;align-self:center}
.tb .tb-h .cta-cur,.tb .tb-h .cta-big{grid-column:auto!important}
.tb .tb-h .cta-big{margin-top:14px}
.tb--sin .tb-h{grid-column:1/-1}
.tb-ph{grid-column:9/13;grid-row:1;margin:0;aspect-ratio:4/5;border:1.5px dashed rgba(236,233,226,.4);display:grid;place-items:center;text-align:center;padding:16px}
.tb-ph .ph-tag{color:rgba(236,233,226,.75)!important;background:none!important;position:static!important}
.tb-l{grid-column:1/-1;list-style:none;margin:64px 0 0;padding:32px 0 0;border-top:1px solid rgba(236,233,226,.22);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:24px 48px;align-items:end}
.tb-l li{font:600 18px/1.35 var(--f-body);color:var(--hueso)}
.tb-gar{display:flex;align-items:flex-end;gap:16px}
.tb-n{font:900 clamp(88px,8vw,128px)/.8 var(--f-disp);color:var(--hueso)}
.tb-gar span{max-width:14em;padding-bottom:4px}
.tb-ok{position:relative;padding-left:30px}
.tb-ok::before{content:"";position:absolute;left:2px;top:4px;width:12px;height:7px;border-left:2px solid var(--oliva);border-bottom:2px solid var(--oliva);transform:rotate(-45deg)}
@media (max-width:900px){
  .tb-h,.tb-ph{grid-column:1/-1!important;grid-row:auto}
  .tb-ph{margin-top:28px;aspect-ratio:4/3}
  .tb-l{grid-template-columns:minmax(0,1fr);margin-top:36px;gap:20px}
  .tb-n{font-size:88px}
}

/* ===== Botón «tecla partida» y teléfono (Héctor, 28 oct.) ===== */
.btn{display:inline-flex;align-items:stretch;justify-content:space-between;gap:28px;min-height:60px;padding:0 0 0 24px;background:var(--carbon)!important;color:var(--hueso)!important;font:600 17px/60px var(--f-body)!important;text-align:left}
.btn::after{content:""!important;display:block!important;position:static!important;flex:none;width:64px;height:auto;margin:0;background:var(--oliva) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='16' viewBox='0 0 22 16'%3E%3Cpath d='M1 8h19M13 1l7 7-7 7' fill='none' stroke='%23FFFFFF' stroke-width='1.8'/%3E%3C/svg%3E") center/22px 16px no-repeat!important;transform:none!important;transition:background-color .2s,background-position .2s}
.btn>span,.btn{white-space:nowrap}
.btn{line-height:60px}
.btn:hover{background:#000!important}
.btn:hover::after{background-color:#55700B!important;background-position:calc(50% + 4px) center!important}
.btn-inv{background:var(--hueso)!important;color:var(--carbon)!important}
.btn-inv:hover{background:#FFFFFF!important}
.hx-btn{width:100%}
.hx-btn svg{display:none}
.tel-a{display:inline-flex;align-items:center;gap:14px;margin-top:20px;color:var(--carbon);text-decoration:none}
.tel-a__i{display:grid;place-items:center;width:44px;height:44px;border:1.5px solid var(--carbon);flex:none}
.tel-a__t{display:flex;flex-direction:column;gap:2px}
.tel-a small{font:400 14px/1.2 var(--f-body);color:var(--gris)}
.tel-a b{font:900 28px/1 var(--f-disp);letter-spacing:.01em}
.tel-a:hover b{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.cta-w .tel-a,.tel-a.inv{color:var(--hueso)}
.cta-w .tel-a__i{border-color:var(--hueso)}
.tel-c{display:inline-flex;flex-direction:column;gap:4px;margin-top:28px;color:inherit;text-decoration:none}
.tel-c__s{font:italic 400 clamp(22px,2vw,28px)/1.1 var(--f-acc)}
.tel-c b{font:900 clamp(48px,5.6vw,84px)/.9 var(--f-disp);letter-spacing:.005em}
.tel-c:hover b{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:8px}
.hx-ok li::before{border-color:var(--oliva)!important}
/* barra móvil y pie */
.azr-mbar__cta,.azr-ft__cta{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 0 0 22px!important;background:var(--carbon)!important;color:var(--hueso)!important;font-weight:600!important;font-size:16px!important}
.azr-ft__cta{display:inline-flex!important;background:var(--hueso)!important;color:var(--carbon)!important;gap:28px}
.azr-mbar__cta::after,.azr-ft__cta::after{content:"";align-self:stretch;flex:none;width:60px;background:var(--oliva) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='16' viewBox='0 0 22 16'%3E%3Cpath d='M1 8h19M13 1l7 7-7 7' fill='none' stroke='%23FFFFFF' stroke-width='1.8'/%3E%3C/svg%3E") center/22px 16px no-repeat}
.azr-ft__cta svg{display:none}
@media (max-width:900px){.btn{width:100%}.tel-c b{font-size:clamp(44px,13vw,64px)}}
@media (max-width:350px){.btn{white-space:normal!important;line-height:1.2!important;padding-block:10px}}
