@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;1,400&family=Inter:wght@400;600&display=swap');
:root{--cream:#fff7e7;--paper:#fffdf7;--ink:#25392e;--green:#347255;--line:#e6dfcf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}a{text-decoration:none;color:inherit}button,input,select{font:inherit}.nav{height:82px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:5;width:100%;background:#fffdf7f2}.brand{display:flex;align-items:center;gap:10px;text-transform:uppercase;font-size:13px}.brand b{border:1px solid;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font:italic 24px 'Cormorant Garamond'}.brand i{display:block;text-transform:none;font:17px 'Cormorant Garamond'}.links{display:flex;align-items:center;gap:26px;font-size:12px}.nav-cta{padding:14px 18px;background:var(--green);color:white}.menu{display:none;border:0;background:none;font-size:25px}.hero{height:860px;position:relative;color:white}.hero>img,.final>img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#12271dcc,transparent 75%)}.hero article{position:absolute;top:210px;left:6vw;max-width:650px}.kicker{text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:600}.dark{color:#728274}h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:500;line-height:.9}h1{font-size:clamp(64px,7vw,106px);margin:28px 0}h2{font-size:clamp(48px,5vw,76px);margin:20px 0}h3{font-size:38px;margin:12px 0}em{font-weight:400}.hero p{line-height:1.8;max-width:540px}.button{display:inline-block;padding:17px 23px;margin-top:20px;font-size:13px;font-weight:600}.light{background:white;color:var(--green)}.rating{position:absolute;right:5vw;bottom:50px;background:#f5f1e8;color:var(--green);padding:16px 22px;display:flex;gap:12px;align-items:center}.rating strong{font:34px 'Cormorant Garamond'}.rating small{color:#777}.booking{position:relative;z-index:2;max-width:1080px;margin:-35px auto 0;background:white;box-shadow:0 20px 50px #28322a1f;display:grid;grid-template-columns:1fr 1fr .8fr 1.2fr;padding:16px}.booking label{font-size:10px;text-transform:uppercase;letter-spacing:.14em;padding:6px 20px;border-right:1px solid var(--line)}.booking input,.booking select{display:block;width:100%;border:0;background:transparent;margin-top:8px}.booking button{border:0;background:var(--green);color:white;font-weight:600}.section{max-width:1240px;margin:auto;padding:100px 48px}.section>p{line-height:1.8;color:#627267;max-width:680px}.booking-options h2{max-width:700px}.options{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:16px;margin-top:35px}.option{border:1px solid var(--line);padding:30px;min-height:200px;display:flex;flex-direction:column;gap:13px}.option small{text-transform:uppercase;letter-spacing:.14em}.option strong{font:28px 'Cormorant Garamond'}.option span{font-size:12px;line-height:1.6;color:#68746b}.direct{background:var(--green);color:white}.direct span{color:#d6e1d9}.two{display:grid;grid-template-columns:1fr 1fr;gap:80px}.lead{font:27px/1.45 'Cormorant Garamond';color:var(--ink)!important}.amenities{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin-top:70px}.amenities div{padding:25px 15px;display:grid;grid-template-columns:30px 1fr}.amenities span{font-size:11px;color:#777;grid-column:2}.rooms,.interiors{max-width:none;background:var(--cream);padding-inline:max(48px,calc((100vw - 1144px)/2))}.room-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:45px}.card{background:white}.card>button{height:350px}.card>div{padding:32px}.card p{line-height:1.7;color:#667269}.card small{text-transform:uppercase;letter-spacing:.14em}.note{text-align:center!important;max-width:none!important;font-size:12px}.photo{border:0;padding:0;background:none;overflow:hidden;cursor:pointer}.photo img{width:100%;height:100%;object-fit:cover;transition:.4s}.photo:hover img{transform:scale(1.025)}.mosaic{height:650px;display:grid;grid-template:1fr 1fr/1.2fr .8fr .8fr;gap:12px;margin-top:40px}.mosaic .featured{grid-row:span 2}.reviews{text-align:center}.score{font:100px 'Cormorant Garamond'}.reviews h2{margin:0}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.quotes blockquote{margin:0;padding:32px;background:#f3f1ea;font:22px/1.5 'Cormorant Garamond'}.quotes footer{margin-top:20px;font:10px Inter;text-transform:uppercase}.host{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.host>img{width:100%;height:640px;object-fit:cover;object-position:center 22%}.location{max-width:none;background:var(--green);color:white;padding-inline:max(48px,calc((100vw - 1144px)/2));display:grid;grid-template-columns:1fr 1fr;gap:80px}.location>article p{color:#c8d5cc}.location>article a{border-bottom:1px solid}.distances{display:grid;grid-template-columns:1fr 1fr}.distances b{border:1px solid #ffffff33;padding:30px;font:25px 'Cormorant Garamond'}.distances small{display:block;font:12px Inter;margin-top:8px}.final{height:570px;position:relative;color:white;display:grid;place-items:center;text-align:center}.final:after{content:'';position:absolute;inset:0;background:#193628aa}.final article{position:absolute;z-index:1}.final h2{font-size:75px}body>footer{background:#172d23;color:#c8d2ca;padding:40px 5vw;display:flex;justify-content:space-between;font-size:12px}.lightbox{border:0;padding:0;background:#08110def;max-width:none;max-height:none;width:100vw;height:100vh}.lightbox::backdrop{background:#08110def}.lightbox img{width:90%;height:85%;object-fit:contain;margin:5vh 5%}.lightbox button{position:absolute;right:25px;top:20px;border:0;border-radius:50%;width:45px;height:45px;font-size:28px;z-index:2}
@media(max-width:850px){.nav{height:70px;padding:0 20px}.menu{display:block}.links{display:none;position:absolute;top:70px;inset-inline:0;background:white;padding:25px;flex-direction:column;align-items:stretch}.links.open{display:flex}.hero{height:760px}.hero article{top:160px;left:24px;right:24px}.booking{margin:0;grid-template-columns:1fr 1fr}.booking button{min-height:65px}.section{padding:75px 22px}.options,.two,.room-grid,.host,.location{grid-template-columns:1fr}.amenities{grid-template-columns:1fr 1fr}.mosaic{height:760px;grid-template:2fr 1fr 1fr/1fr 1fr}.mosaic .featured{grid-row:auto;grid-column:span 2}.quotes{grid-template-columns:1fr}.host>img{height:500px}.distances{margin-top:20px}}
@media(max-width:520px){.booking{grid-template-columns:1fr}.booking label{padding:14px}.options{grid-template-columns:1fr}.amenities{grid-template-columns:1fr}.mosaic{height:900px;grid-template:2fr repeat(4,1fr)/1fr}.mosaic .featured{grid-column:auto}.final h2{font-size:48px}body>footer{flex-direction:column;gap:15px}.rating{bottom:20px}}

/* Responsive safeguards for desktop, tablet and phone screens */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{overflow-x:hidden}img{display:block;max-width:100%}section[id]{scroll-margin-top:78px}.menu,.booking button,.photo,.button,.nav-cta,.option{touch-action:manipulation}.menu,.booking button{min-height:44px;min-width:44px}
@media(max-width:1100px){.links{gap:17px}.section{padding-left:32px;padding-right:32px}.hero article{max-width:580px}.options{gap:12px}.option{padding:24px}.mosaic{height:590px}}
@media(max-width:850px){.links{max-height:calc(100vh - 70px);overflow-y:auto;box-shadow:0 18px 35px #172d231c}.links a{padding:10px 4px}.nav-cta{text-align:center;padding:14px}.hero{min-height:680px;height:100svh;max-height:820px}.hero article{top:clamp(135px,21vh,175px)}.hero h1{font-size:clamp(58px,12vw,82px)}.hero p{font-size:14px;max-width:520px}.booking label{min-width:0}.booking input,.booking select{min-height:34px;font-size:16px}.booking button{font-size:13px;padding:16px}.two{gap:24px}.room-grid{gap:20px}.location{gap:30px}.final{height:520px}.lightbox img{width:94%;margin-left:3%;margin-right:3%}}
@media(max-width:620px){.section{padding:64px 20px}h2{font-size:clamp(44px,13vw,60px)}.hero article{left:20px;right:20px}.hero h1{font-size:clamp(54px,16vw,72px)}.rating{left:20px;right:auto;padding:12px 17px}.booking{padding:12px}.booking label{border-right:0;border-bottom:1px solid var(--line)}.amenities div{min-height:82px}.card>button{height:auto;aspect-ratio:4/3}.card>div{padding:25px 22px}.card h3{font-size:34px}.quotes blockquote{padding:26px 22px}.host>img{height:auto;aspect-ratio:4/5}.location{padding-top:70px;padding-bottom:70px}.distances{grid-template-columns:1fr 1fr}.distances b{padding:22px 18px}.final{height:470px;padding:24px}.final article{left:20px;right:20px}.final h2{font-size:clamp(43px,13vw,58px)}}
@media(max-width:390px){.brand span{font-size:11px}.brand b{width:36px;height:36px}.hero article{top:125px}.hero p{line-height:1.65}.button{width:100%;text-align:center}.amenities{grid-template-columns:1fr}.mosaic{height:auto;display:grid;grid-template-columns:1fr;grid-template-rows:none}.mosaic .photo{height:auto;aspect-ratio:4/3}.mosaic .featured{grid-column:auto}.distances{grid-template-columns:1fr}.options .option{min-height:0}.score{font-size:78px}.lightbox img{height:78%;margin-top:10vh}}
@media(max-height:560px) and (orientation:landscape){.hero{height:620px;max-height:none}.hero article{top:115px}.hero h1{font-size:58px;margin:18px 0}.rating{bottom:18px}.links{max-height:calc(100vh - 70px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}

