/* ALSEMT — identidad: azul marino #0B1F44, azul electrico #2563FF, dorado #D4AF37, gris #E5E7EB, blanco. Montserrat + Inter. */
@font-face{font-family:Montserrat;font-weight:600;font-display:swap;src:url(fonts/montserrat-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-weight:700;font-display:swap;src:url(fonts/montserrat-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-weight:800;font-display:swap;src:url(fonts/montserrat-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(fonts/inter-latin-600-normal.woff2) format("woff2")}
:root{--marino:#0B1F44;--marino2:#06152E;--marino3:#103E79;--azul:#2563FF;--oro:#D4AF37;--oro2:#F4D675;--gris:#E5E7EB;--fondo:#F5F7FB;--tinta:#0B1F44;--texto:#3B4660;--suave:#6B7690;--ok:#12B76A;--r:18px;--ancho:1160px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--texto);background:#fff;font-size:17px;line-height:1.6}
h1,h2,h3,h4{font-family:Montserrat,system-ui,sans-serif;color:var(--tinta);line-height:1.15;margin:0;text-wrap:balance}
h1{font-size:clamp(2.1rem,5.4vw,3.7rem);font-weight:800;letter-spacing:-.02em}
h2{font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:800;letter-spacing:-.015em}
h3{font-size:1.25rem;font-weight:700}
p{margin:0}
a{color:var(--azul)}
img{max-width:100%;height:auto;display:block}
.c{max-width:var(--ancho);margin:0 auto;padding:0 22px}
.oro{color:var(--oro)}
.kicker{font-family:Montserrat;font-weight:700;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--azul);margin-bottom:14px;display:block}
.oscuro .kicker{color:var(--oro)}
section{padding:88px 0}
.gris{background:var(--fondo)}
.oscuro{background:linear-gradient(135deg,var(--marino2) 0%,var(--marino) 58%,var(--marino3) 100%);color:#C9D3E6}
.oscuro h1,.oscuro h2,.oscuro h3{color:#fff}
.cab{max-width:760px;margin-bottom:44px}
.cab p{margin-top:16px;font-size:1.1rem}
.cab.centro{margin-left:auto;margin-right:auto;text-align:center}

/* botones */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:Montserrat;font-weight:700;font-size:1rem;padding:15px 26px;border-radius:999px;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;line-height:1.2}
.btn:hover{transform:translateY(-2px)}
.btn-oro{background:linear-gradient(135deg,#F4D675,#D4AF37);color:var(--marino);box-shadow:0 10px 28px rgba(212,175,55,.32)}
.btn-azul{background:var(--azul);color:#fff;box-shadow:0 10px 26px rgba(37,99,255,.3)}
.btn-linea{border-color:rgba(255,255,255,.4);color:#fff}
.btn-linea-o{border-color:var(--marino);color:var(--marino)}
.btn svg{width:20px;height:20px;flex:none}
.btn.ch{padding:11px 20px;font-size:.92rem}
.btn.ancho{width:100%;justify-content:center}

/* barra */
.barra{position:sticky;top:0;z-index:50;background:rgba(6,21,46,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
.barra .c{display:flex;align-items:center;gap:22px;height:72px}
.barra .logo img{height:44px;width:auto}
.barra nav{display:flex;gap:26px;margin-left:auto}
.barra nav a{color:#DCE4F3;text-decoration:none;font-weight:500;font-size:.95rem}
.barra nav a:hover{color:var(--oro)}
.menu-b{display:none;background:none;border:0;color:#fff;margin-left:auto;padding:8px;cursor:pointer}
.menu-b svg{width:28px;height:28px}

/* region */
.region{display:inline-flex;background:rgba(255,255,255,.1);border-radius:999px;padding:4px;border:1px solid rgba(255,255,255,.16)}
.region button{font-family:Montserrat;font-weight:700;font-size:.8rem;border:0;background:none;color:#C9D3E6;padding:8px 14px;border-radius:999px;cursor:pointer;white-space:nowrap}
.region button[aria-pressed=true]{background:#fff;color:var(--marino)}
.region.claro{background:#fff;border-color:var(--gris)}
.region.claro button{color:var(--suave)}
.region.claro button[aria-pressed=true]{background:var(--marino);color:#fff}
.region-fila{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;margin-bottom:8px;font-size:.95rem;color:var(--suave)}

/* portada */
.portada{padding:84px 0 0;position:relative;overflow:hidden}
.portada::before{content:"";position:absolute;right:-180px;top:-140px;width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,255,.38),transparent 62%);pointer-events:none}
.portada .c{position:relative}
.portada-g{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center}
.portada p.bajada{font-size:1.2rem;margin:24px 0 32px;max-width:560px;color:#D5DEEE}
.acciones{display:flex;gap:14px;flex-wrap:wrap}
.portada .mini{margin-top:20px;font-size:.92rem;color:#9FB0CE}
.portada-vis{position:relative}
.portada-vis .marco{border-radius:20px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.14);background:#0b1730}
.portada-vis .flota{position:absolute;left:-34px;bottom:-30px;width:44%;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.18)}
.trazo{height:6px;width:140px;border-radius:6px;background:linear-gradient(90deg,var(--oro),var(--oro2));margin:22px 0 0}
.cifras{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:72px;border-top:1px solid rgba(255,255,255,.12)}
.cifras div{padding:26px 18px 34px;border-right:1px solid rgba(255,255,255,.1)}
.cifras div:last-child{border-right:0}
.cifras b{display:block;font-family:Montserrat;font-weight:800;font-size:1.9rem;color:#fff;line-height:1.1}
.cifras span{font-size:.92rem;color:#A9B8D4}

/* tarjetas */
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.g2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.tj{background:#fff;border:1px solid var(--gris);border-radius:var(--r);padding:26px}
.tj h3{margin-bottom:10px}
.tj p{font-size:.98rem}
.ico{width:46px;height:46px;border-radius:12px;background:rgba(37,99,255,.1);color:var(--azul);display:grid;place-items:center;margin-bottom:16px}
.ico svg{width:24px;height:24px}

/* indice soluciones */
.indice{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.indice a{display:block;text-decoration:none;background:#fff;border:1px solid var(--gris);border-radius:16px;padding:20px 18px;transition:.15s;color:var(--texto)}
.indice a:hover{border-color:var(--azul);transform:translateY(-3px);box-shadow:0 14px 34px rgba(11,31,68,.1)}
.indice b{font-family:Montserrat;color:var(--tinta);display:block;font-size:1.02rem;margin-bottom:4px}
.indice span{font-size:.9rem}
.indice small{display:block;margin-top:12px;font-weight:600;color:var(--azul);font-size:.88rem}

/* division */
.div-cab{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-bottom:40px}
.div-cab.inv .video{order:-1}
.div-cab h2{margin-bottom:16px}
.div-cab .bajada{font-size:1.1rem}
.lista{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px}
.lista li{padding-left:30px;position:relative;font-size:.99rem}
.lista li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;background:var(--azul) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.regalo{margin-top:20px;padding:13px 16px;border-radius:12px;background:rgba(212,175,55,.14);border:1px dashed var(--oro);color:#6B5510;font-weight:500;font-size:.96rem}
.video{position:relative;border-radius:22px;overflow:hidden;background:var(--marino);box-shadow:0 26px 60px rgba(11,31,68,.24);aspect-ratio:1/1;max-width:520px;width:100%;justify-self:center}
.video video{width:100%;height:100%;object-fit:cover;display:block}
.video .son{position:absolute;right:14px;bottom:14px;background:rgba(6,21,46,.82);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:9px 16px;font:600 .85rem Inter;cursor:pointer;display:flex;gap:8px;align-items:center}
.video .son svg{width:16px;height:16px}
.video .et{position:absolute;right:14px;top:14px;background:rgba(6,21,46,.7);color:#fff;border-radius:999px;padding:6px 12px;font:600 .75rem Inter;letter-spacing:.04em}

/* precios */
.pr{background:#fff;border:1px solid var(--gris);border-radius:var(--r);padding:26px 24px;display:flex;flex-direction:column;position:relative}
.pr.dest{border:2px solid var(--oro);box-shadow:0 18px 44px rgba(212,175,55,.2)}
.pr .sello{position:absolute;top:-13px;left:22px;background:linear-gradient(135deg,#F4D675,#D4AF37);color:var(--marino);font:700 .72rem Montserrat;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:999px}
.pr h3{font-size:1.14rem}
.pr .det{font-size:.93rem;color:var(--suave);margin-top:6px;min-height:2.9em}
.pr .monto{font-family:Montserrat;font-weight:800;font-size:2.15rem;color:var(--tinta);margin-top:16px;line-height:1}
.pr .monto{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.pr .monto small{font:500 .9rem Inter;color:var(--suave);white-space:nowrap}
.pr .lin{font-size:.93rem;margin-top:8px;color:var(--texto)}
.pr .lin b{color:var(--tinta)}
.pr .btn{margin-top:20px}
.pr .empuja{flex:1}
.nota{font-size:.92rem;color:var(--suave);margin-top:18px}
.garantia{display:flex;gap:16px;align-items:flex-start;margin-top:26px;padding:20px 22px;border-radius:var(--r);background:var(--marino);color:#D5DEEE}
.garantia svg{width:34px;height:34px;flex:none;color:var(--oro)}
.garantia b{display:block;color:#fff;font-family:Montserrat;margin-bottom:3px}
.garantia p{font-size:.98rem}
.gris .tj,.gris .pr{box-shadow:0 2px 0 rgba(11,31,68,.03)}

/* tabla estilos */
.tabla-w{overflow-x:auto;border-radius:var(--r);border:1px solid var(--gris);background:#fff}
table.plan{border-collapse:collapse;width:100%;min-width:640px}
table.plan th,table.plan td{padding:16px 18px;text-align:center;border-bottom:1px solid var(--gris);font-size:.98rem}
table.plan th{font-family:Montserrat;font-size:.84rem;letter-spacing:.06em;text-transform:uppercase;color:var(--suave);background:var(--fondo)}
table.plan td:first-child,table.plan th:first-child{text-align:left}
table.plan td b{font-family:Montserrat;color:var(--tinta);font-size:1.05rem}
table.plan td .sub{display:block;font-size:.84rem;color:var(--suave)}
table.plan td .px{font-family:Montserrat;font-weight:800;color:var(--tinta);font-size:1.25rem}
table.plan tr:last-child td{border-bottom:0}

/* sistema completo */
.sis{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.sis-caja{background:#fff;border-radius:22px;padding:30px;color:var(--texto);box-shadow:0 30px 70px rgba(0,0,0,.35)}
.sis-caja table{width:100%;border-collapse:collapse;font-size:.97rem}
.sis-caja td{padding:9px 0;border-bottom:1px solid var(--gris)}
.sis-caja td:last-child{text-align:right;white-space:nowrap;color:var(--suave)}
.sis-caja .tot td{border:0;padding-top:14px;font-weight:600;color:var(--suave)}
.sis-caja .tot td:last-child{text-decoration:line-through}
.sis-caja .final{margin-top:10px;padding-top:16px;border-top:2px solid var(--marino);display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.sis-caja .final .monto{font-family:Montserrat;font-weight:800;font-size:2.5rem;color:var(--tinta);line-height:1}
.sis-caja .final small{color:var(--suave);font-size:.92rem;display:block}
.ahorro{display:inline-block;background:rgba(18,183,106,.14);color:#087443;font-weight:600;border-radius:999px;padding:4px 12px;font-size:.86rem;margin-top:8px}

/* quien */
.quien{display:grid;grid-template-columns:.8fr 1.2fr;gap:54px;align-items:center}
.quien-foto{border-radius:26px;background:linear-gradient(160deg,var(--marino3),var(--marino) 55%,var(--marino2));padding:28px 0 0;overflow:hidden;border-bottom:6px solid var(--oro);box-shadow:0 26px 60px rgba(11,31,68,.22)}
.quien-foto img{width:100%}
/* pasos */
.pasos{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;counter-reset:p}
.pasos div{background:#fff;border:1px solid var(--gris);border-radius:var(--r);padding:24px 20px;counter-increment:p}
.pasos div::before{content:counter(p);font-family:Montserrat;font-weight:800;font-size:1.1rem;width:38px;height:38px;border-radius:50%;background:var(--marino);color:var(--oro);display:grid;place-items:center;margin-bottom:14px}
.pasos p{font-size:.95rem;margin-top:8px}

/* evidencia */
.pest{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.pest button{font:600 .93rem Inter;border:1px solid var(--gris);background:#fff;color:var(--texto);padding:10px 18px;border-radius:999px;cursor:pointer}
.pest button[aria-selected=true]{background:var(--marino);color:#fff;border-color:var(--marino)}
.caso{display:none}
.caso.on{display:block}
.caso-cab{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;margin-bottom:22px}
.caso-cab p{max-width:720px;margin-top:8px}
.datos{display:flex;gap:26px;flex-wrap:wrap}
.datos div b{font-family:Montserrat;font-weight:800;font-size:1.5rem;color:var(--tinta);display:block;line-height:1.1}
.datos div span{font-size:.86rem;color:var(--suave)}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gal.vert{grid-template-columns:repeat(4,1fr)}
.gal figure{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--gris);background:#fff;cursor:zoom-in}
.gal img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top left}
.gal.vert img{aspect-ratio:4/5;object-position:top center}
.gal figcaption{font-size:.84rem;padding:10px 12px;color:var(--suave);border-top:1px solid var(--gris)}
.visor{position:fixed;inset:0;background:rgba(6,21,46,.94);z-index:100;display:none;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.visor.on{display:flex}
.visor img{max-width:100%;max-height:100%;border-radius:10px}

/* preguntas */
details{background:#fff;border:1px solid var(--gris);border-radius:14px;padding:0 22px;margin-bottom:12px}
summary{font-family:Montserrat;font-weight:700;color:var(--tinta);padding:20px 30px 20px 0;cursor:pointer;list-style:none;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:0;top:15px;font-size:1.6rem;color:var(--azul);font-weight:500}
details[open] summary::after{content:"–"}
details p{padding:0 0 20px;font-size:.99rem}

/* cierre + pie */
.cierre{text-align:center}
.cierre p{max-width:640px;margin:18px auto 30px;font-size:1.12rem}
footer{background:var(--marino2);color:#9FB0CE;padding:56px 0 30px;font-size:.92rem}
footer .pie-g{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}
footer img{height:54px;width:auto;margin-bottom:16px}
footer h4{color:#fff;font-size:.86rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}
footer a{color:#DCE4F3;text-decoration:none}
footer a:hover{color:var(--oro)}
footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
footer .fin{border-top:1px solid rgba(255,255,255,.1);margin-top:36px;padding-top:20px;font-size:.84rem;color:#7F90B0}
.wa-f{position:fixed;right:18px;bottom:18px;z-index:60;width:60px;height:60px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 12px 30px rgba(0,0,0,.3)}
.wa-f svg{width:32px;height:32px;color:#fff}

/* legal */
.legal{max-width:820px;margin:0 auto;padding:60px 22px 90px}
.legal h1{font-size:2.2rem;margin-bottom:10px}
.legal h2{font-size:1.35rem;margin:38px 0 12px}
.legal p,.legal li{margin-bottom:12px;font-size:1rem}
.legal table{border-collapse:collapse;width:100%;margin:16px 0}
.legal td{border:1px solid var(--gris);padding:11px 14px;font-size:.97rem}
.legal td:first-child{font-weight:600;color:var(--tinta);width:38%;background:var(--fondo)}

@media(max-width:980px){
  section{padding:64px 0}
  .portada-g,.div-cab,.sis,.quien{grid-template-columns:1fr;gap:36px}
  .quien-foto{max-width:420px}
  .div-cab.inv .video{order:0}
  .portada-vis{max-width:560px}
  .portada-vis .flota{left:auto;right:-8px;bottom:-22px;width:38%}
  .g4,.indice{grid-template-columns:repeat(2,1fr)}
  .g3,.pasos{grid-template-columns:repeat(2,1fr)}
  .gal{grid-template-columns:repeat(2,1fr)}
  .gal.vert{grid-template-columns:repeat(3,1fr)}
  .cifras{grid-template-columns:repeat(2,1fr)}
  .cifras div:nth-child(2){border-right:0}
  .barra nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--marino2);flex-direction:column;padding:18px 22px 24px;gap:16px;border-bottom:1px solid rgba(255,255,255,.1)}
  .barra nav.on{display:flex}
  .menu-b{display:block;margin-left:auto}
  .barra .region{margin-left:auto}
  .barra .btn{display:none}
  footer .pie-g{grid-template-columns:1fr}
  .caso-cab{grid-template-columns:1fr}
}
@media(max-width:620px){
  body{font-size:16px}
  .g4,.g3,.g2,.pasos,.indice{grid-template-columns:1fr}
  .gal.vert{grid-template-columns:repeat(2,1fr)}
  .acciones .btn{width:100%;justify-content:center}
  .barra .logo img{height:36px}
  .region button{padding:7px 10px;font-size:.74rem}
  .pr .det{min-height:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
