@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff")}:root{font-family:DM Sans,sans-serif;color:#233c33;background:#fcfcf7;font-synthesis:none;font-weight:400;--pine: #123d35;--dark: #0b2c26;--gold: #d8b976;--paper: #fcfcf7;--mist: #edf1e9;--muted: #59695f;--line: #d5ddd2;--page-max: 1520px;--gutter: clamp(20px, 5vw, 88px);--page-inset: max(var(--gutter), calc((100vw - var(--page-max)) / 2));--section-space: clamp(64px, 7vw, 120px);--grid-gap: clamp(28px, 5vw, 88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;min-width:280px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Cormorant Garamond,Georgia,serif;font-weight:500;text-wrap:balance}h1{font-size:clamp(56px,5.2vw,94px);line-height:1;letter-spacing:-.045em}h2{font-size:clamp(44px,4.4vw,72px);line-height:1.06;letter-spacing:-.035em}h3{font-size:clamp(30px,2.6vw,38px);line-height:1.12;letter-spacing:-.025em}p{line-height:1.75;text-wrap:pretty}svg{flex-shrink:0}:focus-visible{outline:3px solid #aa7d2b;outline-offset:5px}.button{background:var(--pine);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid transparent;padding:17px 25px;min-height:54px;font-size:14px;font-weight:500;border-radius:3px;transition:background .2s,border-color .2s}.button:hover{background:#205347}.button.gold{background:var(--gold);color:var(--dark)}.button.gold:hover{background:#e6ca90}.button.outline{background:transparent;color:var(--pine);border-color:#96a697}.button.outline:hover{background:var(--mist)}.icon-button{border:0;background:none;color:inherit;min-width:44px;min-height:44px;display:inline-grid;place-items:center}.text-link{display:inline-flex;align-items:center;gap:12px;border-bottom:1px solid #96a697;padding-bottom:7px;font-size:14px;font-weight:500}.text-link:hover{border-color:var(--pine);color:#866220}button.text-link{border:0;border-bottom:1px solid #96a697;background:none;padding:0 0 7px;color:inherit;text-align:left}.skip-link{position:fixed;top:-100px;z-index:100;background:#fff;padding:16px}.skip-link:focus{top:0}.topline{padding:9px var(--page-inset);background:var(--dark);color:#e9eadb;display:flex;justify-content:space-between;gap:14px;font-size:12px}.topline span,.topline a{display:flex;align-items:center;gap:8px}.header{min-height:100px;display:flex;align-items:center;justify-content:space-between;padding:16px var(--page-inset);background:var(--paper);gap:28px;position:relative;z-index:25}.brand{display:flex;align-items:center;gap:15px;flex-shrink:0}.brand img{width:80px;height:55px;object-fit:contain}.brand>span{font-family:Cormorant Garamond,serif;font-size:29px;line-height:1.05;font-weight:600}.brand small{display:block;font-family:DM Sans,sans-serif;font-size:10px;letter-spacing:1.2px;font-weight:400;margin-top:7px}.nav{display:flex;gap:clamp(20px,2vw,34px);font-size:14px}.nav a{padding:12px 0;border-bottom:1px solid transparent}.nav a:hover{border-color:#ab8b4d}.header-book{min-height:48px;padding:12px 20px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--pine);color:#fff;min-height:clamp(570px,70svh,820px)}.hero-copy{padding:clamp(48px,5vw,90px) clamp(32px,4.5vw,80px) 28px var(--page-inset);display:flex;flex-direction:column;align-items:flex-start;min-width:0}.location{font-size:13px;color:#dbdecb;margin-bottom:clamp(24px,3vw,44px);display:flex;align-items:center;gap:10px}.location span{height:6px;width:6px;flex-shrink:0;border-radius:50%;background:var(--gold)}.hero-copy>p:not(.location){font-size:16px;color:#d1dcd3;max-width:430px;margin:28px 0 32px;line-height:1.85}.hero-foot{display:flex;justify-content:space-between;width:100%;margin-top:auto;padding-top:46px;font-size:11px;color:#bdcbbc;gap:20px}.hero-photo{position:relative;overflow:hidden;width:100%;min-width:0;touch-action:pan-y}.slide-photo{position:absolute;inset:0}.hero-photo img{object-position:50% 60%;-webkit-user-select:none;user-select:none}.slide-overlay{position:absolute;bottom:0;left:0;right:0;padding:70px clamp(22px,2.8vw,50px) 28px;background:linear-gradient(transparent,#08231bdd);display:flex;align-items:end;justify-content:space-between;gap:24px}.slide-overlay>p{font-size:14px;max-width:30ch}.slide-controls{display:flex;align-items:center;gap:14px;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.slide-controls button{border:1px solid #ffffff7a;border-radius:50%;width:44px;height:44px;background:#123d3522;color:#fff;display:grid;place-items:center;transition:background .2s}.slide-controls button:hover{background:#ffffff30}.booking-strip{display:grid;grid-template-columns:1.15fr 1fr 1fr .7fr 1.35fr;align-items:center;gap:clamp(16px,2vw,30px);padding:30px var(--page-inset);border-bottom:1px solid var(--line);background:#fff}.booking-intro{display:flex;gap:14px;align-items:center}.booking-intro b,.booking-intro span{display:block;font-size:13px;line-height:1.5}.booking-intro b{font-weight:500}.booking-intro span{color:var(--muted);margin-top:4px}.booking-strip label{min-width:0;font-size:12px;border-left:1px solid var(--line);padding-left:22px;color:var(--muted)}.booking-strip input,.booking-strip select{display:block;border:0;border-radius:0;background:#fff;margin-top:8px;color:var(--pine);font-size:15px;width:100%;min-width:0;padding:0;min-height:24px}.booking-strip .button{padding-inline:18px}.section{width:100%;padding:var(--section-space) var(--page-inset)}.section>*{min-width:0}.small-title{font-size:13px;display:block;margin-bottom:20px;color:#796538}.welcome{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--grid-gap);align-items:center}.welcome-photo{position:relative;width:100%;padding:0 15% 11% 0;margin:0}.welcome-primary{width:100%;aspect-ratio:4 / 4.8;border-radius:50% 50% 4px 4px;overflow:hidden}.welcome-primary img{object-position:50% 61%}.welcome-detail{position:absolute;width:43%;aspect-ratio:4 / 5;bottom:0;right:0;border:9px solid var(--paper);background:var(--paper);border-radius:4px;overflow:hidden}.welcome-detail img{object-position:50% 65%}.welcome-photo figcaption{position:absolute;bottom:1%;left:0;font-size:12px;color:var(--muted)}.welcome-copy{max-width:600px}.welcome-copy p{max-width:51ch;margin-top:24px;font-size:16px;color:var(--muted)}.comfort-row{display:flex;gap:clamp(22px,3vw,48px);margin:32px 0;padding:26px 0;border-block:1px solid var(--line);font-size:13px}.comfort-row span{display:flex;align-items:center;gap:10px}.comfort-row svg{width:22px;height:22px;stroke-width:1.4}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:44px}.section-heading p{font-size:15px;max-width:370px;color:var(--muted)}.rooms-section{background:var(--mist)}.rooms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,32px)}.room-card{background:var(--paper);border-radius:5px;overflow:hidden;display:flex;flex-direction:column}.room-card>a{display:block;aspect-ratio:5 / 4.6;overflow:hidden}.room-card>a img{object-position:50% 62%;transition:transform .5s}.room-card>a:hover img{transform:scale(1.035)}.room-copy{padding:clamp(22px,2vw,32px);flex:1;display:flex;flex-direction:column}.room-facts{display:flex;gap:16px;flex-wrap:wrap;margin:18px 0;font-size:12px;color:#526356}.room-facts span{display:flex;align-items:center;gap:7px}.room-copy>p{font-size:14px;color:var(--muted);margin-bottom:24px}.room-bottom{border-top:1px solid var(--line);margin-top:auto;padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:12px}.room-bottom strong{font-size:26px;font-weight:500;font-variant-numeric:tabular-nums}.room-bottom span{font-size:12px;color:var(--muted)}.room-bottom small{display:block;font-size:11px;margin-top:5px;color:var(--muted)}.round-link{width:46px;height:46px;flex-shrink:0;border-radius:50%;border:1px solid #aabbab;background:transparent;color:var(--pine);display:grid;place-items:center;transition:background .2s,color .2s}.round-link:hover{background:var(--pine);color:#fff}.round-link:disabled{opacity:.35}.round-link:disabled:hover{background:transparent;color:inherit}.contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap);background:var(--pine);color:#fff}.contact .small-title{color:var(--gold)}.contact p{font-size:15px;color:#c2cfc5;margin-top:26px;max-width:440px}.contact>div:last-child{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:20px}.contact-phone{font-family:Cormorant Garamond,serif;font-size:clamp(34px,3.5vw,56px);white-space:nowrap}.contact-phone+.contact-phone{margin-top:-12px}.social-links{display:flex;flex-wrap:wrap;gap:24px;padding-top:16px;border-top:1px solid #51756b;width:100%}.social-links a{display:inline-flex;align-items:center;gap:7px;padding-block:8px;font-size:14px}.social-links a:hover{color:var(--gold)}.contact .button{margin-top:14px}.contact .text-link{margin-top:25px;color:#e6d6b7;border-color:#708c78}.contact-email{display:flex;align-items:center;gap:10px;overflow-wrap:anywhere;font-size:15px}.contact-property{width:min(100%,550px);height:auto;aspect-ratio:2.16;border-radius:3px;margin-top:30px}.contact>div:last-child>p{margin-top:4px;font-size:13px}.footer{padding:32px var(--page-inset);display:flex;align-items:center;justify-content:space-between;gap:28px;font-size:12px;color:var(--muted);background:var(--mist)}.footer>div{display:flex;flex-direction:column;gap:8px}.footer strong{font-weight:500;color:var(--pine)}.footer nav{display:flex;gap:22px;flex-wrap:wrap}.footer button{background:none;border:0;padding:0;color:inherit;font-size:inherit}.mobile-actions{display:none}@media(min-width:2000px){.hero-copy{padding-right:100px}}@media(max-width:1100px){.brand>span{font-size:25px}.brand img{width:64px;height:47px}.header{gap:20px}.nav{gap:19px;font-size:13px}.header-book{padding:12px 15px;font-size:13px}.hero-copy{padding-right:30px}.hero-copy>p:not(.location){font-size:15px}.hero-foot{flex-direction:column;gap:5px}.booking-strip{grid-template-columns:1fr 1fr .7fr 1.3fr}.booking-intro{display:none}.booking-strip label:first-of-type{border-left:0;padding-left:0}.comfort-row{gap:20px}.comfort-row span{flex-direction:column;align-items:flex-start}.room-copy{padding:23px}.section-heading p{max-width:300px}}@media(max-width:900px){.header{min-height:84px}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px var(--gutter);box-shadow:0 15px 20px #0001;border-top:1px solid var(--line)}.nav.open{display:flex;flex-direction:column;gap:3px}.menu-toggle{display:grid}.header-book{margin-left:auto}.hero{min-height:570px}.hero h1{font-size:clamp(43px,5.7vw,56px)}.hero-copy{padding-top:48px}.slide-overlay{align-items:flex-start;flex-direction:column;gap:15px}.welcome{gap:36px}.welcome h2{font-size:46px}.welcome-copy p{font-size:15px}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.room-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.room-card:last-child>a{aspect-ratio:auto;min-height:360px}.section-heading{align-items:flex-start;flex-direction:column;gap:20px}.section-heading p{max-width:48ch}.footer{flex-wrap:wrap}}@media(max-width:700px){:root{--gutter: clamp(20px, 5.5vw, 34px);--section-space: 64px}html{scroll-padding-bottom:90px}h1,.hero h1{font-size:clamp(43px,10.7vw,70px)}h2{font-size:clamp(40px,9.2vw,55px)}h3{font-size:33px}.topline{font-size:10px;padding-block:9px}.topline span,.topline a{gap:5px}.topline svg{width:11px}.header{min-height:80px;padding-block:15px;gap:10px}.brand{gap:10px}.brand>span{font-size:clamp(21px,5.5vw,27px)}.brand img{width:52px;height:39px}.brand small{font-size:9px;letter-spacing:.7px}.header-book{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:44px var(--gutter) 42px}.location{margin-bottom:25px;font-size:12px}.hero-copy>p:not(.location){max-width:42ch;font-size:14px;margin:24px 0 28px}.hero-foot{display:none}.hero-photo{aspect-ratio:5 / 4.7;min-height:320px}.hero-photo img{object-position:50% 66%}.slide-overlay{flex-direction:row;align-items:end;gap:15px;padding:60px var(--gutter) 22px}.slide-overlay>p{font-size:12px;max-width:22ch}.slide-controls{gap:8px;font-size:11px}.slide-controls button{width:40px;height:40px}.booking-strip{padding-block:24px;grid-template-columns:1fr 1fr;gap:20px}.booking-strip label{padding:0;border:0}.booking-strip input,.booking-strip select{font-size:16px}.booking-strip .strip-guests{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px}.booking-strip select{width:130px;margin:0}.booking-strip>.button{grid-column:1/-1}.welcome{grid-template-columns:1fr;gap:40px}.welcome-photo{max-width:480px;margin-inline:auto}.welcome-primary{aspect-ratio:4 / 4.5}.welcome-detail{border-width:7px}.welcome-photo figcaption{font-size:11px}.welcome h2{font-size:clamp(42px,10.5vw,57px)}.welcome-copy{max-width:none}.welcome-copy p{font-size:15px}.comfort-row{gap:25px;justify-content:space-between;margin:25px 0;padding:23px 0}.comfort-row span{flex-direction:row;align-items:center;gap:8px;font-size:12px}.small-title{font-size:12px;margin-bottom:16px}.section-heading{margin-bottom:30px}.section-heading p{font-size:14px}.rooms-grid{grid-template-columns:1fr;gap:28px}.room-card:last-child{grid-column:auto;display:flex}.room-card>a,.room-card:last-child>a{aspect-ratio:5 / 4.6;min-height:0}.room-copy{padding:25px}.contact{grid-template-columns:1fr;gap:40px}.contact-email{font-size:13px}.footer{align-items:flex-start;flex-direction:column;padding-block:30px 105px;gap:25px}.footer nav{gap:20px}.mobile-actions{display:grid;grid-template-columns:.65fr 1.35fr;position:fixed;bottom:0;left:0;right:0;background:#fcfcf7f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;border-top:1px solid var(--line);padding:10px 15px calc(10px + env(safe-area-inset-bottom));gap:10px}.mobile-actions>a,.mobile-actions>button{display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;min-height:46px;border-radius:3px}.mobile-actions>a{border:1px solid #b4c1b4}.mobile-actions>button{background:var(--pine);color:#fff;border:0}}@media(max-width:360px){.brand img{width:44px}.brand>span{font-size:20px}.slide-overlay{flex-direction:column;align-items:flex-start}.comfort-row{gap:16px}.comfort-row span{flex-direction:column;align-items:flex-start}.contact-phone{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}.admin-preview-banner{position:fixed;bottom:12px;left:50%;transform:translate(-50%);z-index:9999;background:#123d35;color:#fff;padding:12px 22px;border:1px solid #d8b976;border-radius:8px;font:13px DM Sans}@media(max-width:700px){.booking-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-strip input[type=date]{max-width:100%;min-height:48px;-webkit-appearance:none;appearance:none}.booking-strip label{min-width:0}.nav.open{max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain}.nav a{min-height:44px;display:flex;align-items:center}.button{max-width:100%;white-space:normal;overflow-wrap:anywhere;padding-inline:18px}.footer nav{flex-wrap:wrap}.footer a,.footer button{min-height:44px;display:inline-flex;align-items:center}.contact-phone{font-size:clamp(25px,8vw,38px);overflow-wrap:anywhere}.contact-email,.contact-address{overflow-wrap:anywhere}.comfort-row{gap:12px;flex-wrap:wrap}.mobile-actions{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}.admin-preview-banner{width:calc(100% - 24px);max-width:420px;text-align:center;bottom:90px}}@media(max-width:380px){.booking-strip{grid-template-columns:minmax(0,1fr)}.room-copy{padding:22px 18px}.topline{gap:8px;flex-wrap:wrap}}.dorm-card{display:grid;grid-template-columns:minmax(230px,.55fr) minmax(0,1.45fr);gap:clamp(28px,4vw,60px);margin-top:36px;background:#dfe7da;border-radius:5px;overflow:hidden}.dorm-card>img{min-height:310px;max-height:400px;object-position:center 62%}.dorm-copy{padding:38px 38px 34px 0;align-self:center}.dorm-copy .small-title{margin-bottom:12px}.dorm-copy p{font-size:15px;max-width:62ch;margin-top:16px;color:#526153}.dorm-copy>div{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-top:25px;font-size:13px}.dorm-copy strong{font-size:28px;font-weight:500}.dorm-copy>small{display:block;margin-top:16px;font-size:12px;color:#526153}.carousel{min-width:0}.carousel-track{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;border-radius:5px;padding-bottom:1px}.carousel-track::-webkit-scrollbar{display:none}.experience-card{flex:0 0 calc((100% - 56px) / 3);min-width:0;scroll-snap-align:start;overflow:hidden;display:flex;flex-direction:column}.experience-card>img,.yoga-image{aspect-ratio:4 / 3;height:auto;width:100%;border-radius:5px}.experience-card>img{object-position:center}.experience-copy{padding:26px 0 2px;flex:1;display:flex;flex-direction:column}.experience-copy h3{font-size:35px}.experience-copy>p{font-size:14px;color:var(--muted);margin-top:13px;margin-bottom:22px;max-width:42ch}.activity-rate{display:flex;align-items:baseline;gap:9px;margin:auto 0 20px;font-size:12px;color:var(--muted)}.activity-rate strong{font-size:25px;font-weight:500;color:var(--pine)}.experience-copy .text-link{font-size:14px;align-self:flex-start}.yoga-image{background:#e7ecdf;color:#526c43;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;font-size:14px}.carousel-foot{display:flex;align-items:center;justify-content:space-between;margin-top:32px;padding-top:23px;border-top:1px solid var(--line);gap:22px;font-size:13px;color:var(--muted)}.carousel-foot>div{display:flex;gap:11px}.carousel-status{display:flex;gap:12px;align-items:center;min-width:0}.carousel-progress{width:120px;height:2px;background:var(--line);overflow:hidden}.carousel-progress>span{display:block;width:100%;height:100%;transform-origin:left;background:var(--pine);transition:transform .2s}.section-note{font-size:12px;color:var(--muted);margin-top:24px}.packages-section{background:var(--pine);color:#fff;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:var(--grid-gap);align-items:center}.package-intro .small-title{color:var(--gold)}.package-intro>p{font-size:15px;color:#c9d5c8;line-height:1.8;margin-top:25px;max-width:36ch}.package-card{display:grid;grid-template-columns:45% minmax(0,1fr);flex:0 0 100%;background:#f0f2e7;color:var(--pine);overflow:hidden;border-radius:5px}.package-photo{position:relative;min-height:420px;width:100%}.package-photo img{position:absolute;inset:0;object-position:center 63%}.package-copy{padding:clamp(28px,3vw,46px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.package-card p{font-size:14px;color:var(--muted);margin-top:20px}.package-card .button{margin-top:28px;font-size:13px;padding:14px 17px;gap:12px}.package-carousel .carousel-foot{display:none}.facilities-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.facilities-grid>div{display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center;gap:20px;padding:36px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.facilities-grid svg{width:30px;height:30px}.coming-soon{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:32px}.coming-soon>div{padding:28px;background:var(--mist);display:flex;align-items:center;gap:18px;border-radius:4px}.coming-soon svg{width:30px;height:30px}.coming-soon b,.coming-soon small{display:block}.coming-soon b{font-weight:500;font-size:16px}.coming-soon small{font-size:12px;color:var(--muted);margin-top:6px}.coming-soon em{margin-left:auto;background:#dce4d4;border-radius:20px;padding:8px 12px;white-space:nowrap;font-size:11px;font-style:normal}.gallery-section{padding-top:24px}.gallery-filters{display:flex;gap:4px;border:1px solid var(--line);border-radius:50px;padding:5px;flex-shrink:0}.gallery-filters button{background:transparent;border:0;border-radius:30px;font-size:13px;color:var(--pine);padding:12px 19px;min-height:44px}.gallery-filters button[aria-pressed=true]{background:var(--pine);color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gallery-photo{padding:0;border:0;border-radius:4px;overflow:hidden;aspect-ratio:4 / 4.5;position:relative;background:var(--mist)}.gallery-photo:nth-child(3n+2){aspect-ratio:auto;margin-top:36px;margin-bottom:-36px}.gallery-photo img{object-position:center 63%;transition:transform .5s}.gallery-photo>span{position:absolute;right:16px;bottom:16px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fcfcf7ed;color:var(--pine);transition:background .2s}.gallery-photo:hover img{transform:scale(1.035)}.gallery-photo:hover>span{background:var(--gold)}.gallery-more{display:flex;margin:70px auto 0}.gallery-section>.section-note{text-align:center}.explore-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap);background:#e8eee4}.explore-section>div>p{font-size:16px;max-width:45ch;color:var(--muted);margin:26px 0}.explore-list article{border-top:1px solid #cbd4c7;padding:28px 0}.explore-list article:first-child{padding-top:0;border:0}.explore-list article:last-child{padding-bottom:0}.explore-list span{font-size:12px;color:#59684b}.explore-list h3{margin:10px 0;font-size:35px}.explore-list p{font-size:14px;color:var(--muted);max-width:45ch}.faq-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:var(--grid-gap)}.faq-section>div>p{font-size:15px;color:var(--muted);margin:24px 0;max-width:32ch}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:15px;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary svg{transition:transform .2s}.faq-list details[open] summary svg{transform:rotate(45deg)}.faq-list details p{font-size:14px;color:var(--muted);padding:0 28px 25px 0;line-height:1.85}@media(max-width:1100px){.dorm-card{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:30px}.dorm-copy{padding:30px 30px 30px 0}.dorm-copy>div{align-items:flex-start;flex-direction:column;gap:14px}.experience-card{flex-basis:calc((100% - 28px) / 2.35)}.packages-section{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:32px}.package-card{grid-template-columns:1fr}.package-photo{height:auto;min-height:0;aspect-ratio:5 / 3.5}.package-copy{padding:30px}.coming-soon>div{flex-wrap:wrap;padding:25px;gap:15px}.coming-soon em{margin-left:45px}}@media(max-width:900px){.facilities-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.facilities-grid>div{padding:26px 10px;font-size:12px}.gallery-grid{gap:15px}.gallery-photo:nth-child(3n+2){margin-block:25px -25px}}@media(max-width:700px){.dorm-card{grid-template-columns:1fr;gap:0;margin-top:30px}.dorm-card>img{aspect-ratio:5 / 3.6;min-height:0;height:auto;max-height:none}.dorm-copy{padding:28px 25px}.dorm-copy h3{font-size:34px}.dorm-copy p{font-size:14px}.dorm-copy>small{font-size:11px}.carousel-track{gap:18px}.experience-card{flex-basis:87%}.experience-copy{padding-top:23px}.experience-copy h3{font-size:33px}.experience-copy>p{font-size:14px}.experience-copy .text-link{font-size:13px}.carousel-foot{font-size:12px;margin-top:26px}.carousel-progress{width:56px}.carousel-status{gap:9px}.carousel-status>span:last-child{display:none}.packages-section{grid-template-columns:1fr;gap:32px}.package-intro h2 br{display:none}.package-intro>p{max-width:45ch}.package-card{grid-template-columns:1fr}.package-photo{aspect-ratio:5 / 3.8}.package-copy{padding:28px 25px}.facilities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.facilities-grid>div{padding:28px 15px;font-size:13px}.coming-soon{grid-template-columns:1fr;gap:16px;margin-top:25px}.coming-soon>div{flex-wrap:nowrap;padding:22px 18px;gap:12px}.coming-soon small{display:none}.coming-soon b{font-size:15px}.coming-soon em{margin-left:auto;font-size:10px;padding:7px 10px}.gallery-section{padding-top:5px}.gallery-filters{align-self:flex-start}.gallery-filters button{padding:10px 15px;font-size:12px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-photo{aspect-ratio:3 / 4}.gallery-photo:nth-child(3n+2){aspect-ratio:3 / 4;margin:0}.gallery-photo>span{width:32px;height:32px;bottom:10px;right:10px}.gallery-photo>span svg{width:18px}.gallery-more{margin-top:30px}.explore-section{grid-template-columns:1fr;gap:38px}.explore-section>div>p{font-size:15px}.explore-list article{padding:25px 0}.faq-section{grid-template-columns:1fr;gap:35px}.faq-section h2 br{display:none}.faq-section>div>p{max-width:45ch}.faq-list summary{padding:23px 0;font-size:14px}.section-note{font-size:11px}}@media(max-width:360px){.gallery-filters button{padding-inline:10px;font-size:11px}}.modal{color:var(--pine);background:#fcfcf7;border:0;border-radius:10px;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:28px;box-shadow:0 20px 100px #0004;overscroll-behavior:contain}.modal::backdrop{background:#051c18b8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.modal-top h2{font-size:38px;letter-spacing:-.7px}.modal-top>.icon-button{flex-shrink:0;border:1px solid var(--line);border-radius:50%}.dialog-intro{color:var(--muted);font-size:13px;margin-bottom:23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;justify-content:space-between;font-size:12px;font-weight:500;min-width:0}@media(max-width:360px){.form-grid{grid-template-columns:minmax(0,1fr)}}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;border:1px solid #bcc7ba;border-radius:4px;background:#fff;color:var(--pine);padding:12px 13px;margin-top:8px;font-size:14px;min-width:0}.form-grid textarea{resize:vertical;min-height:85px}.form-grid .wide{grid-column:1/-1}.optional{color:var(--muted);font-size:11px;font-weight:400}.consent{display:flex;align-items:flex-start;gap:10px;margin:22px 0;font-size:11px;line-height:1.65}.consent input{accent-color:var(--pine);margin:3px 0 0;width:17px;height:17px;flex-shrink:0}.button.full{width:100%}.form-footnote{font-size:10px;color:var(--muted);text-align:center;margin-top:11px}.form-error{background:#fbebdf;color:#8b2a16;font-size:12px;padding:12px;margin-bottom:15px;border-radius:4px}.review-mark{display:flex;gap:10px;align-items:center;color:var(--pine);font-weight:500;margin:20px 0 12px}.enquiry-review>p{font-size:12px;color:var(--muted)}.enquiry-review pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:12px;line-height:1.75;background:#edf1e9;padding:18px;border-radius:5px;max-height:340px;overflow:auto}.text-button{background:none;border:0;color:var(--pine);font-size:12px;display:block;margin:15px auto;padding:8px;text-decoration:underline}.room-dialog{width:min(850px,calc(100vw - 32px))}.room-dialog-photo{height:400px;position:relative;overflow:hidden;border-radius:4px}.room-dialog-photo>img{object-position:center 66%}.room-image-controls{position:absolute;bottom:15px;right:15px;display:flex;align-items:center;border-radius:30px;background:#102c26dc;color:#fff;font-size:12px}.room-detail-content>p:first-child{font-size:14px;color:var(--muted);margin-top:25px;max-width:650px}.detail-facts{display:flex;gap:24px;flex-wrap:wrap;margin:20px 0;font-size:12px}.detail-facts>span{display:flex;align-items:center;gap:8px}.detail-facts svg{width:18px}.room-amenities{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;gap:16px;font-size:11px}.room-amenities>span{display:flex;align-items:center;gap:8px}.stay-rules{display:flex;gap:13px 25px;flex-wrap:wrap;font-size:11px;margin:24px 0 15px}.stay-rules>span{display:flex;align-items:center;gap:7px}.muted{color:var(--muted);font-size:12px}.detail-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px;font-size:11px}.detail-bottom strong{font-size:26px;font-weight:500}.detail-bottom small{display:block;color:var(--muted);margin-top:4px}.lightbox{width:min(1100px,calc(100vw - 32px));background:#082820;color:#fff;padding:20px}.lightbox .modal-top h2{font-family:DM Sans,sans-serif;font-size:14px;letter-spacing:0}.lightbox .modal-top>.icon-button{border-color:#486453}.lightbox-frame{position:relative;height:min(74dvh,850px)}.lightbox-frame img{object-fit:contain}.lightbox-prev,.lightbox-next{position:absolute;top:50%;border-radius:50%;background:#123d35d9;border:1px solid #b6c2b5}.lightbox-prev{left:0}.lightbox-next{right:0}.lightbox-count{text-align:center;font-size:12px;margin-top:15px}.privacy-copy p{font-size:13px;color:var(--muted);margin-top:18px}.privacy-copy a{text-decoration:underline;overflow-wrap:anywhere}.modal{padding:30px}.dialog-intro,.privacy-copy p{font-size:14px}.form-grid label{font-size:13px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px}.consent{font-size:12px}.form-footnote{font-size:11px}.room-dialog-photo{height:auto;aspect-ratio:16 / 10}.room-detail-content>p:first-child,.muted{font-size:14px}.detail-facts,.room-amenities,.stay-rules{font-size:13px}@media(max-width:700px){.modal{padding:24px 20px;max-height:calc(100dvh - 24px);width:calc(100vw - 20px);border-radius:7px}.modal-top h2{font-size:32px}.form-grid{gap:16px 12px}.form-grid input,.form-grid select,.form-grid textarea{padding:12px 10px}.room-dialog-photo{aspect-ratio:4 / 4.2}.detail-facts{gap:14px;font-size:12px}.room-amenities{grid-template-columns:1fr 1fr;font-size:12px}.detail-bottom{align-items:flex-start;flex-direction:column}.detail-bottom>.button{width:100%}.lightbox-frame{height:68dvh}.lightbox{padding:17px 12px}}.modal{padding:0;max-width:calc(100% - 32px);max-height:calc(var(--dialog-height,100dvh) - 40px);overflow:hidden}.modal[open]{display:flex;flex-direction:column}.modal-top{flex:none;margin:0;padding:22px 28px 16px;border-bottom:1px solid var(--line)}.modal-top h2{min-width:0;overflow-wrap:anywhere}.modal-body{min-height:0;min-width:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 28px 28px;scroll-padding-block:20px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid input,.form-grid select,.form-grid textarea{max-width:100%;min-height:48px}.lightbox .modal-top{border-color:#486453}.lightbox .modal-body{padding:16px}@media(max-width:700px){.modal{inset:0;margin:0;width:100%;max-width:100%;height:var(--dialog-height,100dvh);max-height:var(--dialog-height,100dvh);border-radius:0}.modal-top{padding:calc(12px + env(safe-area-inset-top)) 20px 12px;gap:12px}.modal-top h2{font-size:32px}.modal-body{flex:1;padding:20px 20px calc(28px + env(safe-area-inset-bottom))}.form-grid{grid-template-columns:minmax(0,1fr);gap:18px}.form-grid label{font-size:14px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px;padding:13px 12px}.form-grid input[type=date]{-webkit-appearance:none;appearance:none;min-height:50px}.consent{font-size:13px;gap:12px}.consent input{width:22px;height:22px}.enquiry-review pre{max-height:none;font-size:14px;margin-block:20px}.enquiry-review>p,.form-error{font-size:14px}.text-button{min-height:44px;font-size:14px}.lightbox-frame{height:calc(var(--dialog-height,100dvh) - 160px);min-height:140px}.lightbox .modal-top h2{font-size:15px}.gallery-filters{max-width:100%;flex-wrap:wrap;border-radius:16px}.room-amenities{grid-template-columns:repeat(2,minmax(0,1fr))}.room-amenities>span{min-width:0;overflow-wrap:anywhere}.coming-soon>div{flex-wrap:wrap}}
