:root{--gold:#d5a629;--gold2:#f0c54f;--ink:#182018;--olive:#34422d;--cream:#f5f0e6;--white:#fffdfa;--muted:#6f756b;--serif:'Playfair Display',serif;--sans:'DM Sans',sans-serif;--shadow:0 22px 60px rgba(24,32,24,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:400 1rem/1.7 var(--sans);overflow-x:hidden}img{display:block;width:100%;object-fit:cover}button,input,select,textarea{font:inherit}button,a{color:inherit}a{text-decoration:none}.skip{position:fixed;top:-4rem;left:1rem;z-index:999;background:#fff;padding:.7rem}.skip:focus{top:1rem}.header{position:fixed;z-index:100;top:0;left:0;width:100%;height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;color:#fff;transition:.35s}.header.scrolled{height:66px;background:rgba(24,32,24,.92);backdrop-filter:blur(14px);box-shadow:0 8px 28px #0002}.brand{display:flex;align-items:center;gap:.7rem;font-size:.9rem;font-weight:700;letter-spacing:.16em;line-height:1.1}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold2);color:var(--gold2);font-family:var(--serif);font-size:1.3rem}.brand small{display:block;font-size:.52rem;font-weight:500;letter-spacing:.2em;margin-top:.35rem}.nav{position:fixed;inset:0;background:var(--ink);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.1rem;font:1.6rem var(--serif);transform:translateX(100%);transition:.45s}.nav.open{transform:none}.header-actions{display:flex;align-items:center;gap:.8rem}.lang{border:0;background:none;color:inherit;font-size:.78rem;cursor:pointer}.lang b{color:var(--gold2)}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:.78rem 1.25rem;background:var(--gold);border:1px solid var(--gold);color:#172016;font-weight:700;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:.3s}.btn:hover{background:var(--gold2);transform:translateY(-2px);box-shadow:0 10px 28px #0002}.btn-small{display:none;min-height:42px;padding:.55rem 1rem}.btn.ghost{background:transparent;color:#fff;border-color:#fff8}.btn.ghost:hover{background:#fff;color:var(--ink)}.menu-btn{position:relative;z-index:2;width:43px;height:43px;border:0;background:none;padding:10px;order:3}.menu-btn span{display:block;height:1px;background:#fff;margin:7px 0;transition:.3s}.menu-btn[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-btn[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero{height:100svh;min-height:650px;position:relative;color:#fff;overflow:hidden}.hero-track,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;pointer-events:none;transition:opacity 1s;background:linear-gradient(90deg,#10150fdd 0%,#10150f66 55%,#10150f22),var(--bg) center/cover}.hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#111a15b5,transparent 45%)}.hero-slide.active{opacity:1;pointer-events:auto}.hero-slide.active:before{content:"";position:absolute;inset:-3%;background:var(--bg) center/cover;animation:kenburns 7s ease-out both;z-index:-1}.hero-copy{position:absolute;z-index:2;left:7vw;right:7vw;bottom:19vh;max-width:720px}.eyebrow,.kicker{display:block;font-size:.72rem;letter-spacing:.24em;font-weight:700;margin-bottom:1.3rem;color:var(--gold2)}h1,h2{font-family:var(--serif);line-height:1.06;margin:0 0 1.2rem;font-weight:600}h1{font-size:clamp(3.1rem,10vw,7rem)}h2{font-size:clamp(2.3rem,6vw,4.8rem)}h1 em,h2 em{color:var(--gold2);font-weight:500}.hero-copy p{max-width:580px;font-size:1.05rem;color:#ffffffd9}.hero-cta{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:2rem}.slider-arrow{position:absolute;z-index:4;bottom:8vh;width:44px;height:44px;border:1px solid #fff7;background:#15201688;color:#fff;cursor:pointer}.slider-arrow.prev{right:calc(7vw + 52px)}.slider-arrow.next{right:7vw}.hero-dots{position:absolute;z-index:4;left:7vw;bottom:8vh;display:flex;gap:.4rem}.hero-dots button{width:20px;height:2px;border:0;background:#ffffff77;padding:0}.hero-dots button.active{width:42px;background:var(--gold2)}.scroll-hint{display:none}.availability{position:relative;z-index:5;background:var(--cream);padding:1rem}#quick-form{max-width:1120px;margin:auto;display:grid;gap:.8rem;background:#fff;padding:1rem;box-shadow:var(--shadow)}label span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--muted);margin-bottom:.35rem}input,select,textarea{width:100%;border:0;border-bottom:1px solid #cfd2c9;background:transparent;padding:.65rem 0;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 1px var(--gold)}.section{padding:6rem 7vw}.welcome{display:grid;gap:3.5rem;background:var(--cream)}.welcome-images{position:relative;padding:0 14% 18% 0}.welcome-images img:first-child{aspect-ratio:4/5}.welcome-images img:last-child{position:absolute;width:48%;height:46%;right:0;bottom:0;border:8px solid var(--cream)}.lead{font:1.3rem/1.65 var(--serif)}.text-link{display:inline-block;border:0;border-bottom:1px solid var(--gold);background:none;padding:.4rem 0;font-weight:700;cursor:pointer}.text-link span{margin-left:.5rem}.demo-note{margin-top:2rem;padding:.8rem 1rem;border-left:3px solid var(--gold);font-size:.78rem;color:var(--muted)}.section-head{display:flex;flex-direction:column;gap:1rem;margin-bottom:2.5rem}.section-head p{max-width:480px;color:var(--muted)}.room-track{display:flex;gap:1rem;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.room-card{min-width:88%;scroll-snap-align:start;background:#fff;box-shadow:0 10px 30px #0000000d}.room-card img{aspect-ratio:4/3;transition:.5s}.room-card:hover img{transform:scale(1.02)}.room-info{padding:1.5rem}.room-info>span{color:var(--gold);font-size:.75rem}.room-info h3{font:1.7rem var(--serif)}.room-info ul{display:flex;gap:.5rem;flex-wrap:wrap;padding:0;list-style:none;color:var(--muted);font-size:.8rem}.room-info li:after{content:"·";margin-left:.5rem}.slider-controls{display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.slider-controls button{border:1px solid #d8d9d5;background:#fff;width:42px;height:42px}.room-progress{height:2px;background:#ddd;width:110px}.room-progress i{display:block;width:33%;height:100%;background:var(--gold);transition:.3s}.immersive{min-height:78vh;display:grid;place-items:center;text-align:center;color:#fff;background:linear-gradient(#17201888,#172018bb),url('../images/cuicocha.png') center/cover fixed;padding:7vw}.immersive h2{max-width:900px}.services{background:var(--ink);color:#fff}.services-grid{display:grid;grid-template-columns:1fr 1fr}.services-grid article{padding:1.5rem;border:1px solid #ffffff1b}.services-grid b{font-size:1.8rem;color:var(--gold2)}.services-grid h3{font:1.2rem var(--serif)}.services-grid p{font-size:.86rem;color:#ffffff99}.destination-track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory}.destination-track article{min-width:84%;scroll-snap-align:start;position:relative;color:#fff;overflow:hidden}.destination-track img{height:520px}.destination-track article:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,#101810e6)}.destination-track article div{position:absolute;z-index:2;bottom:0;padding:1.5rem}.destination-track span{color:var(--gold2)}.destination-track h3{font:2rem var(--serif);margin:.3rem 0}.masonry{columns:2;column-gap:.5rem}.masonry button{display:block;border:0;padding:0;margin:0 0 .5rem;width:100%;overflow:hidden;cursor:zoom-in}.masonry img{transition:.5s}.masonry button:hover img{transform:scale(1.05)}.reviews{background:var(--cream);display:grid;gap:3rem}.review{display:none}.review.active{display:block;animation:fade .5s}.review div{color:var(--gold)}blockquote{font:1.5rem/1.5 var(--serif);margin:1rem 0}.review p{color:var(--muted)}.review-dots button{width:28px;height:3px;padding:0;border:0;background:#bbb;margin-right:.4rem}.review-dots button.active{background:var(--gold)}.why{text-align:center}.why h2{margin-bottom:3rem}.why-grid{display:grid;grid-template-columns:1fr 1fr}.why-grid div{padding:1.5rem .8rem;border:1px solid #e5e3dc;text-align:left}.why-grid b{color:var(--gold)}.why-grid h3{font:1rem var(--serif)}.cta-band{padding:4rem 7vw;background:var(--olive);color:#fff;display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem}.cta-band h2{font-size:clamp(2rem,5vw,3.4rem);max-width:700px}.location{padding:0;display:grid}.map-wrap{min-height:480px}.map-wrap iframe{width:100%;height:100%;min-height:480px;border:0;filter:grayscale(.8) sepia(.2)}.location-card{padding:4rem 7vw;background:var(--cream)}.location-card dl{margin:2rem 0}.location-card dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.location-card dd{margin:0 0 1rem}.location-actions{display:flex;gap:1rem;flex-wrap:wrap}.reservation{background:var(--ink);color:#fff;display:grid;gap:3rem}.reservation p{color:#ffffffaa}.reservation form{display:grid;gap:1.2rem}.reservation input,.reservation select,.reservation textarea{color:#fff;border-color:#ffffff44}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-status{font-size:.85rem}.final-cta{min-height:75vh;display:grid;place-items:center;text-align:center;color:#fff;background:linear-gradient(#1119,#111c),url('../images/hero-exterior.png') center/cover;padding:7vw}.final-cta p{font-size:1.15rem}.final-cta .btn{margin:.3rem}footer{background:#111711;color:#fff;padding:4rem 7vw;display:grid;gap:2rem}footer div{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem}footer h3{font:.9rem var(--sans);text-transform:uppercase;letter-spacing:.14em;color:var(--gold2)}footer a,footer span,footer p{font-size:.85rem;color:#ffffff99;margin:0}.float-wa,.to-top{position:fixed;z-index:90;right:1rem;border:0;display:grid;place-items:center;color:#fff;cursor:pointer}.float-wa{bottom:1rem;width:56px;height:56px;border-radius:50%;background:#25d366;font-weight:800;box-shadow:0 8px 25px #0004;animation:pulse 2.5s infinite}.to-top{bottom:5.5rem;width:38px;height:38px;background:var(--ink);opacity:0;pointer-events:none;transition:.3s}.to-top.show{opacity:1;pointer-events:auto}.room-modal{width:min(940px,94vw);max-height:90vh;border:0;padding:0;background:var(--cream);box-shadow:var(--shadow)}.room-modal::backdrop{background:#0d120dcc;backdrop-filter:blur(4px)}.modal-close{position:absolute;right:1rem;top:1rem;width:42px;height:42px;border:0;background:#fff;z-index:2;font-size:1.5rem}.modal-media img{height:300px}.modal-copy{padding:2rem}.modal-copy ul{padding-left:1rem}.lightbox{position:fixed;z-index:300;inset:0;background:#0c110cf2;display:none;place-items:center;padding:2rem}.lightbox.open{display:grid}.lightbox img{max-width:1050px;max-height:82vh;object-fit:contain}.lightbox button{position:absolute;border:0;background:#ffffff18;color:#fff;width:48px;height:48px;font-size:1.4rem}.lightbox-close{right:1rem;top:1rem}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.reveal,.reveal-left{opacity:0;transform:translateY(32px);transition:.7s}.reveal-left{transform:translateX(-32px)}.revealed{opacity:1;transform:none}@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.08)}}@keyframes pulse{50%{box-shadow:0 0 0 10px #25d36622}}@keyframes fade{from{opacity:0;transform:translateY(8px)}}@media(min-width:768px){.btn-small{display:inline-flex}#quick-form{grid-template-columns:1fr 1fr 1fr auto;padding:1.2rem 1.4rem;transform:translateY(-48%)}.availability{height:60px;padding:0 5vw}.welcome{grid-template-columns:1.05fr .95fr;align-items:center}.section-head{flex-direction:row;justify-content:space-between;align-items:end}.room-card{min-width:46%}.services-grid{grid-template-columns:repeat(3,1fr)}.destination-track article{min-width:45%}.masonry{columns:3;column-gap:.8rem}.masonry button{margin-bottom:.8rem}.reviews{grid-template-columns:.8fr 1.2fr}.why-grid{grid-template-columns:repeat(4,1fr)}.cta-band{flex-direction:row;align-items:center;justify-content:space-between}.location{grid-template-columns:1.15fr .85fr}.reservation{grid-template-columns:.75fr 1.25fr}.room-modal{display:none;grid-template-columns:1.1fr .9fr}.room-modal[open]{display:grid}.modal-media img{height:100%}footer{grid-template-columns:2fr 1fr 1fr 1.2fr}.scroll-hint{display:flex;position:absolute;z-index:4;right:7vw;top:50%;transform:rotate(90deg);font-size:.65rem;letter-spacing:.2em;align-items:center;gap:.8rem}.scroll-hint span{width:55px;height:1px;background:#fff}}@media(min-width:1100px){.header{padding:0 3vw}.menu-btn{display:none}.nav{position:static;transform:none;background:none;flex-direction:row;gap:1.2rem;font:500 .72rem var(--sans)}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--gold2);transition:.3s}.nav a:hover:after{width:100%}.section{padding:8rem 8vw}.hero-copy{left:8vw}.room-card{min-width:32%}.destination-track article{min-width:32%}.location-card{padding:6rem}.reservation{padding-left:10vw;padding-right:10vw}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.immersive{background-attachment:scroll}}
