:root{--forest:#203c33;--ink:#243a32;--paper:#f8f8f4;--muted:#66716a;--line:#d7ddd6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}img{width:100%;height:100%;object-fit:cover;display:block}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.04}h2{font-size:clamp(42px,4.6vw,70px);letter-spacing:-1.5px;margin-bottom:28px}h3{font-size:34px;margin:13px 0 15px}em{font-weight:400}p{margin-bottom:23px}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #c1a36a;outline-offset:7px}.skip{position:fixed;top:-100px;background:white;z-index:100;padding:10px}.skip:focus{top:0}.header{height:106px;position:absolute;inset:0 0 auto;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 5%;color:white;border-bottom:1px solid #ffffff35}.brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:29px;letter-spacing:3px;line-height:1.1;display:inline-block}.brand span{display:block;font:10px Inter,Arial,sans-serif;letter-spacing:4px;text-align:center;margin-top:10px}.header nav{display:flex;gap:38px;font-size:14px}.header nav a:hover{border-bottom:1px solid white}.header-book{border:1px solid #ffffff80;padding:11px 23px;font-size:14px}.header-book:hover{background:white;color:var(--forest)}.menu{display:none}.hero{height:min(900px,100svh);min-height:680px;position:relative;color:white}.hero-image{position:absolute;inset:0;object-position:center 55%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#081d2490,transparent 95%),linear-gradient(180deg,#091e2250,transparent 40%,#0a242740)}.hero-copy{position:absolute;left:8%;top:27%;max-width:750px}.eyebrow{font-size:11px;font-weight:500;letter-spacing:2.8px;margin-bottom:25px}.hero h1{font-size:clamp(76px,8.6vw,132px);letter-spacing:-2px;margin-bottom:24px}.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;color:#ffffffe0}.button{display:inline-flex;justify-content:center;align-items:center;min-height:51px;padding:12px 29px;font-size:13px;letter-spacing:.4px;border:1px solid transparent;transition:background .2s,color .2s}.light{background:var(--paper);color:var(--forest)}.light:hover{background:#dedfd6}.hero-copy .button{margin-top:8px}.hero-bottom{position:absolute;bottom:31px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:2px}.hero-bottom a{display:flex;align-items:center;gap:22px}.scroll-line{height:37px;width:1px;background:#ffffff80;display:block}.section{max-width:1440px;margin:auto;padding:105px 8%}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;padding-bottom:72px}.intro-text{padding-top:32px;max-width:465px;color:var(--muted);font-size:16px}.intro-text p:first-child{color:var(--ink);font-size:18px}.text-link{display:inline-block;font-size:13px;font-weight:500;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:7px;margin-top:8px}.text-link:hover{opacity:.65}.house-grid{padding-top:0;display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.large-photo img{height:560px}.large-photo figcaption,.story figcaption{font-size:12px;color:var(--muted);margin-top:12px}.section-number{font-size:10px;letter-spacing:2px;color:var(--muted)}.house-details h2{margin-top:26px}.house-details>p{color:var(--muted)}.details-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-bottom:1px solid var(--line);padding:14px 0;font-size:13px}.house-details .text-link{margin-top:28px}.experiences{background:#eaf0e9;padding-bottom:70px}.experience-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;padding-bottom:40px}.experience-heading h2{margin-bottom:0}.experience-heading>p{color:var(--muted);font-size:14px;margin-bottom:5px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:0;padding-bottom:25px}.image-wrap{height:335px;margin-bottom:25px;overflow:hidden}.image-wrap img{transition:transform .65s}.experience-grid article:hover img{transform:scale(1.035)}.experience-grid article:nth-child(2){padding-top:65px}.experience-grid p{font-size:14px;color:var(--muted);max-width:320px}.experience-link{text-align:center}.story{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center;padding-top:120px;padding-bottom:120px}.story-copy>p:not(.eyebrow){color:var(--muted)}.story img{height:540px}.stay{padding:95px 25px 100px;background:var(--forest);color:white;text-align:center}.stay h2{font-size:clamp(50px,5.4vw,80px)}.stay>p:not(.eyebrow){font-size:15px;color:#ffffffb5}.stay-actions{display:flex;justify-content:center;gap:15px;margin:33px 0 17px}.outline{border-color:#ffffff60;color:white}.outline:hover{background:#ffffff15}.booking-note{font-size:12px;color:#ffffff90}footer{padding:68px 8% 25px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:45px;align-items:start}footer>p{font-size:13px;color:var(--muted);line-height:1.9}footer>div:not(.footer-bottom){display:flex;flex-direction:column;font-size:13px;gap:8px;align-items:flex-end}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:23px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.6px;color:var(--muted)}.footer-brand{font-size:25px}.footer-brand span{text-align:left;margin-left:18px}@media(min-width:1700px){.section{padding-left:80px;padding-right:80px}}@media(max-width:900px){.header nav{gap:20px}.brand{font-size:24px}.header-book{padding:10px 15px}.hero-copy{left:7%}.section{padding-left:7%;padding-right:7%}.intro,.house-grid{gap:7%}.large-photo img{height:480px}.image-wrap{height:250px}.experience-grid{gap:20px}.story{gap:7%}.story img{height:470px}.experience-heading>p{max-width:230px}footer{gap:25px}}@media(max-width:650px){html{scroll-padding-top:20px}.header{height:88px;padding:0 6%;gap:16px}.brand{font-size:23px;letter-spacing:2px}.brand span{font-size:9px;letter-spacing:3px}.header-book{margin-left:auto;padding:8px 12px;font-size:12px}.menu{display:block;background:none;border:0;color:white;font-size:13px;padding:6px 0}.header nav{display:none;position:absolute;left:0;right:0;top:88px;background:var(--forest);padding:26px 7%;flex-direction:column;gap:23px}.header nav.open{display:flex}.hero{min-height:690px;height:95svh;max-height:850px}.hero-copy{left:7%;right:6%;top:27%}.hero h1{font-size:82px}.hero-copy .eyebrow{font-size:9px;letter-spacing:2px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-bottom{left:7%;right:7%;font-size:8px;letter-spacing:1.1px}.hero-bottom a{gap:12px}.hero-image{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#081d2488,transparent),linear-gradient(180deg,#091e2255,transparent 45%,#0a242766)}.section{padding:68px 7%}.intro{display:block;padding-bottom:40px}.intro-text{padding-top:0}.intro h2{font-size:48px}.house-grid{grid-template-columns:1fr;padding-top:0;gap:38px}.large-photo img{height:420px}.house-details h2{font-size:48px}.eyebrow{font-size:10px}.experience-heading{display:block;padding-bottom:32px}.experience-heading h2{font-size:48px}.experience-heading>p{max-width:none;margin-top:24px}.experience-grid{display:block;padding-top:0;padding-bottom:0}.experience-grid article{padding-bottom:28px}.experience-grid article:nth-child(2){padding-top:0}.image-wrap{height:360px}.experience-grid p{max-width:none;font-size:16px}.experience-grid h3{font-size:38px}.story{grid-template-columns:1fr;gap:32px}.story img{height:420px}.story h2{font-size:46px}.stay{padding:75px 7%}.stay h2{font-size:56px}.stay-actions{flex-direction:column;align-items:stretch;max-width:310px;margin:28px auto 18px}.stay>p br{display:none}footer{grid-template-columns:1fr 1fr;padding:50px 7% 25px;gap:25px}.footer-brand{grid-column:1/-1}.footer-bottom{gap:18px;flex-wrap:wrap}.footer-bottom>span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Readable interface labels at every viewport size. */
.eyebrow,.section-number{font-size:12px}.button,.text-link,.details-row,.header-book{font-size:14px}.hero-bottom{font-size:12px;letter-spacing:1.2px}.brand span{font-size:12px;letter-spacing:2px}.footer-bottom{font-size:12px}.header nav{font-size:14px}footer>p,footer>div:not(.footer-bottom){font-size:14px}@media(max-width:650px){.hero-copy .eyebrow{font-size:12px;letter-spacing:1.2px}.hero-bottom{font-size:12px;letter-spacing:0}.hero-bottom>a{display:none}.header-book{display:none}.header .menu{font-size:14px;margin-left:auto}.brand span{font-size:12px;letter-spacing:2px}}
/* Lift darker photography below the original dramatic hero. */
.large-photo img{filter:brightness(1.12)}
.image-wrap img[src$="woods.jpg"]{filter:brightness(1.23)}
.image-wrap img[src$="pub.jpg"]{filter:brightness(1.18)}
.story img{filter:brightness(1.13)}
/* A quiet signature band beneath the hero photograph. */
.hero-bottom{justify-content:flex-end}
.signature-strip{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;background:var(--forest);color:#fff;padding:30px max(7%,calc((100vw - 1140px)/2));}
.signature-strip span{text-align:center;font-size:clamp(1rem,1.5vw,1.375rem);font-weight:400;line-height:1.5;letter-spacing:.2em;text-transform:uppercase;padding:6px 20px}
.signature-strip span+span{border-left:1px solid #ffffff35}
@media(max-width:650px){.signature-strip{padding:22px 4%}.signature-strip span{font-size:.875rem;letter-spacing:.055em;padding:4px 5px}}
/* House and Heritage: shared typography, navigation and editorial rhythm. */
.header nav a[aria-current="page"]{border-bottom:1px solid currentColor;padding-bottom:5px}
.page-hero{height:78svh;min-height:620px;max-height:840px}
.page-hero h1{font-size:clamp(64px,7vw,110px)}
.page-hero .hero-copy{top:29%}
.page-jumps{display:flex;justify-content:center;gap:48px;padding:23px 6%;border-bottom:1px solid var(--line);font-size:14px}
.page-jumps a:hover{color:#728274}
.detail-photo{height:280px;margin-top:35px;filter:brightness(1.12)}
.bedroom-section{background:#eaf0e9}
.bedroom-heading{text-align:center;padding-bottom:38px}
.bedroom-heading p:last-child{color:var(--muted);font-size:16px;margin-bottom:0}
.bedroom-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-top:0}
.bedroom-gallery img{height:360px;filter:brightness(1.08)}
.bedroom-gallery figure:nth-child(2){padding-top:40px}
.section-title{max-width:800px;margin-bottom:45px}
.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.room-grid img{height:310px;filter:brightness(1.1)}
.room-grid h3{margin-top:24px}.room-grid p{font-size:16px;color:var(--muted)}
.pub-note{margin-top:45px;border-top:1px solid var(--line);padding-top:38px;display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:center}
.pub-note p{margin-bottom:12px}.pub-note>p{color:var(--muted)}
.next-chapter{padding:65px 7%;text-align:center;border-top:1px solid var(--line)}
.next-chapter h2{font-size:clamp(40px,4vw,60px);margin-bottom:15px}
.history-band{background:#eaf0e9}.history-band .story{padding-top:90px;padding-bottom:90px}
.story img.archive-photo{filter:none;object-fit:contain;height:auto;max-height:570px}
.detail-page .story .story-copy p{font-size:16px}
@media(max-width:900px){.bedroom-gallery img{height:280px}.room-grid img{height:240px}.page-jumps{gap:28px}}
@media(max-width:650px){.page-hero{height:82svh;min-height:640px}.page-hero .hero-copy{top:28%}.page-hero h1{font-size:clamp(48px,14vw,60px);letter-spacing:-1.5px}.page-jumps{gap:12px;justify-content:space-around;padding:20px 4%;font-size:14px}.page-jumps a{text-align:center;max-width:105px}.detail-photo{height:290px}.bedroom-gallery{grid-template-columns:1fr;gap:22px}.bedroom-gallery img{height:330px}.bedroom-gallery figure:nth-child(2){padding-top:0}.room-grid{grid-template-columns:1fr;gap:25px}.room-grid img{height:330px}.pub-note{grid-template-columns:1fr;gap:8px}.history-band .story{padding-top:65px;padding-bottom:65px}.history-band .story-copy{grid-row:1}.detail-page .story img{height:420px}.detail-page .story img.archive-photo{height:auto}.bedroom-heading br{display:none}}

/* Genuine Airbnb review excerpts, matching the site's editorial style. */
.guest-reviews{padding-top:90px;padding-bottom:90px;border-top:1px solid var(--line)}
.reviews-heading{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-bottom:45px}.reviews-heading h2{margin-bottom:0}.review-rating{display:flex;flex-direction:column;align-items:center;font-size:14px;min-width:170px}.rating-number{font-family:'Cormorant Garamond',Georgia,serif;font-size:58px;line-height:1.1}.rating-number>span{font-family:Inter,Arial,sans-serif;font-size:16px;color:var(--muted)}.review-stars{letter-spacing:4px;font-size:16px;color:#806a37;display:block;margin:8px 0}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.guest-quote{margin:0;display:flex;flex-direction:column;padding-right:24px}.guest-quote+.guest-quote{border-left:1px solid var(--line);padding-left:32px}.quote-mark{font-family:Georgia,serif;font-size:65px;line-height:1;color:#8b9c90;height:58px}.guest-quote blockquote{margin:0 0 30px;flex:1}.guest-quote blockquote p{font-family:'Cormorant Garamond',Georgia,serif;font-size:32px;line-height:1.2;margin:0}.guest-quote figcaption{display:flex;flex-direction:column;font-size:14px}.guest-quote figcaption strong{font-weight:500;font-size:16px}.guest-quote figcaption>span:not(.review-stars){color:var(--muted);margin-top:3px}.reviews-footer{text-align:center;margin-top:40px}.reviews-footer p{font-size:12px;color:var(--muted);margin:16px 0 0}@media(max-width:650px){.guest-reviews{padding-top:65px;padding-bottom:65px}.reviews-heading{display:block;margin-bottom:36px}.reviews-heading h2{font-size:48px}.review-rating{align-items:flex-start;margin-top:24px}.rating-number{font-size:48px}.review-grid{grid-template-columns:1fr;gap:26px}.guest-quote{padding-right:0}.guest-quote+.guest-quote{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.guest-quote blockquote{margin-bottom:20px}.guest-quote blockquote p{font-size:30px}.reviews-footer{text-align:left}}

/* Emphasise the overall guest rating without displaying the review count. */
.review-rating{min-width:210px}.rating-number{font-size:88px}.rating-number>span{font-size:24px}.review-rating>.review-stars{font-size:25px;letter-spacing:6px;margin:12px 0 0}
@media(max-width:650px){.rating-number{font-size:76px}.rating-number>span{font-size:22px}.review-rating>.review-stars{font-size:23px;letter-spacing:5px}}

/* Approved sage crest. */
.brand.sage-brand{position:relative;display:block;flex:none;width:124.8px;height:124.8px;overflow:hidden;border-radius:50%;background:transparent;line-height:0}
.brand.sage-brand img{position:absolute;width:189.474%;height:130.326%;max-width:none;left:-31.704%;top:-16.917%;object-fit:fill}
.header{height:151px}.footer-brand.sage-brand{width:144px;height:144px}
.bedroom-links{display:flex;flex-wrap:wrap;justify-content:center;gap:15px 28px;margin-top:32px}.bedroom-links a{border-bottom:1px solid #8b9c86;font-size:16px}
.named-bedroom{padding-top:45px;padding-bottom:55px;border-top:1px solid var(--line)}.named-bedroom h3{font-size:58px;margin:0 0 28px}.named-bedroom .room-lead{height:auto;max-height:640px;object-fit:contain;background:#e1e7df}.named-bedroom details{margin-top:24px}.named-bedroom summary{cursor:pointer;font-size:15px;padding:12px 0;color:var(--forest)}.room-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}.room-photos a{display:block}.room-photos img{height:300px;object-fit:contain;background:#e1e7df}.room-photo-link{display:block}.room-photo-link:focus-visible{outline-offset:4px}
@media(max-width:650px){.header{height:116px}.header .sage-brand{width:96px;height:96px}.header nav{top:116px}.named-bedroom h3{font-size:46px}.room-photos{grid-template-columns:repeat(2,1fr);gap:12px}.room-photos img{height:210px}}

/* Align the header logo with the hero copy. */
.header{padding-left:8%}
@media(max-width:900px){.header{padding-left:7%}}

.contact-email{background:var(--forest);color:white}.contact-email:hover{background:#385446}.contact-address{margin:18px 0 10px;overflow-wrap:anywhere}.contact-note{font-size:13px!important}.visit-address{text-align:center}
