/* Puertas Protex — sistema visual: canto de vidrio, acero satinado, plano de taller */
@font-face{font-family:"Archivo";src:url("../fuentes/archivo.woff2") format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
:root{
  --canto:#14766a;--canto-osc:#0c4a43;--canto-claro:#bfe0d8;--vidrio:rgba(148,212,198,.26);
  --aire:#edf2f0;--papel:#fff;--inox:#ccd4d3;--inox-osc:#7c8988;--tinta:#13231f;--suave:#4d5f5a;--linea:#cbd6d2;
  --senal:#ffc531;--wsp:#0f7d54;
  --r:5px;--ancho:1240px;--pad:clamp(16px,4vw,44px);
  --t-xl:clamp(2.35rem,5.3vw,4.4rem);--t-l:clamp(1.8rem,3.4vw,2.8rem);--t-m:clamp(1.25rem,1.9vw,1.55rem);
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;font-family:"Archivo",system-ui,sans-serif;font-size:1.0625rem;line-height:1.6;color:var(--tinta);background:var(--aire);-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--canto-osc);text-underline-offset:3px}
h1,h2,h3,h4{font-stretch:118%;font-weight:750;line-height:1.08;letter-spacing:-.015em;margin:0 0 .5em;text-wrap:balance}
h1{font-size:var(--t-xl);font-weight:800}h2{font-size:var(--t-l)}h3{font-size:var(--t-m)}h4{font-size:1.05rem}
p{margin:0 0 1em;max-width:68ch}ul,ol{max-width:68ch;padding-left:1.25em}li{margin-bottom:.4em}
:focus-visible{outline:3px solid var(--senal);outline-offset:2px;box-shadow:0 0 0 5px var(--canto-osc)}
.saltar{position:absolute;left:-999px;top:8px;background:var(--papel);padding:.6em 1em;min-height:44px;z-index:100}.saltar:focus{left:8px}
.contenedor{width:100%;max-width:var(--ancho);margin-inline:auto;padding-inline:var(--pad)}
.seccion{padding-block:clamp(56px,8vw,104px)}
.seccion--papel{background:var(--papel)}
.seccion--canto{background:var(--canto-osc);color:#eaf5f2}.seccion--canto a:not(.boton){color:#fff}.seccion--canto p{color:#d4e7e2}
.intro{max-width:58ch;margin-bottom:clamp(28px,4vw,48px)}.intro p{color:var(--suave);font-size:1.125rem}.seccion--canto .intro p{color:#d4e7e2}
.fila-titulo{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:28px}.fila-titulo .intro{margin:0}

/* Botones */
.boton{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:.7em 1.25em;border:2px solid var(--canto-osc);border-radius:var(--r);background:var(--canto-osc);color:#fff;font:inherit;font-weight:650;font-stretch:105%;text-decoration:none;cursor:pointer;transition:background .15s,color .15s}
.boton:hover{background:var(--canto)}
.boton--wsp{background:var(--wsp);border-color:var(--wsp)}.boton--wsp:hover{background:#0b6644;border-color:#0b6644}
.boton--linea{background:transparent;color:var(--canto-osc)}.boton--linea:hover{background:var(--canto-osc);color:#fff}
.seccion--canto .boton--linea{color:#fff;border-color:#fff}.seccion--canto .boton--linea:hover{background:#fff;color:var(--canto-osc)}
.boton--senal{background:var(--senal);border-color:var(--senal);color:var(--tinta)}.boton--senal:hover{background:#ffd566}
.boton--peq{min-height:44px;padding:.4em .9em;font-size:.95rem}
.acciones{display:flex;flex-wrap:wrap;gap:12px}
.ico{width:1.15em;height:1.15em;flex:none}

/* Cabecera */
.cabecera{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid var(--linea)}
.cabecera__fila{display:flex;align-items:center;gap:20px;min-height:72px}
.marca{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--tinta);text-decoration:none;font-weight:800;font-stretch:122%;font-size:1.12rem;letter-spacing:-.02em;white-space:nowrap}
.marca svg{width:30px;height:38px}
.nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.nav>a,.nav__grupo>button{display:inline-flex;align-items:center;gap:.3em;min-height:44px;padding:.3em .7em;border:0;background:none;color:var(--tinta);font:inherit;font-size:.98rem;font-weight:550;text-decoration:none;cursor:pointer;border-radius:var(--r)}
.nav>a:hover,.nav__grupo>button:hover{background:var(--aire)}.nav a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--canto)}
.nav__grupo{position:relative}
.nav__panel{display:none;position:absolute;top:100%;left:0;min-width:520px;background:var(--papel);border:1px solid var(--linea);border-top:3px solid var(--canto);padding:18px;gap:6px 28px;grid-template-columns:1fr 1fr}
.nav__grupo.abierto .nav__panel{display:grid}
.nav__panel a{display:block;padding:.35em .4em;text-decoration:none;color:var(--tinta);border-radius:3px}.nav__panel a:hover{background:var(--aire)}
.nav__grupo:nth-of-type(n+2) .nav__panel{left:auto;right:0}
.nav__panel strong{grid-column:span 1;font-stretch:112%;font-size:.95rem;color:var(--canto-osc)}
.lista-btn{position:relative;display:inline-flex;align-items:center;gap:.4em;min-height:44px;padding:.3em .8em;color:var(--tinta);font-weight:650;text-decoration:none;border:2px solid var(--tinta);border-radius:var(--r)}
.lista-btn:hover{background:var(--aire)}
.lista-btn b{display:inline-grid;place-items:center;min-width:1.5em;height:1.5em;padding:0 .3em;background:var(--senal);border-radius:99px;font-size:.82rem}
.menu-btn{display:none;min-height:44px;min-width:44px;border:0;background:none;color:var(--tinta);cursor:pointer;margin-left:auto;padding:8px}
@media (max-width:1080px){
  .menu-btn{display:block}.cabecera__fila{gap:10px}.lista-btn{order:2}
  .lista-btn span{display:none}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--papel);border-bottom:2px solid var(--canto);flex-direction:column;align-items:stretch;padding:8px var(--pad) 20px;max-height:calc(100dvh - 72px);overflow:auto}
  .nav.abierto{display:flex}.nav__panel,.nav__grupo:nth-of-type(n+2) .nav__panel{position:static;min-width:0;grid-template-columns:1fr;border:0;padding:0 0 8px 12px}.nav>a,.nav__grupo>button{width:100%;justify-content:space-between;font-size:1.08rem}
  .nav__panel a{display:flex;align-items:center;min-height:44px}.nav__panel strong{display:block;padding-top:.5em}
}
@media (max-width:760px){.nav{padding-bottom:84px}}
@media (max-width:370px){.marca{font-size:1rem;gap:7px}.marca svg{width:24px;height:30px}.lista-btn{padding-inline:.5em}}

/* Portada: héroe */
.heroe{position:relative;background:#e6edea;overflow:hidden}.heroe h1{font-size:clamp(2.2rem,4.3vw,3.7rem)}
.heroe__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);min-height:min(760px,calc(100dvh - 73px));align-items:center;gap:0 24px}
.heroe__texto{padding-block:48px;position:relative;z-index:2}
.heroe__texto p{font-size:1.2rem;color:#2e413c;max-width:44ch}
.heroe__escena{position:relative;align-self:stretch;min-height:560px;background:#0c4a43;margin-right:calc((min(100vw,var(--ancho)) - 100vw)/2 - var(--pad))}
.heroe__lienzo{position:absolute;inset:0}
#escena{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y;cursor:grab}#escena:active{cursor:grabbing}#escena:focus-visible{outline-offset:-7px;box-shadow:none}
.heroe__guias{position:absolute;inset:0;width:100%;height:100%;max-width:none;pointer-events:none}
.heroe__guias line{stroke:#fff;stroke-width:1.5}.heroe__guias circle{fill:#fff;stroke:var(--canto-osc);stroke-width:2}.heroe__guias .activa{stroke:var(--senal)}.heroe__guias circle.activa{fill:var(--senal);stroke:var(--tinta)}
.heroe__respaldo{position:absolute;inset:0;display:grid;place-items:center;color:#fff}.heroe__respaldo svg{height:82%;width:auto}
.heroe.en-3d .heroe__respaldo{display:none}
.heroe__pista{position:absolute;left:50%;top:14px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);background:var(--tinta);color:#fff;padding:.3em .8em;border-radius:99px;font-size:.9rem;text-align:center;pointer-events:none;transition:opacity .3s}
.heroe:not(.en-3d) .heroe__pista{display:none}
.piezas{position:absolute;inset:0;pointer-events:none;z-index:2}
.pieza{position:absolute;left:0;top:0;display:inline-flex;align-items:center;gap:.4em;min-height:44px;padding:.25em .75em;pointer-events:auto;background:var(--papel);border:1px solid var(--tinta);border-radius:99px;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;color:var(--tinta);white-space:nowrap;will-change:transform}
.pieza::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--canto)}
.pieza:hover{background:var(--canto-claro)}.pieza[aria-pressed=true]{background:var(--senal)}.pieza[aria-pressed=true]::before{background:var(--tinta)}
.heroe__ficha{position:absolute;left:var(--ficha-x,14px);top:50%;transform:translateY(-50%);width:var(--ficha-an,240px);background:var(--papel);border-top:4px solid var(--canto);padding:14px 16px 8px;font-size:.97rem;z-index:3}
.heroe__ficha h2{font-size:1.1rem;margin-bottom:.3em;padding-right:30px}.heroe__ficha p{margin-bottom:.2em}.heroe__ficha a{display:inline-flex;align-items:center;min-height:44px;font-weight:650}
.heroe__cerrar{position:absolute;right:2px;top:2px;width:44px;height:44px;border:0;background:none;color:var(--tinta);font:inherit;font-size:1.5rem;line-height:1;cursor:pointer}
.en-lista.heroe__escena{display:flex;flex-direction:column;min-height:0}
.en-lista .heroe__lienzo{position:relative;inset:auto;flex:1 1 auto;min-height:clamp(380px,104vw,460px)}
.en-lista .heroe__pista{top:auto;bottom:6px}
.en-lista .piezas{position:static;display:flex;flex-wrap:wrap;gap:8px;padding:12px var(--pad) 16px}
.en-lista .pieza{position:static;transform:none!important}
.en-lista .heroe__ficha{position:relative;left:auto;top:auto;transform:none;width:auto;margin:0 var(--pad) 16px}
.heroe__marcas{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px;margin-top:26px;padding-top:8px;border-top:1px solid #aebbb6;font-size:.98rem}.heroe__marcas a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--tinta)}
@media (max-width:900px){.heroe{background:#e6edea}.heroe__grid{grid-template-columns:minmax(0,1fr);min-height:0}.heroe__marcas span{flex-basis:100%}.heroe__texto{padding-block:32px 24px}.heroe__escena{min-height:520px;margin-inline:calc(var(--pad)*-1)}}

/* Accesos rápidos */
.rutas{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--linea);background:var(--papel)}
.ruta{padding:22px clamp(14px,2vw,26px);border-left:1px solid var(--linea);color:var(--tinta);text-decoration:none}.ruta:first-child{border-left:0}.ruta:hover{background:var(--aire)}
.ruta h2{font-size:1.14rem;margin-bottom:.2em}.ruta span{color:var(--suave);font-size:.97rem}
@media (max-width:800px){.rutas{grid-template-columns:1fr 1fr}.ruta:nth-child(odd){border-left:0}.ruta:nth-child(n+3){border-top:1px solid var(--linea)}}

/* Grillas */
.grilla{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.grilla--tipos{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.tipo{display:block;color:var(--tinta);text-decoration:none;background:var(--papel);padding:14px 16px 16px;border-bottom:4px solid var(--canto)}
.tipo:hover{border-bottom-color:var(--senal)}.tipo .esquema{height:190px;width:100%}.tipo h3{font-size:1.1rem;margin:.6em 0 0}
.seccion--papel .tipo{background:var(--aire)}

/* Producto */
.producto{position:relative;display:flex;flex-direction:column;background:var(--papel);border-left:4px solid var(--canto);min-width:0}
.seccion--papel .producto{background:var(--aire)}
.producto__img{display:block;background:#eef1f0}.producto__img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.producto__cuerpo{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.producto__marca{font-size:.9rem;color:var(--suave);font-weight:600}
.producto h2,.producto h3{font-size:1.04rem;font-stretch:104%;line-height:1.22;margin:0}.producto h2 a,.producto h3 a{display:block;min-height:44px;color:var(--tinta);text-decoration:none}.producto h2 a:hover,.producto h3 a:hover{text-decoration:underline}
.producto__dato{font-size:.95rem;color:var(--suave)}
.producto__pie{margin-top:auto;padding-top:8px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.precio{font-weight:750;font-stretch:108%}.precio--c{font-weight:550;font-size:.92rem;color:var(--suave);font-stretch:100%}
.sumar.sumado{background:var(--senal);border-color:var(--senal);color:var(--tinta)}
@media (min-width:350px) and (max-width:560px){.grilla:has(>.producto){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.grilla>.producto{border-left-width:3px}.grilla>.producto .producto__cuerpo{padding:10px}.grilla>.producto .producto__pie{flex-direction:column;align-items:stretch}.grilla>.producto .sumar{width:100%}}
.filtros{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.chip{display:inline-flex;align-items:center;min-height:44px;padding:.3em .9em;border:1.5px solid var(--inox-osc);background:transparent;border-radius:99px;font:inherit;font-size:.96rem;color:var(--tinta);text-decoration:none;cursor:pointer}
.chip:hover{border-color:var(--tinta)}.chip[aria-pressed=true],.chip[aria-current=page]{background:var(--tinta);border-color:var(--tinta);color:#fff}
.buscador{display:flex;gap:8px;max-width:520px;margin-bottom:16px}
input,select,textarea{font:inherit;width:100%;min-height:46px;padding:.5em .7em;border:1.5px solid var(--inox-osc);border-radius:var(--r);background:var(--papel);color:var(--tinta)}
label{font-weight:600;display:block;margin-bottom:.25em}
legend{padding:0}
.ficha{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,5vw,64px);align-items:start}
.ficha__img{background:#eef1f0;border-left:6px solid var(--canto)}
.ficha__img img{width:100%}
@media (max-width:820px){.ficha{grid-template-columns:minmax(0,1fr)}}
.specs{width:100%;border-collapse:collapse;margin:0 0 1.2em}.specs th,.specs td{padding:.55em .7em .55em 0;border-bottom:1px solid var(--linea);text-align:left;vertical-align:top}.specs th{font-weight:600;color:var(--suave);width:44%}
.tabla-scroll{overflow-x:auto}.tabla{border-collapse:collapse;min-width:100%;margin-bottom:1.4em;background:var(--papel)}.tabla th,.tabla td{padding:.6em .8em;border-bottom:1px solid var(--linea);text-align:left}.tabla th{background:var(--canto-osc);color:#fff;font-weight:600}
.nota{font-size:.95rem;color:var(--suave)}
.aviso{padding:12px 16px;background:#fff6dc;border-left:5px solid var(--senal);margin:0 0 1.2em;max-width:68ch}

/* Comparador de marcas */
.marcas{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--tinta)}
.marca-col{padding:20px clamp(14px,2vw,28px) 22px;border-left:1px solid var(--linea)}.marca-col:first-child{border-left:0;padding-left:0}
.marca-col h3{font-size:1.9rem;font-weight:800}.marca-col a.ver{display:inline-flex;align-items:center;min-height:44px;font-weight:650}
.marca-col dl{margin:0 0 14px}.marca-col dt{font-size:.93rem;color:var(--suave)}.marca-col dd{margin:0 0 .5em;font-weight:600}
@media (max-width:820px){.marcas{grid-template-columns:1fr}.marca-col,.marca-col:first-child{border-left:0;padding-left:0;border-bottom:1px solid var(--linea)}}

/* Pasos */
.pasos{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:22px;max-width:none;counter-reset:p}
.pasos li{counter-increment:p;padding-top:14px;border-top:3px solid var(--canto);margin:0}.pasos li::before{content:counter(p);display:block;font-size:2rem;font-weight:800;font-stretch:120%;color:var(--canto);line-height:1.1}
.seccion--canto .pasos li{border-color:var(--canto-claro)}.seccion--canto .pasos li::before{color:var(--senal)}
.pasos h3{font-size:1.12rem;margin:.3em 0}.pasos p{margin:0;font-size:1rem}

/* Galería */
.galeria{display:grid;gap:10px;grid-template-columns:repeat(12,1fr)}
.galeria figure{margin:0;grid-column:span 4;position:relative;min-height:260px;background:var(--inox)}
.galeria figure.g-a{grid-column:span 6;grid-row:span 2}
.galeria img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.galeria figcaption{position:absolute;left:0;bottom:0;background:var(--tinta);color:#fff;font-size:.88rem;padding:.2em .6em;max-width:100%}
@media (max-width:760px){.galeria figure,.galeria figure.g-a{grid-column:span 12;grid-row:auto;min-height:300px}}

/* Preguntas */
.faq details{border-bottom:1px solid var(--linea);max-width:820px}.faq summary{cursor:pointer;padding:16px 28px 16px 0;font-weight:650;list-style:none;position:relative;font-size:1.08rem}.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:1.5rem;font-weight:400}.faq details[open] summary::after{content:"–"}.faq details p{color:var(--suave)}
.seccion--canto .faq details{border-color:#3a6e66}.seccion--canto .faq details p{color:#d4e7e2}

/* Páginas interiores */
.migas{font-size:.93rem;padding-block:4px 0;color:var(--suave)}.migas ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.3em;max-width:none}.migas ol{align-items:center}.migas li{margin:0;display:flex;align-items:center}.migas li+li::before{content:"/";margin-right:.3em}.migas a{display:inline-flex;align-items:center;min-height:44px;color:var(--suave)}
.cabeza{padding-block:18px clamp(32px,5vw,56px);background:var(--aire)}
.cabeza__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);gap:32px;align-items:center}.cabeza .esquema{max-height:280px}
.cabeza p{font-size:1.18rem;color:#2e413c;max-width:56ch}
@media (max-width:760px){.cabeza__grid{grid-template-columns:minmax(0,1fr)}.cabeza .esquema{display:none}}
.prosa h2{font-size:clamp(1.4rem,2.3vw,1.85rem);margin-top:1.6em}.prosa>:first-child{margin-top:0}
.dos{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}@media (max-width:860px){.dos{grid-template-columns:minmax(0,1fr)}.lateral{position:static;max-height:none}}
.lateral{position:sticky;top:90px;max-height:calc(100dvh - 106px);overflow:auto;background:var(--papel);padding:20px;border-top:4px solid var(--canto)}.lateral h2{font-size:1.2rem;margin-top:0}.lateral .boton{width:100%;margin-bottom:8px}
.resumen{font-size:1.15rem;padding:14px 18px;border-left:5px solid var(--canto);background:var(--papel);max-width:68ch}
.enlaces{list-style:none;padding:0;columns:2;gap:24px;max-width:none}@media (max-width:640px){.enlaces{columns:1}}
.tarjeta{display:block;background:var(--papel);padding:18px;color:var(--tinta);text-decoration:none;border-top:3px solid var(--canto)}.tarjeta:hover{border-top-color:var(--senal)}.tarjeta h3{font-size:1.14rem;margin-bottom:.35em}.tarjeta p{margin:0;color:var(--suave);font-size:.98rem}.tarjeta small{display:block;color:var(--canto-osc);font-weight:650;font-size:.9rem;margin-bottom:.3em}
.seccion--papel .tarjeta{background:var(--aire)}

/* Cotizador y calculadora */
.cot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,4vw,56px);align-items:start}
.cot fieldset{border:0;padding:0;margin:0 0 20px;min-width:0}.cot legend{font-weight:750;font-stretch:112%;font-size:1.08rem;padding:0;margin-bottom:.5em}
.opciones{display:flex;flex-wrap:wrap;gap:8px}.opciones label{position:relative;margin:0;font-weight:500}.opciones input{position:absolute;opacity:0;width:1px;height:1px;min-height:0}
.opciones span{display:flex;align-items:center;min-height:44px;padding:.3em .85em;border:1.5px solid var(--inox-osc);border-radius:var(--r);background:var(--papel);cursor:pointer}
.opciones input:checked+span{background:var(--canto-osc);border-color:var(--canto-osc);color:#fff}.opciones span:hover{border-color:var(--tinta)}.opciones input:focus-visible+span{outline:3px solid var(--senal);outline-offset:2px;box-shadow:0 0 0 5px var(--canto-osc)}
.campos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.campos .todo{grid-column:1/-1}
.cot__vista{position:sticky;top:90px;background:var(--papel);padding:clamp(14px,2vw,22px);border-top:4px solid var(--canto)}
@media (max-width:900px){.cot{grid-template-columns:minmax(0,1fr)}.cot__vista{position:static}}
#plano{width:100%;height:auto;max-height:min(430px,40vh);color:var(--tinta)}@media (max-width:900px){#plano{max-height:none}}@media (max-width:560px){#plano text{font-size:20px}}
.datos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0;border-block:1px solid var(--linea);padding-block:10px}.datos div{min-width:0}.datos span{display:block;font-size:.9rem;color:var(--suave)}.datos b{font-size:clamp(1.05rem,3.6vw,1.25rem);font-stretch:105%;white-space:nowrap}
.reco{background:var(--aire);padding:12px 14px;margin-bottom:14px}.reco h2{font-size:1rem;margin-bottom:.4em}.reco ul{list-style:none;padding:0;margin:0}.reco li{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0}.reco li a{display:inline-flex;align-items:center;min-height:44px;padding-block:.2em}.reco small{flex:none;color:var(--suave)}
.fallas{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin-bottom:18px}.fallas button{min-height:58px;padding:.5em .8em;background:var(--papel);border:1.5px solid var(--inox-osc);border-radius:var(--r);font:inherit;font-weight:600;text-align:left;cursor:pointer;color:var(--tinta)}.fallas button:hover{border-color:var(--tinta)}.fallas button[aria-pressed=true]{background:var(--canto-osc);border-color:var(--canto-osc);color:#fff}
.falla-res{background:var(--papel);padding:20px;border-left:5px solid var(--canto)}.falla-res:focus-visible{outline:0;box-shadow:none}

/* Lista de cotización */
.lista-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--linea)}.lista-item .plano{width:72px}
.cantidad{display:inline-flex;align-items:center;gap:2px}.cantidad button{width:44px;height:44px;border:1.5px solid var(--inox-osc);background:var(--papel);color:var(--tinta);font-size:1.1rem;cursor:pointer;border-radius:var(--r)}.cantidad button:hover{border-color:var(--tinta)}.cantidad output{min-width:2em;text-align:center;font-weight:650}
.quitar{min-height:44px;min-width:44px;background:none;border:0;color:var(--suave);text-decoration:underline;cursor:pointer;font:inherit;font-size:.9rem;padding:4px 4px 4px 0;text-align:left}
@media (max-width:560px){.lista-item{grid-template-columns:minmax(0,1fr) auto;gap:4px 14px}.lista-item>:first-child{grid-column:1/-1}}

/* Pie y barra móvil */
.pie{background:var(--tinta);color:#c7d4d0;padding-block:56px 26px;font-size:.98rem}.pie a{color:#fff;text-decoration:none}.pie a:hover{text-decoration:underline}
.pie__grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:28px}.pie h2{font-size:1rem;color:#fff;margin-bottom:.7em}.pie ul{list-style:none;padding:0;margin:0}.pie li{margin-bottom:.35em}.pie .marca{color:#fff}
.pie__legal{margin-top:34px;padding-top:16px;border-top:1px solid #3b4a46;font-size:.88rem}.pie__legal p{max-width:none;margin-bottom:.4em}
@media (max-width:900px){.pie__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pie__marca{grid-column:1/-1}.pie li{margin:0}.pie li a{display:inline-flex;align-items:center;min-height:44px}.pie__marca p:last-child a{display:inline-flex;align-items:center;min-height:44px}}
.barra{display:none}
@media (max-width:760px){body{padding-bottom:calc(62px + env(safe-area-inset-bottom,0px))}.barra{padding-bottom:env(safe-area-inset-bottom,0px);display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--papel);border-top:1px solid var(--linea)}.barra a{display:flex;align-items:center;justify-content:center;gap:.4em;min-height:60px;font-weight:650;text-decoration:none;color:var(--tinta)}.barra a:last-child{background:var(--wsp);color:#fff}}
.flotante{position:fixed;right:20px;bottom:20px;z-index:40;width:56px;height:56px;display:grid;place-items:center;background:var(--wsp);color:#fff;border-radius:50%}.flotante svg{width:28px;height:28px}@media (max-width:760px){.flotante{display:none}}
.toast{position:fixed;left:50%;bottom:84px;transform:translate(-50%,20px);background:var(--tinta);color:#fff;padding:.6em 1em;border-radius:var(--r);opacity:0;pointer-events:none;transition:.2s;z-index:70;max-width:90vw}.toast.ver{opacity:1;transform:translate(-50%,0)}
@media (max-width:480px){.acciones .boton{flex:1 1 100%}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.cabecera,.pie,.barra,.flotante{display:none}}
