/* ExpoStands — hoja de estilos compartida (Quiénes Somos, Servicios, Distribuidores) */
:root{
  --tinta:#1f1d1b; --papel:#f4efe8; --papel-2:#ebe4d9; --naranja:#E75116; --naranja-osc:#A93808; --naranja-fondo:#C9430F; --naranja-hover:#A93808; --naranja-claro:#F26A33;
  --cafe:#4a2c1d; --alu:#c9c4bb; --blanco:#fffdf9;
  --f-titulo:"Josefin Sans","Century Gothic","Futura",sans-serif;
  --f-texto:"Jost","Futura","Century Gothic",sans-serif;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--f-texto);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--naranja-osc);text-underline-offset:3px}
a:hover{color:var(--tinta)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}
.skip:focus{left:12px;top:12px;background:var(--tinta);color:#fff;padding:8px 12px;z-index:99}

/* Cabecera */
.top{background:#fff;position:sticky;top:0;z-index:50;border-bottom:4px solid var(--naranja)}
.top .wrap{display:flex;align-items:center;gap:20px;min-height:72px;flex-wrap:wrap}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--tinta)}
.marca img{width:88px;height:88px;object-fit:contain;background:#fff}
.marca span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nav{margin-left:auto;display:flex;gap:4px;flex-wrap:wrap;align-items:center}
.nav a{color:var(--tinta);text-decoration:none;font-weight:600;font-size:14px;letter-spacing:.08em;text-transform:uppercase;padding:10px 12px;border-radius:2px}
.nav a:hover,.nav a[aria-current=page]{color:var(--tinta);background:var(--papel-2)}
.nav a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--naranja)}
.nav .compra{background:var(--naranja-fondo);color:#fff}
.nav .compra:hover{color:#fff}
.nav .compra:hover{background:var(--naranja-hover)}

/* Hero */
.hero{background:var(--tinta);color:#fff;padding:56px 0 0;position:relative;overflow:hidden}
.hero .rotulo{font-family:var(--f-titulo);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--naranja-claro);font-size:15px;margin:0 0 10px}
.hero h1{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;line-height:1;font-size:clamp(34px,6vw,76px);margin:0 0 22px;max-width:18ch}
.hero h1 em{font-style:normal;color:var(--naranja)}
.hero .bajada{max-width:62ch;font-size:19px;color:#e2dcd1;margin:0 0 34px}
.hero .banda{margin-top:28px;border-top:4px solid var(--naranja);background:#fff}
.hero .banda img{width:100%;height:auto;aspect-ratio:1500/500;object-fit:contain;display:block}

.cifras{background:var(--naranja-fondo);color:#fff}
.cifras ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.cifras li{padding:22px 20px;border-right:1px solid rgba(255,255,255,.35)}
.cifras li:last-child{border:0}
.cifras b{display:block;font-family:var(--f-titulo);font-weight:700;font-size:clamp(26px,3.6vw,40px);line-height:1.05}
.cifras span{font-size:14px;letter-spacing:.06em;text-transform:uppercase;font-weight:600}

/* Secciones */
section{padding:72px 0}
.alt{background:var(--papel-2)}
.oscuro{background:var(--cafe);color:#fff}
h2{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;line-height:1.05;font-size:clamp(28px,4vw,46px);margin:0 0 22px;letter-spacing:.005em}
h2::before{content:"";display:block;width:56px;height:6px;background:var(--naranja);margin-bottom:16px}
h3{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;font-size:21px;line-height:1.15;margin:0 0 8px}
.cols{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.cols.inv{grid-template-columns:.9fr 1.1fr}
.lead{font-size:20px}
.sello{max-width:230px;margin:0 auto}

.pilares{list-style:none;padding:0;margin:34px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0;counter-reset:p;border-top:2px solid var(--tinta)}
.pilares li{counter-increment:p;padding:26px 22px 28px 0;border-bottom:2px solid var(--tinta)}
.pilares li::before{content:counter(p,decimal-leading-zero);font-family:var(--f-titulo);font-weight:700;font-size:36px;color:var(--naranja);display:block;line-height:1}
.pilares strong{font-family:var(--f-titulo);font-size:19px;text-transform:uppercase;font-weight:700;display:block;margin:6px 0}

.galeria{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}
.galeria figure{margin:0;overflow:hidden;background:#fff;align-self:start}
.galeria img{width:100%;height:auto;transition:transform .5s}
.galeria figure:hover img{transform:scale(1.04)}
.g1{grid-column:span 12}
.g2{grid-column:span 4}
.g3{grid-column:span 6}

.btn{display:inline-block;background:var(--naranja-fondo);color:#fff;text-decoration:none;font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:16px;padding:14px 26px;border-radius:2px;transition:background .2s,color .2s,border-color .2s,transform .2s}
.btn:hover{background:var(--naranja-hover);color:#fff;transform:translateY(-2px)}
.btn.ghost{background:transparent;border:2px solid currentColor;color:inherit}
.btn.ghost:hover,.btn.ghost:focus-visible{background:var(--naranja-fondo);border-color:var(--naranja-fondo);color:#fff!important}
.acciones{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}

/* Servicios */
.servicios{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:26px;margin-top:30px}
.servicio{background:var(--blanco);border-bottom:6px solid var(--naranja);display:flex;flex-direction:column}
.servicio img{aspect-ratio:3/2;object-fit:contain;background:#fff;width:100%}
.servicio div{padding:22px 24px 26px}
.servicio>div{flex:1;display:flex;flex-direction:column}
.servicio>div>.btn{margin-top:auto;align-self:flex-start}
.servicio>div>h3{margin-bottom:14px}
.servicio.wide img{aspect-ratio:1200/520;object-fit:cover}
.servicio .n{font-family:var(--f-titulo);font-weight:700;color:var(--naranja);font-size:20px;letter-spacing:.12em}
.maquinas{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:26px}
.maquinas figure{margin:0}
.maquinas img{width:100%;height:auto}
.maquinas figcaption{font-size:14px;padding-top:8px;color:#5b554e}

.reglas{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.regla{background:var(--blanco);padding:24px;border-top:6px solid var(--tinta)}
.regla ul{margin:8px 0 0;padding-left:20px}
.aviso{background:var(--tinta);color:#fff;padding:28px 32px;border-left:10px solid var(--naranja);margin-top:30px}
.aviso h3{color:var(--naranja-claro)}
.aviso ul{margin:0;padding-left:20px}
details.pasos{background:var(--blanco);margin-top:14px;border-left:6px solid var(--naranja)}
details.pasos summary{cursor:pointer;padding:18px 22px;font-family:var(--f-titulo);font-weight:700;font-size:18px;text-transform:uppercase}
details.pasos .in{padding:0 22px 22px}
.tabla{width:100%;border-collapse:collapse;margin:20px 0;background:var(--blanco)}
.tabla caption{text-align:left;font-weight:700;padding:0 0 8px}
.tabla th,.tabla td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--alu)}
.tabla thead th{background:var(--tinta);color:#fff;font-family:var(--f-titulo);text-transform:uppercase;letter-spacing:.08em;font-size:17px}
.tabla td:first-child{font-weight:700}
.tabla-wrap{overflow-x:auto}

.catalogo{display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:center}
.catalogo img{box-shadow:10px 10px 0 var(--naranja)}

/* Distribuidores */
.beneficios{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}
.beneficios li{background:var(--blanco);padding:16px 18px 16px 52px;position:relative;border:1px solid var(--alu)}
.beneficios li::before{content:"✓";position:absolute;left:16px;top:14px;color:var(--naranja);font-weight:700;font-size:22px}
.requisitos{background:var(--naranja-fondo);color:#fff;padding:30px 34px}
.requisitos h3{color:#fff}
.requisitos li{margin:6px 0}
.tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}
.tarjeta{background:var(--blanco);padding:28px;border-top:8px solid var(--tinta)}
.tarjeta.vacia{border:3px dashed var(--naranja);border-top-width:3px;background:transparent}
.tarjeta address{font-style:normal}

/* Pie */
.pie{background:var(--tinta);color:#cfc8bc;padding:52px 0 30px;font-size:15px}
.pie .grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}
.pie h2{font-size:22px;color:#fff;margin-bottom:12px}
.pie h2::before{display:none}
.pie a{color:#fff}
.pie ul{list-style:none;padding:0;margin:0}
.pie li{margin:4px 0}
.pie .legal{border-top:1px solid #3d3935;margin-top:30px;padding-top:18px;font-size:13px}

@media (max-width:860px){
  .marca img{width:64px;height:64px}
  .top .wrap{min-height:76px;gap:0}
  .cols,.cols.inv,.catalogo,.pie .grid{grid-template-columns:1fr;gap:28px}
  .cifras ul{grid-template-columns:repeat(2,1fr)}
  .cifras li:nth-child(2){border-right:0}
  .cifras li:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.35)}
  .g2,.g3{grid-column:span 12}
  .maquinas{grid-template-columns:1fr}
  .nav{margin-left:0}
  section{padding:52px 0}
  .catalogo img{max-width:220px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Productos */
.cuadros{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:28px}
.cuadros figure{margin:0;background:#fff}
.cuadros img{width:100%;height:auto}
.panel{margin:34px auto 0;max-width:902px;background:#fff}
.panel.cuadrado{max-width:520px}
.banda-pan{background:#fff;border-top:4px solid var(--naranja);text-align:center}
.banda-pan img{margin:0 auto;max-width:902px;width:100%;height:auto}
.panel img{width:100%;height:auto}
@media (max-width:860px){.cuadros{grid-template-columns:repeat(2,1fr)}}
.mosaico{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:20px}
.mosaico figure{margin:0;background:#fff;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--alu)}
.mosaico a{display:block;width:100%;height:100%;cursor:zoom-in}
.mosaico img{width:100%;height:100%;object-fit:contain;transition:transform .4s}
.mosaico a:hover img,.mosaico a:focus-visible img{transform:scale(1.07)}
.lb{position:fixed;inset:0;background:rgba(20,18,16,.94);z-index:100;display:flex;align-items:center;justify-content:center;padding:56px 70px}
.lb[hidden]{display:none}
.lb img{max-width:100%;max-height:100%;background:#fff;box-shadow:0 10px 50px rgba(0,0,0,.5)}
.lb button{position:absolute;background:var(--naranja-fondo);color:#fff;border:0;cursor:pointer;font-family:var(--f-titulo);font-weight:700;line-height:1}
.lb button:hover{background:var(--naranja-hover)}
.lb-x{top:14px;right:14px;width:44px;height:44px;font-size:30px}
.lb-p,.lb-n{top:50%;transform:translateY(-50%);width:48px;height:64px;font-size:40px}
.lb-p{left:10px}.lb-n{right:10px}
.lb-c{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);color:#e9e3d9;font-size:14px;letter-spacing:.1em}
@media (max-width:860px){.lb{padding:56px 12px}.lb-p,.lb-n{top:auto;bottom:10px;transform:none}}
.lema{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;font-size:clamp(24px,4vw,44px);line-height:1.1;margin:0 0 10px;color:#fff}
.lema:nth-child(2){color:var(--naranja)}
.servicio h3{margin-bottom:14px}

/* Cita con comillas de texto */
.cita{margin:0 0 22px;padding:0 0 0 22px;border-left:6px solid var(--naranja);font-size:22px;line-height:1.5;position:relative}
.cita::before{content:"\201C";display:block;font-family:var(--f-titulo);font-weight:700;font-size:84px;line-height:.7;height:36px;color:var(--naranja);margin-bottom:6px}

/* Esquinas redondeadas en contenedores */
.servicio,.regla,.tarjeta,details.pasos,.beneficios li,.cuadros figure,.mosaico figure,.galeria figure,.panel,.tabla{border-radius:14px;overflow:hidden}
.panel img,.cuadros figure img,.mosaico figure img,.galeria figure img{border-radius:inherit}
.lb img{border-radius:10px}

/* Artículo: stands publicitarios */
.hero .firma{max-width:62ch;margin:-14px 0 0;font-size:15px;color:#b9b2a6;letter-spacing:.02em}
.articulo{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;align-items:start}
.toc{position:sticky;top:96px;font-size:15px}
.toc-t{font-family:var(--f-titulo);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--naranja-osc);margin:0 0 12px;font-size:14px}
.toc ol{list-style:none;margin:0;padding:0;border-left:3px solid var(--alu)}
.toc li{margin:0}
.toc a{display:block;padding:7px 0 7px 14px;color:var(--tinta);text-decoration:none;line-height:1.3}
.toc a:hover{color:var(--naranja-osc);box-shadow:inset 3px 0 0 var(--naranja)}
.prosa{max-width:none;min-width:0}
.prosa>p,.prosa>ul,.prosa>h3,.prosa>h2,.prosa>.resumen,.prosa>.byline{max-width:72ch}
.prosa>h2{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;font-size:clamp(26px,3.4vw,38px);line-height:1.08;margin:64px 0 18px;scroll-margin-top:96px}
.prosa>h2::before{content:"";display:block;width:56px;height:6px;background:var(--naranja);margin-bottom:14px}
.prosa h3{font-family:var(--f-titulo);font-weight:700;font-size:23px;line-height:1.2;margin:38px 0 10px;color:var(--tinta)}
.prosa p,.prosa li{font-size:18px;line-height:1.7}
.prosa ul{padding-left:1.3em;margin:14px 0 20px}
.prosa li{margin:6px 0}
.prosa li::marker{color:var(--naranja)}
.prosa a{color:var(--naranja-osc);text-decoration:underline;text-underline-offset:3px}
.prosa .tabla-wrap{margin:26px 0 30px;max-width:none}
.prosa .tabla{min-width:760px;table-layout:auto}
.prosa .tabla.ancha{min-width:0}
.prosa .tabla.ancha th,.prosa .tabla.ancha td{font-size:14px;padding:12px 10px}
.prosa .tabla.ancha tbody th{min-width:0}
.prosa .tabla th,.prosa .tabla td{font-size:15.5px;line-height:1.45;vertical-align:top}
.prosa .tabla tbody th{text-align:left;font-weight:700;background:var(--papel);min-width:150px}
.prosa .tabla thead th{font-size:15px}
.prosa .tabla thead a{color:#fff}
.resumen{background:var(--papel);border-left:8px solid var(--naranja);padding:26px 28px 14px;margin:0 0 20px;border-radius:0 14px 14px 0}
.prosa>.resumen h2.no-barra{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;font-size:26px;margin:0 0 14px}
.resumen h2::before{display:none}
.resumen dl{margin:0}
.resumen dl>div{padding:12px 0;border-top:1px solid var(--alu)}
.resumen dt{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:16px;color:var(--naranja-osc)}
.resumen dd{margin:3px 0 0;font-size:17px;line-height:1.55}
.byline{margin-top:48px;padding-top:18px;border-top:1px solid var(--alu);font-size:15px;color:#6b645b}
@media(max-width:900px){.articulo{grid-template-columns:1fr;gap:28px}.toc{position:static}.toc ol{columns:1}.prosa .tabla.ancha{min-width:900px}}
/* ExpoStands de un vistazo */
.ficha{display:grid;grid-template-columns:minmax(260px,.85fr) 2fr;gap:28px;margin-top:30px;align-items:start}
.ficha-datos{background:var(--tinta);color:#fff;border-radius:14px;padding:30px 28px}
.ficha-datos dl{margin:0}
.ficha-datos dl>div{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid rgba(255,255,255,.22)}
.ficha-datos dl>div:last-child{padding:0;margin:0;border:0}
.ficha-datos dt{font-family:var(--f-titulo);font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--naranja-claro);margin:0 0 6px}
.ficha-datos dd{margin:0;line-height:1.55}
.ficha-datos a{color:#fff;text-decoration-color:var(--naranja);text-underline-offset:3px}
.ficha-cats h3{font-family:var(--f-titulo);font-weight:700;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--naranja-osc);margin:0}
.tiles{list-style:none;padding:0;margin:14px 0 32px;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.tiles a{display:flex;justify-content:space-between;align-items:center;gap:10px;height:100%;box-sizing:border-box;background:#fff;color:var(--tinta);text-decoration:none;font-weight:600;line-height:1.25;padding:14px 16px;border-radius:10px;border-bottom:3px solid var(--naranja);transition:background .15s,color .15s}
.tiles a::after{content:"\2192";color:var(--naranja);font-weight:700;flex:none}
.tiles a:hover,.tiles a:focus-visible{background:var(--naranja-fondo);color:#fff}
.tiles a:hover::after,.tiles a:focus-visible::after{color:#fff}
.chips{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.chips li{border:2px solid var(--tinta);border-radius:999px;padding:7px 16px;font-weight:600;font-size:16px;background:transparent}
@media(max-width:860px){.ficha{grid-template-columns:1fr}.tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
/* Enlaces sobre fondo oscuro: el hover nunca se vuelve negro */
.hero a:not(.btn),.oscuro a:not(.btn){color:var(--naranja-claro)}
.hero a:not(.btn):hover,.oscuro a:not(.btn):hover,.pie a:hover,.ficha-datos a:hover{color:#fff}
/* Articulo: respuestas rapidas y CTAs contextuales */
.rapida{background:#fff;border:2px solid var(--tinta);border-left:8px solid var(--naranja);border-radius:0 14px 14px 0;padding:16px 22px 6px;margin:18px 0 22px}
.rapida .rq{font-family:var(--f-titulo);font-weight:700;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--naranja-osc);margin:0 0 6px}
.rapida p{margin:0 0 12px}
.cta-art{background:var(--tinta);color:#fff;border-radius:14px;padding:20px 26px;margin:26px 0;display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cta-art p{margin:0;font-size:19px;line-height:1.35;flex:1 1 260px}
.prosa .cta-art p{color:#fff}
.prosa a.btn{color:#fff;text-decoration:none}
.prosa a.btn:hover{color:#fff}
.eyebrow{font-family:var(--f-titulo);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--naranja-osc);font-size:15px;margin:0 0 6px}
.sub-h{font-family:var(--f-titulo);font-weight:700;font-size:20px;text-transform:uppercase;letter-spacing:.04em;margin:0 0 22px}
.prov{background:var(--papel-2);border:3px solid var(--tinta);border-top:10px solid var(--naranja);border-radius:14px;padding:30px 30px 28px}
@media(max-width:700px){.prov{padding:20px 16px}}
.prov .reglas{grid-template-columns:repeat(2,1fr)}
@media(max-width:700px){.prov .reglas{grid-template-columns:1fr}}
.cat-mini{max-width:340px;justify-self:center}
.cat-mini p{font-size:15px}
@media(max-width:700px){.cat-mini{max-width:280px}}
.cat-mini a{display:block;transform:rotate(3deg);transition:transform .25s}
.cat-mini a:hover,.cat-mini a:focus-visible{transform:rotate(0)}
.cat-mini{padding:14px 10px}

.menu-btn{display:none}
@media(max-width:860px){
.menu-btn{display:inline-flex;align-items:center;gap:10px;margin-left:auto;min-height:48px;padding:0 14px;background:var(--tinta);color:#fff;border:0;border-radius:2px;font:700 14px/1 var(--f-titulo);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.menu-btn .barras{position:relative;display:block;width:20px;height:2px;background:#fff;transition:background .2s}
.menu-btn .barras::before,.menu-btn .barras::after{content:"";position:absolute;left:0;width:20px;height:2px;background:#fff;transition:transform .25s}
.menu-btn .barras::before{top:-7px}.menu-btn .barras::after{top:7px}
.menu-btn[aria-expanded=true] .barras{background:transparent}
.menu-btn[aria-expanded=true] .barras::before{transform:translateY(7px) rotate(45deg)}
.menu-btn[aria-expanded=true] .barras::after{transform:translateY(-7px) rotate(-45deg)}
.js .nav{display:none;width:100%;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:0;margin:0;padding:6px 0 14px;border-top:1px solid var(--papel-2)}
.js .nav.abierto{display:flex}
.js .nav a{font-size:16px;padding:15px 12px;border-bottom:1px solid var(--papel-2);border-radius:0}
.js .nav .compra{margin-top:12px;text-align:center;border:0;border-radius:2px}
.top .wrap{align-content:flex-start;padding-top:6px;padding-bottom:6px}
}
.tarifas{display:grid;grid-template-columns:1.1fr 1fr;gap:26px;align-items:start;margin:18px 0}
.tarifas .tabla-wrap{margin:0}
.calc{display:none;background:var(--tinta);color:#fff;border-radius:14px;border-top:8px solid var(--naranja);padding:26px 26px 24px}
.js .calc{display:block}
.calc h3{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:22px;margin:0 0 14px;color:#fff}
.calc label{font-weight:600;font-size:15px;color:#e2dcd1}
.calc-area{display:flex;align-items:baseline;gap:8px;margin:2px 0 6px}
.calc-area output{font-family:var(--f-titulo);font-weight:700;font-size:64px;line-height:1;color:#fff}
.calc-area span{font-weight:600;color:var(--naranja-claro)}
.calc input[type=range]{width:100%;accent-color:var(--naranja-claro);height:32px;margin:4px 0 8px}
.calc-num{display:flex;align-items:center;gap:10px;margin:0 0 16px}
.calc-num input{width:110px;font:600 18px var(--f-cuerpo,Jost,sans-serif);padding:8px 10px;border-radius:6px;border:2px solid #fff;background:#fff;color:var(--tinta)}
.calc-res{background:#2d2a27;border-radius:12px;padding:16px 20px;margin-bottom:14px}
.calc-res strong{display:block;font-family:var(--f-titulo);font-weight:700;font-size:34px;line-height:1.1;color:var(--naranja-claro)}
.calc-res span{font-size:18px;color:#fff}
.calc-nota{font-size:14px;color:#cfc8bc;margin:0 0 16px}
@media(max-width:860px){.tarifas{grid-template-columns:1fr}.calc-area output{font-size:52px}.calc-res strong{font-size:30px}}
@media(max-width:600px){.tarifas .tabla th,.tarifas .tabla td{padding:10px 8px;font-size:14px}.tarifas .tabla thead th{font-size:12px;letter-spacing:.03em}.tarifas .tabla td:first-child{width:46%}}
/* calculadora: mas grande y llamativa */
.tarifas{grid-template-columns:1fr 1.15fr}
.calc{padding:32px 32px 30px;border-top-width:10px;box-shadow:0 18px 40px rgba(31,29,27,.28)}
.calc h3{font-size:26px}
.calc>label{font-size:17px}
.calc-area output{font-size:104px;letter-spacing:-.02em}
.calc-area span{font-size:28px}
.calc input[type=range]{-webkit-appearance:none;appearance:none;height:44px;background:transparent;margin:6px 0 12px;cursor:pointer}
.calc input[type=range]::-webkit-slider-runnable-track{height:16px;border-radius:8px;background:#4a4540}
.calc input[type=range]::-moz-range-track{height:16px;border-radius:8px;background:#4a4540}
.calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:42px;height:42px;margin-top:-13px;border-radius:50%;background:var(--naranja-claro);border:5px solid #fff;box-shadow:0 3px 10px rgba(0,0,0,.45)}
.calc input[type=range]::-moz-range-thumb{width:32px;height:32px;border-radius:50%;background:var(--naranja-claro);border:5px solid #fff;box-shadow:0 3px 10px rgba(0,0,0,.45)}
.calc input[type=range]:focus-visible{outline:3px solid #fff;outline-offset:4px;border-radius:8px}
.calc-num label{font-size:17px}
.calc-num input{width:140px;font-size:24px;padding:10px 12px}
.calc-res{background:var(--naranja-fondo);padding:22px 26px;border-radius:14px;margin:6px 0 16px}
.calc-res strong{font-size:58px;color:#fff;letter-spacing:-.01em}
.calc-res span{font-size:24px;font-weight:600;color:#fff}
.calc-res.pulso{animation:pulso .35s ease}
@keyframes pulso{50%{transform:scale(1.03)}}
.calc .btn{display:block;text-align:center;font-size:19px;padding:20px 26px;background:#fff;color:var(--tinta)}
.calc .btn:hover{background:var(--naranja-claro);color:var(--tinta)}
@media(max-width:860px){.calc-area output{font-size:84px}.calc-res strong{font-size:44px}.calc{padding:24px 18px}}
@media(prefers-reduced-motion:reduce){.calc-res.pulso{animation:none}}
