@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');

:root{--ink:#18372f;--deep:#10362e;--sand:#f5f0e6;--cream:#fffcf7;--gold:#c99f60;--muted:#6e736a;--line:rgba(24,55,47,.15)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}
.preview-bar{background:#c89f62;color:#fff9ed;text-align:center;font:500 10px/1.35 'DM Mono',monospace;letter-spacing:.07em;padding:8px 15px;text-transform:uppercase}
.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,94px);position:absolute;top:30px;z-index:3;width:100%;color:#fff}
.site-header.light-header{position:relative;top:auto;color:var(--ink);border-bottom:1px solid var(--line)}
.brand{font:600 25px/1 'Playfair Display',serif;color:inherit;text-decoration:none;letter-spacing:-.04em}
.brand span{font-style:italic;font-weight:500}
.site-nav{display:flex;gap:30px}
.site-nav a{color:inherit;text-decoration:none;font-size:13px}
.site-nav a.active{border-bottom:1px solid currentColor;padding-bottom:5px}
.menu-toggle{display:none;background:transparent;border:0;color:inherit;font:500 12px 'DM Mono',monospace;text-transform:uppercase}
.hero{height:min(760px,calc(100vh - 30px));min-height:620px;position:relative;color:#fff;overflow:hidden}
.hero>img,.guide-hero>img{height:100%;width:100%;object-fit:cover}
.hero>img{object-position:center 55%;animation:hero-arrival 1.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes hero-arrival{from{opacity:.65;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,34,27,.7),rgba(7,30,25,.05) 70%)}
.hero-copy{position:absolute;left:clamp(24px,12vw,185px);bottom:clamp(70px,15vh,150px);max-width:650px}
.eyebrow{font:500 10px/1.2 'DM Mono',monospace;letter-spacing:.13em;text-transform:uppercase;margin:0 0 19px}
.gold{color:var(--gold)}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.045em}
h1{font-size:clamp(48px,7vw,92px);line-height:.96;margin-bottom:25px}
h2{font-size:clamp(36px,4.6vw,63px);line-height:1.02;margin-bottom:26px}
.lede{font-size:17px;line-height:1.6;max-width:535px;margin-bottom:33px}
.button{display:inline-flex;gap:25px;align-items:center;text-decoration:none;padding:15px 19px;font-size:12px;transition:transform .2s}
.button:hover{transform:translateY(-2px)}
.button-light{background:var(--cream);color:var(--ink)}
.button-outline{border:1px solid rgba(255,255,255,.55);color:#fff}
.button-dark{background:var(--ink);color:white}
.button span{font-size:17px}
.hero-note{position:absolute;right:clamp(24px,6vw,95px);bottom:43px;text-align:right;font:500 11px/1.5 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
.hero-note span{opacity:.7}
.section{padding:clamp(70px,10vw,135px) clamp(24px,12vw,185px)}
.intro{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--sand)}
.intro-text{font-size:16px;line-height:1.7;max-width:520px;padding-top:28px}
.intro-text p{margin-bottom:20px}
.text-link{display:inline-flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:13px;margin-top:12px}
.text-link.light{color:white}
.feature-grid{display:grid;grid-template-columns:1.25fr .75fr}
.feature-image{min-height:600px}
.feature-image img,.teaser-image img,.photo-grid img{width:100%;height:100%;object-fit:cover}
.dark-panel{background:var(--deep);color:#fff;padding:clamp(48px,7vw,100px) clamp(28px,6vw,90px);display:flex;justify-content:center;flex-direction:column}
.dark-panel>p:last-child{line-height:1.7;color:#dde9df}
.facts{display:flex;gap:25px;list-style:none;padding:20px 0 32px;margin:0;border-bottom:1px solid rgba(255,255,255,.2);margin-bottom:30px}
.facts li{display:flex;flex-direction:column;gap:4px}
.facts strong{font:500 47px/1 'Playfair Display',serif}
.facts span{font:11px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em;color:#c9d2ca}
.quote-strip{background:#285b4f;color:white;text-align:center;padding:110px 25px}
.quote{font:500 clamp(30px,4vw,55px)/1.15 'Playfair Display',serif;letter-spacing:-.035em;margin:0 auto;max-width:780px}
.guide-teaser{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(45px,9vw,145px);align-items:center}
.teaser-image{height:500px}
.guide-teaser>div p:not(.eyebrow){font-size:16px;line-height:1.7;max-width:430px;margin-bottom:28px}
footer{padding:68px clamp(24px,12vw,185px) 30px;background:#0d3028;color:#f6f0e5;display:grid;grid-template-columns:1fr auto;gap:15px}
footer p{font-size:13px;color:#d1ded5;margin:0}
footer div{display:flex;gap:22px;justify-self:end;flex-wrap:wrap}
footer a{color:#f6f0e5;font-size:12px;text-decoration:none}
footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);margin-top:30px;padding-top:18px;font-size:10px;line-height:1.5;color:#b9c6bd}
.page-title{padding-bottom:80px;background:var(--sand)}
.page-title .lede{color:#59645d}
.photo-grid{padding-top:0;display:grid;grid-template-columns:1.18fr .82fr;grid-template-rows:240px 240px;gap:14px}
.photo-grid .photo-tall{grid-row:1/3}
.split{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--cream)}
.details-list p{padding:0 0 24px;margin:0 0 24px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px;line-height:1.55}
.details-list strong{font-size:17px}
.details-list span{color:var(--muted);font-size:14px}
.amenities{background:var(--sand)}
.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.amenity-grid span{padding:26px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);font:500 13px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.04em}
.booking-callout{background:var(--deep);color:#fff;padding:80px clamp(24px,12vw,185px);display:flex;align-items:center;justify-content:space-between;gap:30px}
.booking-callout h2{margin-bottom:10px}
.booking-callout p:not(.eyebrow){color:#d7e2db;line-height:1.6;max-width:500px}
.platform-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.guide-hero{height:570px;position:relative;color:white}
.guide-hero:after{content:'';position:absolute;inset:0;background:rgba(9,38,31,.37)}
.guide-hero div{position:absolute;z-index:1;left:clamp(24px,12vw,185px);bottom:80px}
.guide-intro{background:var(--sand);display:grid;grid-template-columns:.7fr 1.4fr;column-gap:6vw}
.guide-intro h2{grid-row:2;grid-column:1}
.guide-intro>p:last-child{grid-row:1/3;grid-column:2;align-self:center;font-size:18px;line-height:1.75;max-width:580px;margin:0}
.activity-list{padding-top:45px;padding-bottom:115px}
.activity-list article{display:grid;grid-template-columns:120px 1fr;gap:30px;border-top:1px solid var(--line);padding:34px 0}
.activity-list article:last-child{border-bottom:1px solid var(--line)}
.activity-list span{font:500 11px 'DM Mono',monospace;color:var(--gold)}
.activity-list h3{font:500 clamp(26px,3.5vw,43px)/1.05 'Playfair Display',serif;letter-spacing:-.04em;margin-bottom:8px}
.activity-list p{color:var(--muted);font-size:15px;line-height:1.6;max-width:570px;margin-bottom:0}
.faq-section{background:var(--sand)}
.faq-list{margin-top:55px;max-width:850px}
.faq-list details{border-top:1px solid var(--line);padding:22px 0}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none;font-size:16px;font-weight:500}
summary::-webkit-details-marker{display:none}
summary span{font:23px/12px 'DM Mono',monospace;color:var(--gold)}
details[open] summary span{transform:rotate(45deg)}
details p{font-size:14px;line-height:1.65;color:var(--muted);max-width:670px;margin:17px 40px 0 0}
@media(max-width:720px){.site-header{height:74px;padding:0 24px}
.site-nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--deep);color:#fff;padding:24px;flex-direction:column;gap:18px}
.light-header .site-nav{background:var(--sand);color:var(--ink);border-bottom:1px solid var(--line)}
.site-nav.open{display:flex}
.menu-toggle{display:block}
.hero{min-height:570px}
.hero-copy{left:24px;bottom:80px;right:24px}
.hero-note{display:none}
.intro,.guide-teaser,.split,.guide-intro{grid-template-columns:1fr;gap:25px}
.intro-text{padding-top:0}
.feature-grid{grid-template-columns:1fr}
.feature-image{min-height:360px}
.guide-teaser{padding-top:70px}
.teaser-image{height:350px;order:2}
.section{padding-left:24px;padding-right:24px}
.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:190px 190px;padding-bottom:70px}
.booking-callout{padding:60px 24px;align-items:flex-start;flex-direction:column}
.platform-links{justify-content:flex-start}
.amenity-grid{grid-template-columns:1fr 1fr}
.guide-hero{height:480px}
.guide-intro h2{grid-row:auto;grid-column:auto}
.guide-intro>p:last-child{grid-row:auto;grid-column:auto}
.activity-list article{grid-template-columns:48px 1fr;gap:16px}
.facts{gap:17px}
.facts strong{font-size:38px}
footer{display:flex;flex-direction:column;padding:55px 24px 25px}
footer div{justify-self:auto}
.page-title{padding-bottom:55px}
}

/* Expanded gallery */
.gallery-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end;padding-top:130px;padding-bottom:90px}.gallery-hero h1{font-size:clamp(58px,8vw,118px)}.gallery-intro{max-width:480px;font-size:16px;line-height:1.8}.proof-strip{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #d9d1c5;border-bottom:1px solid #d9d1c5;padding-top:28px;padding-bottom:28px}.proof-strip div{display:flex;flex-direction:column;gap:5px;border-right:1px solid #d9d1c5;padding-left:22px}.proof-strip div:first-child{padding-left:0}.proof-strip div:last-child{border:0}.proof-strip strong{font-family:Georgia,serif;font-size:31px;font-weight:400}.proof-strip span{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#735d42}.photo-ledger{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:dense;gap:14px;padding-top:70px}.photo-ledger figure{margin:0;min-height:330px;position:relative;background:#ddd4c7;overflow:hidden}.photo-ledger figure.wide{grid-column:span 2}.photo-ledger figure.tall{grid-row:span 2;min-height:674px}.photo-ledger img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.photo-ledger figure:hover img{transform:scale(1.025)}.photo-ledger figcaption{position:absolute;left:14px;bottom:14px;background:rgba(249,246,239,.92);padding:8px 10px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.verified-guide{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:#20392f;color:#f5f0e8}.verified-guide h2,.stay-facts h2{font-size:clamp(44px,6vw,80px)}.verified-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.25)}.verified-grid article{padding:28px 28px 28px 0;border-bottom:1px solid rgba(255,255,255,.25)}.verified-grid article:nth-child(odd){border-right:1px solid rgba(255,255,255,.25)}.verified-grid article:nth-child(even){padding-left:28px}.verified-grid span{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#d3af72}.verified-grid p{font-size:14px;line-height:1.75;color:#e8e0d4}.stay-facts{display:grid;grid-template-columns:.7fr 1.3fr;gap:9vw}.stay-facts ul{list-style:none;margin:0;padding:0;border-top:1px solid #d9d1c5}.stay-facts li{display:grid;grid-template-columns:170px 1fr;gap:25px;padding:20px 0;border-bottom:1px solid #d9d1c5}.stay-facts b{font-size:11px;letter-spacing:.08em;text-transform:uppercase}.stay-facts span{font-size:14px;line-height:1.65;color:#514a40}
@media(max-width:900px){.proof-strip{grid-template-columns:repeat(3,1fr);row-gap:22px}.photo-ledger{grid-template-columns:1fr 1fr}.verified-guide,.stay-facts{grid-template-columns:1fr}.verified-grid{grid-template-columns:1fr}.verified-grid article:nth-child(odd){border-right:0}.verified-grid article:nth-child(even){padding-left:0}}
@media(max-width:650px){.gallery-hero{grid-template-columns:1fr;padding-top:85px}.proof-strip{grid-template-columns:1fr 1fr}.proof-strip div:nth-child(2n){border-right:0}.photo-ledger{grid-template-columns:1fr;padding-left:18px;padding-right:18px}.photo-ledger figure,.photo-ledger figure.wide,.photo-ledger figure.tall{grid-column:auto;grid-row:auto;min-height:310px}.verified-grid{display:block}.stay-facts li{grid-template-columns:1fr;gap:8px}}

