:root{
  --azul:#172b5f;
  --azul-claro:#2f7fbd;
  --dorado:#f2b51d;
  --verde:#6bbf5a;
  --texto:#172033;
  --gris:#657087;
  --linea:#e8eef6;
  --fondo:#ffffff;
  --suave:#f6fbff;
  --sombra:0 24px 70px rgba(23,43,95,.14);
  --radio:30px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;background:var(--fondo);color:var(--texto);line-height:1.65;overflow-x:hidden}
a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.container{width:min(1140px,92%);margin:auto}.section{padding:92px 0}
.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--linea)}
.nav{width:min(1180px,94%);height:78px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;color:var(--azul)}.brand-mark{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#fff3c9,#e8f8ff);box-shadow:0 12px 28px rgba(47,127,189,.15);color:var(--dorado);font-size:1.6rem}.brand b{display:block;text-transform:uppercase;letter-spacing:.06em;line-height:1.1}.brand small{display:block;color:var(--dorado);font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-size:.72rem}.menu{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--azul)}.menu a{padding:10px 14px;border-radius:999px;transition:.25s}.menu a:hover{background:var(--suave);color:var(--azul-claro)}.menu-cta{background:var(--azul)!important;color:#fff!important;box-shadow:0 12px 28px rgba(23,43,95,.2)}.menu-button{display:none;border:0;background:var(--suave);color:var(--azul);font-size:1.45rem;border-radius:14px;padding:8px 13px}
.hero{position:relative;min-height:760px;display:flex;align-items:center;background:radial-gradient(circle at 8% 5%,#e8f8ff 0,transparent 32%),linear-gradient(135deg,#fff 0%,#f8fcff 100%);overflow:hidden}.shape{position:absolute;border-radius:999px;pointer-events:none}.shape-a{width:520px;height:520px;background:rgba(242,181,29,.13);right:-190px;top:70px}.shape-b{width:420px;height:420px;background:rgba(47,127,189,.10);left:-150px;bottom:-90px}.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:58px;align-items:center}.kicker{display:inline-flex;align-items:center;gap:9px;color:var(--azul-claro);font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:.77rem;margin-bottom:16px}.kicker:before{content:"";width:34px;height:2px;background:linear-gradient(90deg,var(--dorado),var(--azul-claro));border-radius:99px}.kicker.light{color:#fff}.kicker.light:before{background:var(--dorado)}h1,h2,h3{color:var(--azul);line-height:1.08}h1{font-size:clamp(2.55rem,6vw,5.45rem);letter-spacing:-.06em;text-transform:uppercase;margin-bottom:22px}h2{font-size:clamp(2rem,4vw,3.35rem);letter-spacing:-.04em;margin-bottom:18px}h3{font-size:1.22rem;margin-bottom:10px}.lead{font-size:clamp(1.3rem,2vw,1.72rem);color:var(--azul);font-weight:900;line-height:1.32;margin-bottom:14px}.body-text,.glass-card p,.title-center p,.service-card p,.step p,.contact-box p{color:var(--gris);font-size:1.08rem}.buttons{display:flex;flex-wrap:wrap;gap:14px;margin:34px 0 26px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:15px 24px;border-radius:999px;font-weight:900;border:1px solid transparent;box-shadow:0 16px 34px rgba(23,43,95,.12);transition:.25s}.btn:hover{transform:translateY(-3px)}.primary{background:linear-gradient(135deg,var(--azul),var(--azul-claro));color:white}.secondary{background:#fff;color:var(--azul);border-color:var(--linea)}.chips{display:flex;flex-wrap:wrap;gap:10px}.chips span{background:#fff;border:1px solid var(--linea);border-radius:999px;padding:9px 13px;font-size:.92rem;font-weight:800;color:var(--azul);box-shadow:0 12px 24px rgba(23,43,95,.06)}.hero-image{position:relative;border-radius:40px;background:#fff;padding:12px;box-shadow:var(--sombra);border:1px solid var(--linea)}.hero-image:before{content:"";position:absolute;inset:-22px;border-radius:50px;background:linear-gradient(145deg,rgba(242,181,29,.25),rgba(47,127,189,.16));transform:rotate(-4deg);z-index:-1}.hero-image img{border-radius:30px;width:100%;aspect-ratio:1/1;object-fit:cover}
.intro{background:#fff}.split{display:grid;grid-template-columns:.82fr 1.18fr;gap:60px;align-items:start}.glass-card{background:linear-gradient(145deg,#fff,#f7fbff);border:1px solid var(--linea);border-radius:var(--radio);padding:36px;box-shadow:0 20px 60px rgba(23,43,95,.08)}.glass-card p+p{margin-top:15px}.glass-card strong{color:var(--azul)}.services{background:linear-gradient(180deg,#f8fcff 0%,#fff 100%)}.title-center{text-align:center;max-width:780px;margin:0 auto 48px}.title-center .kicker{justify-content:center}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{position:relative;min-height:310px;background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:34px;box-shadow:0 20px 52px rgba(23,43,95,.08);overflow:hidden;transition:.28s}.service-card:hover{transform:translateY(-8px);box-shadow:var(--sombra)}.service-card:after{content:"";position:absolute;right:-72px;top:-72px;width:160px;height:160px;border-radius:50%;background:rgba(47,127,189,.08)}.icon{width:66px;height:66px;border-radius:22px;display:grid;place-items:center;font-size:2rem;margin-bottom:24px}.green{background:#effaed}.blue{background:#eaf6ff}.gold{background:#fff5d8}
.online{background:#fff}.online-box{display:grid;grid-template-columns:1fr .9fr;gap:40px;align-items:center;border-radius:38px;padding:54px;background:linear-gradient(135deg,var(--azul),#215d94);color:#fff;box-shadow:var(--sombra);position:relative;overflow:hidden}.online-box:before{content:"";position:absolute;width:440px;height:440px;border-radius:50%;background:rgba(255,255,255,.08);right:-140px;top:-140px}.online-box>*{position:relative}.online-box h2{color:#fff}.online-box p{font-size:1.1rem;color:rgba(255,255,255,.88)}.keywords{display:flex;flex-wrap:wrap;gap:12px}.keywords span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:12px 16px;font-weight:900}.process{background:linear-gradient(180deg,#fff 0%,#f8fcff 100%)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{background:#fff;border:1px solid var(--linea);border-radius:24px;padding:26px;box-shadow:0 18px 44px rgba(23,43,95,.07)}.step b{display:inline-flex;margin-bottom:18px;color:var(--dorado);font-size:1.35rem}.quote{background:#fff}.quote-card{text-align:center;max-width:920px;background:linear-gradient(145deg,#fffaf0,#f3fbff);border:1px solid var(--linea);border-radius:42px;padding:62px 42px;box-shadow:var(--sombra)}.quote-card span{font-family:Georgia,serif;color:var(--dorado);font-size:6rem;line-height:.55}.quote-card p{color:var(--gris);font-size:1.12rem;font-weight:800}.contact{background:linear-gradient(180deg,#f8fcff 0%,#fff 100%)}.contact-box{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff;border:1px solid var(--linea);border-radius:36px;padding:42px;box-shadow:0 20px 60px rgba(23,43,95,.08)}.footer{padding:34px 0;background:var(--azul);color:#fff}.footer-content{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer b{text-transform:uppercase;letter-spacing:.06em}.footer p{color:rgba(255,255,255,.76)}.show{opacity:1;transform:none}.fade{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.fade.visible{opacity:1;transform:translateY(0)}
@media(max-width:920px){.menu-button{display:block}.menu{position:absolute;top:78px;left:3%;right:3%;display:none;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--linea);border-radius:22px;padding:14px;box-shadow:var(--sombra)}.menu.open{display:flex}.menu a{text-align:center}.hero{min-height:auto;padding:58px 0}.hero-grid,.split,.online-box{grid-template-columns:1fr}.hero-image{max-width:560px;margin:auto}.service-grid,.steps{grid-template-columns:1fr 1fr}.section{padding:72px 0}.footer-content,.contact-box{flex-direction:column;text-align:center;align-items:center}}
@media(max-width:620px){.nav{height:72px}.menu{top:72px}.brand b{font-size:.82rem}.brand small{font-size:.62rem}h1{font-size:2.42rem}.buttons{flex-direction:column}.btn{width:100%}.service-grid,.steps{grid-template-columns:1fr}.online-box,.contact-box,.quote-card,.glass-card{padding:28px;border-radius:26px}.chips span{width:100%}.section{padding:58px 0}}
