:root{--ink:#193b3d;--paper:#f8f7f2;--muted:#657473;--line:#d8ddd6;--sand:#e7e2d7;--accent:#ad7656}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #c38956;outline-offset:5px}img{max-width:100%;display:block;object-fit:cover}header{height:102px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #e6e7df}.brand{font-family:Georgia,serif;font-size:25px;letter-spacing:2px;line-height:1.3;white-space:nowrap}.brand span{color:var(--accent);font-style:italic}.brand small{display:block;font:8px/2 Arial,sans-serif;letter-spacing:2.1px}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav a:hover,.textlink:hover{color:var(--accent)}.navcta{border:1px solid var(--ink);padding:11px 18px}.hero{height:min(700px,75vw);min-height:550px;position:relative;display:grid;grid-template-columns:58% 42%;color:white;margin:0 20px}.herophoto{position:relative;overflow:hidden}.herophoto img{width:100%;height:100%;object-position:center}.herophoto:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#132e3b80,#132e3b0a),linear-gradient(0deg,#122c3855,transparent 65%)}.mountain{border-left:4px solid var(--paper)}.herotitle{position:absolute;left:6%;top:12%;text-shadow:0 2px 20px #142b3444}.herotitle h1{font-size:clamp(60px,6.6vw,100px);line-height:1.04;letter-spacing:-3px;margin:20px 0 24px;font-weight:400}.herotitle p:not(.eyebrow){font-size:18px;line-height:1.7;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:600;margin:0 0 16px}.btn{display:inline-flex;background:var(--ink);color:white;align-items:center;justify-content:center;gap:40px;padding:15px 23px;font-size:13px;border:1px solid var(--ink);transition:background .2s}.btn:hover{background:#315657}.btn.light{background:var(--paper);color:var(--ink);border-color:var(--paper);text-shadow:none}.btn.light:hover{background:var(--sand)}.photolabel{position:absolute;bottom:27px;left:35px;z-index:2;font-size:9px;letter-spacing:2px}.photolabel b{font-size:14px;letter-spacing:.3px;font-weight:400}.hero .herophoto:first-child .photolabel{left:10.3%}.introbar{display:flex;justify-content:space-around;padding:27px 4%;border-bottom:1px solid var(--line);font-size:12px}.introbar span:before{content:'✧';margin-right:12px;color:var(--accent)}.section{padding:90px 7%;max-width:1600px;margin:auto}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.sectionhead>p{font-size:14px;color:var(--muted)}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.16}h2{font-size:44px;letter-spacing:-1.2px;margin:0 0 24px}h3{font-size:30px;margin:12px 0}p{margin:0 0 20px}.filters{display:flex;gap:12px;margin:8px 0 30px}.filters button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:9px 22px;border-radius:30px;font-size:12px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}sup{padding-left:5px;font-size:9px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.card[hidden]{display:none}.cardphoto{position:relative;display:block;overflow:hidden}.cardphoto img{width:100%;height:290px;transition:transform .4s}.cardphoto:hover img{transform:scale(1.035)}.cardphoto span{position:absolute;bottom:15px;left:15px;background:var(--paper);padding:6px 12px;font-size:11px}.cardtext{padding:24px 0 0}.cardtext .eyebrow{margin-bottom:10px;color:var(--muted)}.cardtext p:not(.eyebrow){font-size:13px;color:var(--muted)}.textlink{display:inline-block;font-size:12px;border-bottom:1px solid #9faea4;padding:0 0 8px}.card .textlink{display:flex;justify-content:space-between}.destinations{background:#eeeee6;padding:85px 7%}.destination{display:grid;grid-template-columns:1fr 1fr;margin-top:45px;align-items:stretch}.destinationphoto img{width:100%;height:100%;min-height:400px;max-height:510px}.destinationtext{padding:55px 15% 45px 12%}.destinationtext p:not(.eyebrow){font-size:14px;color:#536965}.destinationtext h2{font-size:39px}.reverse .destinationphoto{order:2}.reverse .destinationtext{padding-left:6%;padding-right:15%}.tags{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.tags span{font-size:10px;border:1px solid #c6cfc5;padding:5px 10px}.destinationtext .textlink{margin-right:18px}.host{text-align:center;max-width:930px;padding-top:95px;padding-bottom:95px}.host>p:not(.eyebrow){max-width:680px;margin:20px auto}.signature{font-family:Georgia,serif;font-style:italic;font-size:22px}.socials{display:flex;justify-content:center;gap:25px;margin-top:30px;font-size:11px}.booking{max-width:none;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:12%}.booking h2{font-size:51px}.booking>div>p:not(.eyebrow){font-size:14px;max-width:460px;color:#d5deda}.bookingbox{align-self:center;background:#ffffff09;border:1px solid #ffffff35;padding:32px}.bookingbox label{font-size:12px;display:block;margin-bottom:10px}.bookingbox select{background:var(--paper);color:var(--ink);border:none;width:100%;padding:16px;font-size:14px;margin-bottom:18px}.bookingbox .btn{width:100%}.bookingbox p{font-size:11px;margin:18px 0 0;color:#d5deda}.faq{max-width:1050px}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-size:15px;padding:4px 0}details p{font-size:14px;color:var(--muted);padding:20px 0 0;max-width:780px}footer{padding:60px 7% 30px;border-top:1px solid var(--line);display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px;font-size:12px}footer div>a:not(.brand){display:block;margin-bottom:12px}footer p{margin-top:15px;color:var(--muted)}footer small{grid-column:1/-1;color:var(--muted);font-size:10px}.detailintro{padding-top:35px;padding-bottom:0}.back{font-size:12px;display:block;margin-bottom:35px}.detailintro h1,.legal h1{font-size:66px;margin:0}.detailintro .eyebrow{margin-bottom:12px}.detailintro .sectionhead{margin-bottom:12px}.detailtag{font:22px Georgia,serif;margin-bottom:32px}.detailhero{display:grid;grid-template-columns:1.65fr 1fr;gap:12px;height:460px}.detailhero img{width:100%;height:100%;min-width:0}.stats{display:flex;justify-content:space-around;padding:24px 0;border-bottom:1px solid var(--line);font-size:13px}.detailbody{display:grid;grid-template-columns:1.65fr 1fr;gap:8%;padding-top:65px;padding-bottom:25px}.lead{font-size:18px;color:#526963}.detailbody h3{font-size:27px;margin-top:35px}.amenities{padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:13px;margin:25px 0 40px}.detailbody aside{align-self:start;background:#eceee6;padding:28px}.detailbody aside h3{margin-top:10px}.detailbody aside .btn{width:100%;padding:13px;font-size:12px}.small{font-size:11px;margin:16px 0 0;color:var(--muted)}dl{display:grid;grid-template-columns:1fr 1fr;font-size:12px;gap:14px;margin:25px 0}dd{text-align:right;margin:0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:30px}.gallery button{border:none;padding:0;background:var(--sand);overflow:hidden}.gallery img{width:100%;height:260px;transition:transform .3s}.gallery button:hover img{transform:scale(1.03)}.endcta{text-align:center;background:var(--sand);padding:60px 20px}.legal{max-width:1050px;min-height:70vh}.legal h1{margin-bottom:45px}.legal h2{font-size:28px;margin-top:30px}.notice{padding:25px;background:#eae8df;border-left:3px solid var(--accent);margin:30px 0}.notice h3{font-size:23px}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}dialog{border:0;background:#102b2ef5;color:white;max-width:100vw;width:100vw;max-height:100vh;height:100vh;padding:65px 80px}dialog::backdrop{background:#102b2e}dialog figure{height:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center}dialog img{max-height:calc(100vh - 170px);max-width:100%;object-fit:contain}dialog figcaption{font-size:14px;margin-top:15px}dialog button{position:absolute;background:transparent;border:0;color:white;font-size:40px;width:55px;height:55px}dialog .close{top:12px;right:20px}.prev{left:10px;top:45%}.next{right:10px;top:45%}body.modalopen{overflow:hidden}@media(min-width:1700px){.hero{height:760px}.herotitle{left:10%}}@media(max-width:1000px){nav{gap:15px;font-size:11px}.brand{font-size:21px}.hero{min-height:540px}.section{padding:65px 5%}.cardphoto img{height:220px}.cards{gap:18px}h2{font-size:36px}.destinationtext{padding:35px 7%}.destinationtext h2{font-size:32px}.detailhero{height:350px}.gallery img{height:210px}.detailbody{gap:4%}}@media(max-width:680px){header{height:auto;min-height:98px;padding:16px 5%;display:block}.brand{font-size:21px}.brand small{font-size:7px}nav{margin-top:15px;justify-content:space-between;gap:7px;font-size:10px}nav .navcta{padding:5px 8px}nav a:nth-child(3){display:none}.hero{margin:0;height:650px;min-height:0;grid-template-columns:62% 38%}.herotitle{top:13%;left:7%;right:7%}.herotitle h1{font-size:64px;letter-spacing:-2px}.herotitle p:not(.eyebrow){font-size:15px}.photolabel{left:15px;bottom:25px;font-size:8px}.photolabel b{font-size:11px}.hero .herophoto:first-child .photolabel{left:11%}.introbar{padding:20px 5%;gap:15px;font-size:10px;align-items:center}.introbar span:before{display:none}.sectionhead{display:block}.sectionhead>p{margin-top:20px}.cards{grid-template-columns:1fr;gap:40px}.cardphoto img{height:300px}.cardtext h3{font-size:32px}.filters{gap:8px}.filters button{padding:8px 13px;font-size:11px}.section{padding:55px 6%}h2{font-size:35px}.destinations{padding:55px 6%}.destination{grid-template-columns:1fr;margin-top:35px}.destinationphoto img{height:300px;min-height:0}.destinationtext,.reverse .destinationtext{padding:30px 0}.reverse .destinationphoto{order:0}.socials{flex-direction:column;gap:12px}.booking{grid-template-columns:1fr;gap:25px}.booking h2{font-size:43px}.bookingbox{padding:22px}.faq h2{font-size:32px}footer{grid-template-columns:1fr 1fr;padding:40px 6%;gap:25px}footer div:first-child{grid-column:1/-1}.detailintro{padding-bottom:0}.detailintro h1,.legal h1{font-size:49px}.detailintro .sectionhead .btn{margin-top:20px}.detailhero{height:340px;grid-template-columns:1fr}.detailhero img:nth-child(2){display:none}.stats{flex-wrap:wrap;gap:10px;font-size:11px}.stats span{width:45%;text-align:center}.detailbody{grid-template-columns:1fr;gap:25px}.amenities{font-size:12px}.detailbody aside{padding:25px}.gallery{grid-template-columns:1fr 1fr;gap:10px}.gallery img{height:170px}dialog{padding:70px 40px}.prev{left:0}.next{right:0}dialog button{width:38px}html{scroll-padding-top:125px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero .mountain img{transform:scale(1.4)}
/* Brand and contact details */
.brand{font-size:22px;letter-spacing:1.3px}.brand small{font-size:7px;letter-spacing:1.6px}a[href^="mailto:"]{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.booking a[href^="mailto:"]{color:var(--paper)}@media(max-width:1000px){.brand{font-size:19px}}@media(max-width:680px){.brand{font-size:22px}}
.requestpage{max-width:1200px;padding-top:40px}.requestpage h1{font-size:51px;margin:15px 0 25px}.requestpage>.lead{max-width:720px}.requestlayout{display:grid;grid-template-columns:1.4fr 1fr;gap:65px;margin-top:45px}.requestlayout label{display:block;font-size:13px;margin:18px 0 6px}.requestlayout input,.requestlayout select,.requestlayout textarea{width:100%;border:1px solid #b6c3bb;background:#fff;color:var(--ink);padding:13px;font:inherit;min-width:0;border-radius:0}.requestlayout textarea{resize:vertical}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.requestlayout .btn{margin-top:20px;cursor:pointer}.requestinfo{align-self:start;background:#eeeee6;padding:30px}.requestinfo p{font-size:14px}.requestinfo h3{font-size:28px}.requestinfo hr{border:0;border-top:1px solid var(--line);margin:28px 0}.requestactions{display:flex;flex-wrap:wrap;gap:12px}.btn.secondary{color:var(--ink);background:transparent}#mail-preview{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}#mail-preview p{font-size:13px}.requestlayout input:focus-visible,.requestlayout textarea:focus-visible{outline:3px solid #c38956;outline-offset:2px}@media(max-width:800px){.requestlayout{grid-template-columns:1fr;gap:35px}.requestpage h1{font-size:39px}}@media(max-width:400px){.formgrid{grid-template-columns:1fr}}
.availability{border-top:1px solid var(--line)}.live-calendar{margin:30px 0 16px;min-height:90px}.calendar-toolbar{display:flex;justify-content:space-between;gap:20px;margin-bottom:25px}.calendar-toolbar select,.calendar-refresh{border:1px solid #bac7bf;background:var(--paper);color:var(--ink);padding:12px 18px;font:inherit;font-size:13px}.calendar-legend{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:25px;font-size:12px}.calendar-legend>span{display:flex;align-items:center;gap:8px}.swatch{display:inline-block;width:16px;height:16px}.calendar-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.calendar-month{background:#fff;padding:18px;border:1px solid var(--line)}.calendar-month h3{font-size:23px;margin:0 0 18px}.calendar-month table{width:100%;border-collapse:separate;border-spacing:3px;table-layout:fixed}.calendar-month th{font:11px Arial,sans-serif;padding-bottom:10px}.calendar-month td{padding:0;text-align:center}.calendar-day{display:flex;align-items:center;justify-content:center;width:100%;min-height:34px;font-size:12px;color:#193b3d}.calendar-day.free,.swatch.free{background:#d8e9d8}.calendar-day.occupied,.calendar-day.non-bookable,.swatch.occupied{background:#ebc4bb}.calendar-day.reserved,.swatch.reserved{background:#efdfb5}.calendar-day.unknown,.swatch.unknown{background:#e3e5e4}.calendar-day.arrival,.swatch.change{background:linear-gradient(135deg,#d8e9d8 50%,#ebc4bb 50%)}.calendar-day.departure{background:linear-gradient(135deg,#ebc4bb 50%,#d8e9d8 50%)}.calendar-day.past{opacity:.45}.calendar-status{font-size:11px;color:var(--muted);margin-top:18px}.calendar-error{border-left:3px solid var(--accent);padding:12px 20px;background:#eeeae1}.availability>.btn{margin-top:20px}@media(max-width:1000px){.calendar-months{gap:12px}.calendar-month{padding:10px}.calendar-day{min-height:30px}}@media(max-width:740px){.calendar-months{grid-template-columns:1fr}.calendar-month{padding:18px}.calendar-day{min-height:38px}.calendar-toolbar{gap:10px}.calendar-toolbar select{max-width:65%}.calendar-legend{gap:14px}}
.prices{border-top:1px solid var(--line)}.rate-details{margin-top:30px}.rate-details summary{cursor:pointer;padding:18px 0;font-weight:600}.rate-table table{width:100%;border-collapse:collapse;text-align:left;max-width:780px}.rate-table caption{text-align:left;font-size:12px;padding:16px 0;color:var(--muted)}.rate-table th,.rate-table td{padding:12px 10px;border-bottom:1px solid var(--line);font-size:14px}.rate-table th:last-child,.rate-table td:last-child{text-align:right;white-space:nowrap}.price-estimate{background:#e7eee7;border:1px solid #c4d2c5;padding:24px;margin:26px 0}.price-estimate h3{margin-top:0}.price-estimate dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;font-size:14px}.price-estimate dd{margin:0;text-align:right;white-space:nowrap}.price-total{font-weight:700;border-top:1px solid #bac7bf;padding-top:16px}.price-estimate .small{margin-bottom:0}@media(max-width:480px){.price-estimate{padding:16px}.price-estimate dl{gap:12px;font-size:13px}.rate-table th,.rate-table td{font-size:12px;padding:12px 4px}}
