:root{--ink:#24342f;--cream:#f2eee6;--sand:#dfd3c2;--rust:#a04a31;--line:#24342f2e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.55 'DM Sans',sans-serif}a{color:inherit}.nav{height:88px;padding:0 clamp(24px,5vw,72px);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;font-weight:600;line-height:1}.brand i{width:42px;height:42px;border:1px solid;border-radius:50%;display:grid;place-items:center;font:14px Newsreader}.brand small{display:block;margin-top:6px;font-size:9px;text-transform:uppercase;letter-spacing:.2em}.nav nav{display:flex;gap:34px}.nav nav a{text-decoration:none;font-size:13px}.button{background:var(--rust);color:white;padding:13px 18px;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:11px}.hero{height:calc(100svh - 88px);min-height:640px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#0d1d1caf,transparent 68%),linear-gradient(0deg,#0b161687,transparent 45%)}.hero-copy{position:absolute;top:46%;left:clamp(24px,8vw,130px);transform:translateY(-50%);max-width:800px}.kicker{text-transform:uppercase;letter-spacing:.24em;font-size:11px;font-weight:600;margin:0 0 26px}.kicker.dark{color:#6e7771}h1,h2,h3{font-family:Newsreader,serif;font-weight:400;margin:0;line-height:.96}h1{font-size:clamp(58px,8vw,118px);letter-spacing:-.04em}.hero-copy>p:last-child{max-width:500px;font-size:17px;color:#ffffffdb;margin-top:28px}.discover{position:absolute;left:5vw;bottom:32px;text-decoration:none;text-transform:uppercase;letter-spacing:.16em;font-size:10px}.facts{position:absolute;right:5vw;bottom:27px;display:flex;border-top:1px solid #ffffff70;padding-top:15px}.facts span{padding:0 22px;border-right:1px solid #ffffff4d;text-transform:uppercase;letter-spacing:.13em;font-size:10px}.facts b{font:27px Newsreader;margin-right:6px}.section{padding:clamp(80px,11vw,170px) clamp(24px,8vw,130px)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.intro h2,.amenities h2,.booking h2{font-size:clamp(50px,6vw,88px);letter-spacing:-.035em}.prose{padding-top:35px;max-width:540px}.prose .lead{font:27px/1.35 Newsreader}.prose>p:nth-child(2){color:#66716b;margin:25px 0 35px}.link{text-transform:uppercase;letter-spacing:.14em;font-size:11px;text-decoration:none;border-bottom:1px solid;padding-bottom:7px}.tiles{display:grid;grid-template-columns:1.2fr .65fr 1fr;min-height:650px}.photo{position:relative;color:white;padding:28px;display:flex;justify-content:space-between;flex-direction:column}.photo:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#121c18a6,transparent 50%)}.photo>*{position:relative}.photo small{font-size:10px;text-transform:uppercase;letter-spacing:.2em}.photo h3{font-size:36px}.quote{background:var(--sand);padding:45px 34px;display:flex;justify-content:center;flex-direction:column}.quote>b{font:90px/.4 Newsreader;color:var(--rust)}blockquote{font:30px/1.25 Newsreader;margin:35px 0}.quote small{text-transform:uppercase;letter-spacing:.12em}.amenities{background:#e7e2d9;display:grid;grid-template-columns:.75fr 1.25fr;gap:10vw}.amenities>div:first-child>p:last-child{max-width:390px;color:#66716c;margin-top:30px}.amenity-list{display:grid;grid-template-columns:1fr 1fr}.amenity-list article{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:28px 12px;border-top:1px solid var(--line)}.amenity-list i{font:25px Newsreader;color:var(--rust)}.amenity-list h3{font-size:23px}.amenity-list p{font-size:13px;color:#68736d;margin:7px 0}.location{display:grid;grid-template-columns:1fr 1.05fr;background:var(--ink);color:white;min-height:690px}.location-copy{padding:clamp(70px,9vw,140px)}.location h2{font-size:clamp(54px,7vw,94px)}.location-copy>p:nth-child(3){color:#ffffffa3;max-width:470px;margin:35px 0}.location dl{display:flex;gap:38px;border-top:1px solid #ffffff33;padding-top:24px}.location dl div{display:grid}.location dt{font:28px Newsreader}.location dd{margin:2px 0;text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:#ffffff8c}.map{position:relative;background:#bbc4b5;overflow:hidden;color:var(--ink)}.land{position:absolute;width:72%;height:150%;right:-22%;top:-24%;background:#86978e;border-radius:50% 0 0 45%;transform:rotate(-8deg);box-shadow:-16px 0 #ffffff20,-38px 0 #ffffff12}.pin{position:absolute;right:36%;top:36%;z-index:2;color:var(--rust);font-size:24px;text-align:center}.pin span,.map em,.map strong{font-size:9px;text-transform:uppercase;letter-spacing:.17em;font-style:normal}.map em{position:absolute;left:18%;top:55%;transform:rotate(-18deg)}.map strong{position:absolute;right:20%;bottom:20%}.booking{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw}.booking>div>p:nth-child(3){max-width:390px;color:#65716c;margin:30px 0}.rate{display:flex;align-items:center;gap:15px;margin-top:45px}.rate b{font:45px Newsreader}.rate span{font-size:9px;text-transform:uppercase;letter-spacing:.11em}form{background:white;padding:38px;box-shadow:0 20px 60px #25302c1a}.fields{display:grid;grid-template-columns:1fr 1fr .8fr}.fields label{border:1px solid var(--line);padding:13px}form label{display:grid;gap:6px;text-transform:uppercase;letter-spacing:.15em;font-size:9px}input,select{border:0;background:transparent;outline:0;width:100%;font:500 13px 'DM Sans';color:var(--ink)}button{width:100%;border:0;background:var(--rust);color:white;margin-top:15px;padding:17px 20px;text-align:left;display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.15em;font:600 11px 'DM Sans';cursor:pointer}.note{text-align:center;font-size:10px;color:#7b827e}#quote-result{border-top:1px solid var(--line);margin-top:20px;padding-top:14px}#quote-result p{display:flex;justify-content:space-between;margin:9px 0;font-size:13px}#quote-result .total{font:23px Newsreader;border-top:1px solid var(--line);padding-top:13px}#quote-result .message{display:block;background:#e6eee8;padding:15px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.contact label{border-bottom:1px solid var(--line);padding:9px}.contact button{grid-column:1/-1}footer{padding:55px 5vw;background:#dcd4c7;display:flex;align-items:center;justify-content:space-between;font-size:11px}footer>p{text-align:center;color:#68726d}@media(max-width:850px){.nav nav{display:none}.facts{display:none}.intro,.amenities,.location,.booking{grid-template-columns:1fr}.tiles{grid-template-columns:1fr}.photo{min-height:520px}.quote{min-height:390px}.map{min-height:500px}.amenities,.booking{gap:60px}}@media(max-width:560px){.nav{height:76px}.button{font-size:9px}.hero{height:calc(100svh - 76px);min-height:560px}.hero-copy{top:44%}h1{font-size:54px}.hero-copy>p:last-child{font-size:14px}.amenity-list{grid-template-columns:1fr}.fields,.contact{grid-template-columns:1fr}form{padding:24px}.location dl{flex-wrap:wrap;gap:20px}footer{gap:30px;align-items:flex-start;flex-wrap:wrap}footer>p{text-align:left}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.book-direct{background:#fff;padding:42px;box-shadow:0 20px 60px #25302c1a;display:grid;gap:0}.book-direct>div{padding:22px 0;border-top:1px solid var(--line);display:grid}.book-direct>div:first-child{border-top:0;padding-top:0}.book-direct span{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:#6d7771}.book-direct strong{font:32px/1.2 Newsreader;margin:8px 0 3px}.book-direct small{color:#6d7771}.book-link{display:flex;justify-content:space-between;align-items:center;margin-top:22px;background:var(--rust);color:#fff;padding:19px 20px;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:11px}.book-direct>p{font-size:10px;text-align:center;color:#6d7771;margin:14px 0 0}.hero>img{object-position:center 56%}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;background:var(--cream);padding:3px}.gallery img{width:100%;height:430px;object-fit:cover;display:block}.gallery img:nth-child(even){object-position:center 35%}@media(max-width:850px){.gallery{grid-template-columns:1fr 1fr}.gallery img{height:380px}}@media(max-width:560px){.gallery{grid-template-columns:1fr}.gallery img{height:460px}}
.nav-actions{display:flex;align-items:center;gap:12px}.language{position:relative}.language select{appearance:none;border:1px solid var(--line);background:transparent;padding:12px 32px 12px 12px;font:600 11px 'DM Sans';letter-spacing:.04em;cursor:pointer}.language:after{content:'⌄';position:absolute;right:11px;top:7px;pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:560px){.nav-actions{gap:6px}.language select{width:49px;padding:11px 7px;color:transparent}.language select option{color:var(--ink)}.language:after{right:9px}.nav .button{padding:12px 9px}}
.nav-actions{display:flex;align-items:center;gap:12px}.language{position:relative}.language select{appearance:none;border:1px solid var(--line);background:transparent;padding:12px 31px 12px 12px;font:600 11px 'DM Sans';cursor:pointer}.language:after{content:'⌄';position:absolute;right:10px;top:7px;pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:560px){.nav-actions{gap:6px}.language select{width:50px;padding:11px 7px;color:transparent}.language select option{color:var(--ink)}.nav .button{padding:12px 9px}}
/* Mobile viewport and header corrections */
html,body{width:100%;max-width:100%;overflow-x:hidden}main,section,header,footer{max-width:100%}img{max-width:100%}.nav{width:100%;min-width:0}.nav>.brand{min-width:0}.nav>.brand>span{white-space:nowrap}.nav-actions{flex:0 0 auto;min-width:0}.language select{width:auto;max-width:100%}
@media(max-width:850px){.nav-actions .button{display:none}.nav{padding-left:20px;padding-right:20px}.language select{width:auto;min-width:74px;padding:9px 27px 9px 10px;font-size:10px}.language:after{top:4px}.location-copy,.booking,.intro,.amenities{min-width:0}.map{width:100%}}
@media(max-width:560px){.nav{padding-left:14px;padding-right:14px;gap:8px}.nav>.brand{gap:8px;font-size:12px}.nav>.brand i{width:34px;height:34px;font-size:11px;flex:0 0 34px}.nav>.brand small{font-size:7px;letter-spacing:.12em}.language select{width:44px;min-width:44px;height:34px;padding:7px 18px 7px 6px;color:transparent;font-size:9px}.language select option{color:var(--ink)}.language:after{right:6px;top:4px}.section{width:100%}.location dl{max-width:100%}.hero-copy{max-width:calc(100% - 48px)}}
/* Real listing photography in the Discover cards */
.photo.one,.photo.two{background-image:none;filter:none;background:#26312d;isolation:isolate}.photo>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:-2}.photo.two>img{object-position:center 44%}.photo:before{z-index:-1}.photo>*:not(img){z-index:1}
/* Structural overflow fix: grid tracks and flex children may shrink to the viewport. */
body{position:relative;min-width:0;overscroll-behavior-x:none;touch-action:pan-y}main{width:100%;min-width:0}.intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tiles{grid-template-columns:minmax(0,1.2fr) minmax(0,.65fr) minmax(0,1fr)}.amenities{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.amenity-list{grid-template-columns:repeat(2,minmax(0,1fr))}.location{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.booking{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.intro>*,.tiles>*,.amenities>*,.amenity-list>*,.location>*,.booking>*,.gallery>*{min-width:0}.book-link{min-width:0;white-space:normal}.book-link b{flex:0 0 auto;margin-left:8px}
@media(max-width:850px){.intro,.amenities,.location,.booking,.tiles{grid-template-columns:minmax(0,1fr)}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.gallery{grid-template-columns:minmax(0,1fr)}.location dl{width:100%}.location dl>div{min-width:0}.booking h2,.intro h2,.amenities h2,.location h2{overflow-wrap:anywhere}}
/* Consistent page rhythm after removing the Discover feature strip */
.intro,.amenities,.booking{width:100%;padding-left:clamp(24px,8vw,130px);padding-right:clamp(24px,8vw,130px)}.gallery{width:100%;padding:clamp(24px,4vw,64px);gap:clamp(8px,1vw,16px);background:#e7e2d9}.gallery img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.location{width:100%}.location-copy{padding-left:clamp(24px,8vw,130px);padding-right:clamp(24px,8vw,130px)}
@media(max-width:850px){.gallery img{aspect-ratio:4/5}.map{min-height:480px}}
@media(max-width:560px){.intro,.amenities,.booking,.location-copy{padding-left:24px;padding-right:24px}.gallery{padding:24px}.gallery img{height:auto;aspect-ratio:4/5}.map{min-height:400px}}
/* Fixed mobile scale and consistent control sizing */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}input,select,textarea,button{font-size:16px}button,.button,.book-link{touch-action:manipulation}
@media(max-width:560px){body{font-size:15px}.language select{font-size:16px;line-height:1}.nav,.hero,.section,.gallery,.location,.booking,footer{box-sizing:border-box;width:100%}.gallery img{width:100%;aspect-ratio:4/5}.book-link{font-size:11px}}
/* Clipped, GPU-accelerated parallax layers */
.hero,.gallery,.gallery img,.map{overflow:hidden}.hero>img,.gallery img,.map .land{will-change:transform;backface-visibility:hidden;transform-origin:center}.gallery{isolation:isolate}.gallery img{transition:transform .08s linear}@media(prefers-reduced-motion:reduce){.hero>img,.gallery img,.map .land{transform:none!important;transition:none}}
/* Strong depth separation for the parallax scene */
.hero-copy,.discover,.facts{will-change:transform;backface-visibility:hidden}.hero>img{transform:scale(1.16)}.gallery img{transform:scale(1.2);transition:none}
/* Hard viewport lock, including transformed parallax layers on mobile Safari */
html{width:100%;max-width:100%;overflow-x:hidden!important;overscroll-behavior-x:none}body{width:100%;max-width:100%;overflow-x:hidden!important;overscroll-behavior-x:none;margin:0}.site-shell{position:relative;width:100%;max-width:100vw;min-width:0;overflow-x:hidden!important;clip-path:inset(0);contain:paint;touch-action:pan-y}.site-shell>*{width:100%;max-width:100%;min-width:0}.hero,.intro,.amenities,.gallery,.location,.booking,footer{left:auto;right:auto;max-width:100vw;overflow-x:hidden}.gallery img,.hero>img{min-width:0}
.feature-details{width:100%;padding:clamp(80px,10vw,150px) clamp(24px,8vw,130px);background:#f2eee6;overflow:hidden}.features-lang{width:100%;min-width:0}.features-lang[hidden]{display:none}.features-lang>header{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:8vw;align-items:end;margin-bottom:clamp(50px,7vw,90px)}.features-lang>header .kicker{grid-column:1/-1}.features-lang>header h2{font-size:clamp(48px,6vw,86px);letter-spacing:-.035em}.features-lang>header>p:last-child{max-width:470px;color:#66716c}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}.feature-grid article{min-width:0;padding:28px 24px 10px 0;border-right:1px solid var(--line)}.feature-grid article+article{padding-left:24px}.feature-grid article:last-child{border-right:0}.feature-grid article>span{display:block;color:var(--rust);font:20px Newsreader;margin-bottom:35px}.feature-grid h3{font-size:26px;margin-bottom:24px}.feature-grid ul{list-style:none;padding:0;margin:0}.feature-grid li{padding:10px 0;border-top:1px solid var(--line);font-size:12px;color:#59655f}.feature-grid li:before{content:'—';margin-right:8px;color:var(--rust)}@media(max-width:900px){.features-lang>header{grid-template-columns:minmax(0,1fr);gap:28px}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid article:nth-child(2){border-right:0}.feature-grid article:nth-child(n+3){border-top:1px solid var(--line)}}@media(max-width:560px){.feature-details{padding:80px 24px}.feature-grid{grid-template-columns:minmax(0,1fr)}.feature-grid article,.feature-grid article+article{padding:28px 0;border-right:0;border-top:1px solid var(--line)}.feature-grid article:first-child{border-top:0}.feature-grid article>span{margin-bottom:18px}}
/* Smaller property photography with captions and controls kept above it */
.hero>img{z-index:0;transform:scale(1.08)}.hero .shade{z-index:1}.hero-copy,.discover,.facts{z-index:2}.gallery img{height:auto;aspect-ratio:4/3;transform:scale(1.08)}
@media(max-width:850px){.gallery img{height:auto;aspect-ratio:3/2}.gallery{padding:24px}}
@media(max-width:560px){.hero{height:84svh;min-height:540px}.gallery img{height:260px;aspect-ratio:auto}.gallery{gap:10px}}

/* Booking.com-informed guest FAQ */
.faq{width:100%;padding:clamp(80px,10vw,150px) clamp(24px,8vw,130px);background:#e7e2d9}.faq-lang[hidden]{display:none}.faq-lang>header{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8vw;align-items:end;margin-bottom:clamp(45px,6vw,75px)}.faq-lang>header .kicker{grid-column:1/-1}.faq-lang h2{font-size:clamp(48px,6vw,86px);letter-spacing:-.035em}.faq-lang>header>p:last-child{max-width:460px;color:#66716c}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;padding:25px 58px 25px 0;position:relative;font:clamp(21px,2vw,29px)/1.2 Newsreader}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:8px;top:50%;translate:0 -50%;color:var(--rust);font:30px/1 Newsreader}.faq-list details[open] summary:after{content:"−"}.faq-list details p{max-width:760px;margin:0;padding:0 58px 28px 0;color:#59655f}.faq-list summary:focus-visible{outline:2px solid var(--rust);outline-offset:4px}@media(max-width:850px){.faq-lang>header{grid-template-columns:minmax(0,1fr);gap:25px}}@media(max-width:560px){.faq{padding:80px 24px}.faq-list summary{padding-right:42px}.faq-list details p{padding-right:20px}}

/* Company and direct contact details */
.company{width:100%;padding:clamp(70px,8vw,115px) clamp(24px,8vw,130px);background:var(--ink);color:#fff}.company-lang[hidden]{display:none}.company-lang{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8vw}.company h2{font-size:clamp(42px,5vw,68px);letter-spacing:-.03em}.company .kicker{color:#ffffff8c}.company-details{border-top:1px solid #ffffff33}.company-details>p{display:grid;grid-template-columns:minmax(110px,.35fr) minmax(0,1fr);gap:24px;margin:0;padding:19px 0;border-bottom:1px solid #ffffff24}.company-details>p>span:first-child{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:#ffffff8c}.company-details strong,.company-details a{font-weight:400;color:#fff;text-decoration:none;overflow-wrap:anywhere}.company-details a:hover{text-decoration:underline}.company-emails{display:flex;flex-wrap:wrap;gap:6px 22px}@media(max-width:760px){.company-lang{grid-template-columns:minmax(0,1fr);gap:42px}.company-details>p{grid-template-columns:minmax(0,1fr);gap:7px}}

/* Interactive access map */
.google-map{background:#d8ddd7}.google-map iframe{display:block;width:100%;height:100%;min-height:690px;border:0;filter:saturate(.72) contrast(.94)}@media(max-width:850px){.google-map iframe{min-height:480px}}@media(max-width:560px){.google-map iframe{min-height:400px}}
