
:root{
  --blanco:#ffffff;--hielo:#f3f7fb;--hielo2:#e8f0f8;--linea:#d6e1ee;--linea2:#c2d2e4;
  --tinta:#0b1f3a;--tinta2:#2b3f5c;--gris:#5b6b80;--gris2:#8393a8;
  --azul:#0a5bd3;--azul-osc:#0b3d91;--azul-tinta:#08306e;--azul-claro:#e3eefc;--cian:#00b0e0;--cian-tinta:#0284a8;
  --wa:#25d366;--ok:#0a7a3a;
  --radio:10px;--radio-s:6px;--sombra:0 1px 2px rgba(11,31,58,.06),0 8px 24px rgba(11,31,58,.06);
  --sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:var(--sans);color:var(--tinta);background:var(--blanco);font-size:1.0625rem;line-height:1.55;-webkit-font-smoothing:antialiased}
@media(max-width:700px){body{font-size:1rem}}
img{max-width:100%;height:auto;display:block}
a{color:var(--azul);text-decoration:none}a:hover{text-decoration:underline}
h1,h2,h3,h4{line-height:1.15;letter-spacing:-.015em;font-weight:700;color:var(--tinta)}
h1{font-size:clamp(2rem,4.4vw,3.2rem);font-weight:800;letter-spacing:-.025em}h2{font-size:clamp(1.55rem,3vw,2.25rem);letter-spacing:-.02em}h3{font-size:1.18rem}
p{color:var(--tinta2)}
.wrap{width:min(100% - 2.5rem,1180px);margin-inline:auto}
.sr{position:absolute;left:-9999px}
:focus-visible{outline:3px solid var(--cian);outline-offset:2px;border-radius:4px}
/* botones */
.b{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:50px;padding:.75rem 1.3rem;border-radius:8px;font-weight:600;font-size:1.02rem;border:1.5px solid transparent;cursor:pointer;text-decoration:none!important;transition:background .15s,color .15s,border-color .15s,transform .15s}
.b:active{transform:translateY(1px)}
.b-azul{background:var(--azul);color:#fff}.b-azul:hover{background:var(--azul-osc)}
.b-borde{background:#fff;color:var(--azul);border-color:var(--azul)}.b-borde:hover{background:var(--azul-claro)}
.b-suave{background:var(--azul-claro);color:var(--azul-tinta)}.b-suave:hover{background:#d3e4fa}
.b-wa{background:#fff;color:var(--tinta);border-color:var(--linea2)}.b-wa:hover{border-color:var(--wa)}.b-wa svg{color:var(--wa)}
.b-lg{min-height:58px;padding:.9rem 1.7rem;font-size:1.1rem}.b-sm{min-height:42px;padding:.5rem .95rem;font-size:.95rem}
.b svg{width:18px;height:18px;flex:none}
/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.985);border-bottom:1px solid var(--linea)}
.nav .wrap{display:flex;align-items:center;gap:1rem;min-height:66px;flex-wrap:wrap}
@media(min-width:961px){
  .nav .wrap{padding-top:.55rem;padding-bottom:0;row-gap:0}
  .nav .logo{flex:none}.busca{flex:1 1 auto;max-width:520px;margin:0 1.2rem}
  .nav .nav-cta{margin-left:auto}
  .nav .nav-links{order:20;flex:1 1 100%;display:flex;flex-wrap:wrap;gap:.1rem;border-top:1px solid var(--hielo2);margin-top:.5rem;padding:.15rem 0}
  .nav .nav-links a{padding:.6rem .7rem .7rem;font-size:.98rem;white-space:nowrap}
}
.nav .nav-cta .b{white-space:nowrap}
.logo{display:flex;align-items:center;text-decoration:none!important}.logo img{height:40px;width:auto;display:block}
footer .logo img{height:36px}@media(max-width:700px){.logo img{height:36px}}
.logo .s{color:var(--cian);width:26px;height:26px}
.nav-links{display:flex;gap:.2rem;margin-left:auto}
.nav-links a{color:var(--tinta2);font-weight:500;padding:.55rem .8rem;border-radius:var(--radio-s);font-size:1rem}
.nav-links a:hover,.nav-links a[aria-current]{background:var(--azul-claro);color:var(--azul-tinta);text-decoration:none}
.nav-cta{display:flex;gap:.5rem}
.burger{display:none;width:44px;height:44px;border:1.5px solid var(--linea2);border-radius:var(--radio-s);background:#fff;cursor:pointer;margin-left:auto}
.burger span{display:block;width:20px;height:2px;background:var(--tinta);margin:4px auto;transition:transform .2s,opacity .2s}
@media(max-width:960px){
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--linea);flex-direction:column;padding:.6rem;gap:0;box-shadow:var(--sombra)}
  .nav-links.abierto{display:flex}.nav-links a{padding:.9rem .8rem;font-size:1.05rem;border-bottom:1px solid var(--hielo2)}
  .burger{display:block}.nav-cta{margin-left:auto}
  .burger.x span:nth-child(1){transform:translateY(6px) rotate(45deg)}.burger.x span:nth-child(2){opacity:0}.burger.x span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
}
/* franja superior de confianza */
.franja{background:var(--tinta);color:#dbe7f5;font-size:.9rem;text-align:center;padding:.5rem 1rem}
.franja b{color:#fff}.franja a{color:#fff;text-decoration:underline}
/* hero */
.hero{padding:clamp(2.4rem,6vw,5rem) 0 clamp(2rem,4vw,3.4rem);background:radial-gradient(55% 90% at 82% 35%,#e4eefb 0,#f1f6fc 40%,#fff 78%)}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:2.5rem;align-items:center}
.kicker{display:inline-flex;align-items:center;gap:.6rem;font-size:.86rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--azul);margin-bottom:1rem}
.kicker::before{content:"";width:22px;height:3px;border-radius:2px;background:var(--azul);flex:none}
.kicker .s{width:16px;height:16px}
.hero h1{margin-bottom:1rem}.hero .lead{font-size:1.2rem;line-height:1.5;max-width:50ch;margin-bottom:1.6rem}
.hero .ctas{display:flex;gap:.7rem;flex-wrap:wrap}
.hero-datos{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:1.4rem;margin-top:1.6rem;padding-top:1.1rem;border-top:1px solid var(--linea)}
@media(max-width:1100px){.hero-datos{grid-template-columns:repeat(2,auto);gap:1rem 2rem}}
.hero-datos div b{display:block;font-size:1.3rem;letter-spacing:-.02em}.hero-datos div span{font-size:.9rem;color:var(--gris)}
.hero-visual{position:relative}
.hero-visual .marco{padding:1.5rem 1.5rem 2.6rem}
.hero-visual img{width:100%;aspect-ratio:1;object-fit:contain;will-change:transform}
.hero-visual .etq{position:absolute;left:.6rem;bottom:.4rem;background:#fff;color:var(--tinta);border:1px solid var(--linea);border-radius:10px;padding:.65rem 1rem;font-size:.92rem;box-shadow:0 10px 28px rgba(11,31,58,.12);text-decoration:none!important}
.hero-visual .etq b{display:block;font-size:1.15rem;color:var(--azul)}.hero-visual .etq small{display:block;font-size:.82rem;color:var(--gris)}
.hero-visual .etq:hover{border-color:var(--azul)}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr}.hero-visual{order:-1}.hero-visual .marco{padding:.6rem}.hero-visual img{max-height:38vh}}
/* secciones */
.sec{padding:clamp(2.6rem,5.5vw,4.6rem) 0}.sec.hielo{background:var(--hielo)}
.cab{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.7rem;flex-wrap:wrap}.cab p{font-size:1.05rem}
/* franja de confianza */
.fiable{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem}
.fiable>div{display:flex;gap:.8rem;align-items:flex-start;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:1rem 1.1rem;min-width:0}.fiable>div>div{min-width:0}
.fiable .s{width:24px;height:24px;color:var(--azul);flex:none;margin-top:2px}
.fiable b{display:block;font-size:1rem;margin-bottom:.1rem}.fiable span{font-size:.9rem;color:var(--gris);line-height:1.4;display:block}
@media(max-width:900px){.fiable{grid-template-columns:1fr 1fr}}@media(max-width:560px){.fiable{grid-template-columns:1fr}}
/* públicos */
.publicos{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}@media(max-width:860px){.publicos{grid-template-columns:1fr 1fr}}@media(max-width:520px){.publicos{grid-template-columns:1fr}}
.pub{display:flex;gap:1rem;align-items:center;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:1.1rem 1.2rem;text-decoration:none!important;color:var(--tinta);font-weight:700;font-size:1.08rem;transition:border-color .15s,transform .15s,box-shadow .15s}
.pub:hover{border-color:var(--azul);transform:translateY(-2px);box-shadow:var(--sombra)}
.pub .ic{width:48px;height:48px;border-radius:12px;background:var(--azul-claro);display:grid;place-items:center;flex:none}.pub .ic .s{width:26px;height:26px;color:var(--azul)}
.pub small{display:block;font-weight:400;color:var(--gris);font-size:.92rem;margin-top:.1rem}
/* «desde» del hero */
.desde{margin-top:1rem;font-size:1.02rem;color:var(--tinta2)}.desde b{color:var(--tinta)}
/* opiniones: carrusel */
.carrusel{position:relative;background:#fff;border:1px solid var(--linea);border-radius:16px;padding:clamp(1.6rem,4vw,3rem) clamp(1.2rem,5vw,4rem) 1.4rem;overflow:hidden;box-shadow:0 20px 60px rgba(11,31,58,.06)}
.carrusel .comillas{position:absolute;left:1.2rem;top:-.6rem;font-family:Georgia,"Times New Roman",serif;font-size:9rem;line-height:1;color:var(--azul-claro);pointer-events:none;user-select:none}
.carrusel .ventana{overflow:hidden;position:relative}
.carrusel .pista{display:flex;transition:transform .55s cubic-bezier(.2,.7,.2,1);will-change:transform}
.cita{flex:0 0 100%;min-width:0;margin:0;padding:0 .2rem;display:flex;flex-direction:column;align-items:center;text-align:center}
.cita blockquote{margin:0;font-size:clamp(1.12rem,1.9vw,1.42rem);line-height:1.5;color:var(--tinta);max-width:62ch;font-weight:500;letter-spacing:-.005em}
.cita figcaption{margin-top:1.3rem;display:flex;align-items:center;gap:.8rem;text-align:left}
.cita .avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--azul),var(--cian));color:#fff;display:grid;place-items:center;font-weight:800;letter-spacing:.02em;flex:none;font-size:.95rem}
.cita figcaption b{display:block;color:var(--tinta);font-size:1rem}.cita figcaption small{color:var(--gris);font-size:.86rem}
.carrusel-nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.4rem}
.carrusel-nav button{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--linea2);background:#fff;color:var(--azul);cursor:pointer;display:grid;place-items:center;transition:background .15s,border-color .15s,transform .15s}
.carrusel-nav button svg{width:20px;height:20px}.carrusel-nav button:hover{border-color:var(--azul);background:var(--azul-claro);transform:scale(1.05)}
.puntos{display:flex;gap:.45rem}.puntos button{width:10px;height:10px;padding:0;border-radius:50%;border:0;background:var(--linea2);display:block}
.puntos button[aria-current="true"]{background:var(--azul);width:26px;border-radius:999px}
.puntos button:hover{transform:none}
@media(max-width:600px){.carrusel .comillas{font-size:6rem;top:-.4rem;left:.6rem}}
/* punto de partida en guías */
.pc.pp{border-color:var(--azul);box-shadow:0 0 0 3px var(--azul-claro)}
.pc .pp-etq{position:absolute;top:.8rem;left:.8rem;z-index:2;background:var(--azul);color:#fff;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:.3rem .6rem;border-radius:6px}
.pc .pp-txt{font-size:.9rem;color:var(--azul-tinta);background:var(--azul-claro);border-radius:6px;padding:.45rem .6rem;margin-top:.2rem}
/* columna lateral (empresa) */
.lateral{background:var(--hielo);border:1px solid var(--linea);border-radius:var(--radio);padding:1.4rem}
.lateral h3{margin-bottom:.8rem}.lateral dl{display:grid;grid-template-columns:auto 1fr;gap:.5rem .9rem;font-size:.98rem}
.lateral dt{color:var(--gris);font-weight:500}.lateral dd{margin:0;color:var(--tinta)}
@media(min-width:861px){.lateral{position:sticky;top:96px}}
/* buscador */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}
.busca{position:relative;flex:1 1 auto;max-width:360px;margin:0 .8rem}
.busca>svg{position:absolute;left:.8rem;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--gris);pointer-events:none}
.busca input{width:100%;min-height:44px;border:1.5px solid var(--linea2);border-radius:8px;padding:.5rem .8rem .5rem 2.4rem;font:inherit;font-size:.98rem;color:var(--tinta);background:var(--hielo);outline:none}
.busca input:focus{border-color:var(--azul);background:#fff;box-shadow:0 0 0 3px var(--azul-claro)}
.busca input::-webkit-search-cancel-button{-webkit-appearance:none}
.busca-res{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--linea);border-radius:var(--radio);box-shadow:0 14px 40px rgba(11,31,58,.16);z-index:80;overflow:hidden;min-width:320px}
.busca-res a{display:flex;gap:.7rem;align-items:center;padding:.55rem .8rem;color:var(--tinta);text-decoration:none!important;border-bottom:1px solid var(--hielo2)}
.busca-res a:hover,.busca-res a:focus{background:var(--hielo)}.busca-res a:last-child{border-bottom:0}
.busca-res img{width:44px;height:44px;object-fit:contain;flex:none;background:#fff;border-radius:6px;border:1px solid var(--linea)}
.busca-res b{display:block;font-size:.95rem;line-height:1.25}.busca-res small{color:var(--azul);font-weight:600}
.bres-vacio{padding:.8rem .9rem;color:var(--gris);font-size:.95rem}
@media(max-width:1100px){.busca{order:10;flex:1 1 100%;max-width:none;margin:.55rem 0 .6rem}.busca-res{min-width:0}}
/* filtros por marca */
.filtros.marcas{display:flex;flex-wrap:wrap;gap:.45rem;margin:.2rem 0 1rem}
@media(max-width:700px){.filtros.marcas{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.4rem;margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem;scrollbar-width:thin}.filtros.marcas button{flex:none}}
.filtros.marcas button{border:1.5px solid var(--linea2);background:#fff;color:var(--tinta2);border-radius:999px;padding:.45rem .9rem;font:inherit;font-size:.95rem;font-weight:500;cursor:pointer;min-height:40px}
.filtros.marcas button small{color:var(--gris);font-weight:500}
.filtros.marcas button[aria-pressed="true"]{background:var(--azul);border-color:var(--azul);color:#fff}.filtros.marcas button[aria-pressed="true"] small{color:#cfe0f7}
/* pasos */
.pasos{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;counter-reset:paso}@media(max-width:760px){.pasos{grid-template-columns:1fr}}
.paso{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:1.3rem 1.3rem 1.3rem 4.2rem;position:relative}
.paso::before{counter-increment:paso;content:counter(paso);position:absolute;left:1.1rem;top:1.15rem;width:2rem;height:2rem;border-radius:50%;background:var(--azul);color:#fff;font-weight:800;display:grid;place-items:center}
.paso h3{font-size:1.08rem;margin-bottom:.3rem}.paso p{font-size:.98rem}
.cab p{max-width:60ch;margin-top:.3rem}
/* rejilla categorías */
.cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}
.cat{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:1.1rem 1.2rem 1.2rem;text-decoration:none!important;transition:border-color .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.cat::after{content:"→";position:absolute;right:1rem;bottom:.9rem;color:var(--azul);font-weight:700;opacity:0;transform:translateX(-6px);transition:opacity .2s,transform .2s}.cat:hover::after{opacity:1;transform:none}
.cat:hover{border-color:var(--azul);transform:translateY(-2px);box-shadow:var(--sombra)}
.cat .n{font-weight:700;color:var(--tinta);display:block;margin-bottom:.2rem;font-size:1.08rem}.cat .c{font-size:.9rem;color:var(--gris);line-height:1.35}
.cat .num{font-size:.8rem;font-weight:600;color:var(--azul);display:block;margin-bottom:.4rem}
.cat>span:first-child{order:2;display:block}
.cat .im{order:1;height:128px;display:grid;place-items:center;margin:-.2rem 0 .8rem;border-radius:8px;background:radial-gradient(60% 70% at 50% 60%,#fff 0,#f1f6fc 100%)}.cat .im img{width:112px;height:112px;object-fit:contain;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.cat:hover .im img{transform:scale(1.08) translateY(-2px)}
.cat .c{display:block;min-height:2.7em}
@media(max-width:900px){.cats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.cats{grid-template-columns:minmax(0,1fr)}}
.cat>span:first-child{display:block;min-width:0}.cat{min-width:0}
/* tarjetas producto */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.grid{grid-template-columns:repeat(2,1fr);gap:.7rem}}
.pc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);overflow:hidden;transition:border-color .15s,box-shadow .15s}
.pc:hover{border-color:var(--azul);box-shadow:var(--sombra)}
.pc .foto{aspect-ratio:1;background:radial-gradient(70% 70% at 50% 60%,#fff 0,#f3f7fb 100%);padding:1.2rem;border-bottom:1px solid var(--hielo2);overflow:hidden}
.pc .foto img,.pc .foto .sinfoto{width:100%;height:100%;object-fit:contain;transition:transform .3s}.pc:hover .foto img{transform:scale(1.04)}
.pc .cuerpo{padding:1rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:.4rem;flex:1}
.pc .marca{font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#55657a}
.pc h3{font-size:1.06rem;line-height:1.3;font-weight:600}.pc h3 a{color:var(--tinta)}.pc h3 a:hover{color:var(--azul)}.pc .foto{display:block}
.pc .incl{font-size:.88rem;color:var(--tinta2);padding-left:1.1rem;margin:.1rem 0 0}.pc .incl li{margin:.12rem 0}
.pc .ver{margin-top:.7rem;align-self:flex-start}
.pc{position:relative}
.pc .precio-zona{margin-top:auto;padding-top:.6rem;border-top:1px dashed var(--linea)}
.precio{font-weight:800;font-size:1.38rem;letter-spacing:-.015em;color:var(--tinta)}
.precio .iva{font-weight:600;font-size:.8rem;color:var(--tinta2);margin-left:.35rem}
.neto{display:block;font-size:.86rem;color:var(--gris)}
.con-iva{display:block;font-size:.88rem;color:var(--gris)}
.tachado{text-decoration:line-through;color:var(--gris2);font-weight:500;font-size:.92rem;margin-right:.4rem}
.badge{display:inline-block;background:var(--azul-claro);color:var(--azul-tinta);border-radius:999px;padding:.15rem .6rem;font-size:.72rem;font-weight:700}
.badge.ahorro{background:#e6f7ee;color:var(--ok)}
.chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--linea2);border-radius:999px;padding:.2rem .6rem;font-size:.76rem;color:var(--tinta2);background:#fff}
.chip.ok{border-color:#bfe3cf;color:var(--ok);background:#f2fbf5}
.chip .s{width:12px;height:12px}
/* ficha */
.ficha{display:grid;grid-template-columns:1.05fr 1fr;gap:2.5rem;align-items:start;padding-top:1.5rem}
@media(max-width:860px){.ficha{grid-template-columns:1fr;gap:1.4rem}}
.migas{font-size:.9rem;color:var(--gris);margin:1rem 0 .5rem;display:flex;gap:.4rem;flex-wrap:wrap}.migas a{color:var(--gris)}
.galeria .principal{background:radial-gradient(70% 70% at 50% 60%,#fff 0,#f1f6fc 100%);border:1px solid var(--linea);border-radius:var(--radio);padding:1.2rem;aspect-ratio:1}
.galeria .principal img{width:100%;height:100%;object-fit:contain}
.galeria .miniaturas{display:flex;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}
.galeria .miniaturas button{width:64px;height:64px;border:1.5px solid var(--linea);border-radius:var(--radio-s);background:#fff;padding:4px;cursor:pointer}
.galeria .miniaturas button[aria-current]{border-color:var(--azul)}.galeria .miniaturas img{width:100%;height:100%;object-fit:contain}
.compra h1{font-size:clamp(1.4rem,2.6vw,1.9rem);margin:.4rem 0 .6rem}
.compra .marca{font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#55657a}
@media(min-width:861px){.compra{position:sticky;top:96px}}
.compra .precio-g{font-size:2.3rem;font-weight:800;letter-spacing:-.02em}
.compra .precio-g .iva{font-size:1rem;font-weight:600;color:var(--tinta2);margin-left:.6rem;letter-spacing:0}
.compra .con-iva{font-size:1rem;margin-top:.2rem;color:var(--tinta2)}
.compra .cta{display:grid;gap:.6rem;margin:1.1rem 0 .8rem}
.compra .cta .fila{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.confianza{display:grid;grid-template-columns:1fr 1fr;gap:.5rem .8rem;font-size:.92rem;color:var(--tinta2);margin:.6rem 0 1rem}
.confianza li{list-style:none;display:flex;gap:.4rem;align-items:flex-start}.confianza .s{width:16px;height:16px;color:var(--azul);flex:none;margin-top:2px}
.compra .corta{border-top:1px solid var(--linea);padding-top:1rem}
.compra .corta ul{padding-left:1.1rem;margin:.4rem 0}.compra .corta li{margin:.2rem 0;color:var(--tinta2)}
.ficha-tabs{margin-top:2rem}
.bloque{border-top:1px solid var(--linea);padding:1.6rem 0}
.bloque h2{font-size:1.25rem;margin-bottom:.8rem}
.prosa p{margin:.55rem 0;max-width:70ch}.prosa ul{padding-left:1.2rem;margin:.5rem 0;max-width:70ch}.prosa li{margin:.25rem 0;color:var(--tinta2)}
.especs{width:100%;border-collapse:collapse;font-size:.92rem;max-width:70ch}.especs th,.especs td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--linea)}.especs th{width:38%;color:var(--gris);font-weight:500}
.junto{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}@media(max-width:900px){.junto{grid-template-columns:repeat(2,1fr)}}
.faq details{border:1px solid var(--linea);border-radius:var(--radio-s);padding:.7rem 1rem;margin:.5rem 0;background:#fff}
.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";color:var(--azul);font-weight:700}
.faq details[open] summary::after{content:"–"}.faq details p{margin-top:.5rem;font-size:1rem}
/* barra fija móvil */
.sticky{display:none}
@media(max-width:860px){
  .sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--linea);padding:.55rem .8rem calc(.55rem + env(safe-area-inset-bottom));gap:.5rem;align-items:center;box-shadow:0 -6px 20px rgba(11,31,58,.08)}
  .sticky .p{flex:1;min-width:0}.sticky .p b{display:block;font-size:1.05rem;white-space:nowrap}.sticky .p b small{font-size:.72rem;font-weight:600;color:var(--tinta2)}.sticky .p span{font-size:.7rem;color:var(--gris)}
  .sticky .b{min-height:44px;padding:.5rem .8rem;font-size:.9rem}
  body.con-sticky{padding-bottom:78px}
}
/* packs comparativa */
.compara{overflow-x:auto;border:1px solid var(--linea);border-radius:var(--radio);background:#fff}
.compara table{width:100%;border-collapse:collapse;min-width:720px;font-size:.92rem}
.compara th,.compara td{padding:.7rem .8rem;border-bottom:1px solid var(--linea);text-align:left;vertical-align:top}
.compara thead th{background:var(--hielo);font-weight:700}.compara td.lab{color:var(--gris);width:150px}
.compara .precio{font-size:1.1rem}
/* servicios */
.serv{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media(max-width:860px){.serv{grid-template-columns:1fr}}
.sv{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:1.4rem;display:flex;flex-direction:column;gap:.5rem}
.sv .s{width:32px;height:32px;color:var(--azul)}.sv h3{margin-top:.2rem}.sv p{font-size:1rem;flex:1}.sv a{font-weight:600;font-size:1.02rem}
/* garantía / banda azul */
.banda{background:var(--azul-tinta);color:#fff;border-radius:var(--radio);padding:clamp(1.4rem,3vw,2.4rem);display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}
.banda h2,.banda h3{color:#fff}.banda p{color:#cfe0f7;max-width:60ch}.banda .s{width:40px;height:40px;color:var(--cian);flex:none}
.banda .b-azul{background:#fff;color:var(--azul-tinta)}.banda .b-azul:hover{background:var(--azul-claro)}
/* contacto */
.contacto-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}@media(max-width:800px){.contacto-grid{grid-template-columns:1fr}}
.tarj{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:1.3rem}
.tarj h3{margin-bottom:.4rem}.tarj .big{font-size:1.4rem;font-weight:800;letter-spacing:-.02em}
/* ecg */
.ecg{display:block;width:100%;height:28px;color:var(--cian);opacity:.7}
/* interiores */
.int-cab{padding:clamp(1.6rem,4vw,3rem) 0 1rem;background:var(--hielo);border-bottom:1px solid var(--linea)}
.int-cab p.lead{max-width:60ch;margin-top:.6rem;font-size:1.05rem}
.prosa-legal p,.prosa-legal li{max-width:78ch;font-size:.95rem}.prosa-legal h2{font-size:1.2rem;margin:1.6rem 0 .5rem}.prosa-legal ul{padding-left:1.2rem}
.filtros{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
.filtros a{border:1px solid var(--linea2);border-radius:999px;padding:.35rem .8rem;font-size:.86rem;color:var(--tinta2)}
.filtros a[aria-current]{background:var(--azul);color:#fff;border-color:var(--azul);text-decoration:none}
/* footer */
footer{background:var(--hielo);border-top:1px solid var(--linea);margin-top:3rem;padding:2.5rem 0 1.5rem;font-size:.92rem}
.f-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:1.4rem}@media(max-width:900px){.f-grid{grid-template-columns:1fr 1fr 1fr}}@media(max-width:800px){.f-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.f-grid{grid-template-columns:1fr}}
footer .ft{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gris);margin-bottom:.6rem;font-weight:700}
footer a{color:var(--tinta2);display:block;padding:.18rem 0}
.f-legal{border-top:1px solid var(--linea);margin-top:1.6rem;padding-top:1rem;font-size:.8rem;color:var(--gris);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.f-demo{font-size:.78rem;color:var(--gris2)}
/* reveal (solo con JS) */
html.anim [data-a]{opacity:0;transform:translateY(18px) scale(.985);transition:opacity .65s cubic-bezier(.2,.7,.2,1),transform .65s cubic-bezier(.2,.7,.2,1)}
html.anim [data-a].in{opacity:1;transform:none}
/* entrada del hero */
@keyframes subir{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes flotar{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes entra-visual{from{transform:translateY(26px) scale(.96)}to{transform:none}}
@keyframes sombra-flota{0%,100%{transform:scaleX(1);opacity:.35}50%{transform:scaleX(.86);opacity:.22}}
@keyframes deriva{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,18px)}}
@keyframes latir{to{stroke-dashoffset:0}}
@keyframes marquesina{to{transform:translateX(-50%)}}
html.anim .hero [data-h]{animation:subir .7s cubic-bezier(.2,.7,.2,1) both}
html.anim .hero [data-h="2"]{animation-delay:.08s}html.anim .hero [data-h="3"]{animation-delay:.16s}html.anim .hero [data-h="4"]{animation-delay:.24s}html.anim .hero [data-h="5"]{animation-delay:.32s}html.anim .hero [data-h="6"]{animation-delay:.4s}
html.anim .hero-visual{animation:entra-visual .9s cubic-bezier(.2,.7,.2,1) both}
.hero-visual .marco{position:relative}
html.anim .hero-visual .marco img{animation:flotar 6s ease-in-out 1s infinite}
.hero-visual .marco::after{content:"";position:absolute;left:18%;right:18%;bottom:1.2rem;height:26px;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,rgba(11,31,58,.28) 0,rgba(11,31,58,0) 70%);filter:blur(4px);opacity:.35}
html.anim .hero-visual .marco::after{animation:sombra-flota 6s ease-in-out 1s infinite}
.hero{position:relative;overflow:hidden}
.hero::before,.hero::after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0;will-change:transform}
.hero::before{width:640px;height:640px;right:-160px;top:-220px;background:radial-gradient(circle,rgba(0,176,224,.20) 0,rgba(0,176,224,.08) 40%,rgba(0,176,224,0) 70%)}
.hero::after{width:520px;height:520px;left:-200px;bottom:-260px;background:radial-gradient(circle,rgba(10,91,211,.14) 0,rgba(10,91,211,.05) 40%,rgba(10,91,211,0) 70%)}
html.anim .hero::before{animation:deriva 18s ease-in-out infinite}html.anim .hero::after{animation:deriva 22s ease-in-out -8s infinite reverse}
.hero .wrap{position:relative;z-index:1}
/* línea de ECG que late */
.ecg-banda{background:#fff;padding:.2rem 0 0}.ecg{display:block;width:100%;height:30px;color:var(--cian);opacity:.85}
.ecg path{stroke-dasharray:1300;stroke-dashoffset:1300}html.anim .ecg path{animation:latir 3.2s linear infinite}
/* marquesina de marcas */
.sec-marcas{padding:1.2rem 0 2.4rem}.marcas-t{text-align:center;color:var(--gris);font-size:.95rem;margin-bottom:.9rem}
.marquesina{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.cinta{display:flex;gap:2.6rem;width:max-content;white-space:nowrap;padding:.2rem 0;will-change:transform}
.cinta span{font-weight:700;font-size:1.25rem;letter-spacing:-.01em;color:var(--tinta2);opacity:.75}
html.anim .cinta{animation:marquesina 46s linear infinite}.marquesina:hover .cinta{animation-play-state:paused}
/* cabecera: la fila de categorías se esconde al bajar */
@media(min-width:1101px){.nav .nav-links{transition:margin-top .3s,max-height .3s,opacity .25s;max-height:60px}.nav.oculta .nav-links{max-height:0;opacity:0;margin-top:0;overflow:hidden;padding:0;border-top-color:transparent}}
/* botones y tarjetas con vida */
.b{position:relative;overflow:hidden}.b:hover{transform:translateY(-1px)}.b-azul:hover{box-shadow:0 10px 24px rgba(10,91,211,.28)}
.b-azul::after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-18deg);transition:left .5s}
.b-azul:hover::after{left:130%}
.pc{transition:border-color .2s,box-shadow .25s,transform .25s}.pc:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(11,31,58,.10)}
.pc:hover .ver{background:var(--azul);color:#fff;border-color:var(--azul)}

.galeria .principal img{transition:opacity .25s,transform .35s}.galeria .principal img.fundido{opacity:0;transform:scale(.98)}
@keyframes sube-barra{from{transform:translateY(100%)}to{transform:none}}
@media(max-width:860px){html.anim .sticky{animation:sube-barra .5s cubic-bezier(.2,.7,.2,1) .4s both}}
@media(prefers-reduced-motion:reduce){html.anim .hero [data-h],html.anim .hero-visual,html.anim .hero-visual .marco img,html.anim .hero-visual .marco::after,html.anim .hero::before,html.anim .hero::after,html.anim .ecg path,html.anim .cinta,html.anim .sticky{animation:none}.b-azul::after{display:none}}
@media(prefers-reduced-motion:reduce){html.anim [data-a]{opacity:1;transform:none;transition:none}}
.sinfoto{background:var(--hielo);border-radius:var(--radio-s);aspect-ratio:1}
/* ===== v14: CTA en tarjetas, escaparate, leer más, llamada flotante ===== */
.pc-cta{display:flex;flex-direction:column;gap:.35rem;margin-top:.7rem}.pc-cta .b{width:100%}
.pc-llam{font-size:.9rem;color:var(--tinta2);text-align:center;text-decoration:none!important}.pc-llam:hover{color:var(--azul);text-decoration:underline!important}
.b-oferta{background:#c2410c;color:#fff;border-color:#c2410c}.b-oferta:hover{background:#a53a0a;color:#fff;box-shadow:0 10px 24px rgba(194,65,12,.28)}
.escaparate{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}@media(max-width:900px){.escaparate{grid-template-columns:1fr}}
.esc-item{background:#fff;border:1px solid var(--linea);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.esc-item:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(11,31,58,.10)}
.esc-foto{display:block;position:relative;background:radial-gradient(70% 70% at 50% 60%,#fff 0,#eef4fc 100%);padding:2.2rem 2rem 1.4rem}
.esc-foto img{width:100%;aspect-ratio:1;object-fit:contain;transition:transform .35s}.esc-item:hover .esc-foto img{transform:scale(1.04)}
.esc-foto .flot{position:absolute;left:.9rem;top:.9rem}
.esc-txt{padding:1.1rem 1.3rem 1.4rem;display:flex;flex-direction:column;gap:.35rem;flex:1}.esc-txt .marca{font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#55657a}
.esc-txt h3{font-size:1.28rem}.esc-txt h3 a{color:var(--tinta)}.esc-txt h3 a:hover{color:var(--azul)}.esc-txt p{font-size:1rem;color:var(--tinta2)}
.esc-cta{display:flex;gap:.6rem;margin-top:auto;padding-top:1rem;flex-wrap:wrap}.esc-cta .b{flex:1 1 auto}
.mas summary{cursor:pointer;color:var(--azul);font-weight:600;list-style:none;margin:.5rem 0 .2rem;display:inline-flex;align-items:center;gap:.4rem;font-size:1rem}.mas summary::-webkit-details-marker{display:none}
.mas summary::after{content:"↓";font-size:.9em}.mas[open] summary::after{content:"↑"}.mas[open] summary{margin-bottom:.5rem}
.busca-2{max-width:520px;margin:0;flex:1 1 320px}.busca-2 input{background:#fff;min-height:50px;font-size:1.02rem}
.fab-tel{display:none}
@media(min-width:861px){.fab-tel{display:inline-flex;align-items:center;gap:.5rem;position:fixed;right:1.4rem;bottom:1.4rem;z-index:70;background:var(--azul);color:#fff;font-weight:700;padding:.85rem 1.2rem;border-radius:999px;box-shadow:0 14px 34px rgba(10,91,211,.35);text-decoration:none!important}
.fab-tel svg{width:20px;height:20px}.fab-tel::before{content:"";position:absolute;inset:-6px;border-radius:999px;border:2px solid rgba(10,91,211,.35);animation:anillo 2.4s ease-out infinite}.fab-tel:hover{background:var(--azul-osc)}}
@keyframes anillo{0%{transform:scale(.9);opacity:1}100%{transform:scale(1.25);opacity:0}}
@media(prefers-reduced-motion:reduce){.fab-tel::before{animation:none}}
/* ===== v13: páginas interiores con escenas ===== */
.esc-cab{height:340px;width:min(46vw,560px)}@media(max-width:860px){.esc-cab{width:100%;height:260px;margin-top:.5rem}}
.int-cab{overflow:visible;padding-bottom:2rem}.int-cab .wrap{overflow:visible}
.esc-cab .e1{left:0;top:10%;width:46%;height:80%}.esc-cab .e2{right:6%;bottom:4%;width:40%;height:62%}.esc-cab .e3{right:4%;top:0;width:22%;height:32%}
.esc-cab .flot.f1{left:-2%;top:-2%}.esc-cab .flot.f2{right:-3%;top:40%}.esc-cab .flot.f3{left:12%;bottom:-3%}
.esc-serv{height:360px}@media(max-width:860px){.esc-serv{height:260px}}
.escena .flot{position:absolute}.escena .flot.f1{left:0;top:4%}.escena .flot.f2{right:0;top:38%}.escena .flot.f3{left:8%;bottom:4%}
.flot.of{background:#c2410c;color:#fff;border-color:#c2410c}.flot.of .s{background:#fff;color:#c2410c}
.galeria .principal{position:relative;overflow:visible}.galeria .principal .flot.f1{left:.8rem;top:.8rem}.galeria .principal .flot.f3{right:.8rem;bottom:.8rem;left:auto}
.int-cab .foto-cab{position:relative}.int-cab .foto-cab .flot{position:absolute;white-space:nowrap}.int-cab .foto-cab .flot.f1{left:-4rem;top:-.2rem}.int-cab .foto-cab .flot.f3{right:-1rem;bottom:-.4rem;left:auto}
.hacemos{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4rem}@media(max-width:860px){.hacemos{grid-template-columns:1fr;gap:1.6rem}}
.hacemos>div{border-top:2px solid var(--tinta);padding-top:1.1rem}.hacemos img{width:150px;height:150px;object-fit:contain;display:block;margin:0 0 .8rem}
.hacemos h3{font-size:1.25rem;margin-bottom:.5rem}.hacemos p{font-size:1.02rem;margin-bottom:.7rem}.hacemos a{font-weight:600}
.datos-llanos .dato{border-top:1px solid var(--linea);padding:.8rem 0;display:grid;grid-template-columns:auto 1fr;gap:1.2rem;font-size:1rem}
.datos-llanos .dato span:first-child{color:var(--gris)}.datos-llanos .dato:last-child{border-bottom:1px solid var(--linea)}
.servicio{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}.servicio.inv>.prosa{order:2}
@media(max-width:860px){.servicio{grid-template-columns:1fr;gap:1.4rem}.servicio.inv>.prosa{order:0}}
.servicio h2{font-size:clamp(1.5rem,2.6vw,2rem);margin-bottom:.8rem}.servicio .prosa h3{font-size:1.15rem;margin:1.1rem 0 .3rem}
.contacto-2{display:grid;grid-template-columns:1.1fr .9fr;gap:3.5rem;align-items:start}@media(max-width:860px){.contacto-2{grid-template-columns:1fr;gap:2rem}}
.cont-et{color:var(--gris);font-size:1rem;margin-bottom:.2rem}
.cont-tel{display:inline-block;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:800;letter-spacing:-.03em;color:var(--azul);text-decoration:none!important;line-height:1.05}
.cont-tel:hover{text-decoration:underline!important}.cont-sub{margin-top:.7rem;font-size:1.02rem;color:var(--tinta2)}
.cont-fila{display:flex;gap:.7rem;flex-wrap:wrap;margin:1.2rem 0 .4rem}
/* ===== v12b: ofertas visibles ===== */
.ofertas{background:#fff6f1;border:1px solid #f3d7c8;border-radius:16px;padding:clamp(1.2rem,3vw,2rem)}
.ofertas .cab{margin-bottom:1.2rem}.ofertas .cab h2 span{color:#c2410c}
.ofertas-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:860px){.ofertas-grid{grid-template-columns:1fr}}
.oferta-card{display:grid;grid-template-columns:150px 1fr;gap:1.1rem;align-items:center;background:#fff;border:1px solid #f0d3c3;border-radius:12px;padding:1rem 1.1rem;position:relative;transition:transform .2s,box-shadow .2s}
.oferta-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(194,65,12,.12)}
.oferta-card img{width:150px;height:150px;object-fit:contain}
.oferta-card .n{font-weight:700;font-size:1.1rem;line-height:1.25;color:var(--tinta)}.oferta-card .n a{color:inherit}.oferta-card .n a::after{content:"";position:absolute;inset:0}
.oferta-card .pct{display:inline-block;background:#c2410c;color:#fff;font-weight:800;font-size:1.05rem;padding:.25rem .6rem;border-radius:6px;margin:.35rem 0 .45rem}
.oferta-card .pre{color:var(--gris);text-decoration:line-through;font-size:.95rem;margin-right:.5rem}
.oferta-card .now{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:var(--tinta)}.oferta-card .now small{font-size:.8rem;font-weight:500;color:var(--gris);margin-left:.3rem}
.oferta-card .ah{display:block;color:#c2410c;font-weight:700;margin-top:.2rem}
.oferta-card .ah-iva{display:block;color:var(--gris);font-size:.88rem;margin-top:.1rem}
@media(max-width:520px){.oferta-card{grid-template-columns:110px 1fr}.oferta-card img{width:110px;height:110px}}
.ahorro-pill{display:inline-block;background:#fff0e8;color:#c2410c;border:1px solid #f3cdb9;font-weight:800;font-size:.9rem;padding:.25rem .6rem;border-radius:999px;margin-top:.35rem}
.chip.rec{background:var(--azul);border-color:var(--azul);color:#fff;font-weight:600}.chip.ok{background:#127a45;border-color:#127a45;color:#fff;font-weight:600}
.chip.rent{background:#fff;border-color:var(--azul);color:var(--azul);font-weight:600}
.flot.f2{background:#c2410c;color:#fff;border-color:#c2410c}.flot.f2 .s{background:#fff;color:#c2410c}
.franja .of{background:#c2410c;color:#fff;padding:.15rem .55rem;border-radius:4px;text-decoration:none;font-weight:700;margin:0 .2rem}
.completa{margin-top:1rem;border:1px solid var(--linea);border-radius:10px;padding:.9rem 1rem;background:var(--hielo)}
.completa b{display:block;margin-bottom:.3rem}.completa p{font-size:.98rem;margin:0}.completa .t{font-weight:800;color:var(--tinta)}
.opinion-mini{margin-top:1rem;border-left:3px solid var(--azul);padding:.5rem 0 .5rem 1rem;color:var(--tinta2);font-size:.98rem}
.opinion-mini b{display:block;color:var(--tinta);font-size:.9rem;margin-top:.3rem}
/* ===== v12: indicadores de venta (reales) ===== */
.etq-oferta{position:absolute;top:.8rem;right:.8rem;z-index:2;background:#c2410c;color:#fff;font-size:.8rem;font-weight:800;letter-spacing:.02em;padding:.34rem .65rem;border-radius:6px;box-shadow:0 4px 12px rgba(194,65,12,.25)}
.ahorro-linea{display:block;color:#c2410c;font-weight:700;font-size:.9rem;margin-top:.2rem}
.compra .ahorro-linea{font-size:1rem}
.oferta-linea{margin:.7rem 0 0;font-size:1.02rem;color:var(--tinta)}.oferta-linea b{color:#c2410c}
.b2b{margin:.55rem 0 0;font-size:1rem;color:var(--tinta2)}.b2b b{color:var(--tinta)}
.aviso-caduca{margin:.9rem 0 0;padding:.8rem 1rem;border-left:3px solid #c2410c;background:#fff6f1;font-size:1rem;color:var(--tinta);border-radius:0 8px 8px 0}
.aviso-oferta{margin:0 0 1rem;padding:.8rem 1rem;border-left:3px solid #c2410c;background:#fff6f1;font-size:1rem;color:var(--tinta);border-radius:0 8px 8px 0}
.iva-toggle{display:inline-block;margin-top:.7rem;background:none;border:0;color:var(--azul);font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;padding:0;text-decoration:underline}
.iva-inc .precio,.iva-inc .precio-g{font-size:1rem;font-weight:500;color:var(--gris);letter-spacing:0}.iva-inc .precio .tachado,.iva-inc .precio-g .tachado{display:none}
.iva-inc .precio .iva,.iva-inc .compra .precio-g .iva{font-weight:500;color:var(--gris);font-size:.85rem}
.iva-inc .con-iva{font-size:1.38rem;font-weight:800;color:var(--tinta);letter-spacing:-.015em}.iva-inc .compra .con-iva{font-size:2.3rem;letter-spacing:-.02em;line-height:1.1}
.franja a{color:#fff;text-decoration:underline;font-weight:600}
.chip.rec{border-color:#bfd4f5;background:#eef4fd;color:var(--azul-tinta)}
/* ===== v15: acceso directo a repuestos y desbloqueantes de venta ===== */
.rapido{background:var(--hielo);border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);padding:1.5rem 0}
.rapido.liso{background:#fff;border-top:0;padding-top:0}
.rapido-cab{display:flex;align-items:baseline;justify-content:space-between;gap:.3rem 1.4rem;flex-wrap:wrap;margin-bottom:.9rem}
.rapido-cab h2{font-size:clamp(1.18rem,2.2vw,1.5rem);letter-spacing:-.015em}
.rapido-cab p{font-size:.98rem;color:var(--gris);max-width:56ch;margin:0}
.rapido-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}
@media(max-width:860px){.rapido-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rp{display:block;background:#fff;border:1px solid var(--linea);border-radius:10px;padding:.8rem 1rem;text-decoration:none!important;transition:border-color .15s,box-shadow .15s,transform .15s}
.rp:hover{border-color:var(--azul);box-shadow:var(--sombra);transform:translateY(-1px)}
.rp b{display:block;color:var(--tinta);font-size:1.06rem;line-height:1.25}
.rp:hover b{color:var(--azul)}
.rp span{display:block;color:var(--gris);font-size:.88rem;margin-top:.15rem}
.rapido-busca{display:flex;align-items:center;gap:.5rem 1rem;flex-wrap:wrap;margin-top:.9rem}
.rb-t{font-size:.98rem;color:var(--tinta2);font-weight:600}
.rapido-busca .busca{margin:0;flex:1 1 280px;max-width:420px;order:0}
.rapido-busca .busca input{background:#fff}
.rb-wa{font-size:.95rem;font-weight:600}
@media(max-width:700px){.rapido-busca{align-items:stretch}.rapido-busca .busca{flex:1 1 100%;max-width:none}}
.ayuda-modelo{display:flex;gap:.9rem 1.6rem;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--azul-claro);border:1px solid #bfd4f5;border-radius:var(--radio);padding:1.1rem 1.3rem;margin:0 0 1.1rem}
.ayuda-modelo b{display:block;font-size:1.12rem;color:var(--tinta)}
.ayuda-modelo p{font-size:.98rem;margin-top:.2rem;max-width:62ch;color:var(--tinta2)}
.am-cta{display:flex;gap:.6rem;flex-wrap:wrap}
.lc{margin:.7rem 0 0;padding:.6rem 0;border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);font-size:.95rem;color:var(--tinta2);line-height:1.5}
.compat{margin:.5rem 0 0;font-size:.95rem;color:var(--tinta2)}
/* ===== v11: sin patrones de plantilla ===== */
.usp{display:flex;justify-content:space-between;gap:.6rem 1.6rem;border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);padding:.95rem 0;font-size:1rem;color:var(--tinta2);flex-wrap:wrap}
.usp span{white-space:nowrap}.usp b{color:var(--tinta)}.usp a{color:var(--azul);font-weight:700}
@media(max-width:860px){.usp{justify-content:flex-start}}
.indice{display:grid;grid-template-columns:1fr 1fr;gap:0 3.5rem;border-top:1px solid var(--tinta2)}
@media(max-width:760px){.indice{grid-template-columns:1fr}}
.indice a{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;padding:1.1rem 0;border-bottom:1px solid var(--linea);text-decoration:none!important;color:var(--tinta)}
.indice a b{display:block;font-size:1.18rem;margin-bottom:.15rem;transition:color .15s}.indice a small{display:block;color:var(--gris);font-size:.96rem;line-height:1.4}
.indice a .f{color:var(--azul);font-size:1.4rem;font-weight:700;transition:transform .2s}.indice a:hover .f{transform:translateX(5px)}.indice a:hover b{color:var(--azul)}
.pasos-ol{list-style:none;counter-reset:p;display:grid;grid-template-columns:repeat(3,1fr);gap:2.6rem;margin:0;padding:0}
@media(max-width:760px){.pasos-ol{grid-template-columns:1fr;gap:1.6rem}}
.pasos-ol li{counter-increment:p;border-top:2px solid var(--tinta);padding-top:1.1rem}
.pasos-ol li::before{content:counter(p,decimal-leading-zero);display:block;font-size:2.4rem;font-weight:800;letter-spacing:-.04em;color:var(--azul);line-height:1;margin-bottom:.7rem}
.pasos-ol h3{font-size:1.18rem;margin-bottom:.35rem}.pasos-ol p{font-size:1rem}
.serv-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:2.6rem}@media(max-width:860px){.serv-cols{grid-template-columns:1fr;gap:1.8rem}}
.serv-cols>div{border-top:2px solid var(--tinta);padding-top:1.1rem}
.serv-cols h3{font-size:1.28rem;margin-bottom:.5rem}.serv-cols p{font-size:1.02rem;margin-bottom:.8rem}.serv-cols a{font-weight:600;font-size:1.02rem}
.declaracion{max-width:62ch;margin:0 auto;text-align:center;padding:.6rem 0}
.declaracion .g{font-size:clamp(1.4rem,2.7vw,2rem);font-weight:600;line-height:1.35;letter-spacing:-.015em;color:var(--tinta)}
.declaracion .f{margin-top:1rem;color:var(--gris);font-size:1rem}
.declaracion .tel{display:inline-block;margin-top:1.3rem;font-size:clamp(1.5rem,3.2vw,2.2rem);font-weight:800;color:var(--azul);text-decoration:none!important;letter-spacing:-.02em}
.declaracion .tel:hover{text-decoration:underline!important}.declaracion .mail{display:block;margin-top:.5rem;font-size:1.02rem}
.quienes{display:grid;grid-template-columns:1.1fr .9fr;gap:3.5rem;align-items:start}@media(max-width:860px){.quienes{grid-template-columns:1fr;gap:1.2rem}}
.quienes p{font-size:1.08rem;margin-bottom:.9rem;max-width:60ch}.quienes .dato{border-top:1px solid var(--linea);padding:.8rem 0;display:grid;grid-template-columns:auto 1fr;gap:1.2rem;font-size:1rem}
.quienes .dato span:first-child{color:var(--gris)}.quienes .dato:last-child{border-bottom:1px solid var(--linea)}
.hero .tel-txt{display:inline-flex;align-items:center;gap:.4rem;margin-left:1rem;color:var(--tinta2);font-size:1.05rem}
.hero .tel-txt a{color:var(--azul);font-weight:800;text-decoration:none!important;font-size:1.2rem;letter-spacing:-.01em}.hero .tel-txt a:hover{text-decoration:underline!important}
.lista-llana{padding-left:1.2rem;margin:.6rem 0 1.2rem}.lista-llana li{margin:.4rem 0;color:var(--tinta2);font-size:1.02rem}
.int-cab .foto-cab img{width:200px;height:200px;object-fit:contain;will-change:transform}
html.anim .int-cab .foto-cab img{animation:flotar 6s ease-in-out infinite}
@media(max-width:700px){.int-cab .foto-cab{display:none}}
/* ===== v10: capa de diseño ===== */
.sec.hielo,.int-cab{background-color:var(--hielo);background-image:radial-gradient(rgba(10,91,211,.09) 1px,transparent 1.3px);background-size:22px 22px}
/* hero: peana y chips flotantes */
.hero-visual .marco{padding:2.2rem 2rem 3rem}
.hero-visual .peana{position:absolute;left:10%;right:10%;bottom:1.6rem;height:30%;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,rgba(10,91,211,.18) 0,rgba(0,176,224,.10) 45%,rgba(255,255,255,0) 72%);z-index:0}
.hero-visual .marco img{position:relative;z-index:1}
.flot{position:absolute;z-index:2;background:#fff;border:1px solid var(--linea);border-radius:999px;padding:.5rem .85rem .5rem .6rem;font-size:.88rem;font-weight:600;color:var(--tinta);box-shadow:0 10px 26px rgba(11,31,58,.12);display:flex;gap:.45rem;align-items:center;white-space:nowrap}
.flot .s{width:22px;height:22px;color:#fff;background:var(--azul);border-radius:50%;padding:4px;flex:none}
.flot.f1{left:-.6rem;top:9%}.flot.f2{right:-.8rem;top:34%}.flot.f3{right:4%;bottom:15%}
html.anim .flot{animation:subir .7s cubic-bezier(.2,.7,.2,1) both,flotar 7s ease-in-out infinite}
html.anim .flot.f1{animation-delay:.5s,1.2s}html.anim .flot.f2{animation-delay:.65s,2.1s}html.anim .flot.f3{animation-delay:.8s,.4s}
@media(max-width:860px){.flot{font-size:.8rem;padding:.4rem .7rem .4rem .5rem}.flot.f2{display:none}.flot.f1{left:0;top:4%}.flot.f3{right:0;bottom:22%}.hero-visual .marco{padding:1rem .8rem 2.2rem}}
/* banda de cifras */
.cifras{background:linear-gradient(120deg,var(--azul-tinta) 0,var(--azul-osc) 55%,var(--azul) 100%);color:#fff;padding:clamp(2.2rem,5vw,3.6rem) 0;position:relative;overflow:hidden}
.cifras::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1.3px);background-size:22px 22px;pointer-events:none}
.cifras .wrap{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.cifras div div{border-left:2px solid rgba(255,255,255,.25);padding-left:1.1rem}
.cifras b{display:block;font-size:clamp(2.1rem,4vw,3.2rem);font-weight:800;letter-spacing:-.03em;line-height:1;color:#fff}
.cifras span{display:block;margin-top:.5rem;color:#cfe0f7;font-size:.98rem;max-width:22ch}
@media(max-width:860px){.cifras .wrap{grid-template-columns:1fr 1fr;gap:1.2rem}}
/* pasos conectados */
.pasos{position:relative}
@media(min-width:761px){.pasos::before{content:"";position:absolute;left:12%;right:12%;top:2.15rem;border-top:2px dashed var(--linea2);z-index:0}.paso{z-index:1}}
.paso::before{box-shadow:0 0 0 6px #fff}
/* escena de pack (fotos reales flotando) */
.packs-intro{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center;margin-bottom:2.2rem}
@media(max-width:860px){.packs-intro{grid-template-columns:1fr;gap:1rem}}
.escena{position:relative;height:360px}
@media(max-width:860px){.escena{height:250px}}
.escena img{position:absolute;object-fit:contain;will-change:transform}
.escena .e1{left:4%;top:6%;width:52%;height:88%}.escena .e2{right:6%;bottom:2%;width:44%;height:60%}.escena .e3{right:10%;top:0;width:22%;height:32%}
.escena::before{content:"";position:absolute;left:8%;right:8%;bottom:6%;height:28%;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,rgba(10,91,211,.16) 0,rgba(255,255,255,0) 72%)}
html.anim .escena .e1{animation:flotar 7s ease-in-out infinite}html.anim .escena .e2{animation:flotar 6s ease-in-out -2s infinite}html.anim .escena .e3{animation:flotar 5s ease-in-out -1s infinite}
.packs-intro ul{list-style:none;margin:1rem 0 1.4rem;display:grid;gap:.55rem}.packs-intro li{display:flex;gap:.6rem;align-items:flex-start;color:var(--tinta2)}
.packs-intro li .s{width:20px;height:20px;color:#fff;background:var(--azul);border-radius:50%;padding:4px;flex:none;margin-top:2px}
/* cabecera interior con fotos apiladas o icono */
.int-cab .wrap{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}
@media(max-width:700px){.int-cab .wrap{grid-template-columns:1fr}.int-cab .apiladas{display:none}}
.apiladas{display:flex;align-items:center;padding-right:1.2rem}
.apiladas img{width:130px;height:130px;object-fit:contain;background:#fff;border:1px solid var(--linea);border-radius:14px;padding:.6rem;box-shadow:0 12px 30px rgba(11,31,58,.10);margin-left:-2.2rem;transition:transform .3s}
.apiladas img:first-child{margin-left:0}
.apiladas img:nth-child(1){transform:rotate(-6deg) translateY(8px)}.apiladas img:nth-child(2){transform:rotate(2deg) translateY(-6px);z-index:1}.apiladas img:nth-child(3){transform:rotate(7deg) translateY(10px)}
.apiladas:hover img{transform:none}
.icono-grande{width:132px;height:132px;border-radius:32px;background:linear-gradient(135deg,var(--azul-claro),#fff);border:1px solid var(--linea);display:grid;place-items:center;box-shadow:0 14px 34px rgba(11,31,58,.10)}
.icono-grande .s{width:64px;height:64px;color:var(--azul)}
html.anim .icono-grande{animation:flotar 6s ease-in-out infinite}
/* banda azul con degradado */
.banda{background:linear-gradient(120deg,var(--azul-tinta),var(--azul-osc) 60%,var(--azul));position:relative;overflow:hidden}
.banda::before{content:"";position:absolute;right:-60px;top:-80px;width:260px;height:260px;border-radius:50%;background:rgba(0,176,224,.18);filter:blur(30px)}
.banda>*{position:relative}
/* pie oscuro */
footer{background:var(--tinta);color:#c9d6e8}footer .ft{color:#fff}footer a{color:#dfe8f6}footer a:hover{color:#fff}footer p{color:#a9bbd6}
footer .f-legal{border-top:1px solid rgba(255,255,255,.12);color:#8fa3c2}footer .f-legal a{color:#c9d6e8}footer .f-demo{color:#8fa3c2}footer .f-demo a{color:#c9d6e8}
footer .logo img{filter:drop-shadow(0 0 0 transparent)}
/* móvil: cabecera compacta, etiqueta de precio bajo la foto, franja corta */
@media(max-width:700px){
  .logo img{height:30px}.nav .wrap{gap:.6rem}
  .hero-visual .etq{position:static;display:inline-flex;flex-direction:column;margin:-.6rem 0 0 .2rem}
  .hero-visual .marco{padding:.6rem .6rem 1.2rem}.hero-visual img{max-height:42vh}
  .franja .extra{display:none}
}
@media(max-width:820px){.nav-cta .tel-cab{font-size:0;gap:0;padding:.5rem .7rem;min-width:46px}.nav-cta .tel-cab svg{width:20px;height:20px}}
@media(max-width:480px){.nav-cta .b-azul{font-size:0;gap:0;padding:.5rem .7rem;min-width:46px}.nav-cta .b-azul svg{width:20px;height:20px}}
