*{box-sizing:border-box;margin:0;padding:0}
:root{--azul:#0b4f7a;--azul2:#1687c8;--aqua:#22b8cf;--verde:#15b46a;--gris:#64748b;--claro:#eefaff;--oscuro:#082f49;--white:#fff;--shadow:0 20px 50px rgba(8,47,73,.12)}
body{font-family:Arial,Helvetica,sans-serif;color:var(--oscuro);background:#fff;line-height:1.6}
img{max-width:100%;display:block}a{text-decoration:none;color:inherit}
.topbar{background:linear-gradient(90deg,var(--azul),var(--aqua));color:white;font-size:14px}
.topbar .wrap{max-width:1180px;margin:auto;padding:9px 22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);box-shadow:0 8px 22px rgba(0,0,0,.05)}
.nav{max-width:1180px;margin:auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--azul)}
.logo img{width:86px;height:auto;border-radius:6px}.logo span{font-size:18px}.logo small{display:block;font-weight:600;color:var(--gris);font-size:12px}
.links{display:flex;gap:24px;font-weight:700}.links a:hover,.links a.active{color:var(--azul2)}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:13px 22px;font-weight:800;cursor:pointer;transition:.25s}
.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--verde);color:white}.btn-blue{background:var(--azul2);color:white}.btn-outline{border:2px solid var(--azul2);color:var(--azul2);background:white}
.menu{display:none;background:var(--claro);font-size:24px;border:0;border-radius:12px;padding:8px 12px;color:var(--azul)}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at right top,#dff8ff 0,#fff 45%,#f8fdff 100%)}
.hero .wrap{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:38px;padding:70px 22px}
.badge{display:inline-flex;gap:8px;align-items:center;background:#e8fbf3;color:#0c8f52;border-radius:999px;padding:8px 14px;font-weight:800;font-size:13px;margin-bottom:18px}
h1{font-size:clamp(38px,6vw,70px);line-height:.97;letter-spacing:-2.5px;margin-bottom:22px;color:#062a46}h1 span{color:var(--azul2)}
.hero p{font-size:19px;color:#475569;max-width:580px;margin-bottom:28px}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:32px}
.trust div{background:white;border-radius:18px;padding:16px;box-shadow:var(--shadow);font-size:14px;font-weight:700}.hero-img{position:relative}.hero-img img{border-radius:40px;box-shadow:var(--shadow)}
.float-card{position:absolute;bottom:24px;left:24px;background:white;border-radius:20px;padding:16px 20px;box-shadow:var(--shadow);font-weight:800}.stars{color:#ffb703;display:block}
.section{max-width:1180px;margin:auto;padding:76px 22px}.section-title{text-align:center;max-width:760px;margin:0 auto 38px}.eyebrow{color:var(--verde);font-size:13px;font-weight:900;letter-spacing:1.8px;text-transform:uppercase}h2{font-size:clamp(30px,4vw,46px);line-height:1.1;letter-spacing:-1px;color:#062a46;margin:8px 0 12px}.section-title p{color:var(--gris)}
.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:center;background:linear-gradient(120deg,#edfaff,#f7fffb);border-radius:36px;padding:42px;box-shadow:var(--shadow)}
.about img{border-radius:30px}.checks{display:grid;gap:12px;margin-top:20px}.checks li{list-style:none;background:white;padding:14px 16px;border-radius:16px;font-weight:700;box-shadow:0 10px 28px rgba(8,47,73,.06)}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:white;border:1px solid #e6f2f7;border-radius:26px;padding:28px;box-shadow:var(--shadow);transition:.3s}.card:hover{transform:translateY(-8px)}
.icon{width:68px;height:68px;border-radius:20px;background:var(--claro);display:grid;place-items:center;font-size:32px;margin-bottom:18px}.card h3{font-size:22px;margin-bottom:8px}.card p{color:var(--gris);margin-bottom:18px}
.process{background:#f7fcff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.step{background:white;border-radius:24px;padding:26px;text-align:center;box-shadow:var(--shadow)}.step span{display:grid;place-items:center;margin:0 auto 14px;width:42px;height:42px;border-radius:50%;background:var(--verde);color:white;font-weight:900}
.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}.gallery-main,.gallery-side{display:grid;gap:24px}.gallery-item{position:relative;overflow:hidden;border-radius:28px;box-shadow:var(--shadow);background:#eefaff}.gallery-item img{height:100%;width:100%;object-fit:cover;transition:.4s}.gallery-item:hover img{transform:scale(1.05)}.gallery-item.big{height:430px}.gallery-item.small{height:203px}.gallery-item span{position:absolute;top:16px;left:16px;background:rgba(8,47,73,.84);color:white;padding:8px 14px;border-radius:99px;font-weight:800}
.team-strip{background:linear-gradient(90deg,var(--azul),var(--aqua));color:white;border-radius:34px;padding:44px;display:grid;grid-template-columns:1fr 1.1fr;gap:24px;align-items:center}.team-strip p{opacity:.95}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.metric{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);padding:24px;border-radius:22px;text-align:center}.metric strong{font-size:34px;display:block}
.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;align-items:start}.contact-info{background:var(--claro);padding:34px;border-radius:30px}.contact-info p{color:var(--gris);margin:14px 0}.info-list{display:grid;gap:14px;margin-top:20px}.info-list div{background:white;border-radius:18px;padding:16px;font-weight:800}
.form{background:white;border-radius:30px;padding:30px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 1fr;gap:16px}.form input,.form select,.form textarea{width:100%;padding:15px 16px;border:1px solid #d8e8ef;border-radius:14px;font:inherit}.form textarea{grid-column:1/-1;min-height:130px}.form button{grid-column:1/-1}
.footer{background:#062a46;color:white;padding:36px 22px;text-align:center}.footer img{width:100px;margin:0 auto 14px;border-radius:8px}.whatsapp{position:fixed;right:22px;bottom:22px;width:60px;height:60px;border-radius:50%;background:#16c766;color:white;display:grid;place-items:center;font-size:30px;box-shadow:var(--shadow);z-index:60}
.reveal{opacity:0;transform:translateY(24px);transition:.7s}.reveal.active{opacity:1;transform:translateY(0)}
@media(max-width:900px){.menu{display:block}.links{display:none;position:absolute;left:22px;right:22px;top:92px;background:white;border-radius:22px;padding:20px;box-shadow:var(--shadow);flex-direction:column}.links.show{display:flex}.nav .btn{display:none}.hero .wrap,.about,.team-strip,.contact{grid-template-columns:1fr}.services,.steps,.gallery-grid{grid-template-columns:1fr 1fr}.trust{grid-template-columns:1fr}}
@media(max-width:620px){.topbar .wrap{font-size:12px}.logo span{display:none}.hero .wrap{padding:46px 18px}h1{font-size:42px}.services,.steps,.gallery-grid,.metrics,.form{grid-template-columns:1fr}.gallery-item.big,.gallery-item.small{height:260px}.section{padding:54px 18px}.about,.team-strip{padding:26px;border-radius:24px}}