:root{--forest:#26311f;--forest2:#3e4a2e;--olive:#70794b;--gold:#d6a23f;--cream:#f5efe4;--paper:#fbf8f1;--brown:#3a2d21;--ink:#2d2924;--muted:#756d63;--shadow:0 22px 60px rgba(35,28,21,.15);--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:90px}body{font-family:Montserrat,sans-serif;color:var(--ink);background:var(--paper);overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;width:100%}button,input{font:inherit}.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:linear-gradient(180deg,rgba(20,25,16,.78),rgba(20,25,16,.15));transition:.35s}.site-header.scrolled{background:rgba(25,31,20,.95);backdrop-filter:blur(16px);box-shadow:0 8px 30px rgba(0,0,0,.2)}.nav-shell{width:min(1180px,92%);margin:auto;height:92px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;gap:10px;color:#fff;min-width:210px}.brand-mark{width:40px;height:40px;border:1px solid rgba(255,255,255,.42);display:grid;place-items:center;border-radius:50%;font-size:19px}.brand span:last-child{display:flex;flex-direction:column}.brand strong{font-family:"Cormorant Garamond",serif;font-size:21px;line-height:1;letter-spacing:1px}.brand small{font-size:8px;letter-spacing:5px;margin-top:4px}nav{display:flex;gap:28px;align-items:center}nav a{color:rgba(255,255,255,.84);font-size:10px;font-weight:700;text-transform:uppercase;position:relative}nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-11px;height:2px;background:var(--gold);transition:.3s}nav a:hover:after{right:0}.reserve-top,.btn-primary,.soft-btn,.more-btn,.modal-reserve{background:var(--olive);color:#fff;border:0;border-radius:4px;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.45px;padding:14px 19px;display:inline-flex;align-items:center;gap:9px;cursor:pointer;transition:.35s var(--ease)}.reserve-top:hover,.btn-primary:hover,.soft-btn:hover,.more-btn:hover,.modal-reserve:hover{background:#59643b;transform:translateY(-2px)}.menu-toggle{display:none;border:0;background:none;color:#fff;font-size:28px}
.hero{height:530px;min-height:72vh;position:relative;display:flex;align-items:center;overflow:hidden;background:#152013}.hero-bg{position:absolute;inset:0;background:url('../img/hero/hero1.png') center 52%/cover no-repeat;transform:scale(1.02);animation:heroZoom 12s ease-in-out infinite alternate}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,15,8,.86),rgba(18,27,15,.56) 45%,rgba(18,27,15,.08) 78%),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.18))}.hero-content{position:relative;z-index:2;width:min(1180px,92%);margin:auto;color:#fff;padding-top:68px}.eyebrow{display:block;color:#e7b34f;font-size:10px;font-weight:700;letter-spacing:2.1px;margin-bottom:14px}.hero h1{font-family:"Cormorant Garamond",serif;font-size:clamp(58px,6vw,84px);font-weight:500;line-height:.86}.hero h1 em{display:block;color:#efb84f;font-weight:500}.hero p{width:min(520px,90%);font-size:13px;line-height:1.8;margin:24px 0;color:rgba(255,255,255,.88)}.hero-actions{display:flex;gap:14px}.btn{padding:15px 21px;border-radius:4px;text-transform:uppercase;font-size:10px;font-weight:700;display:inline-flex;align-items:center;gap:10px;transition:.3s}.btn-outline{border:1px solid rgba(255,255,255,.58);color:#fff;background:rgba(0,0,0,.16)}.btn-outline:hover{background:#fff;color:#28321f}
.benefits-wrap{position:relative;z-index:5;margin-top:-55px}.benefits-card{width:min(1160px,90%);margin:auto;background:rgba(251,248,241,.97);border-radius:26px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}.benefits-card article{padding:28px 28px;display:flex;gap:15px;align-items:flex-start;border-right:1px solid #e6dfd4}.benefits-card article:last-child{border:0}.benefits-card i{font-size:29px;color:#687047}.benefits-card strong{font-family:"Cormorant Garamond",serif;font-size:18px;display:block;margin-bottom:6px}.benefits-card span{font-size:9px;color:var(--muted);line-height:1.55}
.cabins-section{padding:92px 0 0}.section-heading{text-align:center}.section-heading span,.story-copy>span,.location-panel>span{color:var(--gold);font-size:9px;letter-spacing:2px;font-weight:700}.section-heading h2,.story-copy h2,.location-panel h2,.contact-inner h2{font-family:"Cormorant Garamond",serif;font-size:40px;font-weight:600;margin:8px 0 6px}.ornament{color:var(--gold)}.cabins-grid{width:min(1180px,92%);margin:36px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cabin-card{background:#fff;border:1px solid #e7e0d6;box-shadow:0 14px 32px rgba(41,34,27,.06);overflow:hidden;transition:.4s var(--ease)}.cabin-card:hover{transform:translateY(-9px);box-shadow:var(--shadow)}.cabin-card>img{height:185px;object-fit:cover;transition:.6s}.cabin-card:hover>img{transform:scale(1.045)}.cabin-body{padding:17px 18px 20px;text-align:center}.cabin-body h3{font-family:"Cormorant Garamond",serif;font-size:23px;margin-bottom:12px}.meta{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;font-size:8px;color:#71695f}.cabin-body p{font-size:9px;line-height:1.7;color:#71695f;margin:17px 0}.more-btn{padding:11px 18px;font-size:8px}
.story-section{margin-top:0;display:grid;grid-template-columns:1.1fr .85fr 1.05fr;min-height:420px;background:#1f241b;color:#fff}.story-copy{padding:62px 7vw;background:linear-gradient(rgba(21,25,18,.78),rgba(21,25,18,.88)),url('../img/hero/hero1.png') center/cover}.story-copy h2{font-size:35px;line-height:1}.story-copy p,.location-panel p{font-size:10px;line-height:1.8;color:rgba(255,255,255,.75);margin:22px 0}.gold-line{width:75px;height:1px;background:var(--gold);margin-top:18px}.story-gallery{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:3px}.story-gallery img{height:100%;object-fit:cover;min-height:205px;filter:saturate(.9)}.location-panel{padding:62px 5vw;text-align:center;background:#4e5734}.location-panel h2{font-size:35px}.map-faux{height:150px;background:#ecebe7;position:relative;border-radius:8px;overflow:hidden;margin:22px 0}.map-faux:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,#d8ddd2 0 2px,transparent 3px),radial-gradient(circle at 70% 65%,#d8ddd2 0 2px,transparent 3px);background-size:30px 30px}.map-faux i{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);font-size:42px;color:#667340}.road{position:absolute;background:#c9ccc4;height:3px;width:130%;left:-15%;transform:rotate(-16deg)}.r1{top:35%}.r2{top:58%;transform:rotate(12deg)}.r3{top:75%;transform:rotate(-4deg)}
.contact-section{padding:70px 0;background:var(--cream)}.contact-inner{width:min(1100px,90%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:50px}.eyebrow.dark{color:#8d6e31}.contact-inner h2{font-size:44px}.contact-inner p{font-size:11px;color:#6f675d}.contact-actions{display:grid;gap:12px;min-width:310px}.contact-actions a{display:flex;align-items:center;gap:14px;background:#fff;padding:14px 16px;border:1px solid #e4ddd1}.contact-actions i{font-size:20px;color:#657044}.contact-actions span{display:flex;flex-direction:column}.contact-actions small{font-size:8px;color:#84796d}.contact-actions strong{font-size:10px}
.site-footer{background:#1f2118;color:rgba(255,255,255,.72);padding:48px 0 18px}.footer-grid{width:min(1180px,92%);margin:auto;display:grid;grid-template-columns:1.2fr .65fr 1fr 1fr;gap:50px}.footer-brand{min-width:0}.footer-grid h4{color:#fff;text-transform:uppercase;font-size:9px;margin-bottom:15px}.footer-grid>div{display:flex;flex-direction:column;gap:9px}.footer-grid a,.footer-grid span,.footer-grid p{font-size:8.5px;line-height:1.65}.socials{display:flex!important;flex-direction:row!important;gap:8px!important;margin-top:5px}.socials a{width:34px;height:34px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center}.subscribe{display:flex;margin-top:6px}.subscribe input{width:100%;border:1px solid rgba(255,255,255,.18);background:transparent;color:#fff;padding:11px;font-size:8px}.subscribe button{width:44px;border:0;background:#626d3f;color:#fff}.copyright{width:min(1180px,92%);margin:35px auto 0;border-top:1px solid rgba(255,255,255,.08);padding-top:15px;text-align:center;font-size:8px}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:900;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-size:25px;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.modal{position:fixed;inset:0;z-index:2000;background:rgba(5,7,4,.88);display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;transition:.3s}.modal.active{opacity:1;visibility:visible}.modal-box{width:min(1240px,96vw);max-height:88vh;overflow:auto;background:#11140f;border:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:.9fr 1.25fr;gap:46px;padding:44px;position:relative;color:#fff}.modal-close{position:absolute;right:18px;top:14px;border:0;background:none;color:#fff;font-size:28px;cursor:pointer}.modal-info{padding:18px 0}.modal-icon{width:72px;height:72px;border:3px solid #e5ad31;border-radius:50%;display:grid;place-items:center;font-size:28px;color:#e5ad31}.modal-info h2{font-size:48px;font-family:"Cormorant Garamond",serif;margin:18px 0}.modal-info>p{font-size:14px;line-height:1.9;color:#d7d4cf}.modal-info h3{color:#e5ad31;text-transform:uppercase;margin:28px 0 15px}.modal-info ul{list-style:none;display:grid;gap:12px}.modal-info li{font-size:13px}.modal-info li:before{content:"✓";color:#e5ad31;margin-right:12px;font-weight:700}.modal-reserve{margin-top:28px;background:#e5ad31;color:#111}.modal-gallery{padding-top:18px}.gallery-main{height:450px;position:relative;overflow:hidden}.gallery-main img{width:100%;height:100%;object-fit:cover}.gallery-arrow,.zoom-btn{position:absolute;border:1px solid rgba(255,255,255,.6);background:rgba(0,0,0,.28);color:#fff;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;cursor:pointer}.gallery-arrow{top:50%;transform:translateY(-50%)}.gallery-arrow.prev{left:18px}.gallery-arrow.next{right:18px}.zoom-btn{right:18px;top:18px}.thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.thumbs button{border:2px solid transparent;background:none;padding:0;cursor:pointer;height:96px;overflow:hidden}.thumbs button.active{border-color:#e5ad31}.thumbs img{height:100%;object-fit:cover}.gallery-dots{display:flex;justify-content:center;gap:8px;margin-top:18px}.gallery-dots span{width:8px;height:8px;border-radius:50%;background:#777}.gallery-dots span.active{background:#fff}.lightbox{position:fixed;inset:0;z-index:3000;background:rgba(0,0,0,.95);display:grid;place-items:center;opacity:0;visibility:hidden;transition:.3s;padding:30px}.lightbox.active{opacity:1;visibility:visible}.lightbox img{max-width:92vw;max-height:88vh;object-fit:contain;width:auto}.lightbox-close{position:absolute;top:20px;right:24px;background:none;border:0;color:#fff;font-size:30px;cursor:pointer}.reveal{opacity:0;transform:translateY(25px);transition:.75s var(--ease)}.reveal.visible{opacity:1;transform:none}@keyframes heroZoom{to{transform:scale(1.08)}}
@media(max-width:1000px){nav{display:none}.reserve-top{display:none}.menu-toggle{display:block}.menu-toggle.active+i{transform:rotate(90deg)}#mainNav.active{display:flex;position:absolute;top:92px;left:4%;right:4%;background:#1f2719;padding:24px;flex-direction:column;align-items:flex-start}.benefits-card{grid-template-columns:1fr 1fr}.cabins-grid{grid-template-columns:1fr 1fr}.story-section{grid-template-columns:1fr 1fr}.location-panel{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.modal-box{grid-template-columns:1fr}.gallery-main{height:380px}}
@media(max-width:640px){.hero{height:690px}.hero-content{padding-top:60px}.hero h1{font-size:56px}.benefits-wrap{margin-top:-32px}.benefits-card{grid-template-columns:1fr}.benefits-card article{border-right:0;border-bottom:1px solid #e6dfd4;padding:20px}.cabins-grid{grid-template-columns:1fr}.story-section{grid-template-columns:1fr}.story-gallery{min-height:430px}.contact-inner{flex-direction:column;align-items:flex-start}.contact-actions{min-width:0;width:100%}.footer-grid{grid-template-columns:1fr}.modal{padding:0}.modal-box{width:100%;height:100vh;max-height:none;padding:25px 18px;gap:20px}.modal-info h2{font-size:39px}.gallery-main{height:300px}.thumbs button{height:70px}.hero-actions{flex-direction:column;align-items:flex-start}}

/* ===== AJUSTES ENTREGA V2 ===== */
/* Hero: imagen local limpia, sin textos incrustados */
.hero-bg{background-image:url('../img/hero/hero1.png')!important;background-position:center 48%!important}

/* Tarjetas flotantes del hero: look bosque + animación premium */
.benefits-card{overflow:visible;background:rgba(249,245,236,.96);border:1px solid rgba(103,112,71,.18);box-shadow:0 28px 70px rgba(37,45,28,.16)}
.benefits-card article{position:relative;overflow:hidden;isolation:isolate;transition:transform .45s var(--ease),background .45s var(--ease),box-shadow .45s var(--ease);border-radius:20px}
.benefits-card article:before{content:"";position:absolute;z-index:-1;width:145px;height:145px;right:-75px;bottom:-90px;border-radius:50%;background:radial-gradient(circle,rgba(137,149,86,.28),transparent 70%);transition:.5s var(--ease)}
.benefits-card article:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.8) 48%,transparent 72%);transform:translateX(-130%);transition:.7s var(--ease)}
.benefits-card article:hover{z-index:2;transform:translateY(-10px) scale(1.018);background:#fffdf7;box-shadow:0 22px 44px rgba(52,61,35,.17)}
.benefits-card article:hover:before{transform:scale(1.45) translate(-8px,-8px)}
.benefits-card article:hover:after{transform:translateX(130%)}
.benefits-card i{width:48px;height:48px;flex:0 0 48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#657044,#475130);color:#f1c86f;box-shadow:0 10px 24px rgba(50,61,32,.2);transition:.4s var(--ease)}
.benefits-card article:hover i{transform:translateY(-3px) rotate(-7deg) scale(1.08);background:linear-gradient(145deg,#c79b4b,#9c722c);color:#fff}

/* Mapa real */
.map-faux.map-real{height:190px;background:#e9ece5}
.map-faux.map-real iframe{width:100%;height:100%;border:0;display:block;filter:saturate(.78) sepia(.08)}

/* Footer más cálido/rústico, con profundidad de bosque y madera */
.site-footer{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 15%,rgba(148,112,58,.18),transparent 28%),radial-gradient(circle at 88% 70%,rgba(90,109,63,.22),transparent 30%),linear-gradient(135deg,#241b13 0%,#30271a 42%,#1d281a 100%)}
.site-footer:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;background-image:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:70px 70px}
.footer-grid,.copyright{position:relative;z-index:1}
.socials a{width:40px;height:40px;border:0!important;color:#fff!important;font-size:18px;box-shadow:0 8px 20px rgba(0,0,0,.2);transition:.35s var(--ease)}
.socials a:nth-child(1){background:#1877f2}
.socials a:nth-child(2){background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}
.socials a:nth-child(3){background:#25d366}
.socials a:hover{transform:translateY(-5px) scale(1.07);filter:brightness(1.08);box-shadow:0 14px 28px rgba(0,0,0,.28)}

/* Popup: sin scroll interno; se adapta al viewport y la página desplaza si hace falta */
body.modal-open{overflow:hidden}
.modal{display:block;overflow-y:auto;padding:28px 20px}
.modal-box{width:min(1240px,96vw);max-height:none;overflow:visible;margin:0 auto;min-height:min(760px,calc(100vh - 56px));align-items:center;border-radius:14px;box-shadow:0 35px 100px rgba(0,0,0,.48)}
.modal-gallery{min-width:0}
.gallery-main{height:min(54vh,520px);min-height:360px;border-radius:8px}
.thumbs button{border-radius:5px}
@media(max-width:1000px){.modal-box{min-height:0}.gallery-main{height:min(48vh,420px);min-height:320px}}
@media(max-width:640px){.modal{padding:12px}.modal-box{height:auto;min-height:0;padding:54px 18px 24px;border-radius:10px}.gallery-main{height:300px;min-height:0}.benefits-card{overflow:hidden}.benefits-card article{border-radius:0}}
