:root{
  --azul:#082c53;
  --azul-2:#0d3d70;
  --dorado:#b99a58;
  --texto:#172033;
  --gris:#667388;
  --fondo:#f5f8fc;
  --blanco:#ffffff;
  --borde:rgba(8,44,83,.13);
  --sombra:0 24px 65px rgba(8,44,83,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--texto);background:var(--blanco);line-height:1.6}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px clamp(18px,5vw,72px);background:rgba(255,255,255,.94);border-bottom:1px solid var(--borde);box-shadow:0 10px 30px rgba(8,44,83,.06)}
.logo-small{width:170px;height:62px;object-fit:contain}
.menu{display:flex;align-items:center;gap:26px;font-weight:700;color:var(--azul)}
.menu a{position:relative}
.menu a:not(.menu-whatsapp)::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--dorado);transition:.25s}
.menu a:hover::after{width:100%}
.menu-whatsapp{background:var(--azul);color:#fff;padding:12px 20px;border-radius:999px;box-shadow:0 14px 28px rgba(8,44,83,.2)}
.menu-button{display:none;border:0;background:var(--azul);color:#fff;border-radius:12px;font-size:24px;padding:8px 13px}
.hero{position:relative;overflow:hidden;min-height:calc(100vh - 87px);background:linear-gradient(135deg,#ffffff 0%,#f7f9fc 54%,#eef4fa 100%)}
.hero::after{content:"";position:absolute;left:-8%;right:-8%;bottom:-160px;height:330px;background:linear-gradient(90deg,rgba(8,44,83,.08),rgba(185,154,88,.18));transform:skewY(-5deg)}
.hero-bg{position:absolute;border-radius:999px;filter:blur(4px);opacity:.9}
.hero-bg-one{width:360px;height:360px;left:-110px;top:70px;background:rgba(185,154,88,.16)}
.hero-bg-two{width:430px;height:430px;right:-150px;top:60px;background:rgba(8,44,83,.12)}
.hero-content{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding:82px clamp(20px,6vw,92px)}
.label{display:inline-block;color:var(--dorado);font-size:.8rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:14px}
h1,h2,h3{margin:0;color:var(--azul);line-height:1.08}
h1{font-size:clamp(3.1rem,8vw,7.2rem);letter-spacing:-.06em}
h2{font-size:clamp(2rem,4.3vw,4.1rem);letter-spacing:-.04em}
h3{font-size:1.35rem;margin-top:18px;margin-bottom:10px}
.hero-text p{font-size:clamp(1.16rem,2.2vw,1.55rem);color:var(--gris);max-width:670px;margin:24px 0 34px}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}
.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border-radius:999px;font-weight:800;border:1px solid transparent;transition:.25s;text-align:center}
.button-primary{background:var(--azul);color:#fff;box-shadow:0 18px 34px rgba(8,44,83,.25)}
.button-primary:hover{background:var(--azul-2);transform:translateY(-3px)}
.button-light{background:#fff;color:var(--azul);border-color:var(--borde)}
.button-light:hover{border-color:var(--dorado);transform:translateY(-3px)}
.hero-logo-card{background:rgba(255,255,255,.92);border:1px solid var(--borde);border-radius:30px;padding:28px;box-shadow:var(--sombra)}
.logo-main{width:100%;border-radius:22px;background:#fff;object-fit:contain}
.section{padding:90px clamp(20px,6vw,92px)}
.section-title{max-width:780px;margin-bottom:34px}.section-title.centered{text-align:center;margin-left:auto;margin-right:auto}
.intro-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:center;background:#fff}
.intro-card{background:var(--fondo);border:1px solid var(--borde);border-left:6px solid var(--dorado);border-radius:26px;padding:34px;box-shadow:0 18px 50px rgba(8,44,83,.07)}
.intro-card p{font-size:1.18rem;color:var(--gris);margin:0}
.services-section{background:linear-gradient(180deg,#f8fafc 0%,#ffffff 100%)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{position:relative;overflow:hidden;min-height:285px;background:#fff;border:1px solid var(--borde);border-radius:28px;padding:30px;box-shadow:0 16px 42px rgba(8,44,83,.08);transition:.25s}
.service-card::before{content:"";position:absolute;right:-75px;top:-75px;width:160px;height:160px;border-radius:50%;background:rgba(185,154,88,.13)}
.service-card:hover{transform:translateY(-7px);box-shadow:var(--sombra)}
.featured-card{border-color:rgba(185,154,88,.45)}
.number-badge{width:72px;height:72px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--azul),var(--azul-2));color:#fff;font-size:1.35rem;font-weight:900;box-shadow:0 15px 30px rgba(8,44,83,.22)}
.service-card p{color:var(--gris);margin:0}
.split-section{background:var(--azul);color:#fff;position:relative;overflow:hidden}
.split-section::before{content:"";position:absolute;left:-120px;top:-170px;width:500px;height:500px;border-radius:50%;background:rgba(185,154,88,.16)}
.split-panel{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start}
.split-panel h2{color:#fff}.split-panel p{color:rgba(255,255,255,.75);font-size:1.1rem}.label-gold{color:#dfc489}
.detail-list{display:grid;gap:16px}.detail-item{display:grid;gap:7px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:22px;backdrop-filter:blur(8px)}
.detail-item strong{font-size:1.18rem;color:#fff}.detail-item span{color:rgba(255,255,255,.75)}
.contact-section{background:linear-gradient(135deg,rgba(8,44,83,.08),rgba(185,154,88,.14))}
.contact-card{max-width:920px;margin:0 auto;text-align:center;background:#fff;border:1px solid var(--borde);border-radius:34px;padding:48px clamp(22px,5vw,60px);box-shadow:var(--sombra)}
.contact-logo{width:min(390px,92%);margin:0 auto 24px;border-radius:18px}.contact-card p{color:var(--gris);font-size:1.1rem}.contact-data{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:26px 0}.contact-data span{background:#f8fafc;border:1px solid var(--borde);border-radius:16px;padding:12px 16px;font-weight:800;color:var(--azul)}
.footer{text-align:center;background:#061f3d;color:#fff;padding:38px 20px}.footer p{margin:6px 0;color:rgba(255,255,255,.78)}.footer strong{color:#fff}
.floating-button{position:fixed;right:20px;bottom:20px;width:62px;height:62px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#25d366;color:#fff;font-weight:900;z-index:60;box-shadow:0 18px 36px rgba(0,0,0,.24)}
@media(max-width:940px){.menu-button{display:block}.menu{position:absolute;top:86px;left:18px;right:18px;display:none;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--borde);border-radius:22px;padding:22px;box-shadow:var(--sombra)}.menu.is-open{display:flex}.menu a{text-align:center}.hero-content,.intro-section,.split-panel{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.logo-small{width:132px}.hero-content{padding-top:58px}.hero-logo-card{max-width:720px}.section{padding-top:74px;padding-bottom:74px}}
@media(max-width:560px){.topbar{padding-left:14px;padding-right:14px}.hero-content{padding-left:18px;padding-right:18px}.section{padding-left:18px;padding-right:18px}h1{font-size:3rem}.button{width:100%}.hero-actions{width:100%}.contact-card{padding:32px 20px}.floating-button{width:56px;height:56px}.logo-main{border-radius:16px}}
