@font-face{font-family:Caveat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sonset-be7f9cabf4375a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sonset-947ed15831ba3b.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sonset-be7f9cabf4375a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sonset-947ed15831ba3b.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/sonset-b7cf34f2d3b350.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/sonset-5128fdadd428a9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sonset-a55f75e9e7fa13.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sonset-d9ec821052ff94.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sonset-a55f75e9e7fa13.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sonset-d9ec821052ff94.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sonset-a9d11b3ffe7aa5.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sonset-e3237528af752e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:450;font-display:swap;src:url(/fonts/sonset-a9d11b3ffe7aa5.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:450;font-display:swap;src:url(/fonts/sonset-e3237528af752e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sonset-a9d11b3ffe7aa5.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sonset-e3237528af752e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/sonset-a9d11b3ffe7aa5.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/sonset-e3237528af752e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#38352c;--cream:#f4efe6;--sage:#6a705b;--line:#d9d0bf;--muted:#776e61;--dark:#24251e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.8}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}:focus-visible{outline-offset:5px;outline:2px solid #b78b55}img{object-fit:cover;width:100%;height:100%;display:block}p{margin:0 0 22px}h1,h2,h3{letter-spacing:-.025em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;line-height:1.06}h1{font-size:clamp(65px,7.2vw,114px)}h1 em{font-weight:400}h2{white-space:pre-line;font-size:clamp(38px,4.4vw,66px)}h3{font-size:31px;line-height:1.16}.eyebrow{letter-spacing:.18em;margin-bottom:24px;font-size:10px;font-weight:500;line-height:1.6}.preview{text-align:center;color:#665d50;letter-spacing:.12em;background:#e3dece;padding:6px 15px;font-size:8px;line-height:1.5}.site-header{z-index:40;color:#fff;justify-content:space-between;align-items:center;gap:20px;padding:24px 4.8%;transition:background .25s,padding .25s,color .25s,top .25s;display:flex;position:fixed;top:24px;left:0;right:0}.site-header.is-top{background:0 0}.site-header.is-scrolled{background:var(--cream);color:var(--ink);border-bottom:1px solid var(--line);padding-top:16px;padding-bottom:16px;top:0}.brand{letter-spacing:.01em;font-family:Cormorant Garamond,Georgia,serif;font-size:33px;line-height:1;display:inline-block}.brand span{letter-spacing:.22em;margin-top:9px;font-family:Inter,sans-serif;font-size:7px;display:block}.nav{letter-spacing:.025em;gap:25px;font-size:11px;display:flex}.nav>a{position:relative}.nav>a:after{content:"";background:currentColor;width:0;height:1px;transition:width .2s;position:absolute;bottom:-5px;left:0}.nav>a:hover:after{width:100%}.head-actions{align-items:center;gap:18px;display:flex}.head-actions select{color:inherit;background:0 0;border:0;padding:6px;font-size:10px}.head-actions option{color:var(--ink);background:var(--cream)}.button{border:1px solid var(--ink);background:var(--ink);color:#fff;letter-spacing:.025em;justify-content:center;align-items:center;gap:25px;padding:16px 24px;font-size:11px;font-weight:400;line-height:1.4;transition:background .2s,border-color .2s;display:inline-flex}.button:hover{background:#666b55;border-color:#666b55}.button.small{gap:16px;padding:12px 17px;font-size:10px}.button.cream{background:var(--cream);color:var(--ink);border-color:var(--cream)}.button.cream:hover{background:#dfd9c9;border-color:#dfd9c9}.site-header.is-top .button{color:#fff;background:0 0;border-color:#ffffff70}.site-header.is-top .button:hover{color:var(--ink);background:#f4efe6}.icon{background:0 0;border:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.mobile{display:none}.hero-immersive{color:#fff;background:#5c5b42;align-items:flex-end;height:calc(100svh - 24px);min-height:650px;max-height:1250px;display:flex;position:relative;overflow:hidden}.hero-background{object-position:50% 60%;animation:1.6s ease-out both slow-in;position:absolute;inset:0}.hero-shade{background:linear-gradient(90deg,#171b186b 0%,#171b1830 60%,#0000),linear-gradient(#0000 25%,#171b189e 100%),linear-gradient(#171b1848 0%,#0000 22%);position:absolute;inset:0}.hero-copy{width:100%;max-width:1600px;margin:0 auto;padding:160px 6.8% 68px;position:relative}.hero-copy h1{text-shadow:0 2px 24px #0001;max-width:930px}.hero .eyebrow{color:#fffcf1d9;margin-bottom:18px}.hero .lead{color:#f8f5edeb;max-width:460px;margin:25px 0 28px;font-size:14px;font-weight:400;line-height:1.85}.hero-buttons{flex-wrap:wrap;align-items:center;gap:25px;display:flex}.text-link{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding-bottom:7px;font-size:12px;line-height:1.5;display:inline-flex}.text-link:hover{color:var(--sage)}.hero .text-link{color:#fff;border-color:#ffffff65}.hero-anchor{letter-spacing:.06em;color:#ffffffc9;margin:26px 0 0;font-size:10px}.hero-scroll{letter-spacing:.14em;writing-mode:vertical-rl;align-items:center;gap:12px;font-size:7px;display:flex;position:absolute;bottom:30px;right:4.8%}.hero-scroll svg{transform:rotate(90deg)}.hero-gallery{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;letter-spacing:.12em;background:#ffffff12;border:1px solid #ffffff65;align-items:center;gap:20px;padding:12px 16px;font-size:9px;display:flex;position:absolute;bottom:130px;right:4.8%}.booking-strip{border-bottom:1px solid var(--line);background:#ece7db;justify-content:center;gap:50px;padding:25px 6%;display:flex}.booking-strip>div{letter-spacing:.02em;align-items:center;gap:11px;font-size:11px;display:flex}.booking-strip svg{stroke-width:1.2px;color:var(--sage);flex-shrink:0}.section{max-width:1500px;margin:auto;padding:100px 7.5%}.welcome{text-align:center;padding-bottom:30px}.welcome h2{max-width:850px;margin:0 auto}.welcome-copy{color:var(--muted);max-width:660px;margin:28px auto 0;font-size:14px;line-height:1.95}.specs{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);max-width:750px;margin:48px auto 0;padding-top:30px;display:grid}.specs>div{border-right:1px solid var(--line);flex-direction:column;align-items:center;gap:7px;display:flex}.specs>div:last-child{border:0}.specs strong{font-family:Cormorant Garamond,Georgia,serif;font-size:48px;font-weight:400;line-height:1}.specs span{color:var(--muted);font-size:10px}.photo-pair{grid-template-columns:1.45fr 1fr;align-items:center;gap:35px;padding-top:50px;padding-bottom:65px;display:grid}.photo-pair button{background:#dad2bf;border:0;padding:0;position:relative;overflow:hidden}.architect-photo{height:520px}.bedroom-photo{height:380px}.photo-pair button>span{color:#fff;letter-spacing:.08em;text-shadow:0 1px 10px #000;justify-content:space-between;align-items:center;font-size:9px;display:flex;position:absolute;bottom:20px;left:23px;right:23px}.architect-photo:after{content:"";background:linear-gradient(#0000,#0005);position:absolute;inset:70% 0 0}.photo-pair button>span{z-index:1}.inside{grid-template-columns:1fr 1.05fr;align-items:center;gap:10%;padding-top:55px;padding-bottom:110px;display:grid}.inside>div>p:not(.eyebrow),.island>div>p:not(.eyebrow){color:var(--muted);margin:26px 0;font-size:14px;line-height:1.95}.inside>button,.island>button{background:#ddd5c4;border:0;height:430px;padding:0}.inside h2{font-size:52px}.experiences{background:#e8e3d6;max-width:none}.section-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:40px;display:flex}.experience-grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.card-photo{background:#c2c4b5;border:0;width:100%;height:300px;padding:0;position:relative;overflow:hidden}.card-photo img,.gallery-item img,.photo-pair img{transition:transform .65s}.card-photo:hover img,.gallery-item:hover img,.photo-pair button:hover img{transform:scale(1.035)}.card-photo>span{color:#fff;text-shadow:0 1px 7px #0008;font-size:9px;position:absolute;top:15px;left:16px}.card-photo>svg{color:#fff;filter:drop-shadow(0 1px 5px #000);position:absolute;bottom:15px;right:16px}.experience-grid .eyebrow{margin:22px 0 11px;font-size:8px}.experience-grid h3{margin-bottom:15px;font-size:29px}.experience-grid article>p:last-child{color:var(--muted);font-size:12px;line-height:1.9}.outdoors{text-align:center;padding-bottom:80px}.outdoors>p:not(.eyebrow){max-width:620px;color:var(--muted);margin:27px auto 42px;font-size:14px;line-height:1.95}.outdoor-images{grid-template-columns:1.65fr 1fr;align-items:center;gap:35px;display:grid}.outdoor-images button{background:#ddd5c4;border:0;height:480px;padding:0}.outdoor-images button+button{height:550px}.outdoor-images button+button img{object-position:center 58%}.gallery{border-top:1px solid var(--line);padding-top:85px}.photo-count{letter-spacing:.12em;color:var(--muted);padding-bottom:7px;font-size:9px}.gallery .section-head{margin-bottom:20px}.gallery-intro{color:var(--muted);max-width:500px;font-size:13px}.gallery-filters{gap:22px;margin:30px 0;display:flex}.gallery-filters button{color:var(--muted);background:0 0;border:0;border-bottom:1px solid #0000;padding:8px 0;font-size:11px}.gallery-filters .active{border-color:var(--ink);color:var(--ink)}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.gallery-item{aspect-ratio:1.35;background:#e3ddce;border:0;padding:0;position:relative;overflow:hidden}.gallery-item:after{content:"";background:linear-gradient(#0000,#0007);position:absolute;inset:55% 0 0}.gallery-item>span{color:#fff;z-index:1;justify-content:space-between;align-items:center;gap:10px;font-size:10px;display:flex;position:absolute;bottom:15px;left:16px;right:16px}.gallery-more{color:var(--ink);border-color:var(--line);background:0 0;margin:32px auto 0;display:flex}.gallery-more:hover{color:#fff}.details{background:#e9e4d8;grid-template-columns:1fr 1fr;gap:8%;max-width:none;display:grid}.details h2{font-size:53px}.details ul{grid-template-columns:1fr 1fr;align-content:center;gap:24px;margin:35px 0 0;padding:0;list-style:none;display:grid}.details li{align-items:center;gap:12px;font-size:12px;display:flex}.details li svg{color:var(--sage);stroke-width:1.3px;flex-shrink:0}.times{color:var(--muted);margin-top:30px;font-size:11px}.times p{align-items:center;gap:10px;margin:8px 0;display:flex}.island{grid-template-columns:1fr .9fr;align-items:center;gap:10%;display:grid}.island>button{height:540px}.island-photo img{object-position:40% 50%}.faq{max-width:1000px;padding-top:10px}.faq h2{margin-bottom:35px}.muted{color:var(--muted);font-size:12px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;justify-content:space-between;gap:20px;font-size:13px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span{font-size:20px}details[open] summary span{transform:rotate(45deg)}details>p{color:var(--muted);margin:20px 0 0;font-size:13px;line-height:1.9}.cta{text-align:center;color:#fff;place-items:center;height:500px;display:grid;position:relative}.cta>img{object-position:center 55%;filter:brightness(.48);position:absolute;inset:0}.cta>div{padding:25px;position:relative}.cta h2{font-size:67px}.cta p:not(.eyebrow){margin:20px auto 28px;font-size:13px}footer{background:var(--dark);color:#f3eee3;padding:60px 6% 30px}.footer-main{justify-content:space-between;gap:50px;padding-bottom:40px;display:flex}.footer-main p{color:#c3bdad;margin:25px 0 0;font-size:12px}.footer-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:20px;max-width:500px;font-size:11px;display:flex}.footer-nav button{color:inherit;background:0 0;border:0;border-bottom:1px solid #d9d0bf55;align-items:center;gap:12px;padding:0 0 4px;font-size:11px;display:flex}.footer-bottom{color:#c3bdad;border-top:1px solid #ffffff20;justify-content:space-between;gap:20px;padding-top:25px;font-size:9px;display:flex}.footer-bottom a{align-items:center;gap:10px;display:inline-flex}.payment-message{z-index:45;color:var(--ink);background:#f4e8cb;padding:15px;font-size:12px;position:fixed;top:105px;left:5%;right:5%}.photo-viewer{background:#181b16f7}.photo-viewer figure{flex-direction:column;align-items:center;width:100%;max-width:1300px;margin:0;display:flex}.photo-viewer figure>img{object-fit:contain;width:100%;height:calc(88dvh - 75px);max-height:1000px}.photo-viewer figcaption{color:#ede8dc;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:18px 5px 0;font-size:11px;display:flex}.photo-toolbar{color:#f5efe3;letter-spacing:.16em;justify-content:space-between;align-items:center;font-size:10px;display:flex;position:absolute;top:18px;left:4%;right:4%}@keyframes slow-in{0%{transform:scale(1.025)}to{transform:scale(1)}}.modal-backdrop{z-index:100;background:#19291fc9;justify-content:center;align-items:center;padding:30px;display:flex;position:fixed;inset:0}.booking{background:var(--cream);width:100%;max-width:1000px;max-height:93vh;padding:34px 40px;overflow:auto}.booking-head{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding-bottom:25px;display:flex}.booking-head .eyebrow{margin:0 0 10px}.booking-head h2{font-size:34px}.booking-body{grid-template-columns:1.05fr 1fr;gap:40px;padding-top:25px;display:grid}label{font-size:11px;font-weight:500;display:block}input,textarea,select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:0;min-width:0;padding:12px}label input,label select,label textarea{width:100%;margin-top:7px;display:block}.date-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.calendar{border:1px solid var(--line);background:#fff;margin:18px 0;padding:15px}.calendar-head{justify-content:space-between;align-items:center;font-size:12px;display:flex}.calendar-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.weekday{color:var(--muted);padding:12px 0;font-size:9px}.calendar-grid button{background:0 0;border:0;height:38px;font-size:11px}.calendar-grid button:hover{background:#e8eddf}.calendar-grid .blocked{color:#9fa397;background:#f3f3ef;text-decoration:line-through}.calendar-grid .selected{background:var(--ink);color:#fff}.calendar-grid .inrange{background:#e4e9db}.calendar small{color:var(--muted);align-items:center;gap:7px;margin-top:12px;font-size:9px;display:flex}.dot{background:#d8dbd3;width:7px;height:7px;display:inline-block}.guests{justify-content:space-between;align-items:center;margin:12px 0;display:flex}.guests select{width:90px;margin:0}.full{width:100%}.summary{background:#eef0e7;padding:20px}.summary>img{height:150px;margin-bottom:22px}.summary h3{margin-bottom:12px;font-size:24px}.summary label{margin:14px 0}.summary .total{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;gap:15px;margin:20px 0;padding:15px 0;display:flex}.total span{font-size:11px}.total strong{font-size:22px;line-height:1.2}.summary p{font-size:12px}.summary small{text-align:center;color:var(--muted);margin-top:10px;font-size:10px;display:block}.checkbox{align-items:flex-start;gap:10px;font-weight:400;display:flex}.checkbox input{width:auto;margin-top:5px}.notice{color:#645b42;background:#e9e2cf;margin:12px 0;padding:12px;font-size:11px}.error{color:#8b3633;background:#f5e7e1;margin-top:15px;padding:12px;font-size:12px}.terms-text{white-space:pre-wrap}.lightbox{z-index:200;background:#142017f5;justify-content:center;align-items:center;padding:6vh 5vw;display:flex;position:fixed;inset:0}.lightbox>img{object-fit:contain;width:auto;max-width:90vw;height:auto;max-height:88vh}.lightbox .icon{color:#fff;position:absolute;top:15px;right:20px}.payment-message{background:#e9e2cf;margin:0;padding:15px 6%;font-size:12px}.admin{max-width:1150px;margin:auto;padding:50px 6%}.admin-header{justify-content:space-between;align-items:center;margin-bottom:35px;display:flex}.admin h1{font-size:48px}.admin h2{margin:20px 0;font-size:30px}.admin section{border:1px solid var(--line);background:#fff;margin:24px 0;padding:26px}.admin .status-grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.status-card{background:#eeeee5;padding:15px;font-size:11px}.status-card strong{color:#8b6c39;margin-top:6px;display:block}.status-card.on strong{color:#386547}.rate-row{grid-template-columns:1fr 1fr 1fr 1fr auto;align-items:end;gap:10px;margin-bottom:15px;display:grid}.admin textarea{min-height:160px}.admin .button{margin-top:12px}.admin table{border-collapse:collapse;width:100%;font-size:11px}.admin th,.admin td{text-align:left;border-bottom:1px solid var(--line);padding:12px 8px}.table-wrap{overflow:auto}.admin .inline{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.admin .inline label{flex:1}.admin .inline button{flex:none}.admin .muted{font-size:12px}.admin section>p{color:var(--muted);font-size:12px}.photo-viewer .photo-toolbar .photo-close{position:static}.photo-viewer .photo-prev,.photo-viewer .photo-next{color:#fff;background:#ffffff12;width:44px;height:54px;position:absolute;top:50%;transform:translateY(-50%)}.photo-viewer .photo-prev{left:15px}.photo-viewer .photo-next{right:15px}@media (min-width:1600px){.experience-grid{max-width:1400px;margin:auto}.experiences>.section-head{max-width:1400px;margin-left:auto;margin-right:auto}.details{padding-left:max(7.5%,50vw - 637.5px);padding-right:max(7.5%,50vw - 637.5px)}.hero-copy{padding-left:110px}.hero h1{font-size:116px}}@media (max-width:1100px){.nav{gap:17px;font-size:10px}.site-header{padding-left:4%;padding-right:4%}.head-actions{gap:10px}.brand{font-size:29px}.button.small{gap:12px;padding:11px 13px;font-size:9px}.hero-copy{padding-bottom:65px;padding-left:6%}.hero h1{font-size:88px}.booking-strip{gap:28px}.booking-strip>div{font-size:10px}.section{padding:75px 6%}.welcome{padding-bottom:25px}.photo-pair{gap:25px;padding-top:35px;padding-bottom:35px}.architect-photo{height:430px}.bedroom-photo{height:330px}.inside{gap:7%;padding-top:45px}.inside h2{font-size:44px}.experience-grid{grid-template-columns:repeat(2,1fr);gap:35px 25px}.card-photo{height:320px}.outdoor-images button{height:370px}.outdoor-images button+button{height:440px}.details h2{font-size:47px}.details ul{grid-template-columns:1fr}.island>button{height:430px}.gallery-item{aspect-ratio:1.2}.gallery-item>span{font-size:9px}.booking{padding:25px}.booking-body{gap:22px}.admin .status-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.desktop{display:none}.mobile{display:inline-flex}.site-header{padding:22px 6%;top:24px}.site-header.is-scrolled{padding:14px 6%;top:0}.brand{font-size:29px}.brand span{font-size:6px}.head-actions{gap:12px}.head-actions select{font-size:11px}.nav{display:none}.nav.open{background:var(--cream);color:var(--ink);z-index:10;flex-direction:column;gap:18px;padding:30px 7%;font-size:17px;display:flex;position:absolute;top:80px;left:0;right:0;box-shadow:0 15px 25px #0002}.hero-immersive{height:calc(94svh - 24px);min-height:620px;max-height:950px}.hero-background{object-position:52% 50%}.hero-shade{background:linear-gradient(#141c162b,#141c1650 45%,#141c16c4 100%)}.hero-copy{padding:140px 7% 65px}.hero h1{letter-spacing:-.03em;font-size:68px;line-height:1.03}.hero .eyebrow{letter-spacing:.15em;font-size:8px}.hero .lead{max-width:340px;margin:22px 0;font-size:12px;line-height:1.9}.hero-buttons{gap:20px}.hero-buttons .button{padding:15px 18px;font-size:10px}.hero-buttons .text-link{gap:10px;font-size:10px}.hero-anchor{letter-spacing:.025em;margin-top:24px;font-size:8px}.hero-scroll{display:none}.hero-gallery{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0;font-size:8px;bottom:17px;right:6%}.booking-strip{grid-template-columns:1fr 1fr;justify-content:start;gap:18px 10px;padding:25px 7%;display:grid}.booking-strip>div{gap:10px;font-size:10px}.booking-strip svg{width:17px;height:17px}.section{padding:60px 7%}.welcome{padding-bottom:25px}.eyebrow{letter-spacing:.17em;margin-bottom:18px;font-size:8px;line-height:1.7}h2{font-size:43px}.welcome-copy{margin-top:24px;font-size:12px;line-height:1.95}.specs{margin-top:30px;padding-top:25px}.specs strong{font-size:39px}.specs span{font-size:9px}.photo-pair{grid-template-columns:1fr;gap:16px;padding-top:25px;padding-bottom:25px}.architect-photo{height:350px}.bedroom-photo{justify-self:end;width:78%;height:330px}.photo-pair button>span{font-size:8px}.inside{grid-template-columns:1fr;gap:30px;padding-top:35px}.inside h2{font-size:42px}.inside>div>p:not(.eyebrow),.island>div>p:not(.eyebrow){font-size:12px}.inside>button{height:320px}.section-head{margin-bottom:30px}.section-head h2{font-size:43px}.experience-grid{grid-template-columns:1fr;gap:32px}.card-photo{height:320px}.experience-grid h3{font-size:34px}.experience-grid article>p:last-child,.outdoors>p:not(.eyebrow){font-size:12px}.outdoor-images{grid-template-columns:1fr 1fr;align-items:start;gap:16px}.outdoor-images button{height:280px}.outdoor-images button+button{height:340px;margin-top:35px}.gallery .section-head{flex-direction:column;align-items:start;gap:15px}.photo-count{padding:0;font-size:8px}.gallery-intro{font-size:12px}.gallery-filters{gap:22px;margin:22px 0}.gallery-filters button{font-size:10px}.gallery-grid{grid-template-columns:1fr 1fr;gap:10px}.gallery-item{aspect-ratio:.85}.gallery-item img{object-position:center}.gallery-item>span{gap:5px;font-size:8px;line-height:1.4;bottom:12px;left:10px;right:10px}.gallery-item>span svg{flex-shrink:0;width:13px}.gallery-more{font-size:10px}.details{grid-template-columns:1fr;gap:15px}.details h2{font-size:44px}.details ul{grid-template-columns:1fr 1fr;gap:24px 15px;margin-top:20px}.details li{gap:9px;font-size:10px}.details li svg{width:15px}.island{grid-template-columns:1fr;gap:35px}.island>button{height:430px}.island>div h2{font-size:44px}.faq{padding-top:5px}.faq h2{font-size:43px}.faq summary,.faq details>p{font-size:12px}.cta{height:430px}.cta h2{font-size:50px}.cta p:not(.eyebrow){max-width:290px;font-size:11px}.footer-main{flex-direction:column;gap:30px;padding-bottom:30px}.footer-nav{justify-content:flex-start;gap:18px;font-size:10px}.footer-main p{font-size:11px}footer{padding:45px 7% 100px}.footer-bottom{flex-direction:column;gap:12px;font-size:8px}.mobile-book{z-index:20;width:88%;position:fixed;bottom:15px;left:6%;box-shadow:0 5px 25px #0003}.modal-backdrop{align-items:flex-end;padding:0}.booking{overscroll-behavior:contain;max-height:96dvh;padding:23px 20px}.booking-head h2{font-size:30px}.booking-body{grid-template-columns:1fr;gap:25px}.summary>img{height:180px}.preview{letter-spacing:.08em;padding:6px 10px;font-size:6px;line-height:2}.admin{padding:30px 5%}.admin h1{font-size:38px}.admin section{padding:20px}.admin .status-grid{grid-template-columns:repeat(2,1fr)}.rate-row{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;padding-bottom:20px}.admin-header{gap:15px}.admin-header>a{font-size:12px}.photo-viewer{align-items:center;padding:55px 12px 80px}.photo-viewer figure>img{object-fit:contain;height:auto;min-height:170px;max-height:72dvh}.photo-viewer figcaption{gap:12px;padding:15px 5px;font-size:10px}.photo-viewer .photo-prev,.photo-viewer .photo-next{width:48px;height:42px;top:auto;bottom:25px;transform:none}.photo-viewer .photo-prev{left:calc(50% - 60px)}.photo-viewer .photo-next{right:calc(50% - 60px)}.photo-toolbar{font-size:8px;top:18px}.payment-message{top:100px}}@media (max-width:390px){.hero h1{font-size:57px}.hero-buttons{gap:16px}.hero-buttons .text-link{font-size:9px}.hero-buttons .button{padding:14px;font-size:9px}.hero .lead{font-size:11px}.details ul{grid-template-columns:1fr}.gallery-filters{gap:17px}.brand{font-size:26px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}.skip-link{z-index:300;background:var(--cream);color:var(--ink);padding:12px 20px;font-size:14px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header .nav{gap:22px;font-size:12px}.hero .lead{max-width:465px;font-size:15px;line-height:1.85}.hero-trust{color:#f7f1e5;flex-wrap:wrap;gap:19px;margin-top:29px;font-size:11px;display:flex}.hero-trust>span{align-items:center;gap:7px;display:inline-flex}.hero-trust svg{stroke-width:1.5px}.hero-shade{background:linear-gradient(90deg,#101c16a3 0%,#14201935 54%,#0000 85%),linear-gradient(#0000 35%,#17201980 100%),linear-gradient(#14201950 0%,#0000 24%)}.family-stays{border-top:1px solid var(--line);padding-top:75px;padding-bottom:85px}.family-heading{grid-template-columns:1.4fr 1fr;align-items:end;gap:8%;margin-bottom:38px;display:grid}.family-heading h2{font-size:clamp(40px,3.7vw,57px)}.family-heading>p{color:var(--muted);margin:0 0 2px;font-size:14px;line-height:1.95}.family-main-photo{background:#696e5c;height:450px;position:relative;overflow:hidden}.family-main-photo img{object-position:50% 52%}.photo-open{color:#fff;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);letter-spacing:.1em;background:#18201b65;border:1px solid #ffffff65;align-items:center;gap:18px;padding:12px 16px;font-size:9px;display:flex;position:absolute;bottom:20px;right:20px}.family-moments{grid-template-columns:repeat(3,1fr);gap:35px;margin-top:38px;display:grid}.family-moments article{border-right:1px solid var(--line);padding-right:25px}.family-moments article:last-child{border:0;padding-right:0}.family-moments article>span{color:#96886f;margin-bottom:18px;font-size:10px;display:block}.family-moments h3{margin-bottom:15px;font-size:32px}.family-moments p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.9}.family-footnote{color:var(--muted);border-top:1px solid var(--line);max-width:800px;margin:30px 0 25px;padding-top:22px;font-size:11px}.family-stays>.button{margin-top:3px}.inside{padding-top:35px}.experience-grid article:nth-child(2) img{object-position:47% 50%}.experience-grid article:nth-child(3) img{object-position:54% 50%}.experience-grid .card-photo{height:290px}.pool-season{background:#ebe6d9;grid-template-columns:1.1fr 1fr;align-items:center;gap:7%;max-width:none;padding-top:80px;padding-bottom:80px;display:grid}.season-image{height:465px}.season-image img{object-position:50% 50%}.season-content h2{font-size:clamp(38px,4vw,60px)}.season-content>p:not(.eyebrow){color:var(--muted);margin:26px 0;font-size:14px;line-height:1.95}.season-periods{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:14px;margin:26px 0 20px;padding:20px 0;font-size:13px;display:flex}.season-periods>span{align-items:center;gap:12px;display:flex}.season-periods svg{color:var(--sage);stroke-width:1.3px}.season-content small{color:var(--muted);margin-bottom:25px;font-size:11px;line-height:1.9;display:block}.gallery-intro{font-size:14px;line-height:1.9}.personal-contact{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:center;gap:10%;padding-top:80px;padding-bottom:80px;display:grid}.personal-contact h2{font-size:clamp(40px,4vw,60px)}.personal-contact>div>p:not(.eyebrow){color:var(--muted);margin:26px 0;font-size:14px;line-height:1.95}.contact-photo{height:380px}.contact-photo img{object-position:50% 50%}.footer-contact{color:#e5dfce;border-bottom:1px solid #e5dfce55;align-items:center;gap:12px;margin-top:18px;padding-bottom:4px;font-size:12px;display:inline-flex}.booking-help{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.booking-help>p{margin:0 0 10px;font-size:12px}.booking-help .text-link{font-size:12px}.booking .date-fields input{font-size:14px}.booking .notice{line-height:1.8}.nav a,.head-actions select{align-items:center;min-height:35px;display:inline-flex}.nav>a:after{bottom:0}.gallery-filters button{min-height:44px}.photo-viewer .photo-prev,.photo-viewer .photo-next{min-width:44px;min-height:44px}@media (min-width:1600px){.pool-season{padding-left:max(7.5%,50vw - 700px);padding-right:max(7.5%,50vw - 700px)}}@media (max-width:1150px){.site-header .nav{gap:17px;font-size:11px}.site-header .brand{font-size:28px}.site-header .button.small{font-size:10px}.family-heading{grid-template-columns:1.2fr 1fr;gap:5%}.family-heading h2{font-size:46px}.family-moments{gap:24px}.family-moments h3{font-size:29px}.family-main-photo{height:400px}.pool-season{gap:6%}.season-image{height:430px}.season-content h2{font-size:48px}.season-periods{font-size:12px}.contact-photo{height:370px}}@media (max-width:900px){.site-header .nav{display:none}.site-header .mobile{display:inline-flex}.site-header .desktop{display:none}.site-header .nav.open{background:var(--cream);color:var(--ink);flex-direction:column;gap:12px;padding:25px 7%;font-size:16px;display:flex;position:absolute;top:78px;left:0;right:0;box-shadow:0 15px 25px #0002}.site-header .nav a{min-height:42px}.family-heading{grid-template-columns:1fr;gap:25px}.family-heading>p{max-width:580px}.family-main-photo{height:380px}.pool-season{grid-template-columns:1fr 1fr;gap:30px}.season-image{height:490px}.family-moments{gap:20px}.family-moments article{padding-right:15px}.personal-contact{gap:6%}}@media (max-width:760px){.hero h1{max-width:100%;font-size:72px;line-height:1.01}.hero .lead{max-width:340px;margin:22px 0 26px;font-size:14px;line-height:1.85}.hero-trust{gap:10px 15px;max-width:330px;margin-top:24px;font-size:10px;line-height:1.7}.hero-trust>span{gap:5px}.hero-copy{padding-bottom:63px}.hero .eyebrow{font-size:9px}.hero-buttons .button{min-height:48px;padding:15px 18px;font-size:11px}.hero-buttons .text-link{font-size:11px;line-height:1.6}.hero-immersive{height:calc(100svh - 24px);min-height:690px;max-height:1000px}.hero-background{object-position:54% 50%}.hero-shade{background:linear-gradient(#14201930,#10201765 38%,#0f1b16d4 100%)}.booking-strip>div{font-size:11px}.welcome-copy,.inside>div>p:not(.eyebrow),.island>div>p:not(.eyebrow),.gallery-intro{font-size:14px;line-height:1.85}.welcome h2{font-size:43px}.family-stays{padding-top:55px;padding-bottom:55px}.family-heading{gap:22px;margin-bottom:28px}.family-heading h2{font-size:43px}.family-heading>p{font-size:14px;line-height:1.85}.family-main-photo{height:310px}.family-main-photo img{object-position:50% 52%}.photo-open{min-height:42px;font-size:8px;bottom:12px;right:12px}.family-moments{grid-template-columns:1fr;gap:24px;margin-top:30px}.family-moments article{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:24px 1fr;gap:0 12px;padding:0 0 24px;display:grid}.family-moments article>span{grid-row:1/3;margin-top:8px;font-size:10px}.family-moments article:last-child{padding-bottom:0}.family-moments h3{margin:0 0 12px;font-size:33px}.family-moments p{grid-column:2;font-size:14px;line-height:1.8}.family-footnote{margin:25px 0;padding-top:20px;font-size:12px;line-height:1.8}.family-stays>.button{min-height:48px;font-size:12px}.experience-grid article>p:last-child{font-size:14px;line-height:1.85}.experience-grid .eyebrow{font-size:9px}.experience-grid .card-photo{height:310px}.pool-season{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:55px}.season-image{height:310px}.season-content h2{font-size:45px}.season-content>p:not(.eyebrow){margin:24px 0;font-size:14px;line-height:1.85}.season-periods{gap:16px;margin:24px 0 18px;font-size:13px}.season-content small{font-size:12px}.season-content>.button{min-height:48px;font-size:12px}.gallery-filters button{font-size:12px}.gallery-item>span{font-size:10px}.gallery-more{font-size:12px}.details li{font-size:12px;line-height:1.6}.details li svg{width:16px}.times{font-size:12px}.faq summary,.faq details>p{font-size:14px;line-height:1.8}.faq summary span{font-size:22px}.personal-contact{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:55px}.personal-contact h2{font-size:44px}.personal-contact>div>p:not(.eyebrow){font-size:14px;line-height:1.85}.personal-contact .button{min-height:48px;font-size:12px}.contact-photo{height:310px}.cta h2{font-size:49px}.cta p:not(.eyebrow){font-size:13px;line-height:1.8}.cta .button{min-height:48px;font-size:12px}.footer-nav{gap:18px;font-size:12px}.footer-nav button{min-height:40px;font-size:12px}.footer-contact{min-height:38px;font-size:12px}.footer-main p{font-size:12px}.footer-bottom{font-size:10px;line-height:1.9}.mobile-book{min-height:48px;font-size:12px}.booking label{font-size:12px}.booking input,.booking select,.booking .date-fields input{min-height:44px;font-size:16px}.calendar-grid button{height:40px;font-size:12px}.calendar-grid .weekday{font-size:10px}.calendar-head{font-size:13px}.calendar-head .icon{width:44px;height:44px}.booking .button{min-height:48px;font-size:12px}.booking .summary p{font-size:13px}.booking .notice{font-size:12px}.booking .close{width:44px;height:44px}.summary .checkbox input{min-width:20px;min-height:20px}.photo-viewer figcaption{font-size:12px}.booking-head h2{font-size:31px}}@media (max-width:390px){.hero h1{font-size:65px}.hero .lead{max-width:300px;font-size:13px}.hero-buttons{gap:18px}.hero-buttons .button{padding:14px 16px;font-size:10px}.hero-buttons .text-link{font-size:10px}.hero-trust{gap:8px 12px;font-size:9px}.hero-immersive{min-height:650px}.family-heading h2{font-size:39px}.season-content h2{font-size:41px}.gallery-filters{gap:18px}.gallery-filters button{font-size:11px}.gallery-grid{gap:10px}.gallery-item>span{font-size:9px}.cta h2{font-size:43px}}@media (max-width:760px){.hero h1{font-size:clamp(54px,16.5vw,72px)}html[lang=de] .hero h1{font-size:clamp(50px,15vw,65px)}html[lang=en] .hero h1{font-size:clamp(51px,16vw,68px)}}@media (max-width:390px){.hero-immersive{min-height:710px}.hero h1{font-size:59px}html[lang=en] .hero h1{font-size:56px}html[lang=de] .hero h1{font-size:54px}}.cta{height:auto;min-height:500px;padding:45px 0}.cta h2{max-width:850px;margin-left:auto;margin-right:auto}@media (max-width:760px){.cta{height:auto;min-height:460px;padding:35px 0}.cta h2{max-width:360px;font-size:46px}.booking-strip{line-height:1.6}.booking-strip svg{width:20px;height:20px}.family-stays .family-footnote{line-height:1.8}}.mobile-action-bar,.mobile-swipe-hint{display:none}@media (max-width:900px){html{scroll-padding-top:90px}body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}main,section,header,footer{min-width:0}.mobile-book{display:none!important}.mobile-action-bar{z-index:35;padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);background:#f4efe6f5;grid-template-columns:58px 70px minmax(0,1fr);align-items:center;gap:8px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #1720190a}.mobile-action-bar>a{flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:48px;font-size:10px;line-height:1.4;display:flex}.mobile-action-bar>a svg{stroke-width:1.4px}.mobile-action-bar>button{background:var(--ink);min-height:48px;color:var(--cream);border:0;justify-content:center;align-items:center;gap:10px;padding:12px;font-size:12px;line-height:1.4;display:flex}.mobile-action-bar>button>svg{flex-shrink:0}.site-header{padding-left:max(6%,env(safe-area-inset-left,0px));padding-right:max(6%,env(safe-area-inset-right,0px))}.site-header .icon{min-width:44px;min-height:44px}.head-actions select{min-width:48px;min-height:44px;font-size:12px}.site-header .nav.open{max-height:calc(100dvh - 175px - env(safe-area-inset-bottom,0px));overscroll-behavior:contain;gap:6px;padding:20px 7%;overflow-y:auto}.site-header .nav.open a{border-bottom:1px solid var(--line);min-height:48px;padding:9px 0;font-size:18px}.gallery-filters{white-space:nowrap;scrollbar-width:none;gap:10px;padding:3px 0 10px;display:flex;overflow-x:auto}.gallery-filters::-webkit-scrollbar{display:none}.gallery-filters button{border:1px solid var(--line);border-radius:24px;flex:none;min-height:42px;padding:9px 16px;font-size:12px}.gallery-filters .active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.mobile-swipe-hint{color:var(--muted);align-items:center;gap:10px;margin:0 0 15px;font-size:11px;display:flex}.gallery-grid{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#b7ad99 transparent;gap:14px;padding:0 0 16px;display:flex;overflow-x:auto}.gallery-item{aspect-ratio:1.12;scroll-snap-align:start;scroll-snap-stop:normal;flex:0 0 84%;max-width:540px}.gallery-item>span{font-size:12px;line-height:1.5;bottom:18px;left:18px;right:18px}.gallery-item>span svg{width:17px}.gallery-more{width:100%;min-height:48px;margin-top:22px;font-size:12px}.photo-viewer figure{touch-action:pan-y pinch-zoom}.photo-viewer{padding-bottom:calc(85px + env(safe-area-inset-bottom,0px));padding-top:calc(60px + env(safe-area-inset-top,0px))}.photo-viewer .photo-prev,.photo-viewer .photo-next{bottom:calc(20px + env(safe-area-inset-bottom,0px));min-width:48px;min-height:48px}.photo-toolbar{top:calc(12px + env(safe-area-inset-top,0px))}.photo-viewer figcaption{font-size:12px;line-height:1.6}.lightbox{z-index:110}.modal-backdrop{z-index:100}footer{padding-bottom:35px}.footer-nav{gap:16px 22px}.footer-nav a,.footer-nav button{align-items:center;min-height:44px;display:inline-flex}.payment-message{font-size:13px;line-height:1.7}}@media (max-width:760px){.section{padding-left:6%;padding-right:6%}.site-header .brand{font-size:28px}.hero-immersive{height:auto;min-height:calc(100svh - 24px);padding-bottom:25px}.hero-copy{padding:145px 6% 42px}.hero h1{font-size:clamp(52px,16vw,72px);line-height:1.04}.hero .lead{max-width:350px;font-size:14px;line-height:1.85}.hero-trust{gap:9px 14px;max-width:360px;font-size:10px}.hero-buttons{gap:19px}.hero-gallery{font-size:8px;bottom:16px}.hero-background{object-position:51% 50%}.welcome,.family-stays,.experiences,.gallery,.details,.pool-season,.personal-contact,.island,.faq{padding-top:48px;padding-bottom:48px}.welcome{padding-bottom:20px}.welcome h2,.family-heading h2,.inside h2,.section-head h2,.details h2,.island>div h2,.personal-contact h2,.faq h2{font-size:clamp(35px,10vw,44px)}.eyebrow{letter-spacing:.13em;font-size:9px}.photo-pair{gap:14px;padding-top:22px;padding-bottom:22px}.architect-photo{height:300px}.bedroom-photo{width:86%;height:285px}.inside{gap:25px;padding-top:28px;padding-bottom:48px}.inside>button{height:300px}.family-main-photo{height:285px}.family-moments h3{font-size:31px}.family-moments{margin-top:26px}.family-heading{gap:19px}.family-footnote{margin-top:25px}.season-image{height:290px}.season-content h2{font-size:42px}.experience-grid .card-photo{height:290px}.experience-grid{gap:30px}.specs{margin-top:27px;padding-top:24px}.specs span{font-size:10px}.contact-photo{height:290px}.island>button{height:360px}.details ul{gap:22px 14px}.details li{font-size:12px}.booking-strip{gap:20px 15px;padding:23px 6%}.booking{border-radius:18px 18px 0 0;flex-direction:column;width:100%;max-height:100dvh;padding:0;display:flex;overflow:hidden}.booking-head{background:var(--cream);flex:none;align-items:center;gap:10px;padding:22px 20px 17px;position:relative}.booking-head .eyebrow{margin-bottom:6px;font-size:9px}.booking-head h2{font-size:30px}.booking-head .close{flex:none;min-width:44px;min-height:44px}.booking-body{padding:20px 18px calc(25px + env(safe-area-inset-bottom,0px));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:block;overflow-y:auto}.booking-body>div{min-width:0}.booking .date-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.booking .date-fields input{width:100%;min-width:0;max-width:100%;min-height:48px;padding:11px 8px;font-size:16px}.booking .calendar{margin-top:18px;padding:12px}.calendar-grid{gap:3px}.calendar-grid button{height:42px;font-size:13px}.calendar-grid .weekday{font-size:10px}.calendar-head{font-size:14px}.calendar-head button{width:44px;height:44px}.booking .guests{font-size:13px}.booking .guests select{min-height:48px}.booking .full{min-height:50px;font-size:13px}.booking .summary{margin-top:24px;padding:18px}.booking .summary>img{height:145px;margin-bottom:18px}.booking .summary h3{font-size:27px}.booking label{font-size:13px}.booking input{min-height:48px;font-size:16px}.booking .checkbox input{min-height:20px}.booking .checkbox{font-size:12px;line-height:1.7}.booking .summary .total{align-items:center}.booking .summary .total strong{font-size:24px}.booking-help .text-link{min-height:44px;font-size:13px}.modal-backdrop{align-items:flex-end}.photo-viewer figure>img{max-height:68dvh}}@media (max-width:390px){.mobile-action-bar{grid-template-columns:48px 57px minmax(0,1fr);gap:6px;padding-left:12px;padding-right:12px}.mobile-action-bar>button{gap:7px;padding:12px 8px;font-size:11px}.mobile-action-bar>button>svg:last-child{display:none}.site-header .brand{font-size:25px}.head-actions{gap:3px}.hero h1{font-size:57px}.hero-copy{padding-top:140px}.hero .lead{font-size:13px}.hero-buttons .button{padding:15px 17px;font-size:11px}.hero-buttons .text-link{font-size:10px}.hero-trust{font-size:9px}.gallery-item{aspect-ratio:1;flex-basis:88%}.gallery-item>span{font-size:11px}.booking-head h2{font-size:27px}.booking-body{padding-left:14px;padding-right:14px}.calendar-grid{gap:2px}.booking .date-fields input{padding:10px 5px}.booking-strip>div{font-size:10px}.photo-pair .architect-photo{height:270px}.details ul{grid-template-columns:1fr 1fr}}@media (max-width:900px) and (orientation:landscape) and (max-height:550px){.hero-immersive{min-height:620px}.booking{max-height:100dvh}.booking-head{padding-top:12px;padding-bottom:12px}.booking-head h2{font-size:25px}.photo-viewer{padding-top:45px;padding-bottom:50px}.photo-viewer figure>img{max-height:65dvh}.photo-viewer .photo-prev,.photo-viewer .photo-next{top:50%;bottom:auto;transform:translateY(-50%)}.photo-viewer .photo-prev{left:10px}.photo-viewer .photo-next{right:10px}}.calendar-grid button.blocked{opacity:1;color:#877c6d;background:#e8e3d9;text-decoration-thickness:1.5px}.calendar small{line-height:1.6;display:block}.date-choice{border:1px solid var(--line);text-align:left;min-height:68px;color:var(--ink);background:#fff;padding:12px}.date-choice span{margin-bottom:8px;font-size:11px;display:block}.date-choice strong{font-size:14px;font-weight:500}.date-choice.active{border:2px solid var(--sage);padding:11px}.date-choice:disabled{opacity:.55}.calendar-prompt{color:var(--muted);margin:10px 0 0;font-size:12px}.calendar-grid button:disabled{cursor:not-allowed}.calendar-grid button:disabled:not(.blocked){color:#a2a297}.calendar-strike{color:#64574b;background:#e8e3d9;padding:2px 5px;text-decoration:line-through;text-decoration-thickness:2px}.calendar-grid button.blocked{text-decoration-color:#6e5144;text-decoration-thickness:2px}.calendar-grid button.checkout-only{outline:1px dashed var(--sage);outline-offset:-2px}.booking-inclusions{border-top:1px solid var(--line);margin:20px 0;padding-top:18px}.booking-inclusions h4{margin:0 0 10px;font-size:16px;line-height:1.4}.booking-inclusions p,.booking-inclusions li{font-size:12px;line-height:1.8}.booking-inclusions ul{margin:12px 0;padding-left:18px}.booking-inclusions li{margin:8px 0}.booking-cancellation{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.booking-cancellation .terms-text{overflow-wrap:anywhere}@media (max-width:760px){.booking-inclusions p,.booking-inclusions li,.date-choice strong{font-size:13px}.site-header .head-actions select{min-width:52px;min-height:44px;font-size:16px}.site-header .head-actions .icon{flex-shrink:0;width:44px;height:44px}.booking{max-height:100vh;max-height:100dvh}.booking-head{padding-top:max(16px,env(safe-area-inset-top,0px))}.booking-body{min-height:0}.pool-swim-controls button,.photo-viewer .icon{min-width:44px;min-height:44px}}.calendar-grid button{isolation:isolate;position:relative;overflow:hidden}.calendar-grid button.blocked{text-decoration:none}.calendar-grid button.occupancy-arrival,.calendar-legend-samples .occupancy-arrival{background:linear-gradient(135deg,#fff 49%,#8b8172 49.5% 50.5%,#e8e3d9 51%)}.calendar-grid button.occupancy-departure,.calendar-legend-samples .occupancy-departure{background:linear-gradient(135deg,#e8e3d9 49%,#8b8172 49.5% 50.5%,#fff 51%)}.calendar-grid button.occupancy-turnover,.calendar-legend-samples .occupancy-turnover{background:linear-gradient(135deg,#e8e3d9 49%,#8b8172 49.5% 50.5%,#e8e3d9 51%)}.calendar-grid button.occupancy-occupied{background:#e8e3d9}.calendar-grid button.occupancy-free{background:#fff}.calendar-grid button.selected{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}.calendar-grid button.inrange{box-shadow:inset 0 0 0 2px #859875}.calendar-day-number{z-index:1;min-width:23px;min-height:23px;color:var(--ink);background:#ffffffd9;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative}.calendar-grid button.occupancy-occupied .calendar-day-number{color:#746b5e;background:0 0}.calendar-legend-samples{flex-wrap:wrap;gap:8px 14px;margin-top:8px;display:flex}.calendar-legend-samples>span{align-items:center;gap:5px;display:inline-flex}.calendar-legend-samples i{border:1px solid var(--line);flex-shrink:0;width:23px;height:23px;display:inline-block}.coupon-field{margin:20px 0}.coupon-breakdown{border-top:1px solid var(--line);padding-top:12px}.modal-backdrop:has(>.booking){overscroll-behavior:none}.booking{height:calc(100vh - 60px);flex-direction:column;height:calc(100svh - 60px);max-height:calc(100svh - 60px);padding:0;display:flex;overflow:hidden}.booking-head{background:var(--cream);z-index:1;flex:none;padding:24px 32px}.booking-body{overscroll-behavior-y:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;flex:auto;align-items:start;min-height:0;padding:25px 32px 32px;overflow-y:auto}@media (max-width:760px){.modal-backdrop:has(>.booking){align-items:flex-start;padding:0}.booking{height:100vh;border-radius:0;height:100svh;max-height:100svh}.booking-head{padding:max(16px,env(safe-area-inset-top,0px)) 20px 16px}.booking-body{padding:20px 18px calc(25px + env(safe-area-inset-bottom,0px))}}@media (max-width:390px){.booking-body,.booking-head{padding-left:14px;padding-right:14px}}.privacy-tools{font-family:Inter,Arial,sans-serif;position:relative}.privacy-launch{color:#263c32;cursor:pointer;background:#fffdf8;border:1px solid #b9c0b7;border-radius:20px;padding:9px 14px;font-size:11px;position:fixed;bottom:14px;right:14px;box-shadow:0 2px 12px #263c3215}.privacy-card{color:#263c32;background:#fffdf8;border:1px solid #b9c0b7;border-radius:12px;width:min(610px,100vw - 36px);max-height:72dvh;padding:24px;position:fixed;bottom:60px;right:18px;overflow-y:auto;box-shadow:0 8px 48px #17261f30}.privacy-card h2{margin:0 0 12px;font-size:23px;line-height:1.2}.privacy-card p,.privacy-card dd{margin:8px 0;font-size:13px;line-height:1.65}.privacy-card h3,.privacy-card dt{margin:16px 0 4px;font-size:13px;font-weight:600}.privacy-card dd{margin-left:0}.privacy-card a{color:#263c32;text-underline-offset:3px;text-decoration:underline}.privacy-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.privacy-actions button{color:#fffdf8;font:inherit;cursor:pointer;background:#263c32;border:1px solid #263c32;border-radius:4px;padding:11px 18px;font-size:12px}.privacy-actions button+button{color:#263c32;background:#fffdf8}.privacy-actions a,.privacy-reset{font:inherit;font-size:12px}.privacy-reset{color:#263c32;cursor:pointer;background:0 0;border:0;padding:6px 0;text-decoration:underline}:is(.privacy-tools button:focus-visible,.privacy-card a:focus-visible){outline-offset:3px;outline:3px solid #937840}@media (max-width:600px){.privacy-card{width:calc(100vw - 24px);padding:20px;bottom:58px;right:12px}.privacy-launch{bottom:12px;right:12px}}@media print{.privacy-tools{display:none}}@media (max-width:600px){.privacy-launch{bottom:76px}.privacy-card{max-height:calc(100dvh - 150px);bottom:122px}}.privacy-tools{border-top:1px solid var(--line);background:#e8e2d6;padding:18px 7% 30px}.privacy-tools .privacy-launch{min-height:44px;box-shadow:none;text-underline-offset:4px;color:var(--ink);background:0 0;border:0;border-radius:0;align-items:center;padding:8px 0;text-decoration:underline;display:inline-flex;position:static}.privacy-tools .privacy-card{width:100%;max-width:850px;max-height:none;box-shadow:none;border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;margin-top:12px;padding:22px 0 0;position:static;overflow:visible}@media (max-width:900px){.privacy-tools{padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}}
