:root{--ink:#10202c;--dark:#0a1721;--blue:#2d78d0;--paper:#f4f6f7;--muted:#63717a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper)}a{text-decoration:none}.wrap{width:min(1180px,88%);margin:auto}

/* HERO: THE PHOTO IS CLEAN. ALL TYPOGRAPHY IS HTML OVERLAY. */
.hero{position:relative;min-height:100svh;overflow:hidden;color:#fff;background:var(--dark)}
.hero-image{position:absolute;inset:0;background:url("assets/hero-obra-limpio.jpg") center/cover no-repeat}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,16,25,.90) 0%,rgba(5,16,25,.72) 42%,rgba(5,16,25,.22) 70%,rgba(5,16,25,.06) 100%),linear-gradient(0deg,rgba(5,16,25,.48),rgba(5,16,25,.02) 60%)}
.nav{position:relative;z-index:5;width:min(1180px,88%);margin:auto;height:94px;display:flex;align-items:center}.brand{color:#fff;display:flex;flex-direction:column}.brand>span{font-size:27px;font-weight:900;letter-spacing:-1px}.brand b{display:inline-block;background:#245fa9;border-radius:4px;font-size:10px;letter-spacing:1px;padding:6px 8px;vertical-align:5px;margin-left:2px}.brand small{color:#d6dde1;font-size:10px;margin-top:5px}.desktop-links{margin-left:auto;display:flex;gap:32px}.desktop-links a{color:#d8e0e4;font-size:14px}.button-nav{margin-left:30px;background:#2569bd;color:#fff;padding:13px 20px;border-radius:6px;font-size:14px;font-weight:800}.menu-button,.mobile-menu{display:none}
.hero-copy{position:relative;z-index:3;width:min(1180px,88%);margin:auto;padding-top:13vh}.hero-copy>p:first-child{font-size:11px;letter-spacing:1.8px;font-weight:900;color:#cbd6dc;margin:0 0 16px}.hero-copy h1{margin:0;font-size:clamp(48px,6.1vw,84px);line-height:1.01;letter-spacing:-3.5px;max-width:630px}.hero-copy h1 span{color:#4d8fdf}.accent{width:62px;height:2px;background:#5ca2f5;margin:26px 0 20px}.hero-text{font-size:17px;line-height:1.65;color:#d6dee2;max-width:500px;margin:0}.button-main{display:inline-flex;align-items:center;gap:28px;background:linear-gradient(135deg,#215fae,#398ded);color:#fff;padding:17px 24px;border-radius:6px;font-weight:800;margin-top:29px}.button-main strong{font-size:20px;font-weight:400}

.problem,.solution,.advance,.project,.final{padding:110px 0}.problem{background:#fff}.two-columns,.advance-layout,.project-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.label{margin:0 0 18px;color:var(--blue);font-size:11px;letter-spacing:1.8px;font-weight:900}h2{margin:0;font-size:clamp(42px,5.4vw,74px);line-height:1.03;letter-spacing:-3px}h2 span{color:#78858d}.copy{padding-top:38px}.copy p{font-size:18px;line-height:1.8;color:var(--muted);margin:0 0 18px}.copy .lead{font-size:25px;line-height:1.45;color:#26353e;font-weight:500}

.solution{background:#eaf0f3}.solution h2{max-width:850px}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:58px}.steps article{padding:8px 35px 8px 0;margin-right:28px;border-right:1px solid #c7d2d8}.steps article:last-child{border-right:0;margin-right:0}.steps b{color:var(--blue);font-size:12px}.steps h3{font-size:27px;margin:23px 0 8px}.steps p{color:var(--muted);line-height:1.65;margin:0}

.advance{background:#102330;color:#fff}.advance .label{color:#6eaeff}.advance h2 span{color:#aab7bd}.advance-copy{padding-top:35px}.advance-copy>p{font-size:21px;line-height:1.6;color:#d6dfe4;margin:0 0 27px}.advance ul{padding:0;margin:0;list-style:none}.advance li{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.12);color:#b9c6cc}

.project{background:#fff}.project-layout{align-items:center}.project-phone{min-height:420px;display:flex;align-items:center;justify-content:center;overflow:hidden}.project-phone img{display:block;width:min(100%,560px);height:auto;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(15,32,44,.12))}
.copy-text{font-size:18px;line-height:1.75;color:var(--muted);margin:25px 0 0}

.final{background:#e9eff2;text-align:center}.final-copy h2{max-width:950px;margin:auto}.final-copy>p:not(.label){font-size:18px;color:var(--muted);margin:25px auto 0;max-width:620px;line-height:1.6}footer{background:#09151e;color:#fff;padding:42px 0}.footer-wrap{display:flex;justify-content:space-between;align-items:center}.footer-wrap strong{font-size:22px}.footer-wrap strong b{font-size:9px;background:#245fa9;padding:5px 7px;border-radius:3px;letter-spacing:1px}.footer-wrap p{margin:7px 0 0;color:#82929b;font-size:12px}.footer-links{display:flex;gap:25px}.footer-links a{color:#cdd7db;font-size:14px}

@media(max-width:800px){.wrap{width:100%}.nav{width:100%;height:82px;padding:0 22px}.desktop-links,.button-nav{display:none}.menu-button{display:flex;margin-left:auto;width:51px;height:51px;border-radius:8px;background:rgba(7,18,27,.55);border:1px solid rgba(255,255,255,.17);align-items:center;justify-content:center;flex-direction:column;gap:8px}.menu-button i{width:23px;height:2px;background:#fff}.mobile-menu.open{display:flex;position:absolute;z-index:9;top:72px;left:15px;right:15px;background:#102430;border-radius:10px;padding:10px;flex-direction:column}.mobile-menu a{padding:15px;color:#e7edf0;border-bottom:1px solid rgba(255,255,255,.08)}.mobile-menu .mobile-demo{background:#276fc7;border-radius:6px;text-align:center;margin-top:6px;border:0}

/* MOBILE HERO: BOOT + SHOVEL ARE THE VISUAL FOCUS */
.hero-image{background-image:url("assets/hero-obra-mobile.jpg");background-position:62% center;background-size:cover}.hero-overlay{background:linear-gradient(90deg,rgba(5,16,25,.82) 0%,rgba(5,16,25,.52) 52%,rgba(5,16,25,.10) 100%),linear-gradient(0deg,rgba(5,16,25,.66),rgba(5,16,25,.03) 68%)}.brand>span{font-size:23px}.brand small{font-size:9px}.hero-copy{position:absolute;top:49%;transform:translateY(-42%);width:auto;left:25px;right:25px;padding:0}.hero-copy>p:first-child{font-size:9px;letter-spacing:1.35px;margin-bottom:15px}.hero-copy h1{font-size:clamp(42px,11.8vw,57px);letter-spacing:-2.5px;max-width:330px}.accent{margin:20px 0 16px;width:50px}.hero-text{font-size:14px;line-height:1.55;max-width:270px}.button-main{margin-top:22px;padding:15px 20px;font-size:14px}

.problem,.solution,.advance,.project,.final{padding:70px 22px}.two-columns,.advance-layout,.project-layout{grid-template-columns:1fr;gap:30px}h2{font-size:clamp(39px,11vw,51px);letter-spacing:-2px}.copy{padding-top:0}.copy p{font-size:16px}.copy .lead{font-size:21px}.steps{grid-template-columns:1fr;margin-top:35px}.steps article{padding:22px 0;margin:0;border-right:0;border-bottom:1px solid #c7d2d8}.steps h3{font-size:23px;margin:14px 0 6px}.steps article:last-child{border-bottom:0}.advance-copy{padding-top:0}.advance-copy>p{font-size:18px}.project-phone{min-height:auto;width:100%;justify-content:center}.project-phone img{width:min(100%,440px)}.project-layout{display:flex;flex-direction:column-reverse}.copy-text{font-size:16px}.final{padding:65px 20px}.final-copy h2{font-size:38px}.footer-wrap{flex-direction:column;align-items:flex-start;gap:22px;padding:0 22px}}
