:root{
  --azul:#10223f;
  --azul-2:#18345f;
  --dorado:#b9975b;
  --gris:#5e6673;
  --gris-claro:#f5f7fb;
  --blanco:#ffffff;
  --sombra:0 22px 55px rgba(16,34,63,.14);
  --radio:24px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;color:var(--azul);background:#fff;line-height:1.6;overflow-x:hidden}
a{text-decoration:none;color:inherit}
.contenedor{width:min(1120px,92%);margin:auto}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #e9edf4}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.marca{display:flex;align-items:center;gap:12px}
.marca-icono{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--azul),var(--azul-2));color:white;font-weight:800;box-shadow:0 10px 25px rgba(16,34,63,.22)}
.marca strong{display:block;font-size:1rem;line-height:1.1}.marca small{display:block;color:var(--gris);font-size:.78rem;margin-top:3px}
.menu{display:flex;align-items:center;gap:8px}.menu a{padding:10px 14px;border-radius:999px;color:#24344f;font-weight:700;font-size:.92rem}.menu a:hover{background:var(--gris-claro);color:var(--azul)}
.menu-btn{display:none;border:0;background:var(--azul);color:white;border-radius:12px;padding:9px 12px;font-size:1.2rem}
.hero{position:relative;padding:86px 0 70px;background:radial-gradient(circle at top left,#fff7e8 0,#fff 32%,#fff 100%);overflow:hidden}
.hero:before{content:"";position:absolute;right:-120px;top:40px;width:380px;height:380px;border-radius:50%;background:rgba(185,151,91,.13)}
.hero:after{content:"";position:absolute;left:-160px;bottom:-180px;width:360px;height:360px;border-radius:50%;background:rgba(16,34,63,.08)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.12fr .88fr;gap:42px;align-items:center}
.etiqueta{text-transform:uppercase;letter-spacing:.14em;color:var(--dorado);font-weight:800;font-size:.78rem;margin-bottom:12px}.clara{color:#f3d799}
h1{font-size:clamp(2.6rem,7vw,5.4rem);line-height:.95;letter-spacing:-.06em;margin-bottom:22px}h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;letter-spacing:-.04em;margin-bottom:18px}h3{font-size:1.25rem;margin-bottom:10px}.resumen{font-size:1.22rem;color:var(--gris);max-width:620px;margin-bottom:28px}.acciones{display:flex;gap:14px;flex-wrap:wrap}.boton{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 20px;font-weight:800;transition:.25s ease;border:1px solid transparent}.principal{background:var(--azul);color:white;box-shadow:0 14px 30px rgba(16,34,63,.2)}.principal:hover{transform:translateY(-2px);background:var(--azul-2)}.secundario{background:white;color:var(--azul);border-color:#dfe5ef}.secundario:hover{border-color:var(--dorado);transform:translateY(-2px)}.blanco{background:white;color:var(--azul)}
.tarjeta-hero{position:relative;background:white;border:1px solid #e8edf5;border-radius:32px;padding:36px;box-shadow:var(--sombra);overflow:hidden}.linea-superior{position:absolute;top:0;left:0;right:0;height:7px;background:linear-gradient(90deg,var(--dorado),var(--azul))}.emblema{width:112px;height:112px;border-radius:30px;display:grid;place-items:center;background:linear-gradient(135deg,#f8f0df,#fff);font-size:4rem;color:var(--azul);margin-bottom:22px;border:1px solid #eadfc8}.tarjeta-hero p{color:var(--gris);margin-bottom:22px}.dato{background:var(--gris-claro);padding:18px;border-radius:20px}.dato span,.dato small{display:block;color:var(--gris)}.dato strong{display:block;margin:4px 0;color:var(--azul)}
.seccion{padding:82px 0}.dos-columnas{display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:start}.panel-texto{background:white;border:1px solid #e8edf5;border-radius:var(--radio);padding:30px;box-shadow:0 15px 40px rgba(16,34,63,.08)}.panel-texto p{color:var(--gris);margin-bottom:14px}.area{background:var(--gris-claro)}.encabezado-centro{text-align:center;max-width:760px;margin:0 auto 34px}.encabezado-centro p{color:var(--gris)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:white;border:1px solid #e6ebf4;border-radius:24px;padding:28px;box-shadow:0 18px 45px rgba(16,34,63,.08);transition:.25s ease}.card:hover{transform:translateY(-6px)}.card span{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#fff7e8;color:var(--azul);font-size:1.8rem;margin-bottom:18px}.card p{color:var(--gris)}
.caja-atencion{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;background:linear-gradient(135deg,var(--azul),#1f3c68);border-radius:34px;padding:42px;color:white;box-shadow:var(--sombra)}.caja-atencion p{color:#dce6f5}.pasos{display:grid;gap:14px}.pasos div{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:16px}.pasos strong{color:#f3d799;font-size:1.1rem}
.ubicacion{background:#fff}.ubicacion-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:stretch}.ubicacion-card{border-radius:30px;padding:34px;background:var(--gris-claro);border:1px solid #e5ebf4}.direccion{font-size:1.1rem;color:var(--gris);margin:18px 0 24px}.mapa{min-height:390px;border-radius:30px;overflow:hidden;box-shadow:var(--sombra);border:1px solid #e5ebf4}.mapa iframe{width:100%;height:100%;border:0;display:block}
.cta{padding:70px 0;background:white}.cta-card{text-align:center;color:white;background:linear-gradient(135deg,var(--azul),#234b7a);border-radius:34px;padding:48px 24px;box-shadow:var(--sombra)}.cta-card p{color:#e8eef8;margin-bottom:22px}.footer{padding:28px 0;background:#0c1930;color:white}.footer-grid{display:flex;justify-content:space-between;gap:18px;align-items:center}.footer p{color:#cbd6e7}
@media(max-width:850px){.menu-btn{display:block}.menu{position:absolute;top:78px;left:4%;right:4%;display:none;flex-direction:column;background:white;border:1px solid #e5ebf4;border-radius:22px;padding:14px;box-shadow:var(--sombra)}.menu.abierto{display:flex}.menu a{width:100%;text-align:center}.hero-grid,.dos-columnas,.caja-atencion,.ubicacion-grid{grid-template-columns:1fr}.hero{padding-top:55px}.cards{grid-template-columns:1fr}.footer-grid{display:block}.footer-grid p{margin-top:8px}.mapa{min-height:320px}.marca strong{font-size:.9rem}.marca small{font-size:.72rem}}
