/* Electricista Terrassa · estilos de la web (marca v1: «el cuadro bien etiquetado»)
   Colores y tipografías de ../marca/tokens.css. Fuentes autoalojadas en /fonts/. */
@font-face{font-family:"Saira";src:url("/fonts/saira-100-900-latin-ext.woff2") format("woff2");font-weight:100 900;font-stretch:50% 125%;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Saira";src:url("/fonts/saira-100-900-latin.woff2") format("woff2");font-weight:100 900;font-stretch:50% 125%;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Atkinson Hyperlegible Next";src:url("/fonts/atkinson-hyperlegible-next-200-800-latin-ext.woff2") format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Atkinson Hyperlegible Next";src:url("/fonts/atkinson-hyperlegible-next-200-800-latin.woff2") format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --et-paper:#EDEFEB; --et-surface:#F8F9F6; --et-ink:#13202A; --et-ink-2:#45515B; --et-line:#C9CFCA;
  --et-night:#0C2332; --et-night-2:#17384D; --et-signal:#FFD21F; --et-link:#1B5A84; --et-mao:#A2452A;
  --et-ok:#237344; --et-error:#B42318; --et-bruma:#B9C6CF;
  --display:"Saira","Arial Narrow","Roboto Condensed",sans-serif;
  --texto:"Atkinson Hyperlegible Next",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r-s:6px; --r-m:12px; --r-l:22px;
  --max:74rem; --medida:66ch; --cab:72px;
  --sombra:0 1px 0 rgba(19,32,42,.06),0 14px 30px -18px rgba(19,32,42,.45);
  /* Banner de cookies de LaPera con la marca: el botón principal lleva texto claro → azul cable */
  --lp-cookie-bg:var(--et-night); --lp-cookie-text:var(--et-paper); --lp-cookie-muted:var(--et-bruma);
  --lp-cookie-border:#35566B; --lp-cookie-accent:var(--et-link); --lp-cookie-surface:var(--et-surface);
  --lp-cookie-ink:var(--et-ink); --lp-cookie-line:var(--et-line); --lp-cookie-stone:var(--et-ink-2);
  --lp-cookie-radius:var(--r-m); --lp-cookie-font:var(--texto);
}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--cab) + 12px)}
body{margin:0;background:var(--et-paper);color:var(--et-ink);font:400 1.125rem/1.6 var(--texto);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img,video,svg{max-width:100%;display:block}
h1,h2,h3{margin:0;text-wrap:balance}
h1,h2{font-family:var(--display);font-variation-settings:"wdth" 82;font-weight:650;line-height:1.02;letter-spacing:-.01em}
h2{font-size:clamp(1.8rem,1.3rem + 2vw,2.9rem)}
h3{font:700 clamp(1.15rem,1.05rem + .4vw,1.35rem)/1.25 var(--texto)}
p{margin:0}
a{color:var(--et-link);text-underline-offset:.18em}
:focus-visible{outline:3px solid var(--et-link);outline-offset:2px}
.oscuro :focus-visible,.cab :focus-visible,.pie :focus-visible,.hero :focus-visible,.servicios :focus-visible,.presupuesto :focus-visible{outline-color:var(--et-signal)}
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
.et-label{font:600 .8125rem/1.25 var(--display);font-variation-settings:"wdth" 62;text-transform:uppercase;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.u{text-transform:none!important;letter-spacing:.02em}
.saltar{position:absolute;left:12px;top:-60px;z-index:300;background:var(--et-signal);color:var(--et-ink);padding:10px 14px;border-radius:var(--r-s);font-weight:700}
.saltar:focus{top:12px}

/* ---------- botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:52px;padding:.85em 1.45em;border-radius:999px;border:2px solid transparent;font:700 1.0625rem/1.1 var(--texto);text-decoration:none;cursor:pointer;transition:transform .15s ease,background-color .15s ease,color .15s ease;-webkit-tap-highlight-color:transparent}
.btn:active{transform:translateY(1px)}
.btn--llamar{background:var(--et-signal);color:var(--et-ink)}
.btn--llamar:hover{background:#FFDC52}
.btn--linea{background:transparent;color:var(--et-paper);border-color:rgba(237,239,235,.55)}
.btn--linea:hover{background:var(--et-paper);color:var(--et-ink)}
.btn--peq{min-height:42px;padding:.6em 1.1em;font-size:.95rem}
.enlace-flecha{font-weight:700;display:inline-flex;gap:.4em;align-items:center}

/* ---------- cabecera ---------- */
.cab{position:fixed;inset:0 0 auto;z-index:100;color:var(--et-paper);padding-top:env(safe-area-inset-top,0px);transition:background-color .25s ease,box-shadow .25s ease}
.cab__in{height:var(--cab);display:flex;align-items:center;gap:clamp(12px,2vw,28px)}
.cab__logo{flex:0 0 auto;display:block;color:inherit}
.cab__logo svg{height:40px;width:auto}
.cab__logo-color{display:none}
.cab__nav{display:none;gap:22px;margin-left:auto}
.cab__nav a{color:inherit;text-decoration:none;font:600 1rem/1 var(--texto);opacity:.9}
.cab__nav a:hover{opacity:1;text-decoration:underline}
.cab__idioma{display:none;border:1.5px solid rgba(237,239,235,.5);border-radius:999px;overflow:hidden;text-decoration:none;color:inherit;font:600 .8rem/1 var(--display);font-variation-settings:"wdth" 70;letter-spacing:.06em}
.cab__idioma span{padding:8px 11px}
.cab__idioma .on{background:var(--et-paper);color:var(--et-ink)}
.cab__cta{display:none}
.menu{margin-left:auto;position:relative}
.menu summary{list-style:none;cursor:pointer;border:1.5px solid rgba(237,239,235,.55);border-radius:999px;padding:10px 16px;font:700 .95rem/1 var(--texto)}
.menu summary::-webkit-details-marker{display:none}
.menu__panel{position:absolute;right:0;top:calc(100% + 10px);background:var(--et-surface);color:var(--et-ink);border-radius:var(--r-m);box-shadow:var(--sombra);min-width:240px;padding:8px;display:grid}
.menu__panel a{color:inherit;text-decoration:none;padding:12px 14px;border-radius:var(--r-s);font-weight:600}
.menu__panel a:hover{background:var(--et-paper)}
.cab.is-solid,.pag .cab{background:var(--et-night);box-shadow:0 1px 0 rgba(255,255,255,.06)}
@media (min-width:980px){
  .cab__nav,.cab__idioma{display:flex}
  .cab__cta{display:inline-flex}
  .menu{display:none}
  .cab__idioma{margin-left:0}
}

/* ---------- portada · 1 escena ---------- */
.hero{position:relative;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr);align-items:end;background:var(--et-night);color:var(--et-paper);overflow:hidden;isolation:isolate}
.hero__media{position:absolute;inset:0;z-index:-1;clip-path:inset(0% 0% 0% 0% round 0px);background:var(--et-night)}
.hero__poster img,.hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero__video{opacity:0;transition:opacity .6s ease}
.hero__video.is-on{opacity:1}
.hero__velo{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,35,50,.55) 0%,rgba(12,35,50,0) 22%,rgba(12,35,50,0) 38%,rgba(12,35,50,.88) 78%,var(--et-night) 100%)}
.sin-video .hero__poster img{animation:deriva 16s ease-in-out infinite alternate}
@keyframes deriva{from{transform:scale(1.02)}to{transform:scale(1.1) translate3d(-2%,-1%,0)}}
.hero__body{padding-block:calc(var(--cab) + 40px) clamp(40px,7vh,72px);display:grid;gap:18px;justify-items:start}
.hero__body > *{max-width:46rem}
.hero__eti{color:var(--et-signal)}
.hero__t{display:grid;gap:.25em}
.hero__kicker{font:600 clamp(1.25rem,1rem + 1vw,1.9rem)/1.1 var(--display);font-variation-settings:"wdth" 82;letter-spacing:0}
.hero__claim{font-size:clamp(3rem,1.4rem + 6.4vw,6.8rem);line-height:.94;font-variation-settings:"wdth" 76;font-weight:680;letter-spacing:-.015em}
.hero__lead{font-size:clamp(1.08rem,1rem + .35vw,1.3rem);max-width:40ch;color:#DDE4E8}
.hero__ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.hero__datos{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:40rem}
.hero__datos li{border:1px solid rgba(237,239,235,.22);border-radius:var(--r-m);padding:10px 12px;display:grid;gap:4px;background:rgba(12,35,50,.35)}
.hero__datos .et-label{color:var(--et-bruma);font-size:.72rem}
.hero__datos b{font:700 clamp(1.05rem,.9rem + .6vw,1.45rem)/1 var(--display);font-variation-settings:"wdth" 75;font-variant-numeric:tabular-nums}
@media (min-width:900px){
  .hero__velo{background:linear-gradient(90deg,rgba(12,35,50,.94) 0%,rgba(12,35,50,.78) 34%,rgba(12,35,50,.15) 64%,rgba(12,35,50,0) 80%),linear-gradient(0deg,rgba(12,35,50,.6),rgba(12,35,50,0) 30%)}
  .hero{align-items:center}
}
@media (max-width:520px){.hero__datos{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero__datos li:last-child{grid-column:1/-1}}

/* ---------- 2 · qué hacer ahora ---------- */
.ahora-b{padding-block:clamp(56px,9vw,110px)}
.ahora-b__in{display:grid;grid-template-columns:minmax(0,1fr);gap:28px 56px;align-items:start}
.ahora-b__in > div{display:grid;gap:14px}
.ahora-b .et-label{color:var(--et-mao)}
.ahora-b__pasos{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:paso}
.ahora-b__pasos li{counter-increment:paso;background:var(--et-surface);border:1px solid var(--et-line);border-radius:var(--r-m);padding:16px 18px 16px 64px;position:relative}
.ahora-b__pasos li::before{content:counter(paso);position:absolute;left:16px;top:14px;width:32px;height:32px;border-radius:50%;background:var(--et-ink);color:var(--et-paper);display:grid;place-items:center;font:700 1rem/1 var(--display)}
.ahora-b__pasos li:last-child{background:#FFF6CF;border-color:var(--et-ink)}
@media (min-width:900px){.ahora-b__in{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}

/* ---------- 3 · servicios en el carril ---------- */
.servicios{background:var(--et-night);color:var(--et-paper);padding-block:clamp(64px,9vw,120px) clamp(56px,8vw,100px);overflow:hidden}
.servicios__head{display:grid;gap:14px;max-width:var(--max)}
.servicios__head p:not(.et-label){max-width:52ch;color:#DDE4E8}
.servicios__head .et-label{color:var(--et-signal)}
.rail{position:relative;margin-top:clamp(28px,4vw,48px)}
.rail__din{position:absolute;left:0;right:0;top:50%;height:26px;margin-top:-13px;background:
  radial-gradient(circle at 12px 13px,var(--et-night) 4px,transparent 4.5px) 0 0/40px 26px repeat-x,
  linear-gradient(180deg,#5E7383 0,#8FA2AF 20%,#6B7F8D 50%,#8FA2AF 80%,#5E7383 100%);opacity:.55}
.rail__pista{list-style:none;margin:0;padding:8px clamp(16px,4vw,40px) 18px;display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;position:relative}
.rail__pista::-webkit-scrollbar{display:none}
.mod{flex:0 0 min(78vw,272px);scroll-snap-align:start}
.mod__a{position:relative;display:grid;align-content:start;gap:10px;height:100%;min-height:360px;padding:30px 20px 34px;background:var(--et-surface);color:var(--et-ink);border-radius:var(--r-m);text-decoration:none;box-shadow:0 20px 40px -24px rgba(0,0,0,.6);transition:transform .25s ease}
.mod__a:hover{transform:translateY(-6px)}
.mod__tornillo{position:absolute;left:50%;top:10px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--et-line);box-shadow:inset 0 0 0 2px #B3BBB6}
.mod__tornillo--b{top:auto;bottom:10px}
.mod__top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.mod__etq{font:600 .78rem/1 var(--display);font-variation-settings:"wdth" 62;text-transform:uppercase;letter-spacing:.08em;background:var(--et-ink);color:var(--et-paper);padding:6px 8px;border-radius:4px}
.mod__palanca{width:22px;height:40px;border-radius:5px;background:var(--et-night-2);position:relative;flex:0 0 auto}
.mod__palanca::after{content:"";position:absolute;left:4px;right:4px;top:20px;height:16px;border-radius:3px;background:var(--et-line);transition:top .25s cubic-bezier(.3,1.4,.5,1),background-color .2s ease}
.mod__a:hover .mod__palanca::after,.mod__a:focus-visible .mod__palanca::after,.mod--urgente .mod__palanca::after{top:4px;background:var(--et-signal)}
.mod h3{font:650 1.45rem/1.08 var(--display);font-variation-settings:"wdth" 82;margin-top:6px}
.mod p{font-size:1rem;color:var(--et-ink-2)}
.mod .mod__precio{font:700 1.9rem/1 var(--display);font-variation-settings:"wdth" 75;font-variant-numeric:tabular-nums;color:var(--et-ink)!important;display:grid;gap:4px;margin-top:auto}
.mod .mod__precio small{font:500 .82rem/1.2 var(--texto);color:var(--et-ink-2)}
.mod__ir{font-weight:700;color:var(--et-link);margin-top:4px}
.mod--urgente .mod__a{background:#FFF6CF}
.mod--urgente .mod__etq{background:var(--et-signal);color:var(--et-ink)}

/* ---------- 4 · frase ---------- */
.frase{padding-block:clamp(72px,12vw,160px)}
.frase__t{font-family:var(--display);font-variation-settings:"wdth" 80;font-weight:620;font-size:clamp(2rem,1.2rem + 3.6vw,4.4rem);line-height:1.04;letter-spacing:-.012em;max-width:22ch;text-wrap:balance}
.frase .w{transition:none}

/* ---------- 5 · precios ---------- */
.precios{padding-block:0 clamp(64px,9vw,120px)}
.precios__in{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.precios__in > div:first-child{display:grid;gap:12px;max-width:60ch}
.precios .et-label{color:var(--et-mao)}
.tabla{overflow-x:auto;background:var(--et-surface);border:1px solid var(--et-line);border-radius:var(--r-m)}
.tabla table{border-collapse:collapse;width:100%;min-width:560px;font-size:1rem}
.tabla th,.tabla td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--et-line);vertical-align:top}
.tabla thead th{font:600 .78rem/1.2 var(--display);font-variation-settings:"wdth" 62;text-transform:uppercase;letter-spacing:.08em;color:var(--et-ink-2)}
.tabla tbody th{font-weight:700}
.tabla tr:last-child th,.tabla tr:last-child td{border-bottom:0}
.tabla td.num{font:700 1.25rem/1.2 var(--display);font-variation-settings:"wdth" 75;font-variant-numeric:tabular-nums;white-space:nowrap}
.precios__fuente{color:var(--et-ink-2);text-transform:none;letter-spacing:.02em;font-size:.82rem;line-height:1.5}

/* ---------- 6 · cómo funciona ---------- */
.como{background:var(--et-surface);border-block:1px solid var(--et-line);padding-block:clamp(64px,9vw,120px)}
.como .wrap{display:grid;gap:16px}
.como .et-label{color:var(--et-mao)}
.como__pasos{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.como__pasos li{border-top:3px solid var(--et-ink);padding-top:16px;display:grid;gap:8px}
.paso__n{font:700 2.6rem/1 var(--display);font-variation-settings:"wdth" 70;color:var(--et-link);font-variant-numeric:tabular-nums}
.como__nota{max-width:70ch;color:var(--et-ink-2);font-size:1rem;border-left:4px solid var(--et-link);padding-left:14px;margin-top:10px}
@media (min-width:760px){.como__pasos{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}}

/* ---------- 7 · zonas ---------- */
.zonas{padding-block:clamp(64px,9vw,120px)}
.zonas__in{display:grid;grid-template-columns:minmax(0,1fr);gap:28px 56px;align-items:start}
.zonas__in > div{display:grid;gap:12px}
.zonas .et-label{color:var(--et-mao)}
.zonas__lista{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.zonas__lista li{font:600 .85rem/1 var(--display);font-variation-settings:"wdth" 64;text-transform:uppercase;letter-spacing:.07em;color:var(--et-mao);border:1.5px solid var(--et-mao);border-radius:var(--r-s);padding:9px 11px}
@media (min-width:900px){.zonas__in{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}

/* ---------- 8 · formulario ---------- */
.presupuesto{background:var(--et-night);color:var(--et-paper);padding-block:clamp(64px,9vw,120px)}
.presupuesto__in{display:grid;grid-template-columns:minmax(0,1fr);gap:28px 56px;align-items:start}
.presupuesto__txt{display:grid;gap:14px}
.presupuesto__txt .et-label{color:var(--et-signal)}
.presupuesto__txt p:not(.et-label){color:#DDE4E8;max-width:46ch}
@media (min-width:900px){.presupuesto__in{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
.form{background:var(--et-surface);color:var(--et-ink);border-radius:var(--r-l);padding:clamp(18px,3vw,30px);display:grid;gap:14px;box-shadow:var(--sombra)}
.form__fila{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:600px){.form__fila{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.form label{display:grid;gap:6px;font-weight:700;font-size:1rem}
.form input,.form select,.form textarea{font:400 1.0625rem/1.35 var(--texto);color:var(--et-ink);background:#fff;border:1.5px solid var(--et-ink-2);border-radius:var(--r-s);padding:12px 14px;min-height:50px;width:100%}
.form textarea{min-height:88px;resize:vertical}
.form .form__check{grid-template-columns:auto 1fr;align-items:start;font-weight:400;font-size:.95rem;gap:10px}
.form__check input{width:22px;height:22px;min-height:0;margin-top:2px;accent-color:var(--et-link)}
.form .btn{justify-self:start;width:100%}
@media (min-width:600px){.form .btn{width:auto}}
.form__legal{font-size:.82rem;color:var(--et-ink-2);line-height:1.5}
.form__error{background:#FBE7E4;color:var(--et-error);border:1px solid var(--et-error);border-radius:var(--r-s);padding:10px 12px;font-weight:700}
.form__trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- 9 · preguntas ---------- */
.faq{padding-block:clamp(64px,9vw,120px)}
.faq__in{display:grid;gap:20px;max-width:58rem}
.faq__lista{display:grid;gap:10px}
.faq details{background:var(--et-surface);border:1px solid var(--et-line);border-radius:var(--r-m)}
.faq summary{cursor:pointer;list-style:none;padding:18px 52px 18px 20px;font-weight:700;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:20px;top:50%;width:12px;height:22px;margin-top:-11px;border-radius:3px;background:var(--et-line);box-shadow:inset 0 -9px 0 var(--et-ink-2);transition:box-shadow .2s ease}
.faq details[open] summary::after{box-shadow:inset 0 9px 0 var(--et-signal)}
.faq__r{padding:0 20px 18px;display:grid;gap:10px;color:var(--et-ink-2)}

/* ---------- páginas interiores ---------- */
.pag{padding-top:calc(var(--cab) + env(safe-area-inset-top,0px))}
.doc__banda{background:var(--et-night);color:var(--et-paper);position:relative}
.doc__head{display:grid;gap:14px;padding-block:clamp(36px,6vw,72px) clamp(40px,6vw,64px)}
.doc__head h1{font-size:clamp(2.2rem,1.5rem + 3.2vw,3.75rem);max-width:22ch}
.migas{font-size:.9rem;color:var(--et-bruma);display:flex;flex-wrap:wrap;gap:6px}
.migas a{color:inherit}
.migas .sep{opacity:.5}
.etq{justify-self:start;font:600 .78rem/1 var(--display);font-variation-settings:"wdth" 62;text-transform:uppercase;letter-spacing:.08em;background:var(--et-signal);color:var(--et-ink);padding:6px 8px;border-radius:4px}
.doc__fecha{color:var(--et-bruma)}
.carril{height:14px;background:radial-gradient(circle at 10px 7px,var(--et-night) 3px,transparent 3.5px) 0 0/34px 14px repeat-x,linear-gradient(180deg,#5E7383,#8FA2AF 40%,#6B7F8D);opacity:.5}
.doc__cuerpo{padding-block:clamp(36px,6vw,64px) clamp(56px,8vw,96px);display:grid;gap:40px}
.prosa{max-width:var(--medida);display:grid;gap:18px}
.prosa h2{font-size:clamp(1.6rem,1.25rem + 1.5vw,2.4rem);margin-top:22px}
.prosa h3{margin-top:10px}
.prosa ul,.prosa ol{margin:0;padding-left:1.3em;display:grid;gap:8px}
.prosa .tabla{margin-block:6px}
.prosa strong{font-weight:700}
.ahora{background:#FFF6CF;border:1.5px solid var(--et-ink);border-radius:var(--r-m);padding:16px 18px;font-weight:600}
.llamada{background:var(--et-night);color:var(--et-paper);border-radius:var(--r-l);padding:clamp(22px,4vw,36px);display:grid;gap:18px;align-items:center;max-width:var(--medida)}
.llamada h2{font-size:clamp(1.5rem,1.2rem + 1.2vw,2.1rem)}
.llamada p{color:#DDE4E8;margin-top:8px}
.llamada .btn{justify-self:start}
.bloque-form{max-width:44rem}
.pag--legal .prosa{font-size:1.02rem}

/* ---------- pie ---------- */
.pie{background:var(--et-night);color:var(--et-bruma);padding-block:56px 28px;font-size:.98rem}
.pie__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:32px}
.pie__marca{display:grid;gap:14px;max-width:44ch}
.pie__logo svg{height:40px;width:auto}
.pie__h{font:600 .8rem/1.2 var(--display);font-variation-settings:"wdth" 62;text-transform:uppercase;letter-spacing:.08em;color:var(--et-paper);margin-bottom:12px}
.pie ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pie a{color:inherit;text-decoration:none}
.pie a:hover{color:var(--et-paper);text-decoration:underline}
.pie__bottom{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;font-size:.88rem}
@media (min-width:760px){.pie__grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr)}}
.lapera-credit{display:inline-flex;vertical-align:middle;margin-right:.6rem;color:inherit;opacity:.55;transition:opacity .2s}
.lapera-credit:hover,.lapera-credit:focus-visible{opacity:1}

/* ---------- movimiento (solo con .motion, que pone main.js) ---------- */
.motion .hero__claim .line,.motion .hero__kicker{will-change:transform}
.motion .rail--fijo .rail__pista{overflow:visible;scroll-snap-type:none;flex-wrap:nowrap;width:max-content}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .hero__video{display:none}
}

/* ---------- banner de cookies de LaPera (plantilla-tracking.html) ---------- */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:200;background:var(--lp-cookie-bg);color:var(--lp-cookie-text);box-shadow:0 -4px 24px rgba(0,0,0,.18);font-family:var(--lp-cookie-font)}
.cookie-banner-inner{max-width:1248px;margin:0 auto;padding:20px 24px;display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between}
.cookie-banner-text{flex:1 1 420px;font-size:14px;line-height:1.5;color:var(--lp-cookie-muted);margin:0}
.cookie-banner-text a{color:var(--lp-cookie-text);text-decoration:underline}
.cookie-banner-btns{display:flex;flex-wrap:wrap;gap:10px}
.cookie-banner .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:999px;font-weight:600;font-size:15px;text-decoration:none;border:1.5px solid transparent;cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s}
.cookie-banner .btn-dark{background:var(--lp-cookie-accent);color:var(--lp-cookie-text);border-color:var(--lp-cookie-accent)}
.cookie-banner .btn-line{background:transparent;border-color:var(--lp-cookie-border);color:var(--lp-cookie-text)}
.cookie-banner .btn-line:hover{background:var(--lp-cookie-text);color:var(--lp-cookie-bg)}

.cookie-settings{position:fixed;inset:0;z-index:210;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;padding:24px}
.cookie-settings-inner{background:var(--lp-cookie-surface);color:var(--lp-cookie-ink);border-radius:var(--lp-cookie-radius);max-width:480px;width:100%;padding:32px;max-height:88vh;overflow:auto;font-family:var(--lp-cookie-font)}
.cookie-settings-inner h2{font-size:22px;margin:0 0 20px}
.cookie-settings-inner .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:999px;font-weight:600;font-size:15px;cursor:pointer;border:1.5px solid transparent;font-family:inherit}
.cookie-settings-inner .btn-dark{background:var(--lp-cookie-accent);color:#fff}
.cookie-settings-inner .btn-line{background:transparent;border-color:var(--lp-cookie-ink);color:var(--lp-cookie-ink)}
.cookie-cat{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 0;border-top:1px solid var(--lp-cookie-line)}
.cookie-cat p{font-size:14px;color:var(--lp-cookie-stone);margin:4px 0 0}
.cookie-toggle-fixed{font-size:13px;color:var(--lp-cookie-stone);white-space:nowrap;padding-top:2px}
.cookie-switch{position:relative;display:inline-block;width:44px;height:26px;flex-shrink:0}
.cookie-switch input{opacity:0;width:0;height:0}
.cookie-switch span{position:absolute;inset:0;background:var(--lp-cookie-line);border-radius:999px;transition:background .15s;cursor:pointer}
.cookie-switch span::before{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.cookie-switch input:checked + span{background:var(--lp-cookie-accent)}
.cookie-switch input:checked + span::before{transform:translateX(18px)}
.cookie-settings-link{margin:8px 0 20px;font-size:14px}
.cookie-tab{position:fixed;left:20px;bottom:20px;z-index:190;width:44px;height:44px;border-radius:50%;border:1px solid var(--lp-cookie-line);background:var(--lp-cookie-surface);color:var(--lp-cookie-ink);font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.15);padding:0}
.cookie-tab:hover{transform:translateY(-2px)}
/* Móvil: banner compacto (una franja baja, ~150px): texto 13px y los tres
   botones en UNA fila. No apilar botones ni dejar que ocupe media pantalla. */
@media (max-width:640px){
  .cookie-banner-inner{padding:12px 16px;gap:10px;flex-direction:column;align-items:stretch}
  .cookie-banner-text{font-size:13px;line-height:1.4;flex-basis:auto}
  .cookie-banner-btns{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:8px}
  .cookie-banner .btn{min-height:40px;padding:0 8px;font-size:13px;width:100%;white-space:nowrap}
  .cookie-settings-inner{padding:20px}
  .cookie-tab{width:40px;height:40px;font-size:18px}
}
/* fotos de las páginas */
.foto{margin:4px 0 6px;display:grid;gap:6px}
.foto img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:var(--r-m);background:var(--et-bruma);box-shadow:var(--sombra)}
.foto figcaption{font-size:.78rem;color:var(--et-ink-2)}
.foto figcaption a{color:inherit}
/* herramienta «Prepara tu presupuesto» */
.asistente{margin-block:6px}
.asistente__resumen{background:#fff;border:1.5px dashed var(--et-link);border-radius:var(--r-s);padding:12px 14px;font-size:.98rem}
