*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--navy: #0b2454;--navy-dk: #071839;--blue: #1a56a0;--blue-lt: #2d72d2;--accent: #c8a84b;--gray-50: #f8f9fb;--gray-100:#eef0f4;--gray-300:#c5cad6;--gray-600:#5a6478;--gray-800:#2c3347;--white: #ffffff;--shadow: 0 4px 24px rgba(11,36,84,.1);--shadow-lg: 0 8px 48px rgba(11,36,84,.16);--radius: 12px;--radius-lg: 20px;--font-head: "Montserrat", sans-serif;--font-body: "Open Sans", sans-serif}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--gray-800);background:var(--white);line-height:1.65}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{width:min(1160px,100% - 2rem);margin-inline:auto}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;border-radius:8px;font-family:var(--font-head);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.btn--primary{background:var(--accent);color:var(--navy-dk);border-color:var(--accent)}.btn--primary:hover{background:#b8963e;border-color:#b8963e}.btn--ghost{background:transparent;color:var(--white);border-color:#ffffff80}.btn--ghost:hover{border-color:var(--white);background:#ffffff1a}.btn--outline{background:transparent;color:var(--navy);border-color:var(--navy)}.btn--outline:hover{background:var(--navy);color:var(--white)}.btn--whatsapp{background:#25d366;color:var(--white);border-color:#25d366}.btn--whatsapp:hover{background:#1ebe57;border-color:#1ebe57}.btn--sm{padding:.55rem 1.1rem;font-size:.82rem}.badge{display:inline-block;padding:.35rem .9rem;border-radius:99px;font-family:var(--font-head);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#1a56a01f;color:var(--blue);margin-bottom:.75rem}.badge--dark{background:#0b24541a;color:var(--navy)}.badge--light{background:#ffffff26;color:#ffffffe6}.header{position:sticky;top:0;z-index:100;background:var(--white);border-bottom:1px solid var(--gray-100);box-shadow:0 1px 16px #0b245412}.header__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:.85rem}.header__logo{height:52px;width:auto}.header__nav{display:flex;gap:2rem}.header__nav a{font-family:var(--font-head);font-size:.875rem;font-weight:600;color:var(--gray-600);transition:color .2s}.header__nav a:hover{color:var(--navy)}.hero{position:relative;background:linear-gradient(135deg,var(--navy-dk) 0%,var(--navy) 55%,var(--blue) 100%);color:var(--white);overflow:hidden;padding:7rem 0 6rem}.hero__bg-shapes{position:absolute;inset:0;pointer-events:none}.shape{position:absolute;border-radius:50%;background:#ffffff0a}.shape--1{width:600px;height:600px;top:-200px;right:-150px}.shape--2{width:300px;height:300px;bottom:-100px;left:-80px}.hero__content{position:relative;max-width:760px}.hero__title{font-family:var(--font-head);font-size:clamp(2.2rem,5vw,3.5rem);font-weight:800;line-height:1.15;margin-bottom:1.25rem}.hero__title em{font-style:normal;color:var(--accent)}.hero__subtitle{font-size:1.1rem;color:#fffc;max-width:580px;margin-bottom:2.25rem}.hero__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:3rem}.hero__data{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:1.25rem 1.75rem;background:#ffffff14;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);border-radius:var(--radius);width:fit-content}.hero__data-item{text-align:left}.hero__data-item strong{display:block;font-family:var(--font-head);font-size:1.3rem;font-weight:800;color:var(--accent)}.hero__data-item span{font-size:.78rem;color:#ffffffa6;letter-spacing:.03em}.hero__divider{width:1px;height:38px;background:#fff3}.section{padding:5.5rem 0}.section--light{background:var(--gray-50)}.section--white{background:var(--white)}.section--dark{background:linear-gradient(135deg,var(--navy-dk) 0%,var(--navy) 100%);color:var(--white)}.section-header{text-align:center;margin-bottom:3.5rem}.section-title{font-family:var(--font-head);font-size:clamp(1.6rem,3vw,2.25rem);font-weight:800;color:var(--navy);margin-bottom:.75rem}.section--dark .section-title{color:var(--white)}.section-subtitle{font-size:1rem;color:var(--gray-600);max-width:560px;margin-inline:auto;text-align:justify}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.service-card{background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.service-card__icon{width:52px;height:52px;background:linear-gradient(135deg,#1a56a01f,#2d72d20f);border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;color:var(--blue)}.service-card__icon svg{width:26px;height:26px}.service-card h3{font-family:var(--font-head);font-size:1rem;font-weight:700;color:var(--navy);margin-bottom:.5rem}.service-card p{font-size:.9rem;color:var(--gray-600);line-height:1.6;text-align:justify}.services-grid--centered{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.service-card--cta{background:linear-gradient(135deg,var(--navy) 0%,var(--blue) 100%);border-color:transparent;color:var(--white)}.service-card--cta h3{color:var(--white)}.service-card--cta p{color:#fffc}.service-card--cta:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.service-card__icon--accent{background:#c8a84b33;color:var(--accent)}.pillars-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:2rem}.pillar{position:relative;padding:2rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);transition:background .25s}.pillar:hover{background:#ffffff1a}.pillar__num{font-family:var(--font-head);font-size:3rem;font-weight:800;color:var(--accent);opacity:.5;line-height:1;margin-bottom:.75rem}.pillar h3{font-family:var(--font-head);font-size:1rem;font-weight:700;margin-bottom:.5rem;color:var(--white)}.pillar p{font-size:.88rem;color:#ffffffb3;line-height:1.6;text-align:justify}.contact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem;margin-bottom:3rem}.contact-card{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;background:var(--gray-50);border:1px solid var(--gray-100);border-radius:var(--radius-lg);padding:1.75rem;transition:all .25s ease;cursor:pointer}.contact-card:hover{border-color:var(--blue-lt);background:#2d72d20a;transform:translateY(-2px);box-shadow:var(--shadow)}.contact-card--whatsapp:hover{border-color:#25d366;background:#25d3660a}.contact-card--whatsapp .contact-card__icon{color:#25d366;background:#25d3661a}.contact-card--address{cursor:pointer}.contact-card__icon{width:48px;height:48px;background:#1a56a01a;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--blue);flex-shrink:0}.contact-card__icon svg{width:24px;height:24px}.contact-card h3{font-family:var(--font-head);font-size:.85rem;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:.05em}.contact-card p{font-size:.95rem;font-weight:500;color:var(--navy);line-height:1.4}.footer{background:var(--navy-dk);color:#fffc}.footer__inner{display:flex;flex-wrap:wrap;gap:2.5rem;justify-content:space-between;padding:3.5rem 0 2.5rem}.footer__logo{height:52px;margin-bottom:.75rem;border-radius:6px;background:var(--white);padding:4px 8px}.footer__tagline{font-size:.85rem;color:#ffffff80;max-width:260px}.footer__meta p{font-size:.82rem;margin-bottom:.3rem;color:#ffffff8c}.footer__meta strong{color:#fffc}.footer__links{display:flex;flex-direction:column;gap:.6rem}.footer__links a{font-size:.85rem;color:#ffffff8c;transition:color .2s}.footer__links a:hover{color:var(--accent)}.footer__copy{border-top:1px solid rgba(255,255,255,.08);padding:1.25rem 0}.footer__copy .container{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.footer__copy p{font-size:.78rem;color:#ffffff59}@media (max-width: 640px){.header__nav{display:none}.hero{padding:4.5rem 0 4rem}.hero__data{flex-direction:column;gap:1rem}.hero__divider{width:100%;height:1px}.footer__inner{flex-direction:column;gap:2rem}.footer__copy .container{flex-direction:column}}
