:root{--azul:#0648b8;--azul-oscuro:#061b46;--negro:#080b10;--rojo:#e51b23;--amarillo:#ffd429;--blanco:#fff;--gris:#f3f6fb;--texto:#172033;--sombra:0 22px 70px rgba(5,22,60,.18)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Arial,Helvetica,sans-serif;color:var(--texto);background:#fff;line-height:1.6}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.contenedor{width:min(1160px,92%);margin:auto}.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);box-shadow:0 6px 25px rgba(0,0,0,.08)}.nav{min-height:82px;display:flex;justify-content:space-between;align-items:center;gap:20px}.marca{display:flex;align-items:center;gap:13px;font-weight:900;text-transform:uppercase;color:var(--azul-oscuro);line-height:1.05}.marca small{display:block;color:var(--rojo);font-size:.8rem}.logo{width:86px;height:62px;object-fit:contain;background:#fff;border-radius:16px;padding:5px;box-shadow:0 10px 30px rgba(0,0,0,.15)}.menu{display:flex;gap:8px;align-items:center;font-weight:800}.menu a{padding:10px 14px;border-radius:50px}.menu a:hover{background:var(--gris)}.btn-menu{background:var(--rojo)!important;color:#fff!important}.menu-btn{display:none;background:var(--azul-oscuro);color:#fff;border:0;border-radius:12px;width:46px;height:46px;font-size:1.4rem}.hero{position:relative;min-height:calc(100vh - 82px);display:grid;align-items:center;overflow:hidden;color:#fff;background:linear-gradient(135deg,#061b46,#080b10)}.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 20% 25%,rgba(6,72,184,.7),transparent 34%),radial-gradient(circle at 78% 30%,rgba(255,212,41,.22),transparent 26%),linear-gradient(115deg,rgba(255,255,255,.06) 0 1px,transparent 1px 90px)}.hero:after{content:"";position:absolute;right:-150px;bottom:-180px;width:520px;height:520px;border:55px solid rgba(255,255,255,.08);border-radius:50%}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:45px;align-items:center;padding:78px 0}.etiqueta{display:inline-flex;align-items:center;gap:8px;color:var(--amarillo);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;margin-bottom:12px}.etiqueta:before{content:"";width:34px;height:4px;border-radius:10px;background:var(--rojo)}.etiqueta.azul{color:var(--azul)}h1,h2,h3{line-height:1.05}h1{font-size:clamp(2.5rem,6vw,5.7rem);font-weight:1000;letter-spacing:-.06em;text-transform:uppercase;text-shadow:0 14px 34px rgba(0,0,0,.3)}h2{font-size:clamp(2rem,4vw,3.35rem);letter-spacing:-.04em;color:var(--azul-oscuro)}.hero .descripcion{font-size:1.18rem;max-width:650px;color:#e4edff;margin:24px 0 32px}.acciones{display:flex;flex-wrap:wrap;gap:14px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:14px 24px;border-radius:999px;font-weight:900;transition:.25s;text-align:center}.btn:hover{transform:translateY(-3px)}.principal{background:linear-gradient(135deg,var(--rojo),#ff6b00);color:#fff;box-shadow:0 16px 35px rgba(229,27,35,.28)}.secundario{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.24)}.claro{background:var(--amarillo);color:var(--azul-oscuro)}.ancho{width:100%;margin-top:22px}.hero-imagen{position:relative;min-height:500px;display:grid;place-items:center;background:linear-gradient(160deg,rgba(255,255,255,.18),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.18);border-radius:36px;box-shadow:0 30px 90px rgba(0,0,0,.32);overflow:hidden}.hero-imagen:before{content:"";position:absolute;width:410px;height:410px;border-radius:50%;border:42px solid #090b0f;box-shadow:inset 0 0 0 12px #2e3540}.hero-imagen img{position:relative;z-index:1;width:min(390px,86%);background:#fff;border-radius:26px;padding:10px;box-shadow:0 22px 55px rgba(0,0,0,.35)}.whatsapp-card{position:absolute;z-index:2;left:26px;bottom:26px;background:#fff;color:var(--azul-oscuro);border-radius:22px;padding:16px 20px;box-shadow:var(--sombra)}.whatsapp-card span,.contacto-card span{display:block;color:var(--rojo);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.whatsapp-card strong,.contacto-card strong{display:block;font-size:1.18rem}.seccion{padding:90px 0}.dos-columnas{display:grid;grid-template-columns:.95fr 1.05fr;gap:45px;align-items:start}.tarjeta-texto{font-size:1.07rem;background:var(--gris);border-left:8px solid var(--azul);border-radius:24px;padding:32px;box-shadow:0 18px 45px rgba(6,72,184,.08)}.tarjeta-texto p+p{margin-top:14px}.servicios{background:linear-gradient(180deg,var(--azul-oscuro),#07101f);color:#fff}.titulo-centro{text-align:center;max-width:780px;margin:0 auto 42px}.titulo-centro h2,.servicios h2{color:#fff}.titulo-centro p{color:#cfd9e9;margin-top:12px}.oscuro h2{color:var(--azul-oscuro)}.oscuro p{color:#657188}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:32px;box-shadow:0 24px 60px rgba(0,0,0,.18);transition:.25s}.card:hover{transform:translateY(-8px);background:rgba(255,255,255,.13)}.icono{width:58px;height:58px;border-radius:18px;background:var(--amarillo);color:var(--azul-oscuro);display:grid;place-items:center;font-size:1.5rem;font-weight:900;margin-bottom:18px}.card h3{font-size:1.35rem;margin-bottom:10px;color:#fff}.card p{color:#dce4f2}.banda{padding:72px 0;background:linear-gradient(135deg,var(--azul),var(--azul-oscuro));color:#fff;overflow:hidden}.banda-grid{display:flex;align-items:center;justify-content:space-between;gap:28px}.banda h2{color:#fff;max-width:760px}.banda p{color:#dbe7ff;margin-top:12px}.galeria{background:#f8faff}.galeria-grid{display:grid;grid-template-columns:1fr;gap:28px}.galeria figure{background:#fff;border-radius:30px;overflow:hidden;box-shadow:var(--sombra);border:1px solid rgba(6,72,184,.1)}.galeria img{width:100%;height:auto;object-fit:contain;background:#eef3fb}.galeria figcaption{padding:18px 22px;border-top:5px solid var(--rojo);font-weight:900;color:var(--azul-oscuro)}.contacto-panel{display:grid;grid-template-columns:1fr 390px;gap:35px;align-items:center;background:linear-gradient(135deg,#061b46,#0b1220);color:#fff;border-radius:36px;padding:46px;box-shadow:var(--sombra)}.contacto-panel h2{color:#fff}.contacto-panel p{color:#dce8ff;margin-top:13px}.contacto-card{background:#fff;color:var(--azul-oscuro);border-radius:26px;padding:26px;box-shadow:0 20px 60px rgba(0,0,0,.22)}.contacto-card strong{font-size:1.45rem}.footer{background:#05070b;color:#fff;padding:28px 0}.footer-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;color:#d9e1ee}.flotante{position:fixed;right:18px;bottom:18px;z-index:60;background:#25d366;color:#fff;padding:14px 18px;border-radius:999px;font-weight:900;box-shadow:0 16px 34px rgba(0,0,0,.25)}
@media(max-width:900px){.menu-btn{display:block}.menu{position:absolute;top:88px;left:4%;right:4%;background:#fff;border-radius:20px;box-shadow:var(--sombra);padding:16px;display:none;flex-direction:column;align-items:stretch}.menu.abierto{display:flex}.menu a{text-align:center;color:var(--azul-oscuro)}.hero-grid,.dos-columnas,.contacto-panel{grid-template-columns:1fr}.hero-imagen{min-height:360px}.cards{grid-template-columns:1fr}.banda-grid{flex-direction:column;align-items:flex-start}.seccion{padding:72px 0}.flotante{left:18px;right:18px;text-align:center}.marca{font-size:.9rem}}
@media(max-width:520px){.logo{width:66px;height:52px}.hero-grid{padding:54px 0}h1{font-size:2.3rem}.acciones .btn{width:100%}.hero-imagen{min-height:315px;border-radius:26px}.whatsapp-card{left:16px;right:16px}.contacto-card strong{font-size:1.08rem}.contacto-panel{padding:32px 22px}h2{font-size:2rem}}
.ubicacion-info{margin-top:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:20px}.ubicacion-info span{display:block;color:var(--amarillo);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}.ubicacion-info strong{display:block;color:#fff;font-size:1.12rem}.ubicacion-info p{margin-top:6px!important;color:#dce8ff!important}.contacto-card span:not(:first-child){margin-top:18px}.secundario-contacto{background:var(--azul-oscuro);color:#fff}.telefono{background:var(--gris);color:var(--azul-oscuro);border:1px solid rgba(6,72,184,.12)}
