
:root{--sage:#778768;--sage-dark:#5f704f;--sage-light:#eef3ea;--paper:#fffdf9;--cream:#f7f2ea;--sand:#d8c7a6;--ink:#242424;--muted:#6e665b;--line:#e8ded0}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;line-height:1.55}img{display:block;max-width:100%}a{color:inherit}
.topbar{background:var(--sage);color:white;font-size:.9rem;padding:8px 5vw;display:flex;justify-content:space-between;gap:18px}
.header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.96);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:space-between;padding:16px 5vw;border-bottom:1px solid var(--line)}
.logo img{width:260px;max-height:100px;object-fit:contain}.nav{display:flex;align-items:center;gap:26px;font-weight:800;font-size:.94rem}.nav a{text-decoration:none}.menu{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:2px;padding:14px 22px;border:1px solid transparent;font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:.86rem;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn.sage{background:var(--sage);color:white}.btn.outline{border-color:var(--sage);color:var(--sage-dark);background:rgba(255,255,255,.5)}.btn.dark{background:var(--ink);color:white}
.hero{display:grid;grid-template-columns:1fr 1.35fr;min-height:72vh;background:var(--paper)}.hero-copy{padding:90px 5vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.17em;color:var(--sage);font-weight:900;font-size:.78rem;margin:0 0 16px}.hero h1,.section h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;letter-spacing:-.035em}.hero h1{font-size:clamp(3.1rem,5.5vw,6rem);line-height:.95;margin:0 0 22px}.hero p{font-size:1.18rem;color:var(--muted);max-width:560px;margin:0 0 30px}.hero-img{position:relative;overflow:hidden}.hero-img img{width:100%;height:100%;object-fit:cover}.hero-img:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--paper),rgba(255,253,249,.1) 30%,transparent)}
.actions{display:flex;gap:14px;flex-wrap:wrap}.comfort-strip{background:var(--sage);color:white;padding:22px 5vw;display:grid;grid-template-columns:repeat(6,1fr);gap:22px}.comfort{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;align-items:center;border-right:1px solid rgba(255,255,255,.3);padding-right:16px}.comfort span{font-size:1.7rem;grid-row:1/3}.comfort strong{font-size:.95rem}.comfort small{opacity:.92}
.section{padding:95px 5vw}.container{max-width:1240px;margin:auto}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.section h2{font-size:clamp(2.4rem,5vw,4.7rem);line-height:.95;margin:0 0 22px}.lead{font-size:1.16rem;color:var(--muted);max-width:760px}.photo{border-radius:3px;overflow:hidden;box-shadow:0 24px 70px rgba(50,40,28,.12)}.photo img{width:100%;height:100%;object-fit:cover}.tall{height:660px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px}.card{background:var(--paper);border:1px solid var(--line);padding:30px}.card h3{font-size:2rem;margin:0 0 10px}.card p{color:var(--muted);margin:0}.direct{background:var(--sage-light)}.booking-box{background:var(--paper);border:1px solid var(--line);padding:30px}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-form label{display:grid;gap:6px;font-size:.82rem;font-weight:850;color:var(--muted)}.booking-form input,.booking-form select{border:1px solid var(--line);border-radius:2px;padding:14px;background:white;color:var(--ink)}.full{grid-column:1/-1;width:100%}
.gallery-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:36px}.gallery{columns:3 290px;column-gap:16px}.gallery button{border:0;background:none;padding:0;margin:0 0 16px;width:100%;cursor:pointer;break-inside:avoid}.gallery img{width:100%;border-radius:3px;box-shadow:0 15px 42px rgba(50,40,28,.1)}
.places{background:var(--paper)}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.place-card{min-height:390px;position:relative;overflow:hidden;color:white;display:flex;align-items:flex-end;text-decoration:none}.place-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.06))}.place-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.4s}.place-card:hover img{transform:scale(1.04)}.place-copy{position:relative;z-index:2;padding:26px}.place-copy span{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.25);padding:6px 10px;font-weight:850;font-size:.78rem}.place-copy h3{font-size:2.1rem;margin:16px 0 8px}.place-copy p{margin:0;color:#eee}
.map iframe{width:100%;height:450px;border:0;box-shadow:0 20px 60px rgba(50,40,28,.1)}.footer{background:#1f1f1f;color:white;padding:55px 5vw}.footer-grid{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer a{color:white;text-decoration:none}.small{color:#aaa;font-size:.9rem}.whatsapp{position:fixed;right:20px;bottom:20px;background:#25D366;color:white;padding:13px 18px;border-radius:999px;text-decoration:none;font-weight:900;box-shadow:0 10px 30px rgba(0,0,0,.25);z-index:60}
.lightbox{display:none;position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.92);align-items:center;justify-content:center;padding:4vw}.lightbox img{max-width:94vw;max-height:86vh}.lightbox button{position:absolute;border:0;background:rgba(255,255,255,.13);color:white;border-radius:50%;width:46px;height:46px;font-size:24px;cursor:pointer}.lb-close{top:24px;right:24px}.lb-prev{left:24px}.lb-next{right:24px}
@media(max-width:1000px){.nav{display:none}.menu{display:inline-flex}.hero{grid-template-columns:1fr}.hero-img{min-height:48vh;order:-1}.hero-img:before{display:none}.comfort-strip{grid-template-columns:repeat(2,1fr)}.grid-2,.footer-grid{grid-template-columns:1fr}.cards,.place-grid{grid-template-columns:1fr}.tall{height:480px}.section{padding:78px 22px}.gallery-head{display:block}.booking-form{grid-template-columns:1fr}.logo img{width:200px}.topbar{font-size:.78rem}.actions{display:grid}.btn{width:100%}}

.distance-strip{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px;max-width:720px}
.distance-strip span{background:var(--sage-light);border:1px solid var(--line);padding:8px 12px;border-radius:999px;color:var(--sage-dark);font-size:.85rem;font-weight:700}
.distance-strip b{color:var(--ink);margin-right:4px}.structure{background:var(--paper)}.structure .photo{height:560px}.structure .photo img{width:100%;height:100%;object-fit:cover}
.why{background:var(--sage-light)}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.why-grid article{background:var(--paper);border:1px solid var(--line);padding:28px;min-height:210px}.why-grid span{font-size:2rem;display:block;margin-bottom:12px}.why-grid h3{font-size:1.8rem;margin:0 0 8px}.why-grid p{color:var(--muted);margin:0}.premium-places .place-card{min-height:430px;border-radius:3px;box-shadow:0 18px 50px rgba(50,40,28,.12)}.premium-places .place-copy span{border-radius:999px;background:rgba(255,255,255,.22);backdrop-filter:blur(8px)}
@media(max-width:1000px){.distance-strip{gap:8px}.distance-strip span{font-size:.78rem}.why-grid{grid-template-columns:1fr}.structure .photo{height:420px}.premium-places .place-card{min-height:360px}}
