/* EcoAldeaRD · nueva dirección visual · noviembre 2026 */
:root{--forest:#0c3926;--deep:#082d1d;--leaf:#357d34;--lime:#b8ed31;--cream:#f8faf5;--text:#102a20;--muted:#607268}
html{scroll-behavior:smooth}body{font-family:'DM Sans',sans-serif;color:var(--text);overflow-x:hidden}
h1,h2,h3,h4{font-family:'Manrope',sans-serif;letter-spacing:-.055em}h1,h2{font-weight:800}
.site-header{position:relative;z-index:50;background:#fff}.navbar{min-height:76px}.brand{display:flex;align-items:center}.brand-logo{display:block;width:auto;height:53px;max-width:220px;object-fit:contain;object-position:left center}.navbar-nav .nav-link{font-weight:800;color:#173025!important}.navbar-nav .nav-link:hover{color:#3a852c!important}.btn-reserve{background:#2f7a32;border-color:#2f7a32;border-radius:50px;font-weight:800;padding:12px 24px}
.home-hero{height:560px;min-height:500px}.home-hero:after{background:linear-gradient(90deg,rgba(3,33,18,.84) 0%,rgba(5,39,23,.47) 49%,rgba(3,30,19,.08) 100%)}.hero-overlay h1{font-family:'Manrope',sans-serif;font-weight:800;line-height:1.03;font-size:clamp(3.4rem,6vw,5.7rem)}.hero-overlay h1 span{color:var(--lime)}.hero-overlay p{font-size:1.14rem}.btn-accent{background:var(--lime);border-color:var(--lime);color:#102b16;border-radius:40px;font-weight:800}.btn-accent:hover{background:#d2fb6a;border-color:#d2fb6a}.btn-outline-light-eco{border-radius:40px}
.feature-strip-elevated{padding:32px 0 20px;border-bottom:0}.feature-strip i{font-size:2.1rem;color:#3c861d;display:block;min-height:42px}.feature-strip h3{font-weight:800;font-size:.98rem}.feature-strip p{font-size:.82rem}.feature-strip .col-lg-3:not(:last-child){border-right:1px solid #e5eae2}
.photo-carousel-section{padding:24px 0 52px}.photo-carousel-head{text-align:center;margin:0 0 26px}.photo-carousel-head h2{font-size:clamp(1.7rem,3vw,2.5rem);margin-top:9px}.photo-carousel-head h2 em{font-style:normal;color:#3b8137}.gallery-slide-img{width:100%;height:215px;object-fit:cover;border-radius:18px;display:block}.photo-carousel-section .carousel-control-prev,.photo-carousel-section .carousel-control-next{width:43px;height:43px;top:50%;transform:translateY(-50%);border-radius:50%;background:#fff;color:#123a27;opacity:1;box-shadow:0 4px 22px #0002}.photo-carousel-section .carousel-control-prev{left:-15px}.photo-carousel-section .carousel-control-next{right:-15px}
.experiences-reimagined{padding:70px 0 105px}.experiences-reimagined .section-heading h2{max-width:720px;margin:12px auto;font-size:clamp(2.4rem,4.4vw,4.3rem);line-height:1.1}.experiences-reimagined .section-heading h2 em{color:#3f843a}.experiences-reimagined .section-heading{margin-bottom:52px}.experiences-reimagined .section-heading p{margin-inline:auto}.experience-card-modern{height:100%;border-radius:23px;box-shadow:0 18px 40px rgba(12,44,27,.09);transition:transform .2s ease,box-shadow .2s ease}.experience-card-modern:hover{transform:translateY(-6px);box-shadow:0 23px 48px rgba(12,44,27,.15)}.experience-card-modern .experience-photo img{height:255px;width:100%;object-fit:cover}.experience-card-modern .experience-body{min-height:205px;padding:34px 24px 28px}.experience-card-modern .experience-tag{color:#3f843a}.experience-card-modern .experience-body h3{font-weight:800;font-size:1.16rem}.experience-card-modern .circle-link{background:#397d38}
.services-showcase{padding:20px 0 105px}.services-shell{background:linear-gradient(140deg,#0c4227 0%,#052e1a 100%);color:#fff;border-radius:30px;padding:52px 42px 36px;position:relative;overflow:hidden}.services-shell:after{content:'✦';position:absolute;top:-75px;right:-10px;font-size:230px;color:rgba(190,236,70,.06);pointer-events:none}.services-intro{position:relative;z-index:1;margin-bottom:20px}.services-intro .eyebrow{color:#e3f7ad}.services-intro h2{font-size:clamp(2.1rem,4.3vw,4.5rem);line-height:1.06;max-width:550px;margin:10px 0 0;color:#fff}.services-intro h2 em{font-style:normal;color:var(--lime)}.services-intro p{max-width:480px;margin:30px auto 0;font-weight:600;line-height:1.65;color:#ecf8eb}.services-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;position:relative;z-index:1}.service-tile{background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.09);border-radius:16px;min-height:130px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:13px;text-align:center;padding:17px 10px}.service-tile i{color:var(--lime);font-size:2.1rem;line-height:1}.service-tile span{color:#fff;font-weight:800;font-size:.9rem;line-height:1.3}.services-note{font-size:.77rem;color:#cde2ce;margin:23px 0 0;position:relative;z-index:1}
.booking-feature{border-radius:28px}.booking-copy h2{font-weight:800}.info-panel{border-radius:24px}.editorial-story{padding-top:90px;padding-bottom:110px}.benefits-section{padding:95px 0}
.page-hero h1{font-weight:800}.stay-card,.rental-card,.trail-card{overflow:hidden}.stay-card img,.rental-card img,.trail-card img{object-fit:cover}.site-footer{background:#092b1c}
@media(max-width:991.98px){.brand-logo{height:45px;max-width:175px}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.services-shell{padding:38px 28px}.services-intro p{margin:0}.feature-strip .col-lg-3:nth-child(2){border-right:0}.gallery-slide-img{height:170px}}
@media(max-width:767.98px){.navbar{min-height:68px}.brand-logo{height:39px;max-width:145px}.btn-reserve{padding:9px 13px}.home-hero{height:560px;min-height:490px}.feature-strip .col-lg-3{padding:13px 6px}.feature-strip .col-lg-3:nth-child(2){border-right:0}.feature-strip i{font-size:1.8rem}.feature-strip h3{font-size:.86rem}.feature-strip p{font-size:.74rem}.gallery-slide-img{height:145px}.photo-carousel-section .row>.col-md-4:not(:first-child){display:none}.photo-carousel-section .row>.col-md-4:first-child{width:100%}.photo-carousel-section .gallery-slide-img{height:230px}.experiences-reimagined{padding:58px 0 78px}.experiences-reimagined .section-heading{margin-bottom:32px}.services-showcase{padding-bottom:65px}.services-shell{border-radius:22px;padding:34px 20px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.service-tile{min-height:118px}.service-tile span{font-size:.81rem}.services-intro p{margin:8px 0 5px}.photo-carousel-section .carousel-control-prev{left:0}.photo-carousel-section .carousel-control-next{right:0}}
