@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--cream:#f6f4ed;--green:#263c34;--ink:#243b32;--muted:#67716a;--line:#d9ded4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b9904c;outline-offset:6px}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:15px}.skip:focus{top:0}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:sticky;top:0;z-index:20;transition:box-shadow .3s}header.scrolled{box-shadow:0 3px 25px #162c3412}.brand{display:flex;align-items:center;gap:14px}.brand b{font-size:50px;font-weight:700;letter-spacing:-5px;line-height:1}.brand b span{font-size:12px;vertical-align:top;letter-spacing:0}.brand>span{font-size:10px;letter-spacing:2px;line-height:1.6;border-left:1px solid #9ea89e;padding-left:15px}nav{display:flex;align-items:center;gap:32px;font-size:13px}nav>a:not(.button){padding:10px 0;border-bottom:1px solid transparent}nav>a:hover{border-color:var(--green)}.button{background:var(--green);color:white;display:inline-flex;justify-content:space-between;align-items:center;gap:28px;padding:19px 25px;font-size:13px;border:1px solid transparent;transition:background .25s,transform .25s}.button:hover{background:#41604d;transform:translateY(-3px)}.button.light{background:var(--cream);color:var(--green)}.button.light:hover{background:#e3e7d7}.small{padding:14px 20px}.burger{display:none}.hero{position:relative;margin:0 24px;height:min(760px,calc(100svh - 125px));min-height:560px;color:white;overflow:hidden}.hero>img,.hero-shade{position:absolute;inset:0;height:100%}.hero>img{object-position:center 53%;animation:hero-in 1.4s ease-out}.hero-shade{background:linear-gradient(90deg,#071a14c9,#0b181b30),linear-gradient(0deg,#071a1480,transparent 40%)}.hero-content{position:relative;padding:85px 7%;animation:enter .9s ease-out}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;margin:0 0 25px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-2px}h1{font-size:clamp(65px,7.5vw,112px);line-height:1.04;margin-bottom:28px}h1 em{color:#d4dcb9}em{font-weight:500}p{font-size:15px;line-height:1.85}h2{font-size:clamp(38px,4vw,58px);line-height:1.16;margin-bottom:25px}h2 em{color:#75846b}.hero-content>p:not(.eyebrow){color:#e8ece4;margin-bottom:30px;font-size:14px}.hero-bottom{position:absolute;bottom:30px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:2px;border-top:1px solid #ffffff50;padding-top:23px}.hero-bottom a{letter-spacing:0;font-size:12px}.hero-bottom a span{margin-left:25px}.wrap{max-width:1320px;margin:auto;padding-left:60px;padding-right:60px}.intro{padding-top:110px;padding-bottom:85px}.intro-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:90px;align-items:center}.intro-grid>p{max-width:390px;color:var(--muted)}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.offer-grid a{padding:30px 25px;transition:background .3s}.offer-grid a:first-child{padding-left:0}.offer-grid a+a{border-left:1px solid var(--line)}.offer-grid a:hover{background:#e9ece1}.offer-grid span:first-child{font-size:9px;letter-spacing:1.8px}.offer-grid h3{font-size:29px;letter-spacing:-1px;margin:18px 0}.offer-grid span:last-child{font-size:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-top:40px;padding-bottom:110px}.photo{height:570px;position:relative;overflow:hidden}.photo img{height:100%;transition:transform .7s}.photo:hover img{transform:scale(1.035)}.photo-label{position:absolute;bottom:25px;left:25px;background:var(--cream);padding:12px 18px;font-size:11px}.copy p:not(.eyebrow){color:var(--muted);max-width:460px}.tags{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 35px}.tags span{border:1px solid var(--line);border-radius:30px;padding:9px 15px;font-size:11px}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid;padding-bottom:8px}.stay{background:#e9ede3;padding:90px 0}.stay .split{padding-top:0;padding-bottom:0}.stay-photos{position:relative;padding:0 0 75px 0}.stay-photos img:first-child{height:380px;width:88%}.stay-photos img:nth-child(2){width:56%;height:220px;position:absolute;right:-10px;bottom:25px;border:8px solid #e9ede3}.stay-photos span{position:absolute;bottom:10px;left:0;font-size:10px;max-width:40%;line-height:1.6}.play{padding-top:110px}.play .photo{height:520px}.gallery{padding-bottom:110px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:30px}.section-head p:last-child{font-size:12px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}.gallery-grid button{padding:0;border:0;background:transparent;overflow:hidden;height:220px}.gallery-grid button:first-child{grid-row:span 2;height:458px}.gallery-grid button:last-child{grid-column:span 2}.gallery-grid img{height:100%;transition:transform .6s}.gallery-grid button:hover img{transform:scale(1.04)}.contact{background:var(--green);color:var(--cream);padding:90px 0}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.contact h2 em{color:#c0cba8}.contact p:not(.eyebrow){color:#ccd6cd;font-size:14px;max-width:460px}.contact .contact-note{font-size:11px!important;margin:24px 0 0}.map{height:380px}.map iframe{width:100%;height:100%;border:0;filter:saturate(.6)}footer{padding-top:40px!important;padding-bottom:40px!important;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>span,footer>a:last-child{font-size:11px;margin:0}footer .brand b{font-size:38px}footer .brand>span{font-size:8px}dialog{padding:0;border:0;background:#13231d;color:white;max-width:92vw;max-height:93svh}dialog::backdrop{background:#07120de8;backdrop-filter:blur(8px)}dialog img{width:auto;max-width:88vw;height:auto;max-height:78svh;object-fit:contain}dialog button{position:absolute;right:10px;top:10px;width:42px;height:42px;border:0;border-radius:50%;background:var(--cream);font-size:20px}dialog p{margin:12px 20px;font-size:12px}body:has(dialog[open]){overflow:hidden}.motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.motion .reveal.visible{opacity:1;transform:none}@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes hero-in{from{transform:scale(1.04)}to{transform:scale(1)}}
@media(min-width:1500px){.hero-content{padding-top:110px}}@media(max-width:1000px){nav{gap:18px}.wrap{padding-left:35px;padding-right:35px}.split{gap:40px}.intro-grid{gap:40px}.contact-grid{gap:40px}.photo{height:500px}h2{font-size:43px}footer p{display:none}}@media(max-width:700px){header{height:80px;padding:0 22px}.brand b{font-size:42px}.brand>span{font-size:8px}.burger{display:block;border:0;background:transparent;color:var(--green);font-size:26px;padding:8px}nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--cream);padding:20px 25px 30px;box-shadow:0 12px 14px #162c341a}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:12px}nav .button{justify-content:center}.hero{margin:0 10px;min-height:610px;height:calc(100svh - 90px);max-height:800px}.hero-content{padding:75px 25px}.hero>img{object-position:57% center}.hero-shade{background:linear-gradient(90deg,#071a14c9,#0b181b55)}h1{font-size:65px}.hero-content>p:not(.eyebrow){font-size:13px}.hero-bottom{left:25px;right:25px;letter-spacing:1px;font-size:8px}.hero-bottom a{font-size:10px}.hero-bottom a span{margin-left:8px}.wrap{padding-left:25px;padding-right:25px}.intro{padding-top:65px;padding-bottom:45px}.intro-grid,.split,.contact-grid{grid-template-columns:1fr;gap:30px}h2{font-size:39px;letter-spacing:-1.5px}.intro-grid{gap:0}.intro-grid>p{max-width:none}.offer-grid{grid-template-columns:1fr;margin-top:25px}.offer-grid a,.offer-grid a:first-child{padding:24px 0}.offer-grid a+a{border-left:0;border-top:1px solid var(--line)}.offer-grid h3{font-size:27px;margin:12px 0}.split{padding-top:20px;padding-bottom:65px}.photo{height:440px}.copy{padding-top:10px}.stay{padding:65px 0}.stay-photos{margin-top:10px}.stay-photos img:first-child{height:300px}.stay-photos img:nth-child(2){height:170px;right:0}.play{padding-top:65px}.play .photo{height:420px}.section-head{display:block}.gallery-grid{grid-template-columns:1fr 1fr;gap:10px}.gallery-grid button,.gallery-grid button:first-child{height:210px;grid-row:auto}.gallery-grid button:last-child{grid-column:auto}.gallery{padding-bottom:65px}.contact{padding:65px 0}.map{height:300px}footer{flex-wrap:wrap;padding-top:30px!important;padding-bottom:30px!important}footer>span{order:3;width:100%;font-size:10px}.button{gap:15px;padding:17px 20px}.eyebrow{font-size:9px;letter-spacing:2px}html{scroll-padding-top:90px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}}
@media(max-width:380px){.hero-bottom{flex-wrap:wrap;gap:15px}.hero-content{padding-top:60px}h1{font-size:58px}}
.detail-list{margin:25px 0 30px;border-top:1px solid var(--line)}.detail-list>div{padding:17px 0;border-bottom:1px solid var(--line)}.detail-list b{font-size:13px;font-weight:600}.detail-list p{font-size:12px;margin:7px 0 0;line-height:1.8}.moments{padding:85px 0 95px;background:#e9ede3;margin-bottom:95px}.moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.moment-grid article img{height:290px}.moment-grid article>div{padding:28px 4px 0}.moment-grid .eyebrow{font-size:8px;letter-spacing:1.7px}.moment-grid h3{font-size:31px;letter-spacing:-1px;line-height:1.2;margin:17px 0}.moment-grid p{font-size:13px;color:var(--muted)}.visit{padding-bottom:100px}.visit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);padding-top:30px}.step{font-family:Georgia,serif;font-size:40px;color:#829079;display:block;margin-bottom:25px}.visit-grid h3{font-size:27px;letter-spacing:-1px}.visit-grid p{font-size:13px;color:var(--muted)}.faq-section{background:#eeeee5;padding:90px 0}.faq-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:90px}.faq-layout>div>p:not(.eyebrow){font-size:13px;color:var(--muted)}.faq-items{border-top:1px solid #cdd5c9}.faq-items details{border-bottom:1px solid #cdd5c9}.faq-items summary{position:relative;list-style:none;cursor:pointer;padding:23px 35px 23px 0;font-size:14px;font-weight:500;line-height:1.6}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary:after{content:'+';position:absolute;right:2px;top:21px;font-size:21px;color:#6a7d63}.faq-items details[open] summary:after{content:'−'}.faq-items details[open] summary{padding-bottom:13px}.faq-items details p{font-size:13px;line-height:1.9;color:var(--muted);padding-right:25px;margin-bottom:23px}.faq-items summary:focus-visible{outline:2px solid #8a9b76;outline-offset:4px}.footer-links{display:flex;gap:17px;font-size:10px}.footer-links a:hover{text-decoration:underline}@media(max-width:1100px){nav{gap:20px;font-size:12px}.faq-layout{gap:45px}.moment-grid{gap:20px}.moment-grid article img{height:240px}}@media(max-width:850px) and (min-width:701px){nav{gap:12px}nav .small{padding:12px}.brand>span{font-size:8px}.moment-grid h3{font-size:26px}.footer-links{max-width:160px;flex-wrap:wrap;gap:10px}}@media(max-width:700px){.moments{padding:60px 0;margin-bottom:60px}.moment-grid,.visit-grid,.faq-layout{grid-template-columns:1fr;gap:35px}.moment-grid article img{height:300px}.moment-grid article>div{padding-top:23px}.moment-grid article+article{margin-top:10px}.moment-grid h3{font-size:32px}.visit{padding-bottom:65px}.visit-grid{gap:24px}.visit-grid article+article{border-top:1px solid var(--line);padding-top:24px}.step{font-size:32px;margin-bottom:14px}.visit-grid h3{margin-bottom:15px}.faq-section{padding:60px 0}.faq-layout{gap:35px}.faq-items summary{font-size:13px}.footer-links{gap:14px;flex-wrap:wrap;width:100%;order:2}footer>span{order:4}footer>a:last-child{margin-left:auto}.detail-list{margin-top:20px}.detail-list p{font-size:13px}}
/* Readable body copy across all sections and screen sizes. */
body{font-size:17px}
p{font-size:17px;line-height:1.85}
.intro-grid>p,.copy p:not(.eyebrow),.hero-content>p:not(.eyebrow),.contact p:not(.eyebrow){font-size:17px}
.detail-list p,.moment-grid p,.visit-grid p,.faq-items details p,.faq-layout>div>p:not(.eyebrow),.section-head p:last-child{font-size:16px;line-height:1.85}
.detail-list b,.faq-items summary{font-size:16px}
.contact .contact-note{font-size:14px!important;line-height:1.8}
.tags span,.text-link{font-size:14px}
@media(max-width:700px){p,.intro-grid>p,.copy p:not(.eyebrow),.hero-content>p:not(.eyebrow),.contact p:not(.eyebrow){font-size:17px}.detail-list p,.moment-grid p,.visit-grid p,.faq-items details p,.faq-layout>div>p:not(.eyebrow),.section-head p:last-child,.faq-items summary{font-size:16px}.hero{min-height:700px}.hero-content{padding-top:55px}.contact .contact-note{font-size:14px!important}}
/* Dedicated photo gallery */
.gallery-more{margin-top:30px;text-align:center}.gallery-intro{padding-top:55px;padding-bottom:45px}.back-link{display:inline-block;font-size:13px;margin-bottom:45px}.gallery-intro h1{font-size:clamp(43px,5.5vw,76px);line-height:1.15}.gallery-intro h1 em{color:#75846b}.gallery-intro>p:last-child{color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:10px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.filter{border:1px solid var(--line);background:transparent;padding:12px 20px;border-radius:28px;color:var(--green);font-size:14px;transition:background .2s,color .2s}.filter:hover{background:#e3e7db}.filter.active{background:var(--green);color:white;border-color:var(--green)}.gallery-count{font-size:13px;color:var(--muted);margin:22px 0}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.gallery-card{margin:0;min-width:0}.gallery-card[hidden]{display:none}.gallery-card button{display:block;border:0;padding:0;width:100%;overflow:hidden;background:#e5e9df}.gallery-card img{height:270px;width:100%;transition:transform .5s}.gallery-card button:hover img{transform:scale(1.04)}.gallery-card figcaption{padding:15px 0 0}.gallery-card figcaption>span{font-size:9px;letter-spacing:1.7px;text-transform:uppercase;color:var(--muted)}.gallery-card figcaption p{font-size:15px;margin:5px 0 0}.gallery-outro{padding:75px 0;text-align:center;margin-top:65px;border-top:1px solid var(--line)}.gallery-outro p{max-width:600px;margin:0 auto 25px}.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 20px 15px}.photo-controls button{position:static;width:auto;height:auto;border-radius:0;background:transparent;color:white;font-size:13px;padding:10px 0}.photo-controls span{font-size:12px;color:#ccd6cd}#lightbox:has(.photo-controls) img{max-height:70svh}nav a[aria-current="page"]{border-bottom-color:var(--green)}@media(max-width:1000px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-card img{height:260px}}@media(max-width:700px){.gallery-intro{padding-top:30px;padding-bottom:25px}.gallery-intro h1{font-size:43px;overflow-wrap:anywhere}.back-link{margin-bottom:35px}.filters{gap:8px}.filter{font-size:13px;padding:10px 14px}.photo-grid{grid-template-columns:1fr;gap:25px}.gallery-card img{height:auto;aspect-ratio:4/3}.gallery-outro{padding:45px 0;margin-top:45px}.photo-controls{gap:12px;padding-left:12px;padding-right:12px}.photo-controls button{font-size:12px}.full-gallery{padding-bottom:10px}}

/* Contact form */
.contact .contact-phone a{font-size:32px;font-weight:600;letter-spacing:1px}.contact-phone a:hover{text-decoration:underline}.form-wrap{margin-top:60px}.contact-form{border-top:1px solid #ffffff40;padding-top:40px;scroll-margin-top:110px}.contact-form h3{font-size:38px;margin-bottom:18px}.contact-form #form-info{max-width:720px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-fields label{display:flex;flex-direction:column;gap:10px;font-size:14px;min-width:0}.form-fields input,.form-fields select,.form-fields textarea{width:100%;min-width:0;border:1px solid #ffffff60;border-radius:0;padding:14px;background:var(--cream);color:var(--ink);font:inherit;font-size:16px}.form-fields textarea{resize:vertical}.form-fields input:focus-visible,.form-fields select:focus-visible,.form-fields textarea:focus-visible{outline:3px solid #d1b477;outline-offset:3px}.full-field{grid-column:1/-1}.contact .form-privacy{font-size:13px;max-width:720px;margin:24px 0}.form-trap{display:none!important}@media(max-width:700px){.form-fields{grid-template-columns:1fr}.contact .contact-phone a{font-size:28px}.form-wrap{margin-top:40px}.contact-form h3{font-size:32px}}
