/* September 2026: a quieter menu, clearer home selection and a useful stay enquiry. */
.site-header{height:98px;padding:14px 24px;align-items:center}.brand{top:10px;width:110px}.brand img{height:80px}.site-header.scrolled,.menu-open .site-header{height:80px}.site-header.scrolled .brand,.menu-open .brand{top:5px;width:88px}.site-header.scrolled .brand img,.menu-open .brand img{height:69px}.book-top{min-height:46px;padding:12px 17px}.menu-toggle{font-size:14px}
.menu-overlay{inset:90px auto auto 20px;width:min(820px,calc(100vw - 40px));max-height:calc(100svh - 110px);height:auto;padding:30px;grid-template-columns:1.2fr 1fr;grid-template-rows:auto auto;gap:28px 36px;background-size:100% 100%,560px auto;box-shadow:0 18px 60px #211c1730;border:1px solid #d7d1c4;border-radius:3px}.menu-main{gap:16px}.menu-main>a{font-size:1.65rem;line-height:1.25;min-height:34px;letter-spacing:-.025em}.menu-stays{display:grid;grid-template-columns:1fr;gap:8px;margin:0 0 7px;width:100%}.menu-stays a{font-size:1.05rem;color:var(--ink);min-height:58px;padding:17px 18px;background:#fff9;border:1px solid #9a92784a;border-radius:2px}.menu-stays a:hover{background:white;text-decoration:none;border-color:var(--gold)}.menu-world{padding-top:0}.menu-world h2{font-size:.8125rem;letter-spacing:.08em;margin-bottom:12px}.menu-venture summary{font-size:1.35rem;padding:17px 0}.menu-venture-content>p{font-size:.875rem}.menu-bottom{padding-top:12px;gap:20px;margin:0;align-items:flex-start}.menu-bottom>div{gap:12px}.menu-follow{display:block!important}.menu-follow .menu-socials{gap:14px}.menu-follow>span{font-size:.8125rem}.menu-open:after{content:'';position:fixed;inset:80px 0 0;background:#17150f26;z-index:33;pointer-events:none}
.property-card{position:relative;display:block}.property-card:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.property-card:hover .button{background:#fff2}.property-card>:is(img,.cms-frame){transition:transform .6s}.property-card>div{inset:auto 7% 38px}.property-card h3{line-height:1.15}
.pillar-content{top:50%;bottom:auto!important;transform:translateY(-50%)}.pillar-shade{background:#17150f66}.pillar-tabs{flex-wrap:wrap;gap:10px 30px;justify-content:center;overflow:visible}.pillar-panel p{font-size:1rem}.pillars{min-height:720px;height:86svh}.note-signature{margin:28px auto 0;text-align:center}.family-letter{transform:none}.note-stanza+.note-stanza{transform:none}.family-note{padding-top:76px;padding-bottom:36px}.family-note+.properties{padding-top:48px}
.section-heading{text-align:center;max-width:780px;margin:0 auto 42px}.section-heading .eyebrow{color:var(--muted);margin-bottom:14px}.section-heading h2{margin:0}.section-pad{max-width:1600px;margin-left:auto;margin-right:auto}.home-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.home-detail-card{background:#ebe7dd}.home-detail-card>:is(img,.cms-frame){width:100%;height:360px}.home-detail-card>div{padding:30px}.home-detail-card h3{margin:9px 0 18px}.home-detail-card p:not(.eyebrow){color:var(--muted);max-width:60ch;margin-bottom:24px}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:30px 40px;max-width:1500px;margin:auto}.photo-pair :is(img,.cms-frame){width:100%;height:510px}.inclusion-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;max-width:1200px;margin:0 auto}.inclusion-list li{padding:15px 0;border-bottom:1px solid #80735e2e;line-height:1.55}.additional-services{max-width:1200px;margin:30px auto 0;padding:22px 0;border-bottom:1px solid #80735e40}.additional-services summary{cursor:pointer;font-family:var(--serif);font-size:1.4rem}.additional-services p{margin-top:18px;color:var(--muted)}.additional-services ul{line-height:1.8}
.amenity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.amenity-card{position:relative;min-width:0;background:#ebe7dd;overflow:hidden}.amenity-card>:is(img,.cms-frame){width:100%;height:340px;transition:transform .6s ease}.amenity-card:hover>img,.amenity-card:focus>img{transform:scale(1.025)}.amenity-card>div{padding:28px}.amenity-card h3{font-size:1.8rem;margin-bottom:16px}.amenity-card p{color:var(--muted)}.amenity-card ul{padding-left:20px;line-height:1.85;margin:18px 0 0}.amenity-extra{font-size:.875rem;margin-top:20px;padding-top:18px;border-top:1px solid #80735e2e}.experience-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-bottom:60px}.experience-filters button{background:none;border:1px solid #80735e55;padding:14px 22px;min-height:48px}.experience-filters button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.coming-soon{background:#e8e5db;text-align:center;padding-top:70px;padding-bottom:75px}.coming-soon .eyebrow{margin-bottom:18px;color:var(--muted)}.coming-soon p:not(.eyebrow){max-width:590px;margin:25px auto}.coming-soon h2{max-width:740px;margin:auto}
.directions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.directions-grid:has(>article:only-child){grid-template-columns:1fr;max-width:1100px;margin:auto}.directions iframe{height:350px;width:100%;border:0;filter:saturate(.7)}.directions h3{font-size:1.6rem;margin:23px 0 12px}.directions p{color:var(--muted);margin-bottom:15px}.directions .text-button{display:inline-flex;align-items:center;gap:12px}.team-section{max-width:1200px;text-align:center}.team-section>img{width:100%;height:auto}.team-copy{display:grid;grid-template-columns:1.4fr 1fr;text-align:left;gap:70px;margin:35px 0}.team-copy>p{color:var(--muted)}.team-copy h3{font-size:1.6rem;margin-bottom:10px}.team-copy a{display:inline-block;margin-top:12px}.scholarship{max-width:1050px;text-align:center;background:#e8e5db;padding-top:70px;padding-bottom:70px}.scholarship .eyebrow{margin-bottom:20px;color:var(--muted)}.scholarship h2{max-width:700px;margin:auto}.scholarship>p:not(.eyebrow){max-width:750px;margin:28px auto;line-height:1.7}.newsletter{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:45px 0;border-top:1px solid #80735e40;margin-top:38px}.newsletter h2{font-size:1.8rem;margin-bottom:13px}.newsletter p{max-width:520px;color:var(--muted)}.newsletter .button{white-space:nowrap}.footer-social>p{color:var(--muted);max-width:250px;margin-bottom:15px}.page-title{text-align:center;padding:155px 24px 45px}.page-title h1{margin:20px 0}.page-title>p{color:var(--muted);max-width:680px;margin:auto}.page-title+.section-pad{padding-top:30px}.page-title~.gallery-section{max-width:1650px}.page-title~.gallery-section .gallery-item{aspect-ratio:4/3}.gallery-count{text-align:center;color:var(--muted);margin:0 0 28px}.gallery-more{text-align:center;margin-top:36px}.gallery-item>span{opacity:0;transition:opacity .2s}.gallery-item:hover>span,.gallery-item:focus-visible>span{opacity:1}.jobs-list{max-width:1150px;padding-bottom:100px}.job-card{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 0;border-bottom:1px solid #80735e50}.job-card h2{font-size:1.7rem;margin-bottom:13px}.job-card p{color:var(--muted)}.job-card>span{display:flex;align-items:center;gap:14px;white-space:nowrap}.job-card:hover h2{text-decoration:underline;text-underline-offset:5px}.legal-copy{max-width:900px;padding:30px 24px 100px;margin:auto}.legal-copy h2{font-size:1.6rem;margin:36px 0 17px}.legal-copy p{margin:0 0 18px;line-height:1.7}.legal-copy a{text-decoration:underline;overflow-wrap:anywhere}
.booking-dialog{width:min(650px,calc(100% - 32px));padding:0;max-height:calc(100svh - 40px);border-radius:3px;overflow:auto}.booking-dialog.has-property{width:min(1200px,calc(100% - 32px))}.booking-top{position:sticky;top:0;z-index:4;background:var(--paper);padding:22px 28px;border-bottom:1px solid #80735e30;min-height:65px}.booking-top .eyebrow{margin:0;font-size:.8125rem}.booking-top .dialog-close{top:10px;right:17px}.booking-layout{display:grid;grid-template-columns:1fr}.has-property .booking-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.booking-preview{background:#e8e5dc;min-width:0}.booking-preview>img{width:100%;height:280px}.booking-preview>div{padding:28px 30px}.booking-preview h3{font-size:1.9rem;margin:10px 0 17px}.booking-preview p{font-size:.9375rem;color:var(--muted);line-height:1.55}.booking-preview ul{padding-left:20px;line-height:1.7;font-size:.9375rem}.booking-preview>div>ul{margin:22px 0}.booking-preview details{padding:18px 0;border-top:1px solid #80735e40}.booking-preview summary{cursor:pointer;font-family:var(--serif);font-size:1.2rem}.booking-preview details p{font-size:.875rem}.booking-fields{padding:32px 34px 28px;min-width:0}.booking-fields h2{font-size:2rem;line-height:1.15}.booking-introduction{color:var(--muted);font-size:.9375rem}.booking-dialog label{font-size:.9375rem}.booking-dialog input,.booking-dialog select,.booking-dialog textarea{background:#fff7;min-height:45px}.booking-dialog label:has(.optional){display:block}.booking-dialog label:has(.optional) input{display:block;margin-top:7px}.optional{font-size:.875rem;color:var(--muted)}.occupancy-note{font-size:.875rem;color:var(--muted);margin-bottom:20px}.stay-price{background:#e8e5da;border:1px solid #99896648;padding:22px;margin:20px 0 25px}.price-label{font-size:.875rem;color:var(--muted);margin-bottom:10px!important}.price-total{display:block;font:400 2.2rem var(--serif);margin:6px 0 20px}.price-breakdown{padding:0;margin:0;list-style:none;font-size:.875rem}.price-breakdown li{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid #99896635}.price-note{font-size:.8125rem;color:var(--muted);margin-top:16px!important;line-height:1.55}.booking-dialog .consent{display:flex;flex-direction:row;align-items:flex-start;gap:12px;margin-top:23px;font-size:.875rem}.booking-dialog .consent input{width:18px;min-height:18px;height:18px;margin:2px 0;flex-shrink:0;accent-color:var(--green)}.consent a{text-decoration:underline}.booking-no-payment{font-size:.875rem;color:var(--muted);text-align:center;margin-top:18px}.booking-dialog .form-error:not(:empty){padding:12px 0}.enquiry-result h3{font-size:1.7rem}.enquiry-result #enquiry-price{margin-top:20px;background:#e8e5da;padding:22px}.enquiry-result #enquiry-price p{margin-top:0}.enquiry-result #copy-status{font-size:.875rem}.booking-note{font-size:.8125rem!important}.booking-dialog .button{min-height:50px}
@media(max-width:900px){.inclusion-list{grid-template-columns:1fr 1fr}.menu-overlay{width:min(740px,calc(100vw - 32px));left:16px;padding:26px;gap:24px}.menu-main>a{font-size:1.45rem}.menu-world h2{font-size:.75rem}.has-property .booking-layout{grid-template-columns:.85fr 1.15fr}.booking-fields{padding:28px 24px}.booking-preview>div{padding:25px 22px}.photo-pair{padding:25px}.amenity-card>:is(img,.cms-frame){height:270px}}
@media(max-width:700px){.site-header{height:86px;padding:10px 16px}.brand{top:5px;width:95px}.brand img{height:74px}.site-header.scrolled,.menu-open .site-header{height:76px}.site-header.scrolled .brand,.menu-open .brand{top:3px;width:85px}.site-header.scrolled .brand img,.menu-open .brand img{height:70px}.book-top{font-size:.8125rem;padding:11px 12px}.menu-label{font-size:.8125rem}.menu-overlay{inset:84px 12px auto;width:calc(100vw - 24px);max-height:calc(100svh - 100px);grid-template-columns:1fr;padding:22px;gap:22px}.menu-main{gap:10px}.menu-main>a{font-size:1.4rem;min-height:34px}.menu-stays{grid-template-columns:1fr 1fr;gap:8px;margin:0 0 4px}.menu-stays a{font-size:.9375rem;padding:14px 10px;text-align:center;min-height:52px}.menu-world{border-top:1px solid #80735e35;padding-top:20px}.menu-venture summary{font-size:1.2rem;padding:13px 0}.menu-world h2{margin-bottom:6px}.menu-bottom{display:block;padding-top:10px}.menu-bottom .menu-utility{display:flex;gap:20px}.menu-follow>span{display:none}.menu-follow .menu-socials{gap:18px}.menu-follow .menu-socials a{font-size:.8125rem;min-height:35px}.menu-open:after{inset:76px 0 0}.property-card>div{inset:auto 24px 28px}.property-card>div>p:not(.eyebrow){font-size:1rem}.property-card .eyebrow{font-size:.8125rem}.property-card h3{font-size:2rem}.pillars{height:760px;min-height:0}.pillar-tabs{gap:6px 17px;justify-content:center}.pillar-panel p{font-size:1rem}.pillar-content{left:24px;right:24px}.pillar-panel h2{font-size:2rem}.family-note{padding:55px 26px 28px}.family-note+.properties{padding-top:36px}.family-letter{transform:none}.note-signature{margin:24px auto 0}.home-detail-grid,.amenity-grid,.directions-grid,.team-copy{grid-template-columns:1fr}.home-detail-card>:is(img,.cms-frame){height:300px}.home-detail-card>div{padding:25px}.photo-pair{padding:15px;gap:9px}.photo-pair :is(img,.cms-frame){height:290px}.inclusion-list{gap:0 20px;font-size:.9375rem}.amenity-card>:is(img,.cms-frame){height:300px}.amenity-card>div{padding:24px}.team-copy{gap:28px;margin:28px 0}.newsletter{display:block;padding:35px 0}.newsletter .button{margin-top:24px;white-space:normal}.page-title{padding-top:125px}.gallery-count{text-align:left}.gallery-item>span{display:none}.gallery-filters{justify-content:center}.job-card{align-items:flex-start;flex-direction:column;gap:18px}.job-card h2{font-size:1.5rem}.booking-dialog,.booking-dialog.has-property{width:calc(100% - 16px);max-height:calc(100svh - 16px)}.has-property .booking-layout{display:flex;flex-direction:column}.booking-preview{order:2}.booking-preview>img{height:240px}.booking-fields{padding:26px 22px}.booking-fields h2{font-size:1.8rem}.booking-top{padding:20px 22px}.booking-preview>div{padding:25px 22px}.booking-dialog .form-row{gap:12px}.price-total{font-size:2rem}.directions iframe{height:290px}.scholarship{padding:55px 25px}.scholarship h2{font-size:2rem}.footer-top{gap:35px 20px}.newsletter p,.footer-social>p{font-size:1rem}.button{min-height:46px}.section-heading{margin-bottom:32px}}
@media(prefers-reduced-motion:reduce){.property-card>:is(img,.cms-frame),.amenity-card>:is(img,.cms-frame){transition:none;transform:none!important}.family-letter{transform:none}}

.exclusive-note{max-width:1200px;margin:28px auto;color:var(--muted);font-size:.9375rem}.amenity-grid:has(>article:last-child:nth-child(odd))>article:last-child{grid-column:1/-1}.amenity-grid:has(>article:last-child:nth-child(odd))>article:last-child>img{max-height:400px}
.booking-dialog .form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-dialog label{min-width:0}.booking-dialog input,.booking-dialog select{width:100%;min-width:0;max-width:100%}
.room-layout{padding-bottom:40px}.room-layout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,6vw,90px);max-width:1200px;margin:auto}.room-layout-grid article{min-width:0;border-top:1px solid #80735e55;padding-top:26px}.room-layout-grid .eyebrow{font-size:.875rem;color:var(--muted);line-height:1.6}.room-layout-grid h3{font-size:2rem;margin:12px 0 18px}.room-layout-grid p,.room-layout-grid dd{font-size:1rem;line-height:1.7;color:var(--muted)}.room-layout-grid dl{margin:24px 0}.room-layout-grid dl>div{padding:17px 0;border-bottom:1px solid #80735e2e}.room-layout-grid dt{font-family:var(--serif);font-size:1.25rem;line-height:1.4;margin-bottom:8px}.room-layout-grid dd{margin:0}.room-layout-note{max-width:56ch}.room-layout-comfort{max-width:760px;margin:38px auto 0;text-align:center;font-size:1rem;line-height:1.7;color:var(--muted)}
@media(max-width:700px){.room-layout-grid{grid-template-columns:1fr;gap:34px}.room-layout{padding-bottom:20px}.room-layout-comfort{text-align:left;margin-top:28px}.room-layout-grid h3{font-size:1.8rem}}
@media(max-width:700px){.booking-preview{display:contents}.booking-preview>img{order:0;height:180px}.booking-fields{order:1}.booking-preview>div{order:2;background:#e8e5dc}.booking-preview[hidden]{display:none}}

.job-featured{padding:clamp(26px,4vw,48px);border:1px solid #80735e55}.job-featured>.eyebrow{font-size:.875rem;color:var(--muted);margin-bottom:22px}.job-featured h2{max-width:750px;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2}.job-scope{margin-top:17px;color:var(--muted)}.job-summary{max-width:65ch;margin:26px 0 18px;line-height:1.7}.job-apply-copy{line-height:1.7}.job-apply-copy a{overflow-wrap:anywhere}.job-apply-copy a,.jobs-heading a{text-decoration:underline;text-underline-offset:4px}.job-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:26px}.job-source{display:inline-flex;align-items:center;gap:12px;min-height:44px}.job-source:hover{text-decoration:underline;text-underline-offset:5px}.job-featured .button{white-space:normal;text-align:center}.jobs-heading{margin:55px 0 8px}.jobs-heading h2,.careers-follow h2{font-size:1.8rem}.jobs-heading p,.careers-follow>p{color:var(--muted);max-width:65ch;margin-top:15px;line-height:1.7}.job-card h3{font-size:1.7rem;margin-bottom:13px}.job-card:hover h3{text-decoration:underline;text-underline-offset:5px}.careers-follow{margin-top:52px}.careers-follow .job-actions{margin-top:14px}.careers-follow>.careers-reviewed{margin-top:28px;font-size:.875rem}
@media(max-width:700px){.job-card h3{font-size:1.5rem}.job-actions{align-items:flex-start;flex-direction:column;gap:12px}.job-source{white-space:normal}.job-featured .button{width:100%}.jobs-heading h2,.careers-follow h2{font-size:1.6rem}}

/* Detailed stay and single-date enquiries. */
.booking-dialog fieldset{border:0;padding:0;margin:0 0 27px;min-width:0}.booking-dialog legend{font:400 1.35rem var(--serif);margin-bottom:18px;padding:0}.booking-dialog label{line-height:1.5}.booking-dialog .form-row{row-gap:18px}.booking-dialog .title-choice{max-width:220px}.booking-dialog .field-help{font-size:.875rem;color:var(--muted);margin:-10px 0 22px;line-height:1.5}.booking-dialog .enquiry-dates.single-date{grid-template-columns:1fr}.booking-dialog .consent-policy{font-size:.875rem;margin:-7px 0 20px}.consent-policy a{text-decoration:underline;text-underline-offset:3px}.booking-dialog #enquiry-summary{margin:24px 0}.booking-dialog #enquiry-summary>div{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;padding:11px 0;border-bottom:1px solid #80735e30}.booking-dialog #enquiry-summary dt{font-size:.875rem;color:var(--muted)}.booking-dialog #enquiry-summary dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap;font-size:.9375rem}.booking-dialog [hidden]{display:none!important}
@media(max-width:440px){.booking-dialog #enquiry-summary>div{grid-template-columns:1fr;gap:4px}.booking-dialog .booking-fields{padding:24px 18px}.booking-dialog .form-row{gap:14px 10px}}

/* A quiet link to each property's illustrated map below its directions. */
.property-map-link { margin-top:22px; padding-top:18px; border-top:1px solid #2a2e1f26; }
.property-map-link .text-button { min-height:44px; gap:10px; }
.property-map-link svg { width:20px; height:20px; }
.property-map-link a:hover span { text-decoration:underline; text-underline-offset:5px; }

/* Remaining second-draft feedback: experiences grouped by type (U2); light form/footer polish (V4-V6) */
.experience-group{margin-bottom:48px}.experience-group:last-child{margin-bottom:0}.experience-type-label{margin-bottom:18px;letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;color:var(--muted)}
.booking-dialog select,.booking-dialog input,.booking-dialog textarea,.booking-bar select{font-family:var(--sans,inherit);color:inherit}
.booking-dialog label,.booking-dialog .eyebrow,.booking-preview summary{font-family:var(--sans,inherit)}
.booking-dialog h2,#booking-title{font-family:var(--serif,inherit)}
.closing h2{font-size:clamp(1.85rem,3vw,2.75rem)}
.booking-dialog select,.booking-dialog input,.booking-dialog textarea{accent-color:var(--green);border-color:#80735e55;color:var(--ink);background:#fffaf3;font-size:1rem;line-height:1.45}
.booking-dialog select{appearance:none;-webkit-appearance:none;background-image:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="10" height="7"%3E%3Cpath fill="none" stroke="%232A2E1F" stroke-width="1.2" d="m1 1 4 4 4-4"/%3E%3C/svg%3E');background-repeat:no-repeat;background-position:right 12px center;padding-right:34px}
.booking-dialog option,.booking-bar option{font-family:var(--sans,inherit);color:var(--ink);background:var(--paper,#FAF7F2)}
.booking-bar select{accent-color:var(--green);font-size:14px}
.booking-dialog legend{font-family:var(--serif);font-weight:400;color:var(--ink);letter-spacing:-.02em}
.booking-fields h2,#booking-title{font-size:clamp(1.75rem,2.5vw,2.15rem);letter-spacing:-.03em}
.booking-introduction{font-family:var(--sans,inherit);line-height:1.55}
footer .footer-top h2{font-size:clamp(1.35rem,2vw,1.7rem);letter-spacing:-.02em;margin-bottom:18px}
footer .footer-top h3{font-size:clamp(1.2rem,1.8vw,1.45rem);margin-bottom:18px}
footer .footer-top a,footer .footer-social>p,footer .contact-block .text-button{font-size:.9375rem;line-height:1.5}
footer .footer-social>p{max-width:28ch}
.closing h2{letter-spacing:-.03em;line-height:1.15;max-width:18ch;margin-left:auto;margin-right:auto}
.enquiry-hp{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.enquiry-result .send-error{margin:0 0 16px}
#send-enquiry[disabled]{opacity:.55}
.enquiry-sent h3{margin-bottom:12px}
.enquiry-sent p{color:var(--muted);margin-bottom:12px}

/* A warm matte fade supports white copy while leaving the upper photograph open. */
.property-card::after {
  background:linear-gradient(180deg,rgba(42,46,31,.06) 0%,rgba(42,46,31,.16) 30%,rgba(30,32,25,.5) 58%,rgba(30,32,25,.68) 100%);
  pointer-events:none;
}
