:root{--ink:#17201c;--moss:#566354;--sage:#aab4a3;--cream:#f4f0e8;--paper:#fbfaf6;--rust:#b9603b;--line:#17201c29}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:2px}.hero :focus-visible,.mobile-nav :focus-visible,.direct-booking :focus-visible,.booking-section :focus-visible,.location-copy :focus-visible,footer :focus-visible{outline-color:#fff}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.hero{color:#fff;background:#142019;flex-direction:column;min-height:94vh;display:flex;position:relative;overflow:hidden}.hero-image{object-fit:cover;object-position:center 56%;z-index:0}.hero:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#0c1411a8,#0c141114 68%),linear-gradient(#0000 55%,#0c141161);position:absolute;inset:0}.hero:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle at 70% 34%,#0000 0 20%,#0000001f 75%);position:absolute;inset:0}.nav{z-index:2;border-bottom:1px solid #ffffff40;justify-content:space-between;align-items:center;height:92px;padding:0 5vw;display:flex;position:relative}.brand{letter-spacing:.22em;align-items:center;gap:13px;font-size:12px;font-weight:600;display:flex}.brand-mark{border:1px solid;border-radius:50% 50% 46% 46%;place-items:center;width:35px;height:35px;font-family:Newsreader,serif;font-size:18px;display:grid}.nav-links{gap:40px;font-size:13px;display:flex}.nav-links a{opacity:.8;transition:opacity .2s}.nav-links a:hover{opacity:1}.nav-book{color:inherit;cursor:pointer;text-transform:uppercase;letter-spacing:.13em;background:0 0;border:0;border-bottom:1px solid #fff9;padding:8px 0;font-size:11px}.nav-toggle{cursor:pointer;background:0 0;border:0;width:46px;padding:12px 0 12px 18px;display:none}.nav-toggle i{background:#fff;height:1px;transition:transform .25s,opacity .2s;display:block}.nav-toggle i+i{margin-top:6px}.nav-toggle[aria-expanded=true] i:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] i:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] i:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c1411f7;border-bottom:1px solid #ffffff29;padding:10px 5vw 26px;display:none;position:absolute;inset:92px 0 auto}.mobile-nav a{border-bottom:1px solid #ffffff1f;padding:18px 0;font-size:15px;display:block}.mobile-nav[hidden]{display:none}.mobile-nav a:last-child{border-bottom:0}.mobile-nav-book{text-transform:uppercase;letter-spacing:.13em;color:var(--sage);margin-top:12px;font-size:11px}.hero-content{z-index:1;width:min(880px,90%);margin:auto 5vw;padding:70px 0 88px;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.24em;margin:0 0 24px;font-size:10px;font-weight:600}.eyebrow.dark{color:var(--moss)}h1,h2,h3{margin:0;font-family:Newsreader,Georgia,serif;font-weight:300}.hero h1{letter-spacing:-.052em;font-size:clamp(62px,8.3vw,122px);line-height:.82}.hero-copy{opacity:.9;max-width:520px;margin:37px 0;font-family:Manrope,sans-serif;font-size:17px;line-height:1.75}.hero-cta{letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid #ffffffa6;justify-content:space-between;width:242px;padding:13px 0;font-size:12px;display:inline-flex}.hero-facts{letter-spacing:.09em;text-transform:uppercase;z-index:1;align-items:center;gap:20px;padding:0 5vw 28px;font-size:11px;display:flex;position:relative}.hero-facts i{opacity:.6;background:#fff;border-radius:50%;width:3px;height:3px}.sample-badge{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.06em;background:#0f1814ad;padding:8px 11px;font-size:9px;position:absolute;bottom:20px;right:20px}.intro{grid-template-columns:.28fr 1.1fr .72fr;align-items:start;gap:5vw;min-height:670px;padding:135px 7vw;display:grid}.intro-number{color:var(--rust);border-top:1px solid var(--rust);width:50px;padding-top:10px;font-size:11px}.intro h2,.amenities h2,.booking-section h2,.location h2,.section-heading h2,.direct-booking h2{letter-spacing:-.045em;font-size:clamp(50px,6.1vw,88px);line-height:.94}.intro-copy{padding-top:47px}.intro-copy p{color:#536058;margin:0 0 23px;font-family:Manrope,sans-serif;font-size:14px;line-height:1.8}.chalet-tour,.experience-guide,.faq{padding:145px 7vw}.chalet-tour{background:#e8e4d9}.section-heading{grid-template-columns:1fr 1.25fr .75fr;align-items:start;gap:4vw;margin-bottom:75px;display:grid}.section-heading>p:last-child{color:#607067;margin:48px 0 0;font-size:13px;line-height:1.8}.property-facts{border-top:1px solid #c9c5ba;border-bottom:1px solid #c9c5ba;grid-template-columns:repeat(4,1fr);display:grid}.property-facts article{border-right:1px solid #c9c5ba;flex-direction:column;gap:8px;padding:34px 3vw;display:flex}.property-facts article:last-child{border-right:0}.property-facts strong{color:var(--rust);font-family:Newsreader,serif;font-size:48px;font-weight:300}.property-facts span{letter-spacing:.15em;text-transform:uppercase;font-size:9px}.room-guide{grid-template-columns:repeat(3,1fr);gap:4vw;margin-top:65px;display:grid}.room-guide article>span,.experience-grid article>span{color:var(--rust);letter-spacing:.17em;text-transform:uppercase;font-size:9px}.room-guide h3,.experience-grid h3{margin:18px 0 12px;font-size:34px}.room-guide p,.experience-grid p{color:#647067;font-family:Manrope,sans-serif;font-size:12px;line-height:1.75}.detail-note{color:#7a817c;border-top:1px solid #c9c5ba;margin:55px 0 0;padding-top:16px;font-size:10px}.imagery-note{color:#7a817c;letter-spacing:.05em;margin:14px 2vw 0;font-size:10px}.gallery{grid-template-columns:1.65fr 1fr;gap:12px;min-height:760px;padding:0 2vw;display:grid}.gallery-main,.gallery-small{background-position:50%;background-size:cover;position:relative;overflow:hidden}.gallery-main{background:#263229}.gallery-side{grid-template-rows:1fr 1fr;gap:12px;display:grid}.gallery-image{object-fit:cover;object-position:center}.gallery-image-hot-tub{object-position:left center}.gallery-image-earnslaw{object-position:center 55%}.gallery-main:after,.gallery-small:after{content:"";background:linear-gradient(#0000,#00000085);position:absolute;inset:55% 0 0}.gallery span{z-index:1;color:#fff;letter-spacing:.14em;text-transform:uppercase;font-size:11px;position:absolute;bottom:24px;left:26px}.view-notes{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:0 2vw;display:grid}.view-notes article{border-right:1px solid var(--line);padding:48px 3vw 54px}.view-notes article:last-child{border-right:0}.view-notes article>span{color:var(--rust);letter-spacing:.18em;font-size:10px}.view-notes h3{margin:18px 0 11px;font-size:36px}.view-notes p{color:#68756c;max-width:380px;margin:0;font-family:Manrope,sans-serif;font-size:12px;line-height:1.7}.amenities{grid-template-columns:.85fr 1.15fr;gap:9vw;padding:150px 7vw 170px;display:grid}.amenity-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.amenity-grid article{border-bottom:1px solid var(--line);gap:24px;padding:27px 8px;display:flex}.amenity-grid article>span{color:var(--rust);min-width:28px;font-size:20px}.amenity-grid strong{margin-bottom:7px;font-size:13px;display:block}.amenity-grid p{color:#758077;margin:0;font-size:11px;line-height:1.5}.direct-booking{background:var(--ink);color:#fff;grid-template-columns:.9fr 1.1fr;gap:10vw;padding:120px 7vw;display:grid}.benefit-list{border-top:1px solid #ffffff2e}.benefit-list article{border-bottom:1px solid #ffffff2e;grid-template-columns:50px 1fr;gap:20px;padding:22px 0;display:grid}.benefit-list span{color:var(--rust);letter-spacing:.14em;font-size:10px}.benefit-list strong{font-size:13px;font-weight:400}.location{background:var(--ink);color:#fff;grid-template-columns:1.15fr .85fr;min-height:760px;display:grid}.location-image{background:#142019;position:relative;overflow:hidden}.location-photo{object-fit:cover;object-position:center}.location-image:after{content:"";pointer-events:none;background:#141f1a38;position:absolute;inset:0}.location-card{z-index:1;background:var(--paper);color:var(--ink);flex-direction:column;width:210px;padding:26px;display:flex;position:absolute;bottom:7%;left:6%}.location-card small{text-transform:uppercase;letter-spacing:.12em;color:var(--moss);font-size:8px}.location-card strong{margin-top:18px;font-family:Newsreader,serif;font-size:47px;font-weight:300}.location-card span{color:#68756c;font-size:10px}.location-copy{flex-direction:column;justify-content:center;padding:100px 8vw;display:flex}.location-copy>p:not(.eyebrow){color:#ffffffa8;max-width:400px;margin:35px 0;line-height:1.7}.location-copy ul{border-top:1px solid #ffffff24;margin:15px 0 0;padding:0;list-style:none}.location-copy li{border-bottom:1px solid #ffffff24;grid-template-columns:40px 1fr auto;padding:17px 0;font-size:12px;display:grid}.location-copy li span{color:var(--rust)}.location-copy li b{opacity:.55;font-weight:400}.location-copy>p.travel-note{color:#ffffff80;letter-spacing:.05em;max-width:none;margin:22px 0 0;font-size:10px}.experience-guide{background:var(--paper)}.experience-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.experience-grid article{border-right:1px solid var(--line);padding:38px 2.4vw 42px}.experience-grid article:last-child{border-right:0}.booking-section{background:var(--cream);grid-template-columns:.85fr 1.15fr;gap:9vw;padding:145px 8vw;display:grid}.booking-intro>p:not(.eyebrow){color:#607067;max-width:430px;margin:30px 0 45px;font-size:14px;line-height:1.8}.opening-note{border-top:1px solid var(--line);max-width:360px;padding-top:20px}.opening-note span{color:var(--rust);text-transform:uppercase;letter-spacing:.12em;font-size:10px}.opening-note p{color:#768078;margin:12px 0 0;font-size:11px;line-height:1.6}.booking-form{background:var(--paper);align-self:center;padding:42px;box-shadow:0 28px 70px #28302b17}.form-heading{justify-content:space-between;margin-bottom:32px;display:flex}.form-heading span{font-family:Newsreader,serif;font-size:25px}.form-heading small{color:#7e8981;text-transform:uppercase;letter-spacing:.12em;align-self:center;font-size:9px}.form-grid{grid-template-columns:1fr 1fr;gap:20px 16px;display:grid}.form-grid label{text-transform:uppercase;letter-spacing:.12em;color:#617067;font-size:9px}.form-grid label.full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;color:var(--ink);text-transform:none;letter-spacing:0;background:0 0;border:1px solid #d6d7d0;outline:none;margin-top:9px;padding:14px 13px;font-size:13px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--moss)}.form-grid textarea{resize:vertical;min-height:86px}.form-extras{border-top:1px solid #e2e3dd;margin-top:22px}.form-extras summary{cursor:pointer;text-transform:uppercase;letter-spacing:.12em;color:#617067;align-items:center;gap:10px;padding:18px 0 0;font-size:9px;list-style:none;display:flex}.form-extras summary::-webkit-details-marker{display:none}.form-extras summary span{text-transform:none;letter-spacing:0;color:#8b958c;font-size:11px}.form-extras summary:after{content:"+";color:var(--rust);margin-left:auto;font-family:Newsreader,serif;font-size:20px;line-height:1}.form-extras[open] summary:after{content:"−"}.form-extras .form-grid{margin-top:20px}.honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important;overflow:hidden!important}.submit-button{background:var(--ink);color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.13em;border:0;justify-content:space-between;width:100%;margin-top:24px;padding:17px 20px;font-size:11px;display:flex}.submit-button:disabled{cursor:wait;opacity:.68}.form-error{color:#9a432d;border-left:3px solid var(--rust);background:#f7e9e3;margin:18px 0 0;padding:12px 14px;font-size:11px;line-height:1.55}.privacy-note{text-align:center;color:#8b928d;margin:14px 0 0;font-size:9px}.success-message{text-align:center;padding:55px 30px}.success-message>span{background:var(--moss);color:#fff;border-radius:50%;place-items:center;width:50px;height:50px;margin:0 auto 24px;display:grid}.success-message h3{font-size:36px}.success-message p{color:#6e776f;max-width:380px;margin:15px auto 25px;line-height:1.7}.success-message button{border:0;border-bottom:1px solid var(--ink);cursor:pointer;background:0 0;padding:6px 0}.faq{background:var(--paper);grid-template-columns:.85fr 1.15fr;gap:9vw;display:grid}.faq .section-heading{margin:0;display:block}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;padding:25px 45px 25px 0;font-family:Newsreader,serif;font-size:24px;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--rust);font-family:Manrope,sans-serif;font-size:19px;position:absolute;top:23px;right:5px}.faq details[open] summary:after{content:"−"}.faq details p{color:#647067;margin:-5px 50px 25px 0;font-size:12px;line-height:1.8}footer{color:#fff;background:#111814;grid-template-columns:1fr 1fr;align-items:end;gap:55px;padding:75px 6vw 30px;display:grid}footer>p{color:#ffffff94;justify-self:end;margin:0;font-family:Newsreader,serif;font-size:28px}footer>div{text-transform:uppercase;letter-spacing:.12em;gap:30px;font-size:11px;display:flex}footer>small{opacity:.42;grid-column:1/-1;justify-self:end;font-size:9px}.footer-contact{color:#ffffffb8;flex-direction:column;gap:9px;font-size:12px;font-style:normal;line-height:1.6;display:flex}.footer-contact a{border-bottom:1px solid #ffffff47;align-self:start}.footer-contact a:hover{border-bottom-color:#ffffffb3}@media (max-width:900px){.nav-links,.nav-book{display:none}.nav-toggle,.mobile-nav{display:block}.hero{min-height:820px}.hero-content{padding-bottom:40px}.intro{grid-template-columns:50px 1fr;padding:100px 7vw}.intro-copy{grid-column:2}.gallery{min-height:630px}.view-notes{grid-template-columns:1fr}.view-notes article{border-right:0;border-bottom:1px solid var(--line)}.view-notes article:last-child{border-bottom:0}.section-heading{grid-template-columns:1fr 1.5fr}.section-heading>p:last-child{grid-column:2;margin-top:0}.property-facts,.experience-grid{grid-template-columns:1fr 1fr}.property-facts article:nth-child(2),.experience-grid article:nth-child(2){border-right:0}.property-facts article:nth-child(-n+2),.experience-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.amenities,.booking-section,.direct-booking,.faq,.location{grid-template-columns:1fr}.location-image{min-height:550px}}@media (max-width:620px){.nav{height:75px}.mobile-nav{inset:75px 0 auto}.hero{min-height:760px}.hero h1{font-size:61px;line-height:.88}.hero-copy{font-size:14px}.hero-facts{gap:9px;font-size:8px}.sample-badge{display:none}.intro{grid-template-columns:1fr;gap:25px;min-height:auto;padding:90px 7vw}.intro-copy{grid-column:auto;padding-top:8px}.intro h2,.amenities h2,.booking-section h2,.location h2,.section-heading h2,.direct-booking h2{font-size:49px}.chalet-tour,.experience-guide,.faq{padding:90px 7vw}.section-heading{margin-bottom:50px;display:block}.section-heading>p:last-child{margin-top:25px}.property-facts{grid-template-columns:1fr 1fr}.property-facts article{padding:25px 20px}.property-facts strong{font-size:40px}.room-guide{grid-template-columns:1fr;gap:28px}.gallery{min-height:auto;padding:0 12px;display:block}.gallery-main{height:520px;margin-bottom:12px}.gallery-side{height:520px}.amenities{padding:100px 7vw}.amenity-grid{grid-template-columns:1fr}.direct-booking{padding:90px 7vw}.location-image{min-height:490px}.location-copy{padding:85px 7vw}.experience-grid{grid-template-columns:1fr}.experience-grid article{border-right:0;border-bottom:1px solid var(--line);padding:30px 5px}.experience-grid article:last-child{border-bottom:0}.booking-section{padding:90px 5vw}.booking-form{padding:28px 20px}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.faq summary{font-size:21px}footer{grid-template-columns:1fr;gap:30px}footer>p,footer>small{justify-self:start}}
