:root{
  --canvas:#f8fafc;--surface:#faf8ff;--card:#fff;--soft:#f2f3ff;--soft-blue:#e3f2fd;
  --ink:#131b2e;--muted:#535b6b;--navy:#0d47a1;--primary:#004d99;--secondary:#00677d;
  --green:#017550;--green-dark:#005a3d;--green-soft:#d9f7e8;--line:#e2e8f0;--star:#f59e0b;
  --shadow-sm:0 2px 8px -2px rgba(15,23,42,.05),0 1px 4px -1px rgba(21,101,192,.03);
  --shadow-lg:0 20px 42px -12px rgba(13,71,161,.16),0 8px 18px -8px rgba(15,23,42,.08);
  --ease-out:cubic-bezier(.23,1,.32,1);--header-h:120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:132px}
body{margin:0;background:var(--surface);color:var(--ink);font-family:"Plus Jakarta Sans",system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
button,a{font-family:inherit}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{color:inherit}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.12;letter-spacing:-.025em;text-wrap:balance}
.shell{width:min(100% - 48px,1280px);margin-inline:auto}
.skip-link{position:fixed;left:18px;top:-80px;z-index:1000;padding:12px 16px;border-radius:8px;background:var(--navy);color:#fff;font-weight:700}
.skip-link:focus{top:14px}
a:focus-visible,button:focus-visible{outline:3px solid rgba(0,180,216,.55);outline-offset:4px}
.material-symbols-outlined{font-size:20px;line-height:1;font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24}

.site-header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(255,255,255,.96);box-shadow:0 1px 8px rgba(15,23,42,.05);backdrop-filter:blur(14px)}
.utility-bar{height:40px;background:var(--soft)}
.utility-inner,.utility-group{display:flex;align-items:center}
.utility-inner{height:40px;justify-content:space-between;color:var(--muted);font-size:12px}
.utility-group{gap:22px}
.utility-group a{display:inline-flex;align-items:center;gap:5px;transition:color 160ms ease}
.utility-group a:hover{color:var(--primary)}
.utility-group .material-symbols-outlined{font-size:15px}
.location-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;background:#e2e7ff;color:var(--primary);font-size:11px;font-weight:700;letter-spacing:.02em}
.utility-trust{font-size:11px;font-weight:600;letter-spacing:.04em}
.nav-bar{height:80px;background:rgba(255,255,255,.96)}
.nav-inner{height:80px;display:grid;grid-template-columns:260px 1fr auto;align-items:center;gap:28px}
.brand{width:260px;height:66px;display:flex;align-items:center;gap:12px}
.brand-mark{position:relative;display:block;width:44px;height:44px;overflow:hidden;flex:0 0 auto;border-radius:50%}
.brand-mark img{position:absolute;left:-8px;top:-10px;width:127px;max-width:none;height:auto}
.brand-copy{display:flex;flex-direction:column;line-height:1.12}.brand-copy strong{color:var(--navy);font-size:16px;letter-spacing:-.02em}.brand-copy small{margin-top:3px;color:var(--secondary);font-size:9px;font-weight:700;letter-spacing:.055em;text-transform:uppercase}
nav{display:flex;justify-content:center;align-items:center;gap:34px}
nav a{position:relative;padding:28px 0;color:#363d4c;font-size:14px;transition:color 160ms ease}
nav a:hover,nav a.is-active{color:var(--navy)}
nav a.is-active::after{content:"";position:absolute;left:0;right:0;bottom:17px;height:2px;border-radius:2px;background:var(--navy)}
.menu-toggle{display:none;border:0;background:transparent;width:44px;height:44px;border-radius:8px;align-items:center;justify-content:center}
.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:9px;padding:0 22px;border:1px solid transparent;border-radius:8px;font-size:14px;font-weight:700;line-height:1.2;transition:transform 160ms var(--ease-out),background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease}
.button:hover{transform:translateY(-1px)}
.button:active{transform:scale(.97)}
.button-green{background:var(--green);color:#fff;box-shadow:var(--shadow-sm)}
.button-green:hover{background:var(--green-dark);box-shadow:0 9px 22px rgba(0,90,61,.16)}
.button-blue{background:#075caf;color:#fff}
.button-blue:hover{background:var(--navy)}
.button-light{background:#fff;border-color:#edf0f5;color:var(--navy);box-shadow:var(--shadow-sm)}
.button-light:hover{border-color:#cddaf0;background:#fbfdff}

main{padding-top:var(--header-h)}
.hero{position:relative;overflow:hidden;padding:74px 0 90px;background:linear-gradient(180deg,rgba(242,243,255,.78),var(--surface) 72%,var(--canvas));isolation:isolate}
.hero-glow{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;z-index:-1;pointer-events:none}
.hero-glow-left{width:430px;height:430px;left:-180px;top:-140px;background:#d6e3ff}
.hero-glow-right{width:360px;height:360px;right:-100px;bottom:-120px;background:#b3ebff}
.hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(390px,5fr);gap:64px;align-items:center}
.hero-copy{padding-top:4px}
.trust-pill{display:inline-flex;align-items:center;gap:10px;margin-bottom:25px;padding:6px 14px;border-radius:999px;background:#fff;color:#00566d;font-size:11px;font-weight:700;letter-spacing:.045em;text-transform:uppercase;box-shadow:var(--shadow-sm)}
.status-dot{width:10px;height:10px;border-radius:50%;background:#26a773;box-shadow:0 0 0 4px rgba(38,167,115,.11)}
.hero h1{max-width:730px;margin-bottom:22px;color:var(--navy);font-size:clamp(42px,4.4vw,62px);font-weight:700;letter-spacing:-.045em;line-height:1.1}
.hero-lead{max-width:720px;margin-bottom:31px;color:#424752;font-size:17px;line-height:1.72}
.hero-actions{display:flex;align-items:stretch;gap:16px;margin-bottom:48px}
.button-stacked{padding-block:9px;min-height:52px}
.button-stacked>span:last-child{display:flex;flex-direction:column;text-align:left}
.button-stacked strong{font-size:14px}.button-stacked small{margin-top:2px;color:#bff5d8;font-size:10px;font-weight:500}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);max-width:640px;gap:24px;padding-top:4px}
.metrics>div{display:flex;flex-direction:column;gap:4px;padding-right:12px}
.metrics strong{color:var(--navy);font-size:24px;letter-spacing:-.02em}.metrics .metric-green{color:var(--green)}.star{color:var(--star);font-size:18px}
.metrics span:last-child{max-width:160px;color:var(--muted);font-size:11px;line-height:1.45}
.hero-visual{position:relative;padding:14px 0 12px}
.hero-image{position:relative;overflow:hidden;aspect-ratio:1.12/1;border-radius:18px;background:#dae2fd;box-shadow:var(--shadow-lg)}
.hero-image::after{content:"";position:absolute;inset:auto 0 0;height:30%;background:linear-gradient(transparent,rgba(19,27,46,.26));pointer-events:none}
.hero-image img{width:100%;height:100%;object-fit:cover;transition:transform 700ms var(--ease-out)}
.hero-image:hover img{transform:scale(1.025)}
.floating-card{position:absolute;display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(226,232,240,.86);border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 12px 28px rgba(15,23,42,.12);backdrop-filter:blur(10px)}
.floating-card-top{left:-26px;top:0}.floating-card-bottom{right:-24px;bottom:-7px}
.badge-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;font-size:21px;flex:0 0 auto}.badge-green{background:var(--green-soft);color:var(--green)}.badge-blue{background:#dff4fc;color:var(--secondary)}
.floating-card>span:last-child{display:flex;flex-direction:column}.floating-card strong{color:var(--navy);font-size:12px}.floating-card small{display:flex;align-items:center;gap:4px;margin-top:2px;color:var(--muted);font-size:10px}.floating-card small .material-symbols-outlined{font-size:13px;color:#238a63}

.section{padding:82px 0}.services{background:var(--canvas)}
.section-heading{margin-bottom:43px}.split-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.split-heading>p{max-width:430px;margin:0;color:var(--muted);font-size:14px}
.eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:11px;color:var(--primary);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.eyebrow i{width:8px;height:8px;border-radius:50%;background:#0f66be}
.section h2{margin-bottom:0;color:var(--navy);font-size:clamp(30px,3vw,40px)}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.service-card{min-height:342px;display:flex;flex-direction:column;padding:25px 24px 20px;border:1px solid #edf0f5;border-radius:16px;background:#fff;box-shadow:var(--shadow-sm);transition:transform 180ms var(--ease-out),box-shadow 180ms ease,border-color 180ms ease}
.service-card:hover{transform:translateY(-4px);border-color:#c8dcf0;box-shadow:0 15px 30px -12px rgba(13,71,161,.17)}
.service-icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:23px;border-radius:14px;background:var(--soft);color:var(--navy);font-size:28px;transition:background-color 180ms ease,color 180ms ease}
.service-card:hover .service-icon{background:var(--navy);color:#fff}
.service-card h3{margin-bottom:13px;color:#001d8f;font-size:18px}.service-card p{margin-bottom:24px;color:var(--muted);font-size:13px;line-height:1.66}
.card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px}.card-meta>span{color:#00627b;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card-meta a{display:inline-flex;align-items:center;gap:5px;color:#003daf;font-size:11px;font-weight:600}.card-meta .material-symbols-outlined{font-size:16px;transition:transform 160ms var(--ease-out)}.card-meta a:hover .material-symbols-outlined{transform:translateX(3px)}
.care-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:42px;padding:25px 30px;border:1px solid #edf0f5;border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}
.care-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--green-soft);color:var(--green);font-size:25px}.care-banner h3{margin:0 0 2px;font-size:17px}.care-banner p{margin:0;color:var(--muted);font-size:12px}

.about{background:#fff}
.about-grid{display:grid;grid-template-columns:minmax(360px,5fr) minmax(0,6fr);gap:86px;align-items:center}
.about-visual{position:relative}.about-image-wrap{overflow:hidden;min-height:470px;border-radius:18px;background:linear-gradient(145deg,#edf7fb,#f2f3ff);box-shadow:var(--shadow-lg)}.about-image-wrap img{width:100%;height:100%;min-height:470px;object-fit:cover;object-position:center}
.about-note{position:absolute;right:-24px;bottom:30px;display:flex;align-items:center;gap:10px;padding:15px 18px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);box-shadow:var(--shadow-lg);font-size:12px}.about-note .material-symbols-outlined{color:var(--green)}
.about-copy h2{max-width:610px;margin-bottom:24px;font-size:clamp(32px,3.3vw,44px)}.about-copy p{max-width:680px;margin-bottom:17px;color:var(--muted);font-size:15px;line-height:1.75}
.check-list{display:grid;gap:11px;margin:25px 0 0;padding:0;list-style:none}.check-list li{display:flex;align-items:center;gap:9px;color:#344154;font-size:13px;font-weight:600}.check-list .material-symbols-outlined{color:var(--green);font-size:19px;font-variation-settings:'FILL' 1}

.reviews{position:relative;background:linear-gradient(180deg,var(--soft) 0,#f8fbff 100%)}
.reviews-heading{text-align:center}.reviews-heading .eyebrow{justify-content:center}.reviews-heading h2{margin-bottom:10px}.reviews-heading>p{margin:0;color:var(--muted)}
.reviews-panel{overflow:hidden;border:1px solid #dfe7f2;border-radius:18px;background:#fff;box-shadow:0 22px 50px -24px rgba(13,71,161,.22)}
.reviews-summary{display:flex;align-items:center;gap:14px;padding:18px 24px;border-bottom:1px solid #edf0f5;background:#fbfdff}.google-g{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff;color:#4285f4;font-size:25px;font-weight:700;box-shadow:0 2px 8px rgba(15,23,42,.1)}.reviews-summary>span:last-child{display:flex;flex-direction:column}.reviews-summary strong{font-size:14px}.reviews-summary small{color:var(--muted);font-size:11px}.reviews-summary b{margin-right:7px;color:var(--star);letter-spacing:1px}
.reviews-widget{min-height:285px;padding:20px}.elfsight-app-ba57fc3b-474f-42f2-84d5-e67eced2ae60{min-height:245px}
.reviews .es-background-base,.reviews .es-background-overlay{background:transparent!important;background-image:none!important}.reviews .es-header-container,.reviews .es-review-background-container{background:#fff!important}
.reviews-widget:has(.elfsight-app-ba57fc3b-474f-42f2-84d5-e67eced2ae60:empty){background:linear-gradient(100deg,#fff 20%,#f4f7fb 50%,#fff 80%);background-size:220% 100%;animation:loading 1.8s ease-in-out infinite}
@keyframes loading{to{background-position:-220% 0}}

.site-footer{padding:47px 0 20px;background:var(--soft);color:var(--muted)}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1.05fr .7fr;gap:54px}.footer-brand img{width:220px;margin-bottom:15px}.footer-grid p{max-width:270px;font-size:12px}.footer-grid h2{margin:0 0 13px;color:var(--ink);font-size:13px;letter-spacing:0}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start;gap:7px}.footer-grid a,.footer-grid span{font-size:11px}.footer-grid a:hover{color:var(--navy)}
.social-row{display:flex!important;flex-direction:row!important;gap:10px!important}.social-row a{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d6dfeb;border-radius:50%;background:#fff;transition:transform 160ms var(--ease-out),border-color 160ms ease}.social-row a:hover{transform:translateY(-2px);border-color:#9db9da}.social-row img{width:17px;height:17px}
.footer-bottom{margin-top:31px;padding-top:18px;border-top:1px solid #dde4ef;text-align:center;font-size:10px;color:#78808e}.developer-credit{display:inline-block;margin-left:7px;color:var(--navy);font-weight:700}
.floating-whatsapp{position:fixed;right:25px;bottom:24px;z-index:80;display:flex;align-items:center;gap:10px;min-height:56px;padding:10px 20px 10px 15px;border-radius:999px;background:var(--green);color:#fff;box-shadow:0 14px 30px rgba(0,90,61,.24);transition:transform 180ms var(--ease-out),background-color 180ms ease}.floating-whatsapp:hover{transform:translateY(-2px);background:var(--green-dark)}.floating-whatsapp:active{transform:scale(.97)}.floating-whatsapp>span:nth-child(2){display:flex;flex-direction:column;font-size:12px;font-weight:700;line-height:1.25}.floating-whatsapp small{color:#bff5d8;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.floating-whatsapp i{position:absolute;left:34px;top:10px;width:8px;height:8px;border:2px solid var(--green);border-radius:50%;background:#50d9fe}

.reveal-ready .reveal-card{opacity:0;transform:translateY(18px);transition:opacity 520ms var(--ease-out),transform 520ms var(--ease-out);transition-delay:var(--reveal-delay,0ms)}
.reveal-ready .reveal-card.is-visible{opacity:1;transform:translateY(0)}

@media(max-width:1080px){
  .nav-inner{grid-template-columns:240px 1fr auto}.brand{width:240px}nav{gap:21px}.hero-grid{grid-template-columns:1.08fr .92fr;gap:42px}.hero h1{font-size:48px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:300px}.about-grid{gap:54px}.floating-card-top{left:-12px}.floating-card-bottom{right:-12px}
}
@media(max-width:800px){
  :root{--header-h:80px}.shell{width:min(100% - 32px,720px)}.utility-bar{display:none}.nav-inner{height:80px;grid-template-columns:1fr auto auto}.nav-bar{height:80px}.brand{width:235px}.menu-toggle{display:flex;grid-column:3}.nav-cta{display:none}nav{position:absolute;left:16px;right:16px;top:72px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow-lg)}nav.is-open{display:flex}nav a{padding:12px 14px;border-radius:8px}nav a.is-active::after{display:none}nav a:hover{background:var(--soft)}.hero{padding:54px 0 68px}.hero-grid{grid-template-columns:1fr;gap:52px}.hero h1{font-size:clamp(37px,8vw,50px)}.hero-visual{width:min(100% - 24px,560px);margin-inline:auto}.metrics{max-width:none}.section{padding:64px 0}.split-heading{align-items:flex-start;flex-direction:column;gap:18px}.service-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr;gap:44px}.about-visual{width:min(100% - 30px,560px);margin-inline:auto}.about-note{right:-15px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:36px}.floating-whatsapp{right:16px;bottom:16px}
}
@media(max-width:560px){
  .shell{width:min(100% - 28px,520px)}.brand{width:230px}.brand-copy strong{font-size:14px}.brand-copy small{font-size:8px}.hero{padding:42px 0 58px}.trust-pill{align-items:flex-start;font-size:9px;line-height:1.4}.hero h1{font-size:36px;line-height:1.08}.hero-lead{font-size:15px}.hero-actions{flex-direction:column}.button{width:100%}.metrics{grid-template-columns:1fr;gap:15px}.metrics>div{padding-bottom:14px;border-bottom:1px solid var(--line)}.metrics span:last-child{max-width:none}.hero-visual{width:calc(100% - 14px)}.hero-image{aspect-ratio:.92/1}.floating-card{max-width:225px;padding:11px 12px}.floating-card-top{left:-7px;top:-15px}.floating-card-bottom{right:-7px;bottom:-18px}.badge-icon{width:36px;height:36px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.care-banner{grid-template-columns:auto 1fr;padding:22px}.care-banner .button{grid-column:1/-1}.about-image-wrap,.about-image-wrap img{min-height:360px}.about-note{right:-8px;bottom:18px}.reviews-widget{padding:10px}.reviews-summary{padding:16px}.footer-grid{grid-template-columns:1fr}.floating-whatsapp{width:56px;height:56px;padding:0;justify-content:center}.floating-whatsapp>span:nth-child(2){display:none}.floating-whatsapp i{left:34px;top:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal-ready .reveal-card{opacity:1;transform:none}}
