/* =========================================================================
   Sitelecom — hoja de estilos del sitio público
   Paleta oficial 2026: azul marino #16284A, verde lima #8CC63F,
   verde oscuro #5C9A28, azul medio #4A6285, gris #AAB6C4, fondo #F1F5F8.

   Regla de contraste: el lima NO va como color de texto sobre blanco (3:1
   no alcanza para lectura). Se usa como fondo, con texto marino encima, o
   como texto solo sobre el marino. Para un acento verde legible en fondo
   claro va el verde oscuro, y solo en tamaños grandes o negrita.
   ========================================================================= */

:root{
  --marino:#16284A; --marino-2:#1E3560; --lima:#8CC63F; --lima-suave:#EAF4DC;
  --verde:#5C9A28; --verde-txt:#4A7F1F; --azul:#4A6285; --gris:#AAB6C4;
  --fondo:#F1F5F8; --cuerpo:#2E3E56; --nota:#6E7C8C; --linea:#DDE4EB; --blanco:#fff;
  --radio:18px; --pastilla:999px;
  --sombra:0 1px 2px rgba(22,40,74,.06),0 8px 28px rgba(22,40,74,.08);
  --ancho:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Figtree',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--cuerpo);background:var(--blanco);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--marino)}
h1,h2,h3,h4{color:var(--marino);line-height:1.15;letter-spacing:-.015em}
h1{font-size:clamp(2.1rem,4.6vw,3.5rem);font-weight:800}
h2{font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:800}
h3{font-size:1.2rem;font-weight:700}
h1 em,h2 em{font-style:normal;background:linear-gradient(transparent 62%,rgba(140,198,63,.55) 62%);padding:0 .08em}
p+p{margin-top:.9em}
.cont{max-width:var(--ancho);margin:0 auto;padding:0 24px}
.ico{width:1.15em;height:1.15em;flex:none;vertical-align:-.18em}
.saltar{position:absolute;left:-999px;top:8px;background:var(--marino);color:#fff;padding:8px 14px;border-radius:8px;z-index:999}
.saltar:focus{left:8px}
:focus-visible{outline:3px solid var(--lima);outline-offset:2px}

/* ---- Botones ---------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.8em 1.45em;border-radius:var(--pastilla);font:inherit;font-weight:700;font-size:.95rem;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .15s,background .15s,box-shadow .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-marino{background:var(--marino);color:#fff}
.btn-marino:hover{background:var(--marino-2);box-shadow:0 6px 18px rgba(22,40,74,.25)}
.btn-lima{background:var(--lima);color:var(--marino)}
.btn-lima:hover{background:#9AD14D;box-shadow:0 6px 18px rgba(140,198,63,.35)}
.btn-borde{border-color:var(--marino);color:var(--marino);background:transparent}
.btn-borde:hover{background:var(--marino);color:#fff}
.btn-borde-claro{border-color:rgba(255,255,255,.5);color:#fff;background:transparent}
.btn-borde-claro:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-bloque{width:100%}

/* ---- Barra superior y navegación -------------------------------------- */
.topbar{background:var(--marino);color:#D5DEE9;font-size:.84rem}
.topbar .cont{display:flex;justify-content:space-between;align-items:center;min-height:38px;gap:16px}
.topbar a{color:#D5DEE9;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.topbar a:hover{color:#fff}
.tb-sello{display:inline-flex;align-items:center;gap:7px;color:var(--lima);font-weight:600}
.tb-datos{display:flex;gap:22px}

.nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--linea)}
.nav .cont{display:flex;align-items:center;justify-content:space-between;height:78px;gap:24px}
.marca img{height:40px;width:auto}
.menu{display:flex;align-items:center;gap:4px}
.menu>a,.drop>button{font:inherit;font-size:.95rem;font-weight:600;color:var(--cuerpo);text-decoration:none;padding:.5em .95em;border-radius:var(--pastilla);background:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.menu>a:hover,.drop>button:hover{color:var(--marino);background:var(--fondo)}
.menu>a.on,.drop>button.on{background:var(--lima-suave);color:var(--marino)}
.flecha{width:.9em;height:.9em;transition:transform .2s}
.drop{position:relative}
.drop-pan{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(6px);width:380px;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);box-shadow:var(--sombra);padding:10px;opacity:0;visibility:hidden;transition:.18s}
.drop:hover .drop-pan,.drop:focus-within .drop-pan,.drop.abierto .drop-pan{opacity:1;visibility:visible;transform:translateX(-50%)}
.drop:hover .flecha,.drop.abierto .flecha{transform:rotate(180deg)}
.drop-pan a{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:12px;text-decoration:none;color:var(--cuerpo)}
.drop-pan a:hover{background:var(--fondo)}
.drop-pan .ico{width:36px;height:36px;padding:8px;border-radius:10px;background:var(--lima-suave);color:var(--verde-txt)}
.drop-pan b{display:block;color:var(--marino);font-size:.95rem}
.drop-pan small{display:block;color:var(--nota);font-size:.84rem;line-height:1.4}
.drop-todos{border-top:1px solid var(--linea);margin-top:6px;padding-top:14px!important;border-radius:0 0 12px 12px!important}
.nav-cta{display:flex;align-items:center;gap:10px}
.burger{display:none;background:none;border:0;color:var(--marino);cursor:pointer;padding:8px}
.burger .ico{width:28px;height:28px}
.menu>a.solo-movil{display:none}

.miga{font-size:.86rem;color:var(--nota);padding:18px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.miga a{color:var(--nota);text-decoration:none}
.miga a:hover{color:var(--marino);text-decoration:underline}
.miga b{color:var(--marino);font-weight:600}

/* ---- Hero ------------------------------------------------------------- */
.hero{background:linear-gradient(180deg,var(--fondo),#fff);padding:64px 0 80px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.sello{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--linea);color:var(--marino);font-weight:700;font-size:.86rem;padding:.45em 1em .45em .5em;border-radius:var(--pastilla);box-shadow:0 2px 8px rgba(22,40,74,.06);margin-bottom:22px}
.sello .ico{width:26px;height:26px;padding:5px;border-radius:50%;background:var(--lima);color:var(--marino)}
.hero h1{margin-bottom:20px}
.lead{font-size:1.15rem;color:var(--cuerpo);max-width:560px}
.hero .acts{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 26px}
.chips{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;font-size:.92rem;color:var(--azul);font-weight:600}
.chips li{display:flex;align-items:center;gap:6px}
.chips .ico{color:var(--verde)}
.hero-foto{position:relative;padding:0 0 28px 28px}
.hero-foto::before{content:"";position:absolute;left:0;bottom:0;width:78%;height:82%;background:var(--lima);border-radius:28px}
.hero-foto img{position:relative;border-radius:24px;box-shadow:var(--sombra);aspect-ratio:4/3;object-fit:cover;width:100%}
.flotante{position:absolute;background:#fff;border-radius:16px;box-shadow:var(--sombra);padding:14px 18px;display:flex;gap:12px;align-items:center}
.flotante b{display:block;font-size:1.5rem;line-height:1;color:var(--marino);font-weight:800}
.flotante div{line-height:1.25}
.flotante span{font-size:.84rem;color:var(--nota);display:block;margin-top:4px}
.flotante .ico{width:40px;height:40px;padding:9px;border-radius:12px;background:var(--marino);color:var(--lima)}
.flot-a{right:-12px;top:28px}
.flot-b{left:-4px;bottom:54px}

/* ---- Secciones -------------------------------------------------------- */
.sec{padding:88px 0}
.sec-gris{background:var(--fondo)}
.sec-marino{background:var(--marino);color:#D5DEE9}
.sec-marino h2,.sec-marino h3{color:#fff}
.tit{max-width:720px;margin-bottom:44px}
.tit-centro{text-align:center;margin-left:auto;margin-right:auto}
.antetitulo{display:inline-block;font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--verde-txt);margin-bottom:12px}
.sec-marino .antetitulo{color:var(--lima)}
.tit p{margin-top:14px;font-size:1.07rem}

/* Cifras */
.cifras{display:grid;grid-template-columns:repeat(5,1fr);gap:0;background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);margin-top:-44px;position:relative}
.cifras-4{grid-template-columns:repeat(4,1fr);margin-top:-36px}
.cifra{padding:26px 22px;border-right:1px solid var(--linea)}
.cifra:last-child{border-right:0}
.cifra b{display:block;font-size:2rem;font-weight:800;color:var(--marino);line-height:1.05}
.cifra b small{font-size:.55em;color:var(--verde-txt);margin-left:2px}
.cifra span{font-size:.9rem;color:var(--nota)}

/* Tarjetas */
.tarjetas{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tarjeta{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:28px;display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--cuerpo);transition:transform .18s,box-shadow .18s,border-color .18s}
a.tarjeta:hover{transform:translateY(-3px);box-shadow:var(--sombra);border-color:var(--gris)}
.tarjeta .ico-caja{width:52px;height:52px;border-radius:14px;background:var(--lima-suave);color:var(--verde-txt);display:grid;place-items:center}
.tarjeta .ico-caja .ico{width:26px;height:26px}
.tarjeta p{font-size:.97rem}
.tarjeta .mas{margin-top:auto;font-weight:700;color:var(--marino);display:inline-flex;align-items:center;gap:6px;font-size:.93rem}
.tarjeta-destacada{background:var(--marino);border-color:var(--marino);color:#D5DEE9}
.tarjeta-destacada h3,.tarjeta-destacada .mas{color:#fff}
.tarjeta-destacada .ico-caja{background:var(--lima);color:var(--marino)}
.etiqueta{align-self:flex-start;font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--lima);color:var(--marino);padding:.25em .75em;border-radius:var(--pastilla)}

/* Bloque Samsung / One Stop */
.onestop{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.pasos{list-style:none;display:grid;gap:14px;counter-reset:paso}
.paso{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--radio);padding:20px 22px}
.sec-gris .paso,.paso-claro .paso{background:#fff;border-color:var(--linea)}
.paso .num{width:64px;height:64px;border-radius:18px;background:var(--lima);color:var(--marino);display:grid;place-items:center;position:relative}
.paso .num .ico{width:30px;height:30px}
.paso .num::after{counter-increment:paso;content:counter(paso);position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:#fff;color:var(--marino);font-weight:800;font-size:.8rem;display:grid;place-items:center;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.paso h3{margin-bottom:4px}
.paso p{font-size:.97rem}
.sec-marino .paso p{color:#C4CFDC}
.nota-marca{font-size:.82rem;color:var(--nota);margin-top:18px}
.sec-marino .nota-marca{color:#8F9FB5}

/* Foto + texto */
.dupla{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.dupla-inv>:first-child{order:2}
.foto-redonda{border-radius:24px;box-shadow:var(--sombra);aspect-ratio:4/3;object-fit:cover;width:100%}
.lista-check{list-style:none;display:grid;gap:12px;margin-top:22px}
.lista-check li{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start}
.lista-check .ico{width:24px;height:24px;padding:4px;border-radius:50%;background:var(--lima);color:var(--marino);margin-top:2px}
.lista-check b{color:var(--marino)}

/* Galería del laboratorio */
.galeria{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:240px 240px;gap:14px}
.galeria figure{position:relative;border-radius:var(--radio);overflow:hidden;margin:0}
.galeria figure:first-child{grid-row:span 2}
.galeria img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.galeria figure:hover img{transform:scale(1.04)}
.galeria figcaption{position:absolute;left:12px;bottom:12px;background:rgba(22,40,74,.85);color:#fff;font-size:.82rem;font-weight:600;padding:.35em .85em;border-radius:var(--pastilla)}

/* Carrusel del proceso (encabezado de One Stop) */
.carrusel{position:relative;aspect-ratio:4/3;border-radius:24px;overflow:hidden;box-shadow:var(--sombra);background:var(--marino)}
.hero-foto .carrusel img,.carrusel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto;border-radius:0;box-shadow:none;opacity:0;transform:scale(1.02);transition:opacity 1.1s ease}
.carrusel img.activa{opacity:1;animation:acercar 6.5s linear both}
@keyframes acercar{from{transform:scale(1.02)}to{transform:scale(1.1)}}
.carrusel::after{content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(transparent,rgba(15,29,56,.65));pointer-events:none}
.carrusel-rotulo{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:1rem}
.carrusel-rotulo b{background:var(--lima);color:var(--marino);border-radius:var(--pastilla);padding:.2em .7em;font-size:.82rem}
.carrusel-rotulo span{transition:opacity .4s}
.carrusel-puntos{position:absolute;left:18px;top:18px;z-index:2;display:flex;gap:6px;background:rgba(15,29,56,.55);padding:7px 10px;border-radius:999px}
.carrusel-puntos button{width:9px;height:9px;border-radius:9px;border:0;padding:0;background:rgba(255,255,255,.55);cursor:pointer;transition:width .3s,background .3s}
.carrusel-puntos button.activa{width:26px;background:var(--lima)}
@media (prefers-reduced-motion:reduce){.carrusel img.activa{animation:none;transform:none}}

/* El modelo: ciclo de 7 pasos */
.modelo{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.ciclo{position:relative;width:100%;max-width:470px;aspect-ratio:1;margin:0 auto;--r:min(190px,40vw)}
.ciclo::before{content:"";position:absolute;inset:11%;border-radius:50%;border:3px dashed rgba(140,198,63,.55)}
.ciclo-anillo{list-style:none;position:absolute;inset:0}
.ciclo-anillo li{position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(calc(var(--i) * 51.4286deg - 90deg)) translate(var(--r)) rotate(calc(90deg - var(--i) * 51.4286deg))}
.ciclo-nodo{position:absolute;left:-34px;top:-34px;width:68px;height:68px;border-radius:50%;background:var(--lima);color:var(--marino);display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.ciclo-nodo .ico{width:30px;height:30px}
.ciclo-nodo b{position:absolute;top:-6px;right:-6px;width:24px;height:24px;border-radius:50%;background:#fff;color:var(--marino);font-size:.8rem;display:grid;place-items:center;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.ciclo::before{animation:girar 90s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}
.ciclo-progreso{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);pointer-events:none}
.ciclo-progreso circle{fill:none;stroke:var(--lima);stroke-width:1.4;stroke-linecap:round;stroke-dasharray:calc(var(--avance) * 100) 100;transition:stroke-dasharray .9s ease}
.ciclo-nodo{border:0;font:inherit;cursor:pointer;opacity:.82;transition:transform .45s,box-shadow .45s,background .45s,opacity .45s}
.ciclo-nodo:hover{opacity:1}
.ciclo-nodo.activo{opacity:1;background:#fff;transform:scale(1.18);box-shadow:0 0 0 7px rgba(140,198,63,.3),0 10px 24px rgba(0,0,0,.28)}
.modelo-claro .ciclo-nodo.activo{background:var(--marino);color:var(--lima)}
.ciclo-centro{position:absolute;inset:22%;border-radius:50%;overflow:hidden;background:var(--marino-2);box-shadow:0 12px 30px rgba(0,0,0,.25),inset 0 0 0 4px rgba(255,255,255,.12)}
.ciclo-fotos>*{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease}
.ciclo-fotos>.activa{opacity:1;animation:acercar 4s linear both}
.ciclo-sinfoto{display:grid;place-items:center;background:linear-gradient(140deg,var(--marino-2),var(--azul));color:var(--lima)}
.ciclo-sinfoto .ico{width:34%;height:34%;margin-bottom:18%}
.ciclo-centro::after{content:"";position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(transparent,rgba(15,29,56,.85));pointer-events:none}
.ciclo-etiqueta{position:absolute;left:12%;right:12%;bottom:13%;z-index:2;text-align:center;color:#fff;display:flex;flex-direction:column;align-items:center;gap:6px}
.ciclo-etiqueta b{background:var(--lima);color:var(--marino);border-radius:999px;padding:.15em .7em;font-size:.78rem}
.ciclo-etiqueta span{font-weight:700;font-size:1rem;line-height:1.2}
.modelo-lista{list-style:none;display:grid;gap:6px}
.modelo-lista li{display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:start;padding:10px 12px;border-radius:14px;cursor:pointer;transition:background .35s,box-shadow .35s}
.mod-num{width:40px;height:40px;border-radius:12px;background:var(--lima);color:var(--marino);font-weight:800;display:grid;place-items:center;transition:background .35s}
.modelo-lista h3{font-size:1.08rem;margin-bottom:2px}
.modelo-lista p{font-size:.95rem}
.sec-marino .modelo-lista p{color:#C4CFDC}
.modelo-lista li:not(.activo) .mod-num{background:rgba(140,198,63,.35)}
.sec-marino .modelo-lista li.activo{background:rgba(255,255,255,.08)}
.modelo-claro .modelo-lista li.activo{background:#fff;box-shadow:var(--sombra)}
@media (prefers-reduced-motion:reduce){.ciclo::before,.ciclo-fotos>.activa{animation:none}}

/* Beneficios y comparación */
.beneficios{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.beneficio{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:30px}
.beneficio .ico-caja{width:56px;height:56px;border-radius:16px;background:var(--marino);color:var(--lima);display:grid;place-items:center;margin-bottom:14px}
.beneficio .ico-caja .ico{width:28px;height:28px}
.beneficio h3{font-size:1.3rem;margin-bottom:8px}
.comparacion{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:34px;border-radius:22px;overflow:hidden;border:1px solid var(--linea)}
.comp-col{padding:30px 34px}
.comp-col h3{font-size:1.25rem;margin-bottom:16px}
.comp-col ul{list-style:none;display:grid;gap:12px}
.comp-col li{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:start}
.comp-col .ico{width:22px;height:22px;padding:3px;border-radius:50%;margin-top:2px}
.comp-baja{background:#fff;color:var(--nota)}
.comp-baja h3{color:var(--azul)}
.comp-baja .ico{background:#F3E1E1;color:#B23A3A}
.comp-sitelecom{background:var(--marino);color:#D5DEE9}
.comp-sitelecom h3{color:#fff}
.comp-ahorro{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12)}
.comp-ahorro b{font-size:2.6rem;line-height:1;font-weight:800;color:var(--lima);letter-spacing:-.02em}
.comp-ahorro span{font-size:.9rem;color:#C4CFDC;line-height:1.35}
.comp-baja h3{margin-top:calc(2.6rem + 37px)}
@media (max-width:940px){.comp-baja h3{margin-top:0}}
.comp-sitelecom .ico{background:var(--lima);color:var(--marino)}

/* Galería de fotos de terreno (verticales) */
.fotos-terreno{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.fotos-terreno figure{margin:0;border-radius:var(--radio);overflow:hidden;position:relative;aspect-ratio:3/4;background:var(--fondo)}
.fotos-terreno img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.fotos-terreno figure:hover img{transform:scale(1.04)}
.fotos-terreno figcaption{position:absolute;left:10px;right:10px;bottom:10px;background:rgba(22,40,74,.88);color:#fff;font-size:.8rem;font-weight:600;padding:.4em .8em;border-radius:10px;line-height:1.35}

/* Noticias */
.noticia-tarjeta{display:grid;grid-template-columns:1fr 1.2fr;gap:0;background:#fff;border:1px solid var(--linea);border-radius:22px;overflow:hidden;text-decoration:none;color:var(--cuerpo);transition:box-shadow .2s,transform .2s}
.noticia-tarjeta:hover{box-shadow:var(--sombra);transform:translateY(-3px)}
.noticia-tarjeta img{width:100%;height:100%;object-fit:cover;min-height:280px}
.noticia-tarjeta>div{padding:34px;display:flex;flex-direction:column;gap:12px;justify-content:center}
.noticia-fecha{font-size:.84rem;color:var(--nota);font-weight:600}
.articulo{max-width:780px;margin:0 auto}
.articulo h1{font-size:clamp(2rem,4vw,2.9rem);margin:10px 0 16px}
.articulo .bajada{font-size:1.2rem;color:var(--azul);line-height:1.55}
.articulo h2{font-size:1.5rem;margin:40px 0 12px}
.articulo p{margin-top:14px}
.articulo .portada{border-radius:22px;margin:30px 0 8px;width:100%;aspect-ratio:16/10;object-fit:cover;box-shadow:var(--sombra)}
.articulo .pie-foto{font-size:.85rem;color:var(--nota)}
.articulo ul.lista-check{margin-top:16px}
.articulo .datos-clave h2{margin:0 0 10px;font-size:1.1rem}

/* Sellos de centro autorizado y logos de marcas */
.autorizado{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.aut-sello{display:flex;align-items:center;gap:14px;background:var(--marino);color:#fff;border-radius:18px;padding:16px 26px 16px 18px;min-width:260px}
.aut-sello .ico{width:46px;height:46px;padding:10px;border-radius:12px;background:var(--lima);color:var(--marino)}
.aut-sello small{display:block;font-size:.78rem;color:#C4CFDC;font-weight:600;letter-spacing:.02em}
.aut-sello b{font-size:1.6rem;line-height:1.1;letter-spacing:.01em}
.marcas-tit{text-align:center;font-weight:700;color:var(--azul);margin:40px 0 18px;font-size:.9rem;text-transform:uppercase;letter-spacing:.1em}
.logos{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px}
.logos li{background:#fff;border:1px solid var(--linea);border-radius:16px;height:84px;width:170px;display:grid;place-items:center;padding:16px 22px}
.logos img{max-height:42px;max-width:100%;width:auto;filter:grayscale(1);opacity:.75;transition:filter .25s,opacity .25s}
.logos li:hover img{filter:none;opacity:1}
.logos .logo-texto{font-weight:800;font-size:1.25rem;letter-spacing:.06em;color:#7A8594;font-style:italic}
.logos .logos-mas{font-weight:700;color:var(--nota);font-size:.95rem;border-style:dashed}

/* Marcas */
.marcas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.marca-chip{border:1px solid var(--linea);background:#fff;border-radius:var(--pastilla);padding:.7em 1.6em;font-weight:800;color:var(--azul);font-size:1.05rem;letter-spacing:.02em}
.marca-chip.principal{background:var(--marino);border-color:var(--marino);color:#fff}

/* Datos clave (cajas citables) */
.datos-clave{background:#fff;border:1px solid var(--linea);border-left:5px solid var(--lima);border-radius:14px;padding:22px 26px}
.datos-clave h2,.datos-clave h3{font-size:1.1rem;margin-bottom:10px}
.datos-clave ul{list-style:none;display:grid;gap:8px}
.datos-clave li{padding-left:20px;position:relative;font-size:.97rem}
.datos-clave li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--verde)}

/* Preguntas frecuentes */
.faqs{max-width:860px;margin:0 auto;display:grid;gap:12px}
.faq{background:#fff;border:1px solid var(--linea);border-radius:14px;padding:0 22px;transition:box-shadow .2s}
.faq[open]{box-shadow:var(--sombra);border-color:var(--gris)}
.faq summary{cursor:pointer;list-style:none;font-weight:700;color:var(--marino);padding:18px 30px 18px 0;position:relative;font-size:1.03rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:var(--lima-suave);color:var(--verde-txt);display:grid;place-items:center;font-size:1.2rem;font-weight:700}
.faq[open] summary::after{content:"–"}
.faq p{padding:0 0 20px;font-size:.98rem}

/* Encabezado de página interior */
.cabecera{padding:40px 0 72px;background:linear-gradient(180deg,#fff,var(--fondo))}
.cabecera-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.cabecera h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:18px}
.cabecera .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

/* Formulario */
.contacto-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
.form-card{background:#fff;border:1px solid var(--linea);border-radius:22px;box-shadow:var(--sombra);padding:32px;display:grid;gap:14px}
.form-card h3{font-size:1.4rem}
.form-card .nota{color:var(--nota);font-size:.92rem;margin-top:-8px}
.form-card label{display:grid;gap:6px;font-size:.88rem;font-weight:600;color:var(--marino)}
.form-card input,.form-card select,.form-card textarea{font:inherit;font-size:1rem;font-weight:400;color:var(--cuerpo);border:1.5px solid var(--linea);border-radius:12px;padding:.75em .9em;background:#fff;width:100%;transition:border-color .15s,box-shadow .15s}
.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:none;border-color:var(--verde);box-shadow:0 0 0 4px rgba(140,198,63,.22)}
.form-card textarea{resize:vertical;min-height:110px}
.f-fila{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hp{position:absolute!important;left:-9999px!important;height:1px;overflow:hidden}
.f-msg{font-size:.92rem;font-weight:600;min-height:1.2em}
.f-msg.ok{color:var(--verde-txt)}
.f-msg.mal{color:#B23A3A}
.f-desafio{background:var(--lima-suave);border-radius:12px;padding:14px}
.legal{font-size:.8rem;color:var(--nota)}
.canal{display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--linea)}
.canal .ico{width:44px;height:44px;padding:11px;border-radius:12px;background:var(--marino);color:var(--lima)}
.canal b{display:block;color:var(--marino)}
.canal a{font-weight:700;font-size:1.08rem;text-decoration:none}
.canal a:hover{text-decoration:underline}

/* Cierre */
.cierre{background:var(--marino);color:#C9D4E2;padding:64px 0;position:relative;overflow:hidden}
.cierre::after{content:"";position:absolute;right:-80px;top:-80px;width:320px;height:320px;border-radius:50%;border:48px solid rgba(140,198,63,.16)}
.cierre-in{display:flex;justify-content:space-between;align-items:center;gap:32px;position:relative;z-index:1}
.cierre h2{color:#fff;font-size:clamp(1.5rem,2.6vw,2.1rem);margin-bottom:8px}
.cierre .acts{display:flex;gap:12px;flex-wrap:wrap;flex:none}

/* Pie */
.pie{background:#0F1D38;color:#AEBBCC;font-size:.94rem}
.pie-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:40px;padding-top:60px;padding-bottom:48px}
.pie-logo{height:36px;width:auto;margin-bottom:18px}
.pie h4{color:#fff;font-size:.95rem;margin-bottom:14px}
.pie ul{list-style:none;display:grid;gap:8px}
.pie a{color:#AEBBCC;text-decoration:none}
.pie a:hover{color:#fff}
.pie-grupo{margin-top:12px;color:var(--lima);font-weight:600}
.pie-dato{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.pie-dato .ico{color:var(--lima)}
.pie-base{border-top:1px solid rgba(255,255,255,.08);padding:18px 0;font-size:.82rem;color:#7F8EA4}
.pie-base .cont{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* Texto largo (privacidad) */
.prosa{max-width:780px}
.prosa h2{font-size:1.35rem;margin:32px 0 10px}
.prosa ul{margin:10px 0 0 22px}

/* Aparición suave al hacer scroll */
/* Solo se oculta si hay JavaScript: sin él, el contenido se ve igual. */
.js .rev{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}
.js .rev.visto{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .rev{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}*{transition:none!important}}

/* ---- Responsivo ------------------------------------------------------- */
@media (max-width:1080px){
  .cifras{grid-template-columns:repeat(3,1fr)}
  .cifra:nth-child(3){border-right:0}
  .cifra:nth-child(-n+3){border-bottom:1px solid var(--linea)}
  .tarjetas{grid-template-columns:1fr 1fr}
  .cifras-4{grid-template-columns:1fr 1fr}
  .cifras-4 .cifra{border-right:0;border-bottom:1px solid var(--linea)}
  .cifras-4 .cifra:nth-child(odd){border-right:1px solid var(--linea)}
  .cifras-4 .cifra:nth-child(n+3){border-bottom:0}
  .fotos-terreno{grid-template-columns:repeat(2,1fr)}
  .pie-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:940px){
  .burger{display:block}
  .nav-cta .btn{display:none}
  .menu{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:12px 20px 24px;gap:2px;border-bottom:1px solid var(--linea);box-shadow:0 18px 30px rgba(22,40,74,.12);max-height:calc(100vh - 80px);overflow:auto;display:none}
  .menu.abierto{display:flex}
  .menu>a,.drop>button{width:100%;justify-content:space-between;padding:.85em .9em;font-size:1.02rem}
  .drop-pan{position:static;transform:none!important;width:auto;box-shadow:none;border:0;padding:0 0 8px 8px;display:none;opacity:1;visibility:visible}
  .drop.abierto .drop-pan{display:block}
  .drop:hover .drop-pan{display:none}
  .drop.abierto:hover .drop-pan{display:block}
  .menu>a.solo-movil{display:inline-flex;justify-content:center;margin-top:10px;background:var(--lima);color:var(--marino)}
  .hero-grid,.cabecera-grid,.onestop,.dupla,.contacto-grid,.modelo{grid-template-columns:1fr;gap:40px}
  .beneficios{grid-template-columns:1fr}
  .comparacion{grid-template-columns:1fr}
  .dupla-inv>:first-child{order:0}
  .hero{padding:40px 0 70px}
  .galeria{grid-template-columns:1fr 1fr;grid-template-rows:200px 160px 160px}
  .galeria figure:first-child{grid-column:span 2;grid-row:auto}
  .cierre-in{flex-direction:column;align-items:flex-start}
}
@media (max-width:640px){
  body{font-size:16px}
  .tb-sello{font-size:.78rem}
  .tb-datos a:last-child{display:none}
  .nav .cont{height:66px}
  .marca img{height:32px}
  .sec{padding:64px 0}
  .cifras{grid-template-columns:1fr 1fr}
  .cifra{border-right:0!important;border-bottom:1px solid var(--linea)}
  .cifra:nth-child(odd){border-right:1px solid var(--linea)!important}
  .cifra:last-child{grid-column:span 2;border-bottom:0;border-right:0!important}
  .cifras-4 .cifra:last-child{grid-column:auto}
  .cifras-4 .cifra:nth-child(3){border-bottom:0}
  .cifra b{font-size:1.6rem}
  .tarjetas{grid-template-columns:1fr}
  .ciclo{--r:118px;max-width:320px}
  .ciclo-nodo{left:-26px;top:-26px;width:52px;height:52px}
  .ciclo-nodo .ico{width:24px;height:24px}
  .ciclo-centro{inset:25%}
  .ciclo-etiqueta span{font-size:.82rem}
  .ciclo-etiqueta b{font-size:.7rem}
  .ciclo-nodo.activo{transform:scale(1.12)}
  .comp-col{padding:24px}
  .logos li{width:calc(50% - 7px);height:72px}
  .aut-sello{min-width:0;width:100%}
  .fotos-terreno{grid-template-columns:1fr 1fr;gap:10px}
  .noticia-tarjeta{grid-template-columns:1fr}
  .noticia-tarjeta>div{padding:22px}
  .f-fila{grid-template-columns:1fr}
  .form-card{padding:22px}
  .hero-foto{padding:0 0 18px 18px}
  .flot-a{right:-6px;top:-14px}
  .flot-b{display:none}
  .carrusel-rotulo{left:12px;bottom:12px;font-size:.88rem}
  .carrusel-puntos{display:none}
  .pie-grid{grid-template-columns:1fr}
  .topbar .cont{justify-content:center}
  .tb-datos{display:none}
  .hero .acts .btn,.cabecera .acts .btn{flex:1 1 100%}
}
