.hero-image{object-position:50% 58%}.hero-shade{background:linear-gradient(90deg,#11251b9c,#11251b18 90%),linear-gradient(180deg,#0d241b80 0%,#0d241b0a 26%,#0d241b20 45%,#0d241b8a 100%)}

.google-rating{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:27px;font-size:9px;color:#6c795e;max-width:300px}.google-rating strong{font-size:12px;font-weight:600;color:var(--pine)}.rating-stars{font-size:12px;letter-spacing:1.5px;color:#9a7443}.google-rating>.icon{width:13px;height:13px;margin-left:auto}.google-rating small{font-size:7px;flex-basis:100%;color:#8b947f;letter-spacing:.3px}
.farm-facilities{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;padding:0 0 68px}.facility{padding:28px 0 5px;border-top:1px solid var(--line)}.facility>span>.icon{width:25px;height:25px;stroke-width:1;margin-bottom:20px;color:#768968}.facility strong{font-size:11px;font-weight:500;display:block;margin-bottom:10px}.facility p{color:#76816b;font-size:10px;line-height:1.8}.property-photo-note{font-size:8px;color:#718061;line-height:1.8;margin-top:30px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.faq-grid .stay-details{border-bottom:0;padding-block:25px}.faq-grid .stay-details:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.faq-grid .stay-details summary{font-size:12px;gap:25px}.faq-grid .stay-details p{font-size:11px}.faq-grid a,.stay-details p a{text-decoration:underline;text-underline-offset:3px}
.arrival-faq{padding-bottom:0}.footer-business{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:32px;gap:30px}.footer-business>p{font-size:9px;line-height:1.9;color:#b5c4a7}.footer-business>div{display:flex;gap:28px;flex-wrap:wrap}.footer-business a{display:flex;align-items:center;gap:13px;font-size:8px;color:#c2cfb7}.footer-business .icon{width:13px;height:13px}.footer-wordmark{font-size:25px}.direct-booking-link{display:block;text-align:center;font-size:10px;text-decoration:underline;text-underline-offset:4px;margin-top:20px;line-height:1.8;color:#667a55}.enquiry-actions{display:flex;flex-direction:column;gap:12px}.enquiry-actions .btn{width:100%}.enquiry-actions .direct-booking-link{margin:0}.success-reference>strong{font-size:15px;letter-spacing:.3px}.rate-explanation{font-size:8px;color:#657554;line-height:1.8;margin-top:12px}.booking-summary .summary-total{font-size:10px}.enquiry-fallback{font-size:10px;line-height:1.9;margin-top:20px;color:var(--pine)}.enquiry-fallback textarea{display:block;width:100%;min-height:180px;font:11px/1.8 var(--sans);color:var(--pine);border:1px solid var(--line);background:var(--cream);padding:12px;margin-top:12px}.form-status .enquiry-actions{margin-top:17px}.location-panel>img{width:100%;height:auto;aspect-ratio:1.65;object-fit:cover}.location-panel>.map-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;line-height:1.5}.info-list a{overflow-wrap:anywhere}
@media(max-width:1000px){.farm-facilities{gap:25px;padding-bottom:55px}.facility strong{font-size:10px}.facility p{font-size:9px}.faq-grid{gap:0 40px}.footer-wordmark{font-size:22px}}
@media(max-width:760px){.brand-name{font-size:18px}.brand-name>span{font-size:5px;letter-spacing:2.3px}.hero-location{font-size:7px}.hero-eyebrow{font-size:6px;letter-spacing:1.8px}.hero-copy-bottom>p{font-size:10px}.farm-facilities{grid-template-columns:1fr 1fr;gap:24px 25px;padding-bottom:55px}.facility{padding-top:22px}.facility strong{font-size:10px}.facility p{font-size:9px}.facility>span>.icon{width:23px;height:23px;margin-bottom:15px}.google-rating{font-size:9px;max-width:295px;margin-top:25px}.google-rating small{font-size:7px}.property-photo-note{font-size:8px;margin-top:24px}.faq-grid{grid-template-columns:1fr;gap:0}.faq-grid .stay-details:nth-last-child(2){border-bottom:0}.faq-grid .stay-details summary{font-size:11px}.faq-grid .stay-details p{font-size:11px}.arrival-faq .section-heading .text-link{margin-top:20px}.arrival-faq .section-heading h2{font-size:53px}.footer-note{grid-template-columns:57px 1fr}.footer-business{flex-direction:column;align-items:flex-start;gap:24px;padding-bottom:30px}.footer-business>p{font-size:9px}.footer-business>div{gap:24px}.footer-business a{font-size:8px;gap:8px}.footer-wordmark{font-size:24px}.footer-legal{font-size:6px}.success-reference>strong{font-size:12px}.booking-summary .summary-total{font-size:9px}.direct-booking-link{font-size:9px}.location-panel>.map-caption{font-size:13px}}
@media(max-width:390px){.brand-name{font-size:16px}.brand-name>span{font-size:4.5px;letter-spacing:2px}.footer-wordmark{font-size:22px}}

/* A single uncropped emblem and readable brand lockup at every size. */
.brand{gap:11px;min-width:0}
.official-brand-mark{display:block;position:static;flex:0 0 48px;width:48px;height:48px;border:0;border-radius:0;background:none;overflow:visible}
.official-brand-mark img{display:block;position:static;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center}
.brand-name{display:block;letter-spacing:0;line-height:1;color:inherit}
.brand-name strong{display:block;font:600 25px/1.1 var(--serif);letter-spacing:-.25px;white-space:nowrap}
.brand-name>span{display:block;margin-top:4px;font:italic 13px/1.2 var(--serif);letter-spacing:.3px;white-space:nowrap}
.over-hero .official-brand-mark img{filter:brightness(0) invert(1);opacity:.96}
.site-header.scrolled.over-hero .official-brand-mark{flex-basis:40px;width:40px;height:40px}
.site-header.scrolled.over-hero .brand-name strong{font-size:23px}
.site-header.scrolled.over-hero .brand-name>span{font:italic 12px/1.2 var(--serif);letter-spacing:.3px;margin-top:3px}
.footer-brand-lockup{display:flex;align-items:center;gap:17px;margin-bottom:21px;color:var(--cream)}
.official-footer-logo{display:block;flex:0 0 64px;width:64px;height:64px;object-fit:contain;border:0;border-radius:0;margin:0;filter:brightness(0) invert(1);opacity:.94}
.footer-brand-lockup strong{display:block;font:600 27px/1.15 var(--serif);letter-spacing:-.3px;white-space:nowrap}
.footer-brand-lockup em{display:block;font:italic 15px/1.3 var(--serif);margin-top:4px;color:#c6cfb9}
.footer-locale{font-size:8px;letter-spacing:2px;color:#bbc9ac;white-space:nowrap}
@media(max-width:1000px){.official-brand-mark{flex-basis:42px;width:42px;height:42px}.brand-name strong{font-size:23px}.brand-name>span{font:italic 12px/1.2 var(--serif);letter-spacing:.2px}.footer-brand-lockup{gap:13px}.footer-brand-lockup strong{font-size:25px}.official-footer-logo{flex-basis:58px;width:58px;height:58px}}
@media(max-width:760px){.brand{gap:9px}.official-brand-mark{flex-basis:40px;width:40px;height:40px}.brand-name strong{font-size:21px;letter-spacing:-.3px}.brand-name>span{font:italic 12px/1.2 var(--serif);letter-spacing:.1px;margin-top:3px}.site-header.scrolled.over-hero .official-brand-mark{flex-basis:38px;width:38px;height:38px}.site-header.scrolled.over-hero .brand-name strong{font-size:20px}.site-header.scrolled.over-hero .brand-name>span{font-size:11px}.footer-note{display:flex;align-items:flex-start;gap:0}.footer-brand-lockup{margin-bottom:18px;gap:14px}.official-footer-logo{flex-basis:52px;width:52px;height:52px}.footer-brand-lockup strong{font-size:27px}.footer-brand-lockup em{font-size:14px;margin-top:3px}.footer-note>p{margin-bottom:11px}.footer-locale{font-size:7px;letter-spacing:1.7px}}
@media(max-width:390px){.brand{gap:8px}.official-brand-mark{flex-basis:36px;width:36px;height:36px}.brand-name strong{font-size:19px}.brand-name>span{font-size:11px}.site-header.scrolled.over-hero .official-brand-mark{flex-basis:36px;width:36px;height:36px}.site-header.scrolled.over-hero .brand-name strong{font-size:19px}}
@media(max-width:350px){.brand-name strong{font-size:17px}.brand-name>span{font-size:10px}.official-brand-mark{flex-basis:34px;width:34px;height:34px}.brand{gap:6px}.site-header.scrolled.over-hero .brand-name strong{font-size:17px}.site-header.scrolled.over-hero .official-brand-mark{flex-basis:34px;width:34px;height:34px}}

/* Enquiries are sent to the farm; feedback stays outside the refracting form. */
.enquiry-honeypot{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important}
.form-status:not(:empty){margin-top:20px;padding:16px;border-radius:7px;border:1px solid #cad4bd;background:#f5f6ed;overflow-wrap:anywhere}
.form-status.pending{color:#536746;background:#f2f5eabb}
.form-status.error{color:#753f2b;background:#fff3e9e8;border-color:#d7bbaa}
.form-status.error p+p{margin-top:10px}.form-status.error a{text-decoration:underline;text-underline-offset:3px}
.form-status strong{font-weight:600}.form-status button,.form-status a{min-height:44px}
.contact-form button:disabled,.booking-form button:disabled{cursor:wait;opacity:.65;transform:none}
.booking-form [name=message]{min-height:88px}
.booking-summary>div{gap:16px;align-items:baseline}
.booking-summary>div>strong{text-align:right}
.booking-summary .date-prompt{font-size:11px;line-height:1.8;color:var(--pine)}
.receipt-pricing{text-align:left;margin:0 0 24px}
.receipt-pricing .rate-explanation{text-align:left}
@media(max-width:760px){.form-status{font-size:12px;line-height:1.8}.form-status:not(:empty){padding:17px}.booking-form [name=message]{min-height:100px}}
