/* Ajustes de ritmo vertical y cierre comercial v25 */
.solutions-v23{padding:66px 0 76px}
.solutions-heading-v23{max-width:1280px;margin-bottom:30px}
.solutions-heading-v23 .kicker{margin-bottom:12px}
.solutions-heading-v23 h2{font-size:clamp(3rem,4.7vw,5.2rem)}
.solutions-heading-v23 p{max-width:none;margin-top:17px;font-size:1.03rem;line-height:1.5;white-space:nowrap}
.solutions-stage-v23{padding-top:32px;padding-bottom:8px}
.solution-card-v23 figure{height:300px}
.solution-copy-v23{min-height:188px;padding-top:25px;padding-bottom:27px}
.solution-fleet-v23{margin-top:-25px}
.solution-fleet-v23 figure{height:330px}
.solution-fleet-v23 .solution-copy-v23{min-height:198px}
.solution-services-v23,.solution-company-v23{margin-top:14px}

/* La línea siempre termina completamente azul; el movimiento queda en el brillo. */
.route-halo-v23{stroke:rgba(22,198,223,.13);stroke-width:8}
.route-line-v23{stroke-dasharray:none!important;stroke-dashoffset:0!important;transition:none!important;animation:routeGlow-v25 2.8s ease-in-out infinite}
@keyframes routeGlow-v25{0%,100%{filter:drop-shadow(0 3px 4px rgba(0,174,202,.2))}50%{filter:drop-shadow(0 3px 10px rgba(0,198,228,.6))}}

.home-cta-v25{position:relative;isolation:isolate;min-height:390px;padding:0!important;background:#031d3f url('fondo-cta-ruta-v25.webp') center/cover no-repeat!important;color:#fff;overflow:hidden}
.home-cta-v25:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(1,17,43,.42) 0%,rgba(1,17,43,.12) 48%,rgba(0,62,90,.03) 100%)}
.home-cta-v25 .home-cta-inner{min-height:390px;width:min(1520px,calc(100% - 64px));padding:60px 0!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;display:flex;align-items:center;justify-content:space-between;gap:58px}
.home-cta-v25 .home-cta-inner:after{display:none!important}
.home-cta-v25 .home-cta-inner>div{max-width:790px}
.home-cta-v25 .kicker{color:#68e9f3!important;letter-spacing:.18em}
.home-cta-v25 h2{margin:13px 0 17px;font-size:clamp(3rem,4.7vw,5.3rem);line-height:.94;letter-spacing:-.055em;color:#fff!important;text-shadow:0 5px 24px rgba(0,9,35,.26)}
.home-cta-v25 h2 em{color:#53e0ef;font-style:normal}
.home-cta-v25 p{max-width:700px;margin:0;color:#d8edf5!important;font-size:1.06rem}
.home-cta-v25 .button-light{min-width:245px;min-height:62px;margin:0;padding:17px 25px!important;background:linear-gradient(135deg,#69eff3,#27c8e4)!important;color:#032141!important;border:1px solid rgba(255,255,255,.7)!important;box-shadow:0 15px 38px rgba(0,190,218,.31)!important;transition:transform .32s ease,box-shadow .32s ease!important}
.home-cta-v25 .button-light span{font-size:1.2rem;transition:transform .3s ease}
@media(hover:hover){.home-cta-v25 .button-light:hover{transform:translateY(-5px) scale(1.035);box-shadow:0 21px 48px rgba(0,214,238,.43)!important}.home-cta-v25 .button-light:hover span{transform:translateX(5px)}}

@media(max-width:900px){
 .solutions-v23{padding:58px 0 68px}.solutions-heading-v23{margin-bottom:28px}.solutions-heading-v23 p{white-space:normal;max-width:650px}.solutions-stage-v23{padding-top:10px}.solution-card-v23 figure,.solution-fleet-v23 figure{height:auto}.solution-card-v23 .solution-copy-v23,.solution-fleet-v23 .solution-copy-v23{min-height:0}
 .home-cta-v25{min-height:0;background-position:66% center!important}.home-cta-v25:before{background:linear-gradient(180deg,rgba(1,17,43,.38),rgba(1,17,43,.68))}.home-cta-v25 .home-cta-inner{width:min(100% - 38px,700px);min-height:0;padding:72px 0 68px!important;flex-direction:column;text-align:center;gap:30px}.home-cta-v25 .home-cta-inner>div{max-width:680px}.home-cta-v25 .kicker{justify-content:center}.home-cta-v25 h2{font-size:clamp(2.75rem,9vw,4.2rem)}.home-cta-v25 p{font-size:1rem}.home-cta-v25 .button-light{width:min(100%,360px)}
}
@media(max-width:520px){.solutions-v23{padding:48px 0 56px}.solutions-heading-v23{margin-bottom:22px}.solutions-heading-v23 p{margin-top:14px}.home-cta-v25{background-position:72% center!important}.home-cta-v25 .home-cta-inner{padding:62px 0 58px!important}.home-cta-v25 h2{font-size:2.75rem}.home-cta-v25 p{line-height:1.55}.home-cta-v25 .button-light{min-height:58px}}
@media(prefers-reduced-motion:reduce){.route-line-v23{animation:none}.home-cta-v25 .button-light,.home-cta-v25 .button-light span{transition:none!important}}
