@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;650;700&family=Libre+Caslon+Display&display=swap');
:root{--pine:#203e33;--ink:#23392f;--cream:#f7f4ec;--muted:#686c60;--line:#dadbd0;--rust:#b16e45;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--rust);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.025em}h1{font-size:clamp(48px,5.8vw,88px)}h2{font-size:clamp(38px,4.1vw,62px);margin-bottom:25px}h3{font-size:38px;margin-bottom:20px}h1 em,h2 em{font-weight:400}p{color:var(--muted)}.eyebrow{font:600 10px/1.5 var(--sans);letter-spacing:.18em;color:var(--pine);margin-bottom:23px}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:0}header{height:99px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--cream)}.brand{display:flex;align-items:center;gap:14px;line-height:1.2;flex-shrink:0}.brand svg{width:48px;height:41px}.brand span{font-size:19px;font-weight:650;letter-spacing:.13em}.brand small{display:block;letter-spacing:.14em;font-size:8px;font-weight:500;margin-top:6px}nav{display:flex;align-items:center;gap:32px;font-size:12px;font-weight:500}nav>a:not(.button):hover{text-decoration:underline;text-underline-offset:5px}.button,.outline-button{padding:17px 23px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--pine);color:var(--cream);border:1px solid var(--pine);font-size:12px;font-weight:600;line-height:1.5;transition:background .2s}.button:hover{background:#345846}.button.small{padding:12px 18px}.button.cream{background:var(--cream);color:var(--pine);border-color:var(--cream)}.button.cream:hover{background:#e6e0ce}.outline-button{background:none;color:var(--pine)}.menu{display:none}.hero{height:min(760px,78vw);min-height:610px;position:relative;color:var(--cream);isolation:isolate}.hero-image{position:absolute;inset:0;height:100%;object-position:center 43%;z-index:-2}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,28,22,.7),rgba(10,28,22,.1)),linear-gradient(0deg,rgba(10,28,22,.35),transparent 35%);z-index:-1}.hero-copy{padding:85px 7% 90px;max-width:1100px}.hero .eyebrow{color:#f1e8d8}.hero h1{margin-bottom:26px}.hero h1 em{font-size:.85em}.hero-copy>p:not(.eyebrow){color:#f4f0e5;font-size:16px;margin-bottom:33px}.hero-bottom{position:absolute;bottom:27px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.14em}.hero-bottom a{letter-spacing:.03em}.ribbon{background:var(--pine);color:#ebe8db;display:flex;align-items:center;justify-content:center;gap:5%;padding:24px 4%;font-size:11px;letter-spacing:.045em}.ribbon i{font-style:normal;color:#d6c8a8}.section{padding:105px 7%;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:80px;margin-bottom:65px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:340px;margin-bottom:6px;font-size:14px}.stay{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center;margin-bottom:95px}.stay:last-child{margin-bottom:0}.stay.reverse .stay-photo{order:2}.stay.reverse .stay-copy{order:1}.stay-photo{position:relative;display:block;height:470px;overflow:hidden}.stay-photo img{height:100%;transition:transform .7s}.stay-photo:hover img{transform:scale(1.035)}.photo-label{position:absolute;bottom:20px;left:20px;padding:10px 16px;background:var(--cream);font-size:9px;letter-spacing:.05em}.stay-copy>p:not(.eyebrow){font-size:14px}.stay h3{font-size:46px;margin-bottom:13px}.stats{font-size:12px;color:var(--muted);display:flex;gap:12px;margin-bottom:24px;align-items:center}.stats span{color:#a4a698}.feature-list{padding:20px 0;margin:0 0 18px;list-style:none;border-block:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:9px;font-size:11px}.feature-list li:before{content:'+';margin-right:8px;color:var(--rust)}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid var(--pine);padding-bottom:8px;display:inline-flex;gap:45px;justify-content:space-between}.vermont{padding:90px 7% 100px;background:#e9ecdf}.vermont-intro{max-width:600px;margin-bottom:45px}.vermont-intro>p:last-child{max-width:450px;font-size:14px}.season-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;max-width:1400px;margin:auto}.season-grid img,.fall-art{height:280px;margin-bottom:25px}.season-grid article>span{font-size:9px;font-weight:600;letter-spacing:.15em}.season-grid h3{font-size:33px;margin:13px 0}.season-grid p{font-size:13px;max-width:350px}.fall-art{display:flex;align-items:center;justify-content:center;background:var(--pine);color:#e9e8d4}.fall-art span{font-family:var(--serif);font-size:45px;line-height:1.1}.fall-art em{color:#c9b59a}.about{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:110px;padding-bottom:110px}.about p{font-size:14px}.signature{display:block;font-size:12px;margin-top:25px;color:var(--muted)}.signature strong{display:block;font-family:var(--serif);font-size:42px;color:var(--pine);font-style:italic;font-weight:400}.inquiry{background:var(--pine);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:12%;max-width:none}.inquiry .eyebrow{color:#c7cbb7}.inquiry h2{font-size:clamp(37px,4vw,58px)}.inquiry p{color:#cad1c4;font-size:14px}.inquiry .subtle{font-size:11px;margin-top:35px;max-width:330px}.inquiry .text-link{border-color:#bfc8b7}.inquiry form{display:grid;grid-template-columns:1fr 1fr;gap:17px}.wide{grid-column:1/-1}label{font-size:10px;letter-spacing:.03em}input,select,textarea{width:100%;margin-top:7px;padding:12px 13px;border:1px solid #819282;border-radius:0;color:var(--ink);background:#f7f4ec;font-size:12px;min-height:43px}textarea{resize:vertical}.inquiry button{background:#e7ddc4;border-color:#e7ddc4;color:var(--pine)}.inquiry button:hover{background:#f5ecd8}.inquiry .form-note{font-size:10px;margin:0;line-height:1.6}#form-status{margin:0}footer{padding:55px 7% 30px;display:grid;grid-template-columns:1fr 1fr;gap:40px}footer>div{display:flex;justify-content:end;align-items:start;gap:25px;flex-wrap:wrap;font-size:10px}footer p{grid-column:1/-1;border-top:1px solid var(--line);padding-top:25px;font-size:9px;display:flex;justify-content:space-between;gap:20px}footer p small{font-size:9px}.property-head{padding-top:35px;padding-bottom:35px}.breadcrumb{display:block;font-size:11px;margin-bottom:35px;color:var(--muted)}.property-head .eyebrow{margin-bottom:12px}.property-title{display:flex;justify-content:space-between;gap:30px;align-items:center}.property-title h1{font-size:clamp(38px,4.5vw,64px);margin-bottom:20px}.property-head .stats{margin:0}.property-mosaic{position:relative;margin:0 4%;height:550px;display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 1fr;gap:8px}.property-mosaic>img{height:100%;min-height:0}.property-mosaic>img:first-child{grid-row:1/3}.photo-count{position:absolute;bottom:20px;right:20px;padding:12px 18px;background:var(--cream);font-size:11px}.property-body{display:grid;grid-template-columns:1.65fr 1fr;gap:10%;align-items:start;padding-top:80px}.property-body h2{font-size:45px}.property-body h3{font-size:30px;margin-top:45px}.property-body p{font-size:14px}.amenities{list-style:none;padding:15px 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:12px;border-bottom:1px solid var(--line)}.bedrooms{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.bedrooms>div{border:1px solid var(--line);padding:20px 15px;display:flex;flex-direction:column;gap:15px}.bedrooms span{font-size:10px;color:var(--rust)}.bedrooms strong{font-size:12px;font-weight:500}.property-body aside{padding:30px;background:#e8ebdf;position:sticky;top:25px}.property-body aside h3{margin-top:0;font-size:34px}.property-body aside .button,.property-body aside .outline-button{display:flex;width:100%;margin-top:12px}.property-body aside .subtle{font-size:10px;margin:24px 0 0}.photo-section{padding-top:0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}.gallery-item{padding:0;border:0;background:transparent;overflow:hidden}.gallery-item img{height:260px;transition:transform .4s}.gallery-item:hover img{transform:scale(1.03)}dialog{border:0;padding:30px 55px;background:#14291f;color:white;max-width:95vw;width:1100px;overflow:visible}dialog::backdrop{background:#0a1711e8}dialog figure{margin:0}dialog figure img{max-height:78vh;object-fit:contain}dialog figcaption{text-align:center;font-size:12px;padding-top:15px}dialog button{border:0;background:#f7f4ec;color:var(--pine);width:36px;height:36px;position:absolute}.close{top:8px;right:8px}.previous{left:8px;top:50%}.next{right:8px;top:50%}
@media(min-width:1700px){.hero-copy{padding-left:calc((100vw - 1400px)/2)}.vermont{padding-inline:calc((100vw - 1400px)/2)}}
@media(max-width:1000px){header{padding:0 4%}nav{gap:20px}.brand span{font-size:16px}.hero{min-height:600px}.hero-copy{padding-top:90px}.stay{gap:5%}.stay-photo{height:400px}.stay h3{font-size:37px}.section{padding:80px 5%}.section-heading{gap:40px}.season-grid{gap:20px}.season-grid img,.fall-art{height:220px}.fall-art span{font-size:35px}.inquiry{gap:7%}.property-mosaic{height:430px}.property-body{gap:6%}.gallery-item img{height:200px}}
@media(max-width:720px){header{height:83px;padding:0 6%;position:relative;z-index:10}.brand svg{width:38px}.brand span{font-size:15px}.brand small{font-size:7px}.menu{display:block;background:none;border:0;font-size:11px;color:var(--pine);padding:10px 0 10px 10px}.menu span{margin-left:8px}nav{display:none;position:absolute;top:83px;left:0;right:0;background:var(--cream);padding:20px 6% 30px;align-items:stretch;box-shadow:0 10px 20px #203e3310}nav.open{display:flex;flex-direction:column;gap:22px}.hero{height:650px;min-height:0}.hero-copy{padding:80px 7% 90px}.hero h1{font-size:clamp(44px,8.5vw,62px);line-height:1.12}.hero h1 em{font-size:.8em}.hero .eyebrow{font-size:8px;letter-spacing:.13em}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-image{object-position:57% center}.hero-shade{background:linear-gradient(90deg,#0a201bc4,#0a201b22),linear-gradient(0deg,#0a201b66,transparent)}.hero-bottom{font-size:8px}.hero-bottom>a{max-width:120px;text-align:right}.ribbon{gap:14px;padding:20px 5%;font-size:9px;flex-wrap:wrap}.ribbon span:last-child,.ribbon i:last-of-type{display:none}.section{padding:65px 7%}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:25px;font-size:13px}.stay{display:flex;flex-direction:column;gap:30px;margin-bottom:65px;align-items:stretch}.stay.reverse .stay-photo,.stay.reverse .stay-copy{order:initial}.stay-photo{height:330px}.stay h3{font-size:40px}.stay-copy .eyebrow{margin-bottom:15px;font-size:9px}.feature-list{font-size:11px}.vermont{padding:65px 7%}.season-grid{grid-template-columns:1fr;gap:32px}.season-grid img,.fall-art{height:270px;margin-bottom:17px}.season-grid p{max-width:none}.fall-art span{font-size:44px}.about{display:block}.about>div+div{margin-top:35px}.inquiry{display:block}.inquiry form{margin-top:45px;gap:14px}.inquiry .subtle{max-width:none}footer{padding:45px 7% 20px;display:block}footer>div{margin-top:30px;justify-content:start;gap:17px}footer>p{display:block;margin-top:30px}footer p small{display:block;margin-top:9px}.property-head{padding-top:25px;padding-bottom:25px}.property-title{display:block}.property-title h1{font-size:44px}.property-title .button{margin-bottom:23px}.property-head .stats{gap:8px;font-size:10px}.property-mosaic{height:410px;margin:0 4%;grid-template-columns:1fr 1fr;grid-template-rows:2fr 1fr;gap:5px}.property-mosaic>img:first-child{grid-row:1;grid-column:1/3}.photo-count{font-size:10px;padding:9px 12px;bottom:12px;right:12px}.property-body{display:flex;flex-direction:column;padding-top:55px;gap:35px}.property-body h2{font-size:39px}.property-body aside{position:static;width:100%}.bedrooms{grid-template-columns:1fr}.bedrooms>div{flex-direction:row;align-items:center;padding:14px}.gallery{grid-template-columns:1fr 1fr;gap:9px;margin-top:30px}.gallery-item img{height:155px}.photo-section{padding-top:10px}dialog{padding:45px 40px 20px}dialog figure img{max-height:72vh}dialog button{width:30px;height:30px}.previous{left:5px}.next{right:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.stay-book{display:block;margin-top:17px;font-size:11px;font-weight:600;color:var(--pine)}.stay-book:hover{text-decoration:underline}.stay-details{margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.stay-details summary{cursor:pointer;font-size:12px;font-weight:500}.stay-details p{font-size:12px;margin-top:17px}.booking{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;align-items:start;background:#e9ecdf;border-top:1px solid var(--line);margin-bottom:85px;scroll-margin-top:30px}.booking>div:first-child{padding-top:25px}.booking h2{font-size:54px}.booking p{font-size:14px}.booking .text-link{margin-top:20px}.widget{padding:22px;background:white;min-height:380px;min-width:0;box-shadow:0 8px 35px #203e3308}.widget iframe{display:block;width:100%;border:0}.platform-option{font-size:11px;margin-top:32px;color:var(--muted)}.platform-option a{font-weight:600;text-decoration:underline;text-underline-offset:4px;margin-left:8px}.booking .widget-help{font-size:10px;line-height:1.6;margin:10px 0 0;color:var(--muted)}.widget-help a{text-decoration:underline;text-underline-offset:3px}@media(max-width:900px){.booking{gap:5%;grid-template-columns:1fr 1.2fr}.booking h2{font-size:42px}.widget{padding:10px}}@media(max-width:720px){.booking{display:block;margin-bottom:45px}.booking h2{font-size:40px}.booking>div:first-child{padding-top:0;margin-bottom:35px}.booking .platform-option{margin-top:22px}.widget{padding:10px;min-height:360px}.stay-details summary{font-size:12px}}

.honeypot{display:none!important}.inquiry button:disabled{opacity:.65;cursor:wait}#form-status[data-state="error"]{color:#ffe0ce}#form-status[data-state="success"]{color:#e9edcf}
