/* WordPress and booking integration for the approved v2 design system. */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{z-index:2000;top:1rem;left:1rem;width:auto;height:auto;padding:.75rem 1rem;clip:auto;background:var(--paper);color:var(--forest-deep)}
.site-main,.property-page{overflow-x:clip}.section{padding-block:clamp(4.5rem,9vw,8rem)}.section-compact{padding-block:clamp(3.5rem,7vw,6rem)}.content-shell{width:min(calc(100% - 4rem),64rem);margin-inline:auto}.narrow-shell{width:min(calc(100% - 4rem),52rem);margin-inline:auto}.centered{text-align:center}.muted{color:var(--stone)}
.page-hero{width:min(calc(100% - 4rem),58rem);margin-inline:auto;padding:clamp(4.5rem,9vw,8rem) 0 clamp(3.5rem,7vw,6rem);text-align:center}.page-hero p:not(.eyebrow){max-width:42rem;margin:0 auto;color:var(--stone);font-size:clamp(1.15rem,2vw,1.35rem)}.page-hero h1{max-width:54rem}.archive-hero{border-bottom:1px solid var(--rule)}
.prose{width:min(100%,50rem);margin-inline:auto}.prose>p,.prose>ul,.prose>ol{max-width:66ch;margin-inline:auto}.prose h1,.prose h2,.prose h3{text-align:center}.entry-image{margin:2.5rem auto;padding:.6rem;border:1px solid var(--rule);background:var(--paper)}.content-card{max-width:56rem;margin:0 auto 1px;padding:clamp(2rem,4vw,3rem);border:1px solid var(--rule);background:var(--paper);text-align:center}.content-card h2 a{text-decoration-color:var(--brass)}
.empty-state{grid-column:1/-1;margin:0;padding:3rem;background:var(--paper);text-align:center}
button,.button--outline{display:inline-flex;justify-content:center;align-items:center;min-height:3.25rem;padding:.85rem 1.6rem;border:1px solid var(--forest);border-radius:0;background:var(--forest);color:var(--paper);font-size:.75rem;font-weight:500;letter-spacing:.14em;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:background 180ms ease,color 180ms ease}.button--outline{background:transparent;color:var(--forest-deep)}button:hover,.button--outline:hover{background:var(--forest-deep);color:var(--paper)}button[disabled]{cursor:wait;opacity:.65}.button--outline-light{border-color:var(--brass-soft);background:transparent;color:var(--paper)}.button--outline-light:hover{background:var(--paper);color:var(--forest-deep)}
.property-hero{padding:clamp(4.5rem,8vw,7rem) 2rem clamp(3.5rem,7vw,6rem);text-align:center}.property-hero__intro{width:min(100%,58rem);margin-inline:auto}.property-location{margin:-.5rem 0 1.5rem;color:var(--stone);font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.fact-list{display:flex;justify-content:center;flex-wrap:wrap;gap:.35rem 0;margin:0 0 1.7rem;padding:0;list-style:none}.fact-list li{font-size:.95rem}.fact-list li:not(:last-child)::after{margin-inline:.75rem;color:var(--brass);content:"·"}.property-promise{max-width:42rem;margin:0 auto;color:var(--stone);font-size:clamp(1.15rem,2vw,1.35rem)}.property-hero__frame{width:min(100%,74rem);margin:clamp(2.5rem,5vw,4.5rem) auto 0;padding:clamp(.6rem,1.2vw,.95rem);border:1px solid var(--rule);background:var(--paper)}.property-hero__frame img{width:100%;aspect-ratio:16/8.5;object-fit:cover}.property-hero__frame figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.8rem .25rem .05rem;color:var(--stone);font-size:.68rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.price-line{margin:1.6rem 0 0;color:var(--forest-deep);font-family:var(--display);font-size:clamp(1.65rem,3vw,2.3rem);font-weight:300}.price-line small{color:var(--stone);font-family:var(--body);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}.property-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem 1.5rem;margin-top:1.5rem}
.launch-frame{display:grid;min-height:clamp(20rem,45vw,34rem);place-content:center;padding:clamp(2rem,7vw,5rem);border:1px solid var(--rule);background:var(--paper);color:var(--forest-deep);text-align:center}.launch-frame .brand-mark{width:5rem;height:5rem;margin:0 auto 1.5rem;font-size:1rem}.launch-frame p{max-width:32rem;margin:.5rem auto;color:var(--stone)}.launch-status{display:inline-block;margin-bottom:1.25rem;color:var(--stone);font-size:.7rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase}
.story-section{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.story-copy{text-align:center}.story-copy .prose-copy{max-width:50rem;margin:2rem auto 0;font-size:1.18rem}.story-copy .prose-copy p{margin:0 0 1.25rem}.reassurance-grid,.amenity-grid,.area-grid,.walk-grid,.policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--rule);background:var(--rule)}.detail-card,.amenity-card,.area-card,.walk-card,.policy-card{min-width:0;padding:clamp(1.8rem,4vw,3rem);background:var(--paper);text-align:center}.detail-card h3,.amenity-card h3,.area-card h3,.walk-card h3,.policy-card h3{font-size:clamp(1.45rem,2.5vw,2rem);overflow-wrap:anywhere}.detail-card p,.amenity-card p,.area-card p,.walk-card p,.policy-card p{margin-bottom:0;color:var(--stone)}
.forest-band{padding-block:clamp(5rem,9vw,8rem);background:var(--forest-deep);color:var(--paper)}.forest-band h2,.forest-band h3{color:var(--paper)}.forest-band .eyebrow,.forest-band p{color:#DED8CB}.forest-band .section-heading{margin-bottom:3rem}.forest-band .amenity-grid{border-color:rgba(201,162,75,.45);background:rgba(201,162,75,.45)}.forest-band .amenity-card{background:var(--forest)}.forest-band .amenity-card p{color:#EEE8DC}.detail-strip{display:flex;justify-content:center;flex-wrap:wrap;gap:1px;margin:2.5rem auto 0;background:rgba(201,162,75,.5)}.detail-block{display:grid;min-width:10rem;gap:.2rem;padding:1rem 1.5rem;background:var(--forest-deep);color:#DED8CB;font-size:.72rem;letter-spacing:.15em;text-align:center;text-transform:uppercase}.detail-block strong{color:var(--paper);font-family:var(--display);font-size:1.35rem;font-weight:300;letter-spacing:0;text-transform:none}
.property-gallery .section-shell{width:min(calc(100% - 4rem),var(--shell))}.property-gallery .gallery-grid{grid-auto-rows:clamp(10rem,16vw,13rem)}.property-gallery .gallery-item:nth-child(11n+1){grid-column:span 6;grid-row:span 2}.gallery-item figcaption{position:absolute;right:0;bottom:0;left:0;padding:.65rem 3rem .65rem .75rem;background:linear-gradient(transparent,rgba(5,29,26,.85));color:var(--paper);font-size:.78rem;text-align:left}.six-frame-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.7rem,1.5vw,1rem)}.six-frame-grid .gallery-item{aspect-ratio:4/3}.six-frame-grid .gallery-item:first-child{grid-column:span 1;grid-row:span 1}.six-frame-note{max-width:42rem;margin:-2rem auto 3rem;color:#DED8CB;text-align:center}
.walk-section .section-heading{margin-bottom:3rem}.walk-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.walk-card h3{max-width:100%;font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.2;overflow-wrap:anywhere;word-break:normal}.location-note{max-width:48rem;margin:3rem auto 0;padding:clamp(1.5rem,4vw,2.5rem);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:center}.location-note h3{font-size:clamp(1.5rem,2.8vw,2.1rem)}
.booking-section{padding-block:clamp(4.5rem,9vw,8rem)}.booking-panel{width:min(calc(100% - 4rem),var(--shell));margin-inline:auto;padding:clamp(1.5rem,4vw,3.5rem);border:1px solid var(--rule);background:var(--paper)}.booking-panel__head{max-width:52rem;margin:0 auto 2.5rem;text-align:center}.booking-panel__head p{color:var(--stone)}.availability-layout{display:grid;grid-template-columns:minmax(18rem,.85fr) minmax(0,1.15fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}.eyr-request-form{display:grid;min-width:0;gap:1rem}.booking-form,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.booking-form{grid-template-columns:repeat(3,minmax(0,1fr))}.eyr-request-form label,.contact-form label,.newsletter-form label{display:grid;min-width:0;gap:.35rem;color:var(--ink);font-size:.78rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase}input,select,textarea{width:100%;min-width:0;min-height:3.1rem;padding:.7rem .8rem;border:1px solid var(--brass);border-radius:0;background:#FFF;color:var(--ink);font:400 1.05rem/1.3 var(--body)}textarea{min-height:7rem;resize:vertical}.guest-details{display:grid;gap:1rem;margin:.5rem 0 0;padding:1.3rem;border:1px solid var(--rule)}.guest-details legend{padding:0 .6rem;color:var(--forest-deep);font-family:var(--display);font-size:1.4rem;font-weight:300}.consent{grid-template-columns:auto 1fr!important;align-items:start;text-transform:none!important;letter-spacing:0!important;font-size:.95rem!important}.consent input{width:1.2rem;min-height:1.2rem;margin-top:.2rem}.eyr-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-status{min-height:1.5em;margin:0;font-weight:500}.form-status.is-error{color:#842B22}.form-status.is-success{padding:.75rem;border:1px solid var(--forest);background:#E7F0EC;color:var(--forest-deep)}.mini-note{color:var(--stone);font-size:.92rem}.booking-summary{padding:1rem;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.costs{display:grid;grid-template-columns:1fr auto;gap:.5rem;margin:0}.costs dt,.costs dd{margin:0}.costs dd{text-align:right}.costs .total{padding-top:.5rem;border-top:1px solid var(--rule);color:var(--forest-deep);font-weight:500}
.eyr-calendar{padding:1rem;border:1px solid var(--rule);background:var(--ivory)}.calendar-head{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.8rem}.calendar-head strong{color:var(--forest-deep);font-family:var(--display);font-size:1.35rem;font-weight:300}.calendar-head button{min-width:2.5rem;min-height:2.5rem;padding:.25rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.2rem}.calendar-grid>*{display:grid;min-width:0;min-height:2.2rem;place-items:center;padding:.15rem;text-align:center}.calendar-weekday{font-size:.72rem;font-weight:500}.calendar-day{border:1px solid rgba(166,130,62,.35);background:var(--paper)}.calendar-day.is-booked{background:#B8B5AD;color:#282722;text-decoration:line-through}.calendar-day.is-past{opacity:.5}.calendar-key{display:flex;gap:1rem;margin:.8rem 0 0;font-size:.85rem}.calendar-key span::before{display:inline-block;width:.9rem;height:.9rem;margin-right:.3rem;border:1px solid var(--brass);background:var(--paper);content:"";vertical-align:-.1rem}.calendar-key .booked::before{background:#B8B5AD}.calendar-feed-note{margin:.7rem 0 0;color:var(--stone);font-size:.85rem}
.contact-layout{display:grid;grid-template-columns:minmax(16rem,.75fr) minmax(0,1.25fr);gap:clamp(2rem,6vw,5rem);align-items:start}.contact-details{text-align:center}.contact-details address{font-style:normal}.contact-details a{overflow-wrap:anywhere;text-decoration-color:var(--brass)}.contact-form{display:grid;gap:1rem;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--rule);background:var(--paper)}.contact-form h2{text-align:center}.contact-form>p{text-align:center;color:var(--stone)}
.area-intro{max-width:50rem;margin:0 auto 3rem;text-align:center}.area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.area-card ul{margin:1rem 0 0;padding:0;list-style:none}.area-card li+li{margin-top:.45rem}.area-card li{color:var(--stone)}
.policy-grid{margin-top:3rem}.policy-card{font-size:1rem}.search-form{display:flex;max-width:36rem;margin:2rem auto 0;gap:.75rem}.search-form label{flex:1}.pagination{margin-top:3rem;text-align:center}.nav-links{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem}.page-numbers{padding:.4rem .75rem;border:1px solid var(--rule);text-decoration:none}
.footer-newsletter{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,5rem);align-items:center;width:min(100%,var(--shell));margin:0 auto 4rem;padding-bottom:4rem;border-bottom:1px solid rgba(201,162,75,.45)}.footer-newsletter h2{margin-bottom:.6rem;color:var(--paper);font-size:clamp(2rem,4vw,3rem)}.footer-newsletter p{margin:0;color:#DED8CB}.newsletter-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;align-items:end}.newsletter-form label{color:var(--paper)}.newsletter-form .consent,.newsletter-form .form-status{grid-column:1/-1}.newsletter-form .consent{grid-row:2}.newsletter-form .form-status{grid-row:3}.footer-contact{line-height:1.35}
@media(max-width:62rem){.availability-layout,.contact-layout{grid-template-columns:1fr}.walk-grid{grid-template-columns:1fr}.property-gallery .gallery-item:nth-child(11n+1){grid-column:span 1;grid-row:span 1}.six-frame-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-newsletter{grid-template-columns:1fr;text-align:center}.newsletter-form{width:min(100%,40rem);margin-inline:auto}.booking-form{grid-template-columns:1fr}.booking-panel{width:min(calc(100% - 2.5rem),var(--shell))}}
@media(max-width:48rem){.content-shell,.narrow-shell,.property-gallery .section-shell{width:min(calc(100% - 2rem),var(--shell))}.page-hero{width:calc(100% - 2rem)}.property-hero{padding-right:1rem;padding-left:1rem}.property-hero__frame figcaption{display:grid;gap:.3rem}.property-hero__frame img{aspect-ratio:4/3}.reassurance-grid,.amenity-grid,.area-grid,.policy-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.newsletter-form{grid-template-columns:1fr}.newsletter-form>*{grid-column:1!important;grid-row:auto!important}.search-form{flex-direction:column}.detail-block{min-width:8rem;flex:1}.footer-newsletter{margin-bottom:3rem;padding-bottom:3rem}}
@media(max-width:34rem){.six-frame-grid,.gallery-grid{grid-template-columns:1fr}.six-frame-grid .gallery-item{grid-column:auto}.property-actions{flex-direction:column;align-items:center}.fact-list{display:grid;gap:.25rem}.fact-list li::after{display:none}.booking-panel{width:calc(100% - 1.5rem);padding:1rem}.guest-details{padding:.8rem}.calendar-grid{gap:.1rem}.calendar-grid>*{min-height:1.8rem;font-size:.75rem}.property-hero__frame{padding:.45rem}.property-hero__frame img{aspect-ratio:1/1}.launch-frame{min-height:18rem}}
