/* Luz de Reserva — señalética y cuadro eléctrico. Sin dependencias. */
@font-face{font-family:"Barlow Condensed";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/barlow-700.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-weight:800;font-style:normal;font-display:swap;src:url(../fonts/barlow-800.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/plexsans-400.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-weight:600;font-style:normal;font-display:swap;src:url(../fonts/plexsans-600.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/plexmono-400.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/plexmono-500.woff2) format("woff2")}

:root{
  --bg:#12100c;--bg2:#1a1712;--panel:#211d16;--panel2:#2a251c;--line:#3d3729;--ink:#f2ecdc;--mute:#a8a08c;
  --y:#ffc400;--yd:#c99a00;--yink:#191300;--warn:#ff7a4d;--ok:#8fd16a;
  --f-d:"Barlow Condensed","Arial Narrow",Impact,sans-serif;--f-b:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--f-m:"IBM Plex Mono",ui-monospace,Consolas,monospace;
  --gut:clamp(16px,4vw,40px);--max:1240px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--f-b);-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(rgba(255,196,0,.045) 1px,transparent 1px);background-size:22px 22px}
img,svg{max-width:100%;height:auto}
a{color:var(--y);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--y);outline-offset:2px;border-radius:1px}
::selection{background:var(--y);color:var(--yink)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--y);color:var(--yink);padding:10px 14px;z-index:99;font-weight:600}
.skip:focus{left:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.mono{font-family:var(--f-m)}
.mu{color:var(--mute)}

/* indicador de lectura: batería segmentada */
#prog{position:fixed;top:0;left:0;right:0;height:6px;z-index:60;pointer-events:none;background:rgba(0,0,0,.35);
  -webkit-mask:repeating-linear-gradient(90deg,#000 0 14px,transparent 14px 18px);mask:repeating-linear-gradient(90deg,#000 0 14px,transparent 14px 18px)}
#prog i{display:block;height:100%;width:0;background:var(--y)}

/* separador de batería */
.sep{--p:60%;height:10px;margin:clamp(34px,6vw,64px) 0;background:linear-gradient(90deg,var(--y) 0 var(--p),var(--line) var(--p) 100%);
  -webkit-mask:repeating-linear-gradient(90deg,#000 0 22px,transparent 22px 28px);mask:repeating-linear-gradient(90deg,#000 0 22px,transparent 22px 28px)}
.stripe{height:10px;background:repeating-linear-gradient(-45deg,var(--y) 0 10px,#15120d 10px 20px)}

/* cabecera */
.top{background:#0c0a07;border-bottom:1px solid var(--line);font:400 12.5px/1.4 var(--f-m);color:var(--mute)}
.top .wrap{padding-top:7px;padding-bottom:7px;display:flex;gap:10px;align-items:baseline}
.top b{color:var(--y);font-weight:500;white-space:nowrap}
.hd{position:sticky;top:0;z-index:50;background:rgba(18,16,12,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.hd .wrap{display:flex;align-items:center;gap:22px;min-height:62px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font:800 26px/1 var(--f-d);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}
.brand small{display:block;font:400 10.5px/1 var(--f-m);letter-spacing:.06em;color:var(--mute);text-transform:none;margin-top:3px}
.logo .ln{fill:none;stroke:var(--y);stroke-width:2}.logo .ac3{fill:var(--y)}
.nav{margin-left:auto;display:flex;gap:2px;align-items:center}
.nav a{color:var(--ink);text-decoration:none;padding:20px 11px;font:600 14.5px/1 var(--f-b);border-bottom:3px solid transparent}
.nav a:hover,.nav a[aria-current]{border-bottom-color:var(--y);color:var(--y)}
.nav a.go{background:var(--y);color:var(--yink);margin-left:8px;padding:10px 14px;border-radius:2px;border:0}
.nav a.go:hover{background:#ffd54a;color:var(--yink)}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--line);color:var(--ink);padding:9px 12px;font:500 13px var(--f-m);cursor:pointer}
@media (max-width:900px){
  .menu-btn{display:block}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:#0f0d0a;border-bottom:3px solid var(--y);flex-direction:column;align-items:stretch;padding:8px var(--gut) 16px;margin:0}
  .nav.open,.nojs .nav{display:flex}
  .nav a{padding:13px 2px;border-bottom:1px solid var(--line)}
  .nav a.go{margin:12px 0 0;text-align:center}
}

/* tipografía */
h1,h2,h3{font-family:var(--f-d);text-transform:uppercase;letter-spacing:.005em;margin:0;font-weight:800}
h1{font-size:clamp(2.5rem,7.2vw,5.4rem);line-height:.92}
h2{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1;margin:2.4em 0 .6em}
h3{font-size:1.45rem;line-height:1.1;margin:1.8em 0 .4em;font-weight:700}
p{margin:0 0 1.1em}
.kick{display:inline-block;font:500 12px/1 var(--f-m);letter-spacing:.09em;text-transform:uppercase;color:var(--yink);background:var(--y);padding:6px 9px 5px;margin-bottom:18px}
.kick.o{background:none;color:var(--y);border:1px solid var(--y)}
.lead{font-size:clamp(1.1rem,2.2vw,1.35rem);line-height:1.5;color:#e0d9c6;max-width:60ch}

/* botones */
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 20px;border-radius:2px;background:var(--y);color:var(--yink);font:600 15.5px/1.2 var(--f-b);text-decoration:none;border:2px solid var(--y);cursor:pointer;transition:transform .12s,background .12s,box-shadow .12s;box-shadow:4px 4px 0 #6f5600}
.btn:hover{background:#ffd54a;transform:translate(-1px,-1px);box-shadow:5px 5px 0 #6f5600}
.btn:active{transform:translate(3px,3px);box-shadow:1px 1px 0 #6f5600}
.btn::after{content:"→";font-family:var(--f-m);font-weight:500}
.btn.sec{background:transparent;color:var(--y);box-shadow:none}
.btn.sec:hover{background:rgba(255,196,0,.1);transform:none;box-shadow:none}
.btn.sm{padding:10px 14px;font-size:14px;box-shadow:3px 3px 0 #6f5600}
.btns{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:center;margin:18px 0}
.fine{font:400 12.5px/1.5 var(--f-m);color:var(--mute)}

/* migas y cabecera de artículo */
.crumbs{font:400 12.5px/1.4 var(--f-m);color:var(--mute);padding:22px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.crumbs a{color:var(--mute)}.crumbs span+span::before,.crumbs a+span::before{content:"/";margin-right:6px;color:var(--line)}
.ah{padding:26px 0 8px;display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.ah h1{max-width:16ch}
.meta{display:flex;flex-wrap:wrap;gap:6px 18px;font:400 12.5px/1.4 var(--f-m);color:var(--mute);border-top:1px solid var(--line);padding-top:12px;margin-top:8px}
.meta b{color:var(--ink);font-weight:500}
.grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0 56px;align-items:start}
@media (min-width:1000px){.grid{grid-template-columns:230px minmax(0,1fr)}.ah{grid-template-columns:minmax(0,1fr) minmax(0,0.55fr);align-items:end}}
.rail{font:400 13px/1.4 var(--f-m)}
@media (min-width:1000px){.rail{position:sticky;top:84px;padding-top:10px}}
.rail h2{font:500 12px/1 var(--f-m);letter-spacing:.09em;color:var(--y);margin:0 0 12px;text-transform:uppercase}
.rail ol{list-style:none;margin:0;padding:0;counter-reset:t}
.rail li{counter-increment:t;border-top:1px solid var(--line)}
.rail li a{display:block;padding:9px 0 9px 28px;color:var(--mute);text-decoration:none;position:relative}
.rail li a::before{content:counter(t,decimal-leading-zero);position:absolute;left:0;color:var(--yd)}
.rail li a:hover{color:var(--ink)}
.rail details{border:1px solid var(--line);padding:10px 14px;margin-bottom:22px;background:var(--bg2)}
.rail summary{cursor:pointer;color:var(--y);font-weight:500}
@media (min-width:1000px){.rail details{border:0;padding:0;background:none}.rail summary{display:none}}

/* prosa */
.prose{max-width:74ch;padding-bottom:30px}
.prose h2{counter-increment:h;position:relative;padding-top:18px;border-top:2px solid var(--line)}
.prose h2::before{content:counter(h,decimal-leading-zero);display:block;font:500 13px/1 var(--f-m);color:var(--y);letter-spacing:.08em;margin-bottom:10px}
.prose{counter-reset:h}
.prose ul,.prose ol{padding-left:1.2em;margin:0 0 1.2em}
.prose li{margin:.3em 0}
.prose ul li::marker{color:var(--y)}
.prose strong{color:#fff8e6;font-weight:600}
.prose code{font:500 .9em var(--f-m);background:var(--panel);padding:2px 6px;border:1px solid var(--line)}
.prose blockquote{margin:1.4em 0;padding:4px 0 4px 18px;border-left:4px solid var(--y);color:#e0d9c6}
.prose table{width:100%}

/* cajas */
.box{margin:1.8em 0;background:var(--panel);border:1px solid var(--line);padding:22px 22px 8px;position:relative}
.box::before{content:attr(data-l);position:absolute;top:-1px;left:-1px;transform:translateY(-100%);background:var(--y);color:var(--yink);font:500 11.5px/1 var(--f-m);letter-spacing:.09em;text-transform:uppercase;padding:7px 10px 6px}
.box.ver{border-left:6px solid var(--y);background:var(--panel2);margin-top:2.4em}
.box.ver .btns{margin-bottom:16px}
.box.med{border-color:var(--warn);background:#241912}
.box.med::before{background:var(--warn)}
.box.med::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:repeating-linear-gradient(-45deg,var(--warn) 0 8px,#241912 8px 16px)}
.box.med{padding-bottom:22px}
.box.reg::before{background:var(--ink)}
.box ul{margin-bottom:.9em}

/* ficha / placa de características */
.placa{margin:2.2em 0;border:2px solid var(--y);background:var(--bg2);display:grid;grid-template-columns:minmax(0,1fr);position:relative}
@media (min-width:760px){.placa{grid-template-columns:minmax(0,300px) minmax(0,1fr)}}
.placa .fig-w{background:#0e0c09;border-bottom:2px solid var(--y);display:flex;align-items:center;justify-content:center;padding:18px}
@media (min-width:760px){.placa .fig-w{border-bottom:0;border-right:2px solid var(--y)}}
.placa .in{padding:20px 22px 20px}
.placa .tag{position:absolute;top:-2px;right:-2px;background:var(--y);color:var(--yink);font:500 11.5px/1 var(--f-m);letter-spacing:.08em;text-transform:uppercase;padding:8px 11px 7px}
.placa h3{margin:0 0 4px;font-size:2.1rem;font-weight:800;line-height:1}
.placa h3 small{display:block;font:500 12px/1 var(--f-m);letter-spacing:.09em;color:var(--mute);margin-bottom:6px;text-transform:uppercase}
.placa .res{margin:.4em 0 1em;color:#dcd5c2}
.spec{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0 0 16px;border:1px solid var(--line);font-family:var(--f-m)}
@media (min-width:520px){.spec{grid-template-columns:repeat(4,minmax(0,1fr))}}
.spec div{padding:9px 11px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);margin:-0 -1px -1px 0}
.spec dt{font-size:10.5px;letter-spacing:.09em;color:var(--mute);text-transform:uppercase;margin:0 0 3px}
.spec dd{margin:0;font-size:15px;font-weight:500;color:var(--y)}
.pc{display:grid;gap:14px 26px;grid-template-columns:minmax(0,1fr);margin-bottom:6px;font-size:15.5px}
@media (min-width:900px){.pc{grid-template-columns:1fr 1fr}}
.pc h4{margin:0 0 6px;font:500 11.5px/1 var(--f-m);letter-spacing:.09em;text-transform:uppercase}
.pc ul{margin:0;padding:0;list-style:none}
.pc li{padding:4px 0 4px 20px;position:relative;line-height:1.45}
.pc .p li::before{content:"+";position:absolute;left:0;color:var(--ok);font-family:var(--f-m);font-weight:500}
.pc .c li::before{content:"–";position:absolute;left:3px;color:var(--warn);font-family:var(--f-m);font-weight:500}
.pc .p h4{color:var(--ok)}.pc .c h4{color:var(--warn)}
.who{font-size:15.5px;border-top:1px dashed var(--line);padding-top:12px;margin-top:6px}
.who p{margin:0 0 6px}

/* tablas */
.tw{overflow-x:auto;margin:1.6em 0;border:1px solid var(--line);background:var(--bg2);-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:15px}
th,td{padding:11px 13px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
th{font:500 11.5px/1.2 var(--f-m);letter-spacing:.08em;text-transform:uppercase;color:var(--y);background:#0e0c09;white-space:nowrap;position:sticky;top:0}
td.n,th.n{font-family:var(--f-m);white-space:nowrap}
tbody tr:hover{background:rgba(255,196,0,.05)}
.cmp td:first-child,.cmp th:first-child{position:sticky;left:0;background:var(--bg2);z-index:1}
.cmp th:first-child{background:#0e0c09}
.cmp td:first-child{min-width:150px;font-weight:600;border-right:1px solid var(--line)}
.cmp .et{display:block;font:500 10.5px/1.3 var(--f-m);letter-spacing:.06em;text-transform:uppercase;color:var(--yink);background:var(--y);padding:2px 6px;margin-top:6px;width:max-content;max-width:100%}
.cmp td:last-child{white-space:nowrap}
.cmp td .btn{margin-bottom:6px}

/* figuras */
.fig{display:block;margin:0 auto}
.fig .ln{fill:none;stroke:var(--y);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.fig .ln.fl{fill:#171410}
.fig .dm{fill:none;stroke:var(--mute);stroke-width:1;stroke-dasharray:3 3}
.fig .wn{fill:none;stroke:var(--warn);stroke-width:2.2;stroke-linecap:round}
.fig .ac2{fill:none;stroke:var(--y);stroke-width:1.6;stroke-linecap:round}
.fig text{fill:var(--ink)}.fig .mu{fill:var(--mute)}.fig .ac{fill:var(--y)}
.fig .sg{fill:#2d2819}.fig .sg.on{fill:var(--y)}.fig .sg.off{fill:#26220f}
.fig.graf{width:100%;max-width:560px}
figure{margin:2em 0}
figure.wide{border:1px solid var(--line);background:#0e0c09;padding:20px 14px 10px}
figcaption{font:400 12.5px/1.5 var(--f-m);color:var(--mute);margin-top:10px;display:flex;gap:10px}
figcaption b{color:var(--y);font-weight:500;white-space:nowrap}

/* FAQ */
.faq details{border-top:1px solid var(--line);padding:0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;padding:16px 36px 16px 0;font:700 1.3rem/1.15 var(--f-d);text-transform:uppercase;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:12px;font:500 24px var(--f-m);color:var(--y)}
.faq details[open] summary::after{content:"–"}
.faq .a{padding:0 0 10px;max-width:68ch}

/* relacionados */
.rel{margin:40px 0 20px;border-top:2px solid var(--y);padding-top:18px}
.rel h2{margin:0 0 14px;font-size:1.5rem}.rel h2::before{display:none}
.rel ul{list-style:none;margin:0;padding:0;display:grid;gap:0}
.rel li{border-bottom:1px solid var(--line)}
.rel a{display:flex;justify-content:space-between;gap:16px;padding:12px 0;text-decoration:none;color:var(--ink);font-weight:600}
.rel a::after{content:"→";font-family:var(--f-m);color:var(--y)}
.rel a:hover{color:var(--y)}

/* imán */
.iman{background:var(--y);color:var(--yink);margin:50px 0;display:grid;gap:0;grid-template-columns:minmax(0,1fr);position:relative}
@media (min-width:800px){.iman{grid-template-columns:minmax(0,1fr) 300px}}
.iman .t{padding:28px clamp(18px,4vw,36px)}
.iman h2,.iman h3{color:var(--yink);margin:0 0 10px;font-size:clamp(1.9rem,4vw,2.8rem);line-height:.95}
.iman h2::before{display:none}
.iman p{color:#2b2100}
.iman form{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 8px}
.iman input[type=email]{flex:1 1 220px;min-width:0;padding:14px;border:2px solid var(--yink);background:#fff8dc;font:400 16px var(--f-b);color:var(--yink);border-radius:2px}
.iman .btn{background:var(--yink);color:var(--y);border-color:var(--yink);box-shadow:none}
.iman .btn:hover{background:#000;transform:none}
.iman .fine{color:#4a3a00}
.iman .vista{background:#0c0a07;padding:22px;display:flex;align-items:center;justify-content:center;border-left:6px solid var(--yink)}
.hoja{background:#f4efe0;color:#16120a;width:100%;max-width:230px;padding:14px 14px 18px;transform:rotate(-2.4deg);box-shadow:6px 6px 0 rgba(0,0,0,.5);font:500 9px/1.3 var(--f-m)}
.hoja b{display:block;font:800 21px/.95 var(--f-d);text-transform:uppercase;margin-bottom:8px}
.hoja i{display:block;border-top:1px solid #8b8470;height:0;margin:9px 0 0}
.hoja i::before{content:"";display:inline-block;width:8px;height:8px;border:1.5px solid #16120a;margin:-11px 6px 0 0;vertical-align:top}
.gracias{display:none;font-weight:600}
.iman.ok .gracias{display:block}.iman.ok form{display:none}

/* pie */
.ft{margin-top:70px;background:#0a0907;border-top:1px solid var(--line);font-size:15px}
.ft .cols{display:grid;gap:30px;padding:40px 0 26px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:900px){.ft .cols{grid-template-columns:1.6fr 1fr 1fr 1fr}}
.ft h2{font:500 12px/1 var(--f-m);letter-spacing:.1em;color:var(--y);margin:0 0 12px;text-transform:uppercase}
.ft ul{list-style:none;margin:0;padding:0}.ft li{margin:7px 0}
.ft a{color:#d7cfba;text-decoration:none}.ft a:hover{color:var(--y);text-decoration:underline}
.ft .legal{border-top:1px solid var(--line);padding:16px 0 90px;font:400 12.5px/1.6 var(--f-m);color:var(--mute)}
@media (min-width:760px){.ft .legal{padding-bottom:26px}}

/* barra CTA móvil */
.cta-bar{display:none}
@media (max-width:759px){
  .cta-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:55;background:#0c0a07;border-top:3px solid var(--y);padding:9px var(--gut);gap:12px;align-items:center;justify-content:space-between}
  .cta-bar span{font:400 11.5px/1.25 var(--f-m);color:var(--mute);min-width:0}
  .cta-bar span b{display:block;color:var(--ink);font-weight:500;font-size:12.5px}
  .cta-bar .btn{padding:11px 14px;font-size:14px;flex:none;box-shadow:none}
}

/* inicio */
.hero{padding:clamp(28px,6vw,70px) 0 10px;display:grid;gap:30px;grid-template-columns:minmax(0,1fr);align-items:center}
@media (min-width:960px){.hero{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:50px}}
.hero h1{font-size:clamp(2.7rem,8.6vw,6.6rem);line-height:.88}
.hero h1 em{font-style:normal;color:var(--y)}
.hero .fig-w{border:1px solid var(--line);background:#0e0c09;padding:18px 10px 10px;position:relative}
.hero .fig-w::before{content:"FIG. 1 — ALZADO";position:absolute;top:10px;left:12px;font:400 10.5px var(--f-m);letter-spacing:.08em;color:var(--mute)}
.verd{display:grid;gap:0;border:1px solid var(--line);margin:34px 0 0;background:var(--bg2)}
.verd .row{display:grid;grid-template-columns:minmax(0,1fr);gap:4px 18px;padding:16px 18px;border-top:1px solid var(--line);align-items:center}
.verd .row:first-child{border-top:0}
@media (min-width:860px){.verd .row{grid-template-columns:200px minmax(0,1fr) auto}}
.verd .q{font:500 11.5px/1.3 var(--f-m);letter-spacing:.08em;text-transform:uppercase;color:var(--y)}
.verd .m{font:700 1.5rem/1.1 var(--f-d);text-transform:uppercase}
.verd .m small{display:block;font:400 13.5px/1.4 var(--f-b);text-transform:none;color:var(--mute);margin-top:3px}
.verd.h{border-top:6px solid var(--y)}
.sec-t{display:flex;flex-wrap:wrap;gap:10px 30px;align-items:baseline;justify-content:space-between;margin-bottom:18px}
.sec-t h2{margin:0;font-size:clamp(2rem,5vw,3.4rem)}
.idx{list-style:none;margin:0;padding:0;counter-reset:ix;border-top:2px solid var(--y)}
.idx li{counter-increment:ix;border-bottom:1px solid var(--line)}
.idx a{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px 14px;align-items:baseline;padding:16px 4px;text-decoration:none;color:var(--ink)}
.idx a::before{content:counter(ix,decimal-leading-zero);font:500 13px var(--f-m);color:var(--y)}
.idx a b{font:700 1.55rem/1.05 var(--f-d);text-transform:uppercase}
.idx a span{display:block;grid-column:2;font-size:15px;color:var(--mute);line-height:1.45}
.idx a::after{content:"→";font-family:var(--f-m);color:var(--y);grid-column:3;grid-row:1}
.idx a:hover{background:rgba(255,196,0,.06)}
.two{display:grid;gap:36px;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px}}
.steps{list-style:none;padding:0;margin:0;counter-reset:s}
.steps li{counter-increment:s;padding:0 0 18px 56px;position:relative;margin:0}
.steps li::before{content:counter(s);position:absolute;left:0;top:-3px;width:40px;height:40px;background:var(--y);color:var(--yink);font:800 1.7rem/40px var(--f-d);text-align:center}
.steps li b{display:block;font:700 1.3rem/1.1 var(--f-d);text-transform:uppercase;margin-bottom:2px}

/* calculadora */
.calc{display:grid;gap:30px;grid-template-columns:minmax(0,1fr);margin:20px 0 40px}
@media (min-width:1060px){.calc{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.res-p{position:sticky;top:80px}}
.ctl{display:flex;flex-wrap:wrap;gap:14px 24px;margin-bottom:16px;align-items:flex-end}
.ctl label{display:block;font:500 11.5px/1 var(--f-m);letter-spacing:.08em;text-transform:uppercase;color:var(--y);margin-bottom:7px}
select,.num{background:#0e0c09;color:var(--ink);border:1px solid #5a5240;border-radius:2px;font:500 15px var(--f-m);padding:9px 10px}
select{padding-right:6px}
.num{width:100%;text-align:right}
.rows{border:1px solid var(--line);background:var(--bg2)}
.rh,.r{display:grid;grid-template-columns:28px minmax(0,1fr) 72px 64px 64px 70px;gap:8px;align-items:center;padding:8px 10px}
.rh{font:500 10.5px/1.2 var(--f-m);letter-spacing:.08em;text-transform:uppercase;color:var(--y);background:#0e0c09;border-bottom:1px solid var(--line);position:sticky;top:62px;z-index:2}
.rh span:nth-child(n+3),.r .out{text-align:right}
.r{border-bottom:1px solid var(--line)}
.r:last-child{border-bottom:0}
.r.off{opacity:.55}
.r .nm{display:flex;flex-direction:column;line-height:1.25;font-size:15px;cursor:pointer}
.r .nm small{font:400 11.5px/1.35 var(--f-m);color:var(--mute)}
.r .out{font:500 14px var(--f-m);color:var(--y)}
.r input[type=checkbox]{width:20px;height:20px;accent-color:var(--y)}
@media (max-width:680px){
  .rh{display:none}
  .r{grid-template-columns:28px minmax(0,1fr) 1fr 1fr 1fr;grid-template-areas:"c n n n o" ". w h d .";row-gap:4px}
  .r>:nth-child(1){grid-area:c}.r>:nth-child(2){grid-area:n}.r>:nth-child(3){grid-area:w}.r>:nth-child(4){grid-area:h}.r>:nth-child(5){grid-area:d}.r>:nth-child(6){grid-area:o}
  .r input.num::before{content:""}
  .r .num{text-align:left}
  .r .out{align-self:start}
}
.res-p .box{margin-top:0;padding:20px}
.big{font:800 3.6rem/.9 var(--f-d);color:var(--y)}.big small{font:500 14px var(--f-m);color:var(--mute);letter-spacing:.05em;margin-left:6px}
.kv{display:grid;grid-template-columns:1fr auto;gap:6px 14px;font:400 14px/1.4 var(--f-m);margin:12px 0}
.kv dt{color:var(--mute)}.kv dd{margin:0;text-align:right;color:var(--ink)}
.gauge{height:18px;margin:14px 0 4px;background:linear-gradient(90deg,var(--y) 0 var(--p,0%),#2d2819 var(--p,0%) 100%);-webkit-mask:repeating-linear-gradient(90deg,#000 0 10px,transparent 10px 13px);mask:repeating-linear-gradient(90deg,#000 0 10px,transparent 10px 13px)}
.ok{color:var(--ok)}.ko{color:var(--warn)}
.mod{list-style:none;padding:0;margin:10px 0 0}
.mod li{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:9px 0;border-top:1px solid var(--line);font-size:14.5px}
.mod li small{grid-column:1/-1;font:400 12px var(--f-m);color:var(--mute)}
.mod li.best{background:rgba(255,196,0,.09);margin:0 -10px;padding:9px 10px;border-top-color:var(--y)}
.pill{font:500 11px var(--f-m);letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border:1px solid currentColor;white-space:nowrap}
.warn{margin:12px 0 0;font:400 13px/1.5 var(--f-m);color:var(--warn)}
.nota-tabla{font-size:15px}
.add{display:flex;gap:8px;flex-wrap:wrap;padding:10px;background:#0e0c09;border-top:1px solid var(--line)}
.add input[type=text]{flex:1 1 140px;background:var(--bg);color:var(--ink);border:1px solid #5a5240;padding:8px;font:400 14px var(--f-b);border-radius:2px;min-width:0}
.add input.num{width:72px}

/* legales */
.legal-p{max-width:76ch}
.legal-p h2{font-size:1.7rem}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{
  body{background:#fff;color:#000;font-size:12pt}.top,.hd,.ft,.cta-bar,#prog,.rail,.btns,.iman{display:none!important}
  .res-p .box{border:1px solid #000;background:#fff;color:#000}.big{color:#000}.prose{max-width:none}a{color:#000}
}
.prose.full{max-width:none}.prose.full>p,.prose.full>ul,.prose.full>ol,.prose.full>h2,.prose.full>h3,.prose.full>.box,.prose.full>blockquote,.prose.full>.faq{max-width:74ch}
.calc>*,.grid>*,.two>*,.hero>*,.placa>*,.ah>*{min-width:0}
@media (max-width:680px){.r{grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto}.r .num{min-width:0;width:100%}.add input.num{width:60px}.top .wrap{flex-wrap:wrap}}
@media (max-width:999px){.rail h2{display:none}}
@media (max-width:680px){.r .num{padding:9px 4px;font-size:14px}}
