
*{box-sizing:border-box}
:root{
  --primary:#0d47a1;
  --secondary:#1565c0;
  --accent:#00b0ff;
  --dark:#0b2748;
}
html,body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,'Noto Sans',sans-serif;color:#1a1a1a;background:#f7f9fc}
a{color:var(--primary);text-decoration:none}
header{position:sticky;top:0;background:#fff;z-index:50;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.nav{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:10px 16px}
.nav .logo{display:flex;align-items:center;gap:10px}
.nav img{height:44px}
.nav ul{list-style:none;display:flex;gap:20px;margin:0;padding:0}
.nav li a{font-weight:600}
.hero{position:relative;display:grid;place-items:center;min-height:56vh;background:radial-gradient(1200px 400px at 50% 0%,rgba(13,71,161,.15),transparent),#0b2748;color:#fff;text-align:center;overflow:hidden}
.hero img.bg{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;opacity:.25;filter:grayscale(.1) contrast(1.2)}
.hero .content{position:relative;z-index:2;max-width:1000px;padding:48px 16px}
.hero h1{font-size:clamp(28px,4vw,48px);margin:0 0 10px}
.badges{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.badges span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);padding:6px 12px;border-radius:999px;font-weight:600}
.cta{display:flex;gap:12px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.btn{padding:12px 18px;border-radius:12px;border:0;font-weight:700;cursor:pointer}
.btn.primary{background:linear-gradient(135deg,var(--accent),#2ea1ff);color:#063a73;box-shadow:0 8px 18px rgba(0,176,255,.35)}
.btn.outline{background:transparent;border:2px solid #fff;color:#fff}
.section{max-width:1200px;margin:32px auto;padding:0 16px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:#fff;border-radius:18px;padding:18px;box-shadow:0 8px 24px rgba(11,39,72,.08);border:1px solid #ecf0f6}
.card h3{margin:8px 0 6px}
.grid-2{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
@media (max-width:900px){.grid-2{grid-template-columns:1fr}}
.gallery{columns:3 260px;gap:12px}
.gallery figure{break-inside:avoid;margin:0 0 12px;position:relative;cursor:pointer;border-radius:14px;overflow:hidden;box-shadow:0 10px 24px rgba(11,39,72,.08)}
.gallery img{width:100%;display:block}
#lightbox{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.8);z-index:100}
#lightbox img{max-width:92vw;max-height:86vh;border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.5)}
#lightbox.show{display:flex}
.info-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.info-list .item{background:#fff;border-radius:16px;padding:14px;border:1px solid #e8eef6}
footer{margin-top:32px;padding:28px 16px;background:#0b2748;color:#fff;text-align:center}
footer a{color:#a8d1ff;text-decoration:underline}
.whatsapp-float{position:fixed;right:16px;bottom:16px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;font-weight:900;font-size:26px;box-shadow:0 10px 24px rgba(0,0,0,.3);z-index:60}
.telbar{position:fixed;left:16px;bottom:16px;display:flex;align-items:center;gap:10px;background:#fff;border-radius:999px;padding:10px 14px;box-shadow:0 10px 24px rgba(0,0,0,.15);z-index:60;border:1px solid #e8eef6}
.telbar a{font-weight:800;color:#0b2748}
iframe{border:0;border-radius:14px;width:100%}
form{display:grid;gap:10px}
input,textarea{padding:12px 14px;border:1px solid #d8e2ee;border-radius:12px;font:inherit}
form .btn{justify-self:start;background:linear-gradient(135deg,#004aad,#3ba3ff);color:#fff}
.badge-phone{display:inline-flex;gap:8px;align-items:center;background:#eef6ff;border:1px solid #cfe5ff;padding:6px 10px;border-radius:999px;font-weight:700;color:#0b2748}
