/* Eco App v1.4.61 - UI premium mobile-first */
.eco-premium-section{box-sizing:border-box;width:min(1180px,calc(100% - 28px));margin:0 auto;padding:34px 0;color:#101828;}
.eco-premium-section *{box-sizing:border-box;}
.eco-premium-head{display:flex;flex-direction:column;gap:8px;margin:0 0 18px;}
.eco-premium-head span,.eco-premium-hero-card>span{display:inline-flex;width:max-content;max-width:100%;align-items:center;gap:6px;border:1px solid rgba(15,118,110,.25);background:#ecfdf5;color:#065f46!important;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:1000;letter-spacing:.04em;text-transform:uppercase;}
.eco-premium-head h2{margin:0;color:#061426!important;font-size:clamp(28px,5vw,46px);line-height:1.02;letter-spacing:-.05em;font-weight:1000;}
.eco-premium-head p{margin:0;color:#334155!important;font-size:16px;line-height:1.52;font-weight:850;max-width:850px;}
.eco-premium-head-light span{background:rgba(255,255,255,.16);color:#fff!important;border-color:rgba(255,255,255,.28);}
.eco-premium-head-light h2,.eco-premium-head-light p{color:#fff!important;}
.eco-premium-hero{padding:26px 0 12px;background:linear-gradient(180deg,#f8fafc,#fff);}
.eco-premium-hero-card{position:relative;isolation:isolate;overflow:hidden;border-radius:30px;min-height:420px;padding:28px 20px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,rgba(2,6,23,.08) 0%,rgba(2,6,23,.76) 100%),url('../img/destinos/hero-turismo.jpg') center/cover no-repeat;box-shadow:0 28px 70px rgba(15,23,42,.20);}
.eco-premium-hero-card h1{max-width:860px;margin:14px 0 12px;color:#fff!important;font-size:clamp(38px,10vw,78px);line-height:.92;letter-spacing:-.075em;font-weight:1000;text-shadow:0 16px 38px rgba(0,0,0,.52);}
.eco-premium-hero-card p{max-width:680px;margin:0 0 18px;color:rgba(255,255,255,.94)!important;font-size:clamp(16px,4vw,21px);line-height:1.42;font-weight:850;text-shadow:0 10px 30px rgba(0,0,0,.45);}
.eco-premium-image-row,.eco-premium-gallery-row,.eco-premium-media-row,.eco-premium-testimonials-row{display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;padding:4px 2px 20px;scroll-snap-type:x mandatory;scroll-padding-left:2px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-behavior:smooth;touch-action:pan-y pinch-zoom;scrollbar-width:thin;}
.eco-premium-image-row::-webkit-scrollbar,.eco-premium-gallery-row::-webkit-scrollbar,.eco-premium-media-row::-webkit-scrollbar,.eco-premium-testimonials-row::-webkit-scrollbar{height:8px;}
.eco-premium-image-row::-webkit-scrollbar-track,.eco-premium-gallery-row::-webkit-scrollbar-track,.eco-premium-media-row::-webkit-scrollbar-track,.eco-premium-testimonials-row::-webkit-scrollbar-track{background:rgba(15,23,42,.07);border-radius:999px;}
.eco-premium-image-row::-webkit-scrollbar-thumb,.eco-premium-gallery-row::-webkit-scrollbar-thumb,.eco-premium-media-row::-webkit-scrollbar-thumb,.eco-premium-testimonials-row::-webkit-scrollbar-thumb{background:rgba(15,118,110,.46);border-radius:999px;}
.eco-premium-image-card{scroll-snap-stop:always;position:relative;isolation:isolate;flex:0 0 78%;max-width:350px;min-height:246px;display:flex;align-items:flex-end;overflow:hidden;border-radius:16px;padding:18px;text-decoration:none!important;color:#fff!important;background:var(--eco-img) center/cover no-repeat;box-shadow:0 18px 42px rgba(15,23,42,.20);scroll-snap-align:start;transition:transform .2s ease,box-shadow .2s ease;}
.eco-premium-image-card:before{content:"";position:absolute;inset:0;z-index:-2;background:var(--eco-img) center/cover no-repeat;transition:transform .5s ease;}
.eco-premium-image-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(2,6,23,.02) 0%,rgba(2,6,23,.42) 43%,rgba(2,6,23,.88) 100%);}
.eco-premium-image-card:hover{transform:translateY(-3px);box-shadow:0 25px 60px rgba(15,23,42,.28);}
.eco-premium-image-card:hover:before{transform:scale(1.06);}
.eco-premium-image-card-content small{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.18);color:#fff!important;font-size:11px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(12px);}
.eco-premium-image-card-content h3{margin:10px 0 6px;color:#fff!important;font-size:clamp(25px,6vw,34px);line-height:.95;letter-spacing:-.055em;font-weight:1000;text-shadow:0 10px 28px rgba(0,0,0,.55);}
.eco-premium-image-card-content p{margin:0;color:rgba(255,255,255,.94)!important;font-size:14px;line-height:1.35;font-weight:850;}
.eco-premium-gallery-card{scroll-snap-stop:always;flex:0 0 84%;max-width:430px;border-radius:22px;overflow:hidden;background:#fff;border:1px solid rgba(15,23,42,.10);box-shadow:0 18px 45px rgba(15,23,42,.12);scroll-snap-align:start;}
.eco-premium-gallery-card img{display:block;width:100%;height:238px;object-fit:cover;background:#dbe4ef;}
.eco-premium-gallery-caption{padding:15px 16px 17px;}
.eco-premium-gallery-caption strong{display:block;color:#061426!important;font-size:18px;line-height:1.16;font-weight:1000;letter-spacing:-.025em;}
.eco-premium-gallery-caption span{display:block;margin-top:6px;color:#475569!important;font-size:13px;line-height:1.45;font-weight:850;}
.eco-premium-media-card{scroll-snap-stop:always;flex:0 0 82%;max-width:330px;min-height:230px;border-radius:24px;padding:18px;background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.10);box-shadow:0 16px 38px rgba(15,23,42,.10);scroll-snap-align:start;display:flex;flex-direction:column;gap:10px;}
.eco-premium-media-visual{height:94px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#061426,#0f766e);color:#fff!important;font-weight:1000;font-size:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.20);}
.eco-premium-media-card h3{margin:0;color:#061426!important;font-size:21px;line-height:1.05;font-weight:1000;letter-spacing:-.035em;}
.eco-premium-media-card p{margin:0;color:#334155!important;font-size:14px;line-height:1.45;font-weight:850;}
.eco-premium-testimonial-card{scroll-snap-stop:always;flex:0 0 86%;max-width:410px;padding:17px;border-radius:24px;background:rgba(255,255,255,.92);border:1px solid rgba(15,23,42,.10);box-shadow:0 18px 45px rgba(15,23,42,.12);scroll-snap-align:start;backdrop-filter:blur(12px);}
.eco-premium-testimonial-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.eco-premium-testimonial-top img{width:58px;height:58px;flex:0 0 58px;object-fit:cover;border-radius:999px;border:3px solid #fff;background:#e2e8f0;box-shadow:0 10px 24px rgba(15,23,42,.20);}
.eco-premium-testimonial-card h3{margin:0 0 4px;color:#061426!important;font-size:15px;line-height:1.24;font-weight:1000;letter-spacing:-.015em;}
.eco-premium-stars{color:#f59e0b!important;letter-spacing:1px;font-size:15px;line-height:1;}
.eco-premium-testimonial-card p{margin:0;color:#1e293b!important;font-size:15px;line-height:1.53;font-weight:850;}
.eco-premium-radar-card{position:relative;overflow:hidden;border-radius:30px;padding:22px;background:linear-gradient(135deg,rgba(6,20,38,.96),rgba(15,118,110,.94)),url('../img/destinos/radar-bg.jpg') center/cover no-repeat;box-shadow:0 28px 70px rgba(15,23,42,.22);}
.eco-premium-radar-card:before{content:"";position:absolute;right:-80px;top:-80px;width:240px;height:240px;border-radius:999px;background:rgba(255,255,255,.14);pointer-events:none;}
.eco-premium-radar-glass{position:relative;margin-top:18px;border-radius:24px;padding:14px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.26);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 20px 45px rgba(2,6,23,.25);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.eco-premium-radar-glass .eco-radar-hero-card,.eco-seo-landing #eco-radar-publico .eco-radar-hero-card{background:rgba(255,255,255,.84)!important;border:1px solid rgba(255,255,255,.54)!important;box-shadow:0 20px 55px rgba(15,23,42,.16)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
.eco-premium-radar-glass .eco-radar-search-box,.eco-seo-landing #eco-radar-publico .eco-radar-search-box{background:rgba(255,255,255,.72)!important;border:1px solid rgba(255,255,255,.68)!important;box-shadow:0 16px 40px rgba(15,23,42,.12)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
.eco-premium-radar-glass input,.eco-premium-radar-glass select,.eco-seo-landing #eco-radar-publico input,.eco-seo-landing #eco-radar-publico select{border-radius:14px!important;background:rgba(255,255,255,.94)!important;color:#061426!important;}
/* Las fichas de rutas frecuentes se vuelven horizontales en landings para reducir scroll vertical. */
.eco-seo-landing .eco-seo-route-card-grid{display:flex!important;gap:14px!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 4px 20px;margin:0 -4px;}
.eco-seo-landing .eco-seo-route-card-grid .eco-seo-route-link-card{flex:0 0 min(84vw,340px);scroll-snap-align:start;scroll-snap-stop:always;min-height:190px;}
.eco-seo-landing .eco-seo-route-card-grid::-webkit-scrollbar{height:8px;}
.eco-seo-landing .eco-seo-route-card-grid::-webkit-scrollbar-thumb{background:rgba(15,118,110,.48);border-radius:999px;}
@media(min-width:760px){.eco-premium-section{padding:46px 0}.eco-premium-hero-card{min-height:520px;padding:46px}.eco-premium-image-card{scroll-snap-stop:always;flex-basis:31%;min-height:310px}.eco-premium-gallery-card{scroll-snap-stop:always;flex-basis:38%}.eco-premium-gallery-card img{height:286px}.eco-premium-media-card{scroll-snap-stop:always;flex-basis:31%}.eco-premium-testimonial-card{scroll-snap-stop:always;flex-basis:32%}.eco-premium-radar-card{padding:34px}.eco-premium-radar-glass{padding:20px}}
@media(max-width:520px){.eco-premium-section{width:min(100% - 22px,1180px);padding:28px 0}.eco-premium-image-card{scroll-snap-stop:always;flex-basis:82%;min-height:236px}.eco-premium-gallery-card{scroll-snap-stop:always;flex-basis:88%}.eco-premium-gallery-card img{height:216px}.eco-premium-radar-card{border-radius:24px;padding:16px}.eco-premium-radar-glass{border-radius:20px;padding:10px}.eco-premium-testimonial-card,.eco-premium-media-card{scroll-snap-stop:always;flex-basis:88%}.eco-premium-head h2{font-size:28px}.eco-premium-hero-card{border-radius:24px;min-height:430px;padding:24px 18px}}

.eco-premium-carousel{position:relative;}
.eco-premium-carousel.is-dragging{cursor:grabbing;}
.eco-premium-carousel .eco-premium-snap-item{scroll-margin-inline:2px;}
.eco-premium-carousel::-webkit-scrollbar-thumb:hover{background:rgba(15,118,110,.62);}
