.cottages-section{background:var(--heritage-parchment)}.heritage-cottage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.heritage-cottage-card{display:flex;flex-direction:column;background:var(--heritage-ivory);border-bottom:2px solid var(--heritage-purple)}.cottage-image{position:relative;width:100%;aspect-ratio:4/3.1;overflow:hidden;border:0;padding:0;background:var(--heritage-line);cursor:pointer}.cottage-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.heritage-cottage-card:hover .cottage-image img{transform:scale(1.035)}.cottage-image>span{position:absolute;top:0;right:0;padding:7px 11px;color:#251e18;background:var(--heritage-brass);font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.cottage-card-copy{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:22px 20px 18px}.cottage-card-copy small{color:var(--heritage-purple);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.cottage-card-copy h3{margin:8px 0;font:700 20px/1.3 var(--heritage-display)}.cottage-card-copy p{min-height:48px;margin:0;color:var(--heritage-stone);font-size:14px}.cottage-price-row{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:22px;padding-top:16px;border-top:1px solid var(--heritage-line)}.cottage-price-row strong{display:block;font-size:15px;font-variant-numeric:tabular-nums}.cottage-price-row span{display:block;color:var(--heritage-stone);font-size:10px}.cottage-price-row button{border:0;padding:0;color:var(--heritage-purple);background:none;font-size:12px;font-weight:700;cursor:pointer}
.heritage-story{padding:116px 0;color:#f7f0e4;background:var(--heritage-plum)}.story-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:clamp(60px,9vw,130px)}.story-copy .heritage-section-heading h2{color:#fff}.story-copy>p{max-width:55ch;color:#ffffffb3}.story-copy dl{display:grid;grid-template-columns:1fr 1fr;margin:35px 0;padding:24px 0;border-block:1px solid #ffffff2b}.story-copy dl div+div{padding-left:28px;border-left:1px solid #ffffff2b}.story-copy dt{color:#e2c98f;font:26px var(--heritage-display)}.story-copy dd{margin:3px 0 0;color:#ffffffa6;font-size:12px}.story-image{height:520px}.story-image:before{background-color:var(--heritage-brass)}.story-image img{width:100%;height:100%;object-fit:cover}
.activity-section .heritage-section-heading{margin-bottom:44px}.heritage-activity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.heritage-activity-grid article{border-bottom:1px solid var(--heritage-line)}.heritage-activity-grid img{width:100%;aspect-ratio:4/5;object-fit:cover}.heritage-activity-grid article>div{padding:18px 2px 20px}.heritage-activity-grid small{color:var(--heritage-purple);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.heritage-activity-grid h3{margin:7px 0;font:700 20px var(--heritage-display)}.heritage-activity-grid p{margin:0 0 16px;color:var(--heritage-stone);font-size:14px}.heritage-activity-grid button{border:0;padding:0;color:var(--heritage-purple);background:none;font-size:12px;font-weight:700;cursor:pointer}.activities-all{display:block;margin:40px auto 0}
.heritage-dining{display:grid;grid-template-columns:1.1fr .9fr;min-height:550px;color:#fff;background:#3a2d3a}.dining-image{overflow:hidden;background:#4d414b}.dining-image img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.dining-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(60px,8vw,112px)}.dining-copy h2{max-width:14ch;color:#fff}.dining-copy p{max-width:50ch;color:#ffffffb8}.dining-copy .heritage-button{align-self:flex-start;margin-top:20px}

/* Defer layout and paint work for sections that are still below the viewport. */
.welcome-section,.cottages-section,.heritage-story,.heritage-reviews,.heritage-dining,.heritage-contact-section,.heritage-footer{content-visibility:auto;contain-intrinsic-size:auto 760px}
.heritage-contact-section{padding:108px 0;background:var(--heritage-parchment)}.contact-panels{display:grid;grid-template-columns:1.25fr .75fr;box-shadow:0 22px 55px #2b1b2e1a}.stay-panel{padding:clamp(40px,6vw,76px);color:#fff;background:var(--heritage-plum)}.stay-panel h2{max-width:15ch;color:#fff}.stay-panel>p{color:#ffffffb3}.stay-panel form{margin-top:28px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.stay-panel label span{display:block;margin-bottom:6px;color:#ffffffb3;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.stay-panel input,.stay-panel select{width:100%;min-height:48px;border:1px solid #ffffff40;border-radius:0;padding:0 13px;color:#fff;background:#ffffff0f;outline:none}.stay-panel select option{color:var(--heritage-charcoal);background:#fff}.stay-panel input:focus,.stay-panel select:focus{border-color:var(--heritage-brass)}.stay-panel form>.heritage-button{margin-top:8px}.newsletter-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,5vw,66px);background:var(--heritage-ivory)}.newsletter-panel h3{margin:16px 0 12px;font:700 30px/1.3 var(--heritage-display)}.newsletter-panel p{color:var(--heritage-stone)}.newsletter-panel form{display:flex;margin-top:18px}.newsletter-panel input{min-width:0;flex:1;height:48px;border:1px solid var(--heritage-line);border-right:0;border-radius:0;padding:0 13px;background:transparent}.newsletter-panel button{border:1px solid var(--heritage-purple);padding:0 18px;color:#fff;background:var(--heritage-purple);font-size:11px;font-weight:700;letter-spacing:.07em;cursor:pointer}
.heritage-footer{padding:76px 0 24px;color:#ffffffc2;background:#211822}.footer-main{display:grid;grid-template-columns:1.4fr 1fr .7fr 1fr;gap:60px;padding-bottom:56px}.footer-brand img{width:128px;height:105px;object-fit:contain;object-position:left center}.footer-brand p,.footer-book p{max-width:34ch;font-size:14px}.footer-main h4{margin:0 0 18px;color:#e3ca91;font:700 16px var(--heritage-display)}.footer-main a,.footer-main button:not(.heritage-button){display:block;border:0;padding:3px 0;color:#ffffffc2;background:none;font-size:14px;text-decoration:none;text-align:left;cursor:pointer}.footer-main a:hover,.footer-main button:not(.heritage-button):hover{color:#fff}.footer-book .heritage-button{margin-top:10px}.footer-bottom{display:flex;justify-content:space-between;gap:30px;padding-top:20px;border-top:1px solid #ffffff24;font-size:11px;letter-spacing:.055em}
.heritage-action-rail{position:fixed;z-index:var(--z-dock);left:0;top:50%;display:flex;flex-direction:column;transform:translateY(-50%);background:var(--heritage-plum);box-shadow:0 8px 24px #2b1b2e2e}.heritage-action-rail a,.heritage-action-rail button{width:42px;height:86px;border:0;border-bottom:1px solid #ffffff24;color:#fff;background:transparent;font-size:10px;font-weight:700;letter-spacing:.08em;text-decoration:none;writing-mode:vertical-rl;transform:rotate(180deg);cursor:pointer}.heritage-action-rail a{display:grid;place-items:center}.heritage-action-rail a:hover,.heritage-action-rail button:hover{background:var(--heritage-purple)}.heritage-whatsapp-fab{display:none}.heritage-scroll-top{position:fixed;z-index:var(--z-dock);right:24px;bottom:24px;width:44px;height:44px;border:1px solid var(--heritage-brass);color:#fff;background:var(--heritage-plum);opacity:0;pointer-events:none;cursor:pointer;transform:translateY(8px);transition:.18s ease}.heritage-scroll-top.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.heritage-mobile-dock{display:none}.heritage-toast{position:fixed;z-index:60;left:50%;bottom:28px;max-width:min(520px,calc(100% - 32px));padding:13px 18px;color:#fff;background:var(--heritage-plum);border-left:3px solid var(--heritage-brass);opacity:0;pointer-events:none;transform:translate(-50%,12px);transition:.2s ease}.heritage-toast.visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:1120px){.header-inner{grid-template-columns:150px 1fr auto;gap:20px}.heritage-nav{gap:17px}.header-signin{display:none}.heritage-cottage-grid,.heritage-activity-grid{grid-template-columns:repeat(2,1fr);gap:22px}.heritage-activity-grid img{aspect-ratio:16/10}.footer-main{grid-template-columns:1.2fr 1fr 1fr}.footer-book{grid-column:2/span 2}}
@media(max-width:900px){:root{--heritage-container:min(100% - 36px,760px)}.heritage-nav,.header-book{display:none}.header-inner{grid-template-columns:1fr auto}.heritage-menu-button{display:block}.heritage-mobile-menu{position:fixed;z-index:29;inset:116px 0 0;display:block;padding:35px 24px;background:var(--heritage-parchment);opacity:0;pointer-events:none;transform:translateY(-12px);transition:.2s ease}.heritage-mobile-menu.open{opacity:1;pointer-events:auto;transform:none}.heritage-mobile-menu nav{width:min(100%,560px);margin:auto}.heritage-mobile-menu button{display:block;width:100%;border:0;border-bottom:1px solid var(--heritage-line);padding:15px 4px;background:none;font:22px var(--heritage-display);text-align:left}.heritage-hero{min-height:720px;height:calc(100dvh - 116px);max-height:820px}.hero-copy{width:82%}.heritage-booking-bar{grid-template-columns:1fr 1fr}.heritage-booking-bar label{padding:11px 15px;border-bottom:1px solid var(--heritage-line)}.heritage-booking-bar .heritage-button{min-height:58px;grid-column:span 2}.hero-controls{bottom:178px}.heritage-trust{padding-top:132px}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div:nth-child(2){border-right:0}.trust-grid>div:nth-child(-n+2){padding-bottom:20px;border-bottom:1px solid var(--heritage-line)}.trust-grid>div:nth-child(n+3){padding-top:20px}.welcome-grid,.story-grid{grid-template-columns:1fr}.welcome-images{width:min(100%,620px);margin:auto}.welcome-copy,.story-copy{max-width:680px}.story-image{order:-1;height:440px}.heritage-dining{grid-template-columns:1fr}.dining-image{min-height:420px}.contact-panels{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}.footer-book{grid-column:auto}.heritage-action-rail{display:none}}
@media(max-width:620px){:root{--heritage-container:calc(100% - 28px)}body{padding-bottom:60px;font-size:15px}.heritage-utility,.utility-inner{min-height:31px}.utility-inner{justify-content:center}.utility-inner>span{display:none}.heritage-header,.header-inner{min-height:70px}.heritage-logo{width:132px}.heritage-logo img{height:62px}.heritage-mobile-menu{inset-block-start:101px}.heritage-hero{min-height:700px;height:calc(100svh - 101px);max-height:none}.hero-shade{background:linear-gradient(90deg,#190f1bcc,#18121852),linear-gradient(0deg,#130e14b3,transparent 55%)}.hero-content{align-items:flex-start;padding-top:94px;padding-bottom:210px}.hero-copy{width:100%}.hero-copy h1{margin-top:18px;font-size:clamp(36px,11vw,48px)}.hero-copy p{font-size:15px}.hero-cta-row{align-items:flex-start;flex-direction:column;gap:8px;margin-top:24px}.hero-controls{right:auto;left:0;bottom:202px}.heritage-booking-bar{grid-template-columns:1fr 1fr;width:calc(100% - 20px)}.heritage-booking-bar label:nth-of-type(3),.heritage-booking-bar label:nth-of-type(4){display:none}.heritage-booking-bar label{padding:11px 12px}.heritage-booking-bar input{font-size:12px}.heritage-trust{padding-top:86px}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div{padding-inline:10px}.trust-grid strong{font-size:16px}.trust-grid span{font-size:10px}.heritage-section{padding:78px 0 84px}.section-heading-row{display:block;margin-bottom:32px}.section-heading-row>.heritage-text-link{margin-top:14px}.heritage-section-heading h2,.dining-copy h2,.stay-panel h2{font-size:31px}.welcome-images{min-height:420px}.welcome-primary{height:370px;width:86%}.welcome-secondary{width:48%;height:190px;border-width:6px}.heritage-seal{width:90px;height:90px;right:0;bottom:-2px}.heritage-seal strong{font-size:21px}.welcome-copy{margin-top:45px}.heritage-cottage-grid{grid-template-columns:1fr}.cottage-image{aspect-ratio:16/10}.heritage-story{padding:82px 0}.story-image{height:300px}.story-copy dl{gap:18px}.story-copy dl div+div{padding-left:18px}.heritage-activity-grid{grid-template-columns:1fr}.heritage-activity-grid article{display:grid;grid-template-columns:41% 1fr;gap:16px}.heritage-activity-grid img{height:100%;min-height:190px;aspect-ratio:auto}.heritage-activity-grid article>div{padding-top:7px}.dining-image{min-height:320px}.dining-copy{padding:54px 24px 64px}.heritage-contact-section{padding:72px 0}.stay-panel,.newsletter-panel{padding:36px 24px}.field-pair{grid-template-columns:1fr}.newsletter-panel form{flex-direction:column;gap:8px}.newsletter-panel input{border-right:1px solid var(--heritage-line)}.newsletter-panel button{min-height:46px}.heritage-footer{padding-top:56px}.footer-main{grid-template-columns:1fr;gap:34px}.footer-bottom{flex-direction:column;gap:5px}.heritage-whatsapp-fab{position:fixed;z-index:var(--z-dock);right:14px;bottom:76px;display:grid;place-items:center;width:48px;height:48px;color:#fff;background:#286b49;border-radius:50%;font-size:11px;font-weight:800;letter-spacing:.04em;text-decoration:none;box-shadow:0 8px 24px #14312340}.heritage-scroll-top{right:70px;bottom:78px;width:44px;height:44px}.heritage-mobile-dock{position:fixed;z-index:var(--z-dock);inset:auto 0 0;display:grid;grid-template-columns:1fr 1fr 1.3fr;min-height:60px;background:var(--heritage-ivory);border-top:1px solid var(--heritage-line);box-shadow:0 -5px 20px #2b1b2e1c}.heritage-mobile-dock a,.heritage-mobile-dock button{display:grid;place-items:center;border:0;border-right:1px solid var(--heritage-line);color:var(--heritage-plum);background:transparent;font-size:11px;font-weight:700;text-decoration:none}.heritage-mobile-dock button{color:#fff;background:var(--heritage-purple)}.heritage-toast{bottom:74px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.heritage-icon{display:block;flex:0 0 auto}.utility-inner a{display:inline-flex;align-items:center;gap:6px}.trust-grid>div,.interior-trust-grid>div{display:grid;justify-items:center;align-content:start}.trust-icon{display:grid!important;place-items:center;width:38px;height:38px;margin:0 auto 8px!important;color:var(--heritage-purple);background:#782a820d;border:1px solid #782a8226;border-radius:50%;letter-spacing:0!important}.heritage-action-rail{width:58px}.heritage-action-rail a,.heritage-action-rail button{display:flex;width:58px;height:78px;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:7px 3px;writing-mode:horizontal-tb;transform:none;font-size:9px;line-height:1.1}.heritage-action-rail .heritage-icon{color:#fff}.heritage-mobile-dock a,.heritage-mobile-dock button{gap:3px;align-content:center;justify-items:center}.heritage-whatsapp-fab .heritage-icon{width:28px;height:28px}
@media(max-width:620px){.utility-inner a[href^="mailto"],.utility-inner a[href^="tel"]+span,.utility-inner a[href^="mailto"]+span{display:none}.utility-inner>div{gap:10px}.heritage-mobile-dock a,.heritage-mobile-dock button{display:flex;flex-direction:column;align-items:center;justify-content:center}}
.footer-main .footer-quick-link{display:flex!important;align-items:center;gap:8px}.footer-quick-link .heritage-icon{color:#e3ca91}

@media(max-width:900px){
  body{padding-bottom:0}
  .heritage-mobile-dock{position:fixed;z-index:var(--z-dock);inset:auto 0 0;display:none;grid-template-columns:1fr 1fr 1.3fr;min-height:60px;background:var(--heritage-ivory);border-top:1px solid var(--heritage-line);box-shadow:0 -5px 20px #2b1b2e1c}
  body.heritage-menu-open .heritage-mobile-dock{display:grid}
  .heritage-mobile-dock a,.heritage-mobile-dock button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;border:0;border-right:1px solid var(--heritage-line);color:var(--heritage-plum);background:transparent;font-size:11px;font-weight:700;text-decoration:none}
  .heritage-mobile-dock button{color:#fff;background:var(--heritage-purple)}
}

/* Keep portrait source photos from creating excessively tall activity cards. */
.heritage-activity-grid img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center}

.heritage-reviews{color:#f8f1e7;background:var(--heritage-plum)}
.reviews-heading-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:48px;margin-bottom:46px}
.reviews-heading-row h2{margin:16px 0 12px;color:#fff;font:700 clamp(32px,3.6vw,46px)/1.2 var(--heritage-display);letter-spacing:-.025em}
.reviews-heading-row p{max-width:58ch;margin:0;color:#ffffffad}
.reviews-score{display:grid;min-width:190px;padding:22px 25px;color:#fff;background:#ffffff0a;border:1px solid #ffffff24;text-decoration:none}
.reviews-score strong{font:700 38px/1 var(--heritage-display)}
.reviews-score strong span{font-size:16px;color:#ffffff99}
.review-stars{margin:8px 0 3px;color:var(--heritage-brass);font-size:15px;letter-spacing:.13em}
.reviews-score small{color:#ffffffa8;font-size:11px}
.reviews-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.review-card{display:flex;min-height:190px;flex-direction:column;justify-content:space-between;margin:0;padding:30px;background:var(--heritage-ivory);border-top:3px solid var(--heritage-brass);color:var(--heritage-charcoal)}
.review-card:first-child{grid-row:span 2;padding:42px}
.review-card:first-child blockquote{max-width:24ch;font-size:30px;line-height:1.45}
.review-card blockquote{margin:0;font:400 21px/1.55 var(--heritage-display)}
.review-card figcaption{display:grid;gap:2px;margin-top:26px;padding-top:17px;border-top:1px solid var(--heritage-line)}
.review-card figcaption strong{color:var(--heritage-purple);font-size:13px}
.review-card figcaption span{color:var(--heritage-stone);font-size:11px}
.review-links{display:flex;align-items:center;gap:24px;margin-top:28px}
.review-links a{color:#ebd7a7;font-size:12px;font-weight:700;text-decoration:none}
.review-links a:hover{text-decoration:underline;text-underline-offset:4px}
.review-links small{margin-left:auto;color:#ffffff75;font-size:10px}

@media(max-width:900px){.reviews-heading-row{grid-template-columns:1fr}.reviews-score{width:220px}.reviews-grid{grid-template-columns:1fr}.review-card,.review-card:first-child{grid-row:auto;min-height:0;padding:30px}.review-card:first-child blockquote{max-width:none;font-size:24px}.review-links{align-items:flex-start;flex-direction:column;gap:10px}.review-links small{margin-left:0}}
@media(max-width:620px){.heritage-activity-grid img{height:190px;min-height:0;max-height:190px;aspect-ratio:auto}.reviews-heading-row{margin-bottom:30px}.review-card,.review-card:first-child{padding:24px}.review-card blockquote,.review-card:first-child blockquote{font-size:19px}}
