/* Gestión Ahorrista — Landing premium. Depende de /css/styles.css; sin estilos inline. */
:root{--lp-green:#0b7053;--lp-dark:#0c382e;--lp-soft:#e8f9ef}
body{overflow-x:clip}
.site-header .brand-text{letter-spacing:-.055em}
.hero{padding-top:56px}
.hero-grid{gap:clamp(28px,5vw,82px)}
.hero-copy h1{font-size:clamp(40px,4.8vw,66px);max-width:650px}
.hero-copy .hero-description{font-size:16px;max-width:525px}
.hero-cta-group{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:-12px}
.hero-cta-group .hero-primary{white-space:nowrap}
.hero-cta-meta{font-size:12px;color:#50766b;font-weight:650}
.hero-independent{font-size:11px;color:#789187;margin:17px 0 0;line-height:1.6}
.form-shell{scroll-margin-top:20px}
.landing-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:30px}
.landing-section-head h2{font-size:clamp(28px,3.2vw,42px);letter-spacing:-.045em;line-height:1.16;margin:0;color:var(--ink);max-width:650px}
.landing-section-head>p{font-size:14px;line-height:1.75;color:#738783;max-width:390px;margin:0}
.landing-showcase{padding:88px 0 72px;background:#fff}
.landing-carousel-shell{position:relative}
.landing-swiper{border-radius:22px;overflow:hidden;background:#0c433b;box-shadow:0 25px 65px rgba(12,64,45,.13)}
.landing-slide{position:relative;height:420px;min-width:0;overflow:hidden;isolation:isolate;background:#0a4037}
.landing-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;transform:scale(1.015)}
.landing-slide-gradient{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,44,36,.95) 0%,rgba(5,51,41,.84) 32%,rgba(5,51,41,.2) 76%,rgba(5,51,41,.04) 100%)}
.landing-slide-content{position:relative;z-index:2;padding:55px clamp(27px,6vw,83px);color:#fff;max-width:610px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:100%}
.landing-slide-tag{font-size:11px;font-weight:850;letter-spacing:.15em;color:#a2efc3;margin-bottom:18px}
.landing-slide h3{font-size:clamp(28px,3.7vw,49px);letter-spacing:-.05em;line-height:1.14;margin:0 0 16px;color:#fff;max-width:490px}
.landing-slide p{font-size:15px;line-height:1.7;color:#e1f4ea;max-width:445px;margin-bottom:20px}
.landing-slide-content>a{font-weight:750;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.65);padding-bottom:4px;font-size:14px}
.landing-slide-content>a:hover{color:#9ff0be}
.landing-swiper .swiper-pagination{bottom:21px!important;z-index:5}
.landing-swiper .swiper-pagination-bullet{background:#fff;opacity:.55;width:7px;height:7px}
.landing-swiper .swiper-pagination-bullet-active{opacity:1;background:#2bd98e;width:21px;border-radius:6px}
.landing-carousel-prev,.landing-carousel-next{position:absolute;top:50%;z-index:7;width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);background:#fff;color:#0d604b;border-radius:50%;font-size:23px;line-height:1;box-shadow:0 10px 22px rgba(6,52,42,.13);transform:translateY(-50%)}
.landing-carousel-prev{left:-18px}.landing-carousel-next{right:-18px}
.landing-carousel-prev:hover,.landing-carousel-next:hover{background:#e9f9f0}
.landing-illustrative{font-size:10.5px;text-align:right;color:#81968b;margin:11px 3px 23px}
.landing-assurances{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.landing-assurances>div{display:flex;align-items:center;gap:10px;border:1px solid #e1eee7;background:#f9fefb;border-radius:13px;padding:16px 14px;font-size:12px;font-weight:700;color:#345d4e}
.landing-assurances .icon{color:#0c7756;width:19px;height:19px}
.landing-situations{padding:95px 0;background:linear-gradient(145deg,#f6fcf8,#eafaef)}
.landing-section-head-center{flex-direction:column;align-items:center;text-align:center;gap:15px;margin-bottom:34px}
.landing-section-head-center h2{max-width:740px}
.landing-section-head-center>p{max-width:680px}
.landing-situations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.landing-situation{background:#fff;border:1px solid #d9ebe0;border-radius:18px;padding:30px;min-height:275px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,box-shadow .2s,border-color .2s}
.landing-situation:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(10,77,53,.08);border-color:#99d6b6}
.landing-situation-icon{width:47px;height:47px;border-radius:14px;display:grid;place-items:center;background:#e4f9eb;color:#0b6a56;margin-bottom:20px}
.landing-situation h3{font-size:18px;letter-spacing:-.025em;margin:0 0 10px}
.landing-situation p{font-size:13px;line-height:1.7;color:#738780;margin-bottom:23px}
.landing-situation-link{margin-top:auto;color:#0b6a56;font-weight:800;font-size:12px}
.landing-resources{padding:94px 0;background:#fff}
.landing-resources-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.landing-resource{border:1px solid #dcebe2;border-radius:16px;padding:25px 23px;display:flex;flex-direction:column;min-height:260px;transition:box-shadow .2s,transform .2s}
.landing-resource:hover{box-shadow:0 12px 28px rgba(10,70,46,.07);transform:translateY(-2px)}
.landing-resource-tag{letter-spacing:.12em;font-size:10px;color:#0b7053;font-weight:850;margin-bottom:18px}
.landing-resource h3{font-size:17px;line-height:1.4;margin:0 0 12px;color:var(--ink)}
.landing-resource p{font-size:12.5px;line-height:1.75;color:#72857f;margin:0 0 20px}
.landing-resource-more{margin-top:auto;color:#0b6a56;font-weight:750;font-size:12px}
.landing-footer-extra{display:flex;gap:18px;flex-wrap:wrap;align-items:center;border-top:1px solid rgba(255,255,255,.14);padding:16px 0 23px;font-size:11px;color:#bcd1c8}
.landing-footer-extra a{text-decoration:underline;text-underline-offset:3px}
.landing-footer-extra span{flex-basis:100%;color:#a3bfb4}
.landing-mobile-cta{display:none}
/* Swiper CDN fallback: se mantiene usable como galería horizontal nativa */
.landing-swiper.no-swiper .swiper-wrapper{display:flex;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.landing-swiper.no-swiper .swiper-slide{flex:0 0 100%;scroll-snap-align:start}
.landing-carousel-shell:has(.no-swiper) .landing-carousel-prev,.landing-carousel-shell:has(.no-swiper) .landing-carousel-next,.landing-carousel-shell:has(.no-swiper) .landing-pagination{display:none}
@media(max-width:1000px){.landing-assurances{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-slide{height:390px}}
@media(max-width:700px){
 .hero{padding-top:27px}.hero-copy h1{font-size:clamp(36px,9.4vw,49px)}
 .hero-cta-group{gap:12px;margin-top:-3px}.hero-primary{width:100%}.hero-cta-meta{width:100%;text-align:center}
 .landing-showcase{padding:57px 0 49px}.landing-section-head{display:block;margin-bottom:22px}.landing-section-head h2{font-size:30px}.landing-section-head>p{font-size:13px;margin:12px 0 0}
 .landing-slide{height:415px}.landing-slide img{object-position:62% center}.landing-slide-gradient{background:linear-gradient(0deg,rgba(4,43,34,.95) 0%,rgba(4,43,34,.78) 40%,rgba(4,43,34,.18) 85%)}
 .landing-slide-content{justify-content:flex-end;padding:25px 25px 60px;max-width:none}
 .landing-slide h3{font-size:30px;max-width:360px;margin-bottom:10px}.landing-slide p{font-size:13px;margin-bottom:12px;line-height:1.6}
 .landing-slide-tag{font-size:10px;margin-bottom:9px}.landing-swiper{border-radius:17px}
 .landing-carousel-prev,.landing-carousel-next{top:auto;bottom:-53px;transform:none;width:37px;height:37px;font-size:19px}
 .landing-carousel-prev{left:2px}.landing-carousel-next{right:2px}
 .landing-illustrative{margin:17px 0 42px}.landing-assurances{grid-template-columns:1fr 1fr;gap:9px}
 .landing-assurances>div{padding:13px 10px;font-size:11px;gap:8px;align-items:flex-start}
 .landing-assurances .icon{width:17px;height:17px;flex:none}
 .landing-situations,.landing-resources{padding:65px 0}.landing-section-head-center{display:flex;gap:5px}
 .landing-situations-grid,.landing-resources-grid{grid-template-columns:1fr;gap:12px}.landing-situation{min-height:0;padding:24px}.landing-resource{min-height:0;padding:24px}
 .landing-mobile-cta{position:fixed;bottom:calc(10px + env(safe-area-inset-bottom));left:15px;right:15px;z-index:49;min-height:49px;align-items:center;justify-content:center;gap:14px;background:#0b6a56;color:#fff;border-radius:11px;box-shadow:0 10px 35px rgba(2,45,31,.31);font-size:14px;font-weight:800;transform:translateY(calc(150% + 30px));opacity:0;pointer-events:none;transition:transform .25s,opacity .25s;display:flex}
 .landing-mobile-cta.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}
}
@media(prefers-reduced-motion:reduce){.landing-situation,.landing-resource,.landing-mobile-cta{transition:none}}
