:root{--paper:#f3eddd;--cream:#fff4d9;--green:#233e32;--ink:#233e32;--muted:#687266;--line:rgba(35,62,50,.23);--butter:#dfbf77;--serif:'Fraunces',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--gutter:clamp(24px,4.8vw,80px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}::selection{background:var(--green);color:var(--paper)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button,a{touch-action:manipulation}button{border:0;background:none}a{color:inherit;text-decoration:none}a,button{outline-offset:6px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid currentColor}button:disabled{cursor:default}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;font-variation-settings:'SOFT' 100,'WONK' 1}h2{font-size:clamp(56px,6.5vw,98px);line-height:1.02;letter-spacing:-.055em}h2 em{font-weight:400}p{line-height:1.65}em{font-family:var(--serif);font-weight:400}ul{list-style:none;margin:0;padding:0}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.25em;line-height:1.8;margin-bottom:22px}.section-paper{background:var(--paper)}.button{min-height:54px;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:36px;padding:14px 29px;font-size:15px;font-weight:500;line-height:1.4;transition:background .25s,color .25s,transform .25s,border-color .25s}.button>span{font-size:24px;line-height:1;display:inline-block;transition:transform .25s}.button:hover>span{transform:translate(3px,-3px)}.button:active{transform:scale(.98)}.button-outline{border:1px solid currentColor}.button-outline:hover{background:var(--green);border-color:var(--green);color:var(--cream)}.button-cream{background:var(--cream);color:var(--green)}.button-cream:hover{background:#fff9ea}.button-green{background:var(--green);color:var(--cream);border:1px solid var(--green)}.button-green:hover{background:#365440}.text-link{display:inline-flex;align-items:center;gap:22px;padding:7px 0;border-bottom:1px solid currentColor;font-size:14px;line-height:1.6}.text-link span{font-size:22px;transition:transform .25s}.text-link:hover span{transform:translate(3px,-3px)}.small-copy{font-size:15px;line-height:1.8}.skip-link{position:fixed;top:12px;left:12px;z-index:500;padding:12px 22px;background:var(--cream);color:var(--green);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}

/* The opening is one uninterrupted photograph. */
.site-header{position:fixed;inset:0 0 auto;height:96px;padding:0 36px;z-index:30;display:flex;align-items:center;color:var(--cream);gap:28px;transition:height .35s,background .35s,color .35s,box-shadow .35s}.site-header.scrolled{height:76px;background:var(--paper);color:var(--green);box-shadow:0 1px 0 var(--line)}.brand-mark{display:flex;align-items:center;gap:14px;flex:0 0 auto}.brand-mark svg{width:54px;height:54px;transition:transform .5s}.brand-mark:hover svg{transform:rotate(25deg)}.brand-mark>span{display:none;font:500 23px/1 var(--serif);letter-spacing:-.05em}.header-location{margin-left:auto;margin-right:auto;font-size:10px;letter-spacing:.27em;text-transform:uppercase;white-space:nowrap}.header-location span{padding:0 12px}.main-nav{display:flex;align-items:center;gap:28px;font-size:13px}.main-nav>a{position:relative;white-space:nowrap;padding:8px 0}.main-nav>a::after{content:'';position:absolute;bottom:1px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.main-nav>a:hover::after{transform:scaleX(1)}.nav-book{min-height:46px;padding:10px 22px;font-size:13px;gap:16px}.site-header:not(.scrolled) .button-outline:hover{background:var(--cream);border-color:var(--cream);color:var(--green)}.menu-toggle{display:none}
.hero{position:relative;min-height:650px;height:100svh;max-height:1200px;color:var(--cream);isolation:isolate;overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-photo{object-fit:cover;object-position:50% 52%;animation:photo-arrive 1.7s cubic-bezier(.2,.65,.3,1) both}.hero-shade{z-index:-1;background:linear-gradient(180deg,rgba(17,32,28,.22) 0%,rgba(21,34,27,.13) 43%,rgba(18,27,20,.12) 60%,rgba(13,26,17,.53) 100%)}.hero-center{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:110px 30px 135px;text-align:center}.hero-kicker{font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:30px;animation:rise-in 1s .15s both}.hero-wordmark{font-size:clamp(120px,16.1vw,245px);line-height:.79;letter-spacing:-.067em;font-weight:600;position:relative}.hero-wordmark>span{display:block;animation:rise-in 1.15s cubic-bezier(.2,.7,.25,1) both}.hero-wordmark>span:nth-child(2){margin-top:.02em;animation-delay:.15s}.wordmark-dot{display:inline-block;font-size:.55em;margin-left:.06em;vertical-align:.05em}.hero-tagline{font-size:clamp(21px,2.15vw,32px);font-family:var(--serif);letter-spacing:-.02em;margin-top:32px;animation:rise-in 1s .4s both}.hero-tagline em{font-weight:500}.hero-foot{position:absolute;bottom:36px;left:36px;right:36px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;animation:rise-in 1s .5s both}.hero-foot>p{font-size:13px;line-height:1.65;max-width:250px}.hero-cta{min-width:214px}.scroll-cue{position:absolute;left:50%;bottom:0;transform:translateX(-50%);display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.08em}.scroll-cue>span:first-child{font-size:24px;display:block;animation:nudge-down 2s 2s infinite}.hero-side-note{position:absolute;right:30px;top:50%;writing-mode:vertical-rl;font:italic 16px var(--serif);letter-spacing:.02em}

/* A little album: open paper, three real photographs. */
.cottage{padding:115px var(--gutter) 105px;overflow:hidden}.section-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;max-width:1440px;margin:0 auto 48px}.intro-aside{align-self:end;position:relative;padding-bottom:6px;padding-top:90px}.intro-aside>p:first-of-type{font-size:clamp(19px,1.65vw,24px);line-height:1.65;letter-spacing:-.025em}.intro-aside .small-copy{max-width:380px;margin-top:22px;color:var(--muted)}.sun-doodle{position:absolute;width:116px;height:116px;top:-21px;right:40px;color:#b4904d;transform:rotate(12deg)}.album-scene{position:relative;height:clamp(530px,47vw,700px);max-width:1440px;margin:0 auto 64px}.photo-print{display:block;background:#fffaf0;padding:11px 11px 0;box-shadow:0 8px 25px #233e3212;transition:transform .45s cubic-bezier(.2,.65,.3,1),box-shadow .45s;text-align:left}.photo-print img{width:100%;height:calc(100% - 42px);object-fit:cover}.print-caption{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 7px;font:italic 15px var(--serif);letter-spacing:-.02em;white-space:nowrap}.print-caption>span{font:20px var(--sans)}.photo-print:hover{z-index:4;box-shadow:0 15px 35px #233e3222}.print-main{position:absolute;width:73%;height:87%;left:0;top:15px;transform:rotate(-2deg)}.print-main img{object-position:50% 52%}.print-main:hover{transform:rotate(-.5deg) translateY(-5px)}.print-stamp-evening{position:absolute;width:29%;height:79%;right:-3px;top:85px;transform:rotate(4deg)}.print-stamp-evening:hover{transform:rotate(1deg) translateY(-7px)}.print-stamp-garden{position:absolute;width:27%;height:37%;bottom:-5px;left:-20px;transform:rotate(-7deg);z-index:3}.print-stamp-garden:hover{transform:rotate(-2deg) translateY(-7px)}.album-note{position:absolute;bottom:-18px;left:38%;font:italic 22px/1.3 var(--serif);transform:rotate(-5deg);color:var(--muted)}.album-note>span{font-size:45px;position:absolute;right:-60px;top:-3px;transform:rotate(100deg)}.cottage-facts{display:flex;justify-content:space-between;gap:30px;align-items:center;max-width:1440px;margin:auto;padding:35px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cottage-facts ul{display:flex;align-items:center;gap:26px}.cottage-facts li{display:flex;align-items:center;gap:12px;font-size:13px;white-space:nowrap}.cottage-facts li svg{width:30px;height:30px}.cottage-facts .button{padding:12px 22px;font-size:13px;gap:18px;flex-shrink:0}.cottage-description{display:grid;grid-template-columns:1fr 1fr;gap:100px;max-width:1440px;margin:35px auto 0}.cottage-description p{font-size:14px;line-height:1.85;color:var(--muted)}.serif-label{display:block;font:500 20px/1.5 var(--serif);letter-spacing:-.02em;color:var(--green);margin-bottom:9px}

/* Slow, warm evenings. */
.rituals{padding:105px var(--gutter) 95px;background:var(--green);color:var(--paper);display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;overflow:hidden}.ritual-copy{position:relative;min-width:0}.ritual-copy h2{position:relative;margin-bottom:45px}.ritual-copy h2 em{font-weight:500}.ritual-sun{width:100px;height:100px;position:absolute;right:-10px;top:-15px;color:var(--butter);transform:rotate(-10deg)}.ritual-tabs{border-top:1px solid #f3eddd55;position:relative}.ritual-tabs>button{display:flex;align-items:center;width:100%;text-align:left;padding:23px 0;gap:21px;font:400 clamp(21px,2vw,30px)/1.3 var(--serif);letter-spacing:-.035em;border-bottom:1px solid #f3eddd44;transition:color .25s}.ritual-tabs>button[aria-selected=true]{border-bottom-color:transparent;color:var(--cream)}.ritual-tabs>button[aria-selected=false]{color:#c9cdb9}.ritual-tabs>button:hover{color:var(--butter)}.tab-index{font:12px var(--sans);letter-spacing:0;flex-shrink:0}.tab-arrow{margin-left:auto;font:28px var(--sans);transform:rotate(0);transition:transform .3s}.ritual-tabs>button[aria-selected=true] .tab-arrow{transform:rotate(90deg)}.ritual-tabs>p{font-size:14px;line-height:1.8;padding:0 0 27px 37px;border-bottom:1px solid #f3eddd44;max-width:100%;color:#d3d6c6}.ritual-fee{margin-top:27px;font-size:12px;line-height:1.8;color:#d3d6c6}.light-link{color:var(--paper);margin-top:25px;font-size:13px}.hand-note{margin:55px 0 0 8px;font:italic 27px/1.35 var(--serif);letter-spacing:-.035em;color:var(--butter);transform:rotate(-7deg)}.hand-note>span{margin-left:32px;font-size:23px}.ritual-visual{position:relative;min-height:650px;align-self:stretch}.ritual-main-image{width:100%;height:100%;max-height:800px;padding:0;overflow:hidden;border-radius:90px 12px 18px 12px;display:block}.ritual-main-image>img{width:100%;height:100%;object-fit:cover;transition:opacity .25s,transform .9s}.ritual-main-image:hover>img{transform:scale(1.025)}.ritual-small-image{position:absolute;bottom:55px;left:-80px;width:43%;height:40%;transform:rotate(-7deg);color:var(--green)}.ritual-small-image:hover{transform:rotate(-3deg) translateY(-4px)}.ritual-small-image .print-caption{font-size:13px;height:36px}.ritual-small-image img{height:calc(100% - 36px)}.ritual-image-caption{position:absolute;bottom:-38px;right:4px;font-size:11px;letter-spacing:.04em;color:#d3d6c6}

/* Return, enquire, find us. */
.landscape-banner{position:relative;height:360px;overflow:hidden;background:#b2aba0;color:var(--cream)}.landscape-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#18261a33,transparent 70%)}.landscape-banner>img{width:100%;height:120%;object-fit:cover;object-position:50% 45%;position:absolute;top:-10%}.landscape-banner>span{position:absolute;top:40px;left:var(--gutter);font-size:10px;letter-spacing:.25em;text-transform:uppercase;z-index:1}.landscape-banner>p{position:absolute;right:7%;bottom:36px;font:400 46px/1.1 var(--serif);letter-spacing:-.04em;transform:rotate(-7deg);z-index:1}.returning-note{padding:65px var(--gutter);display:flex;align-items:center;justify-content:center;gap:45px;border-bottom:1px solid var(--line);text-align:center}.returning-note>svg{width:75px;height:75px;color:#9a804d;flex-shrink:0}.returning-note .eyebrow{margin-bottom:13px;font-size:10px}.returning-note blockquote{margin:0;font:400 clamp(22px,2.5vw,35px)/1.4 var(--serif);letter-spacing:-.035em}.returning-note a{display:inline-block;font-size:11px;color:var(--muted);margin-top:16px;border-bottom:1px solid transparent}.returning-note a:hover{border-bottom-color:currentColor}.stay-layout{padding:105px var(--gutter) 90px;display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.stay-layout h2{font-size:clamp(52px,6vw,89px)}.stay-intro{font-size:19px;line-height:1.7;margin-top:27px;letter-spacing:-.02em}.host-signature{font:italic 29px var(--serif);margin-top:28px;transform:rotate(-6deg);display:inline-block}.stay-start{padding-top:40px}.inline-field{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);min-height:75px;font-size:15px}.inline-field>span{flex:0 0 100px}.inline-field input,.inline-field select{appearance:auto;width:100%;min-width:0;border:0;padding:10px 3px;background:transparent;color:var(--green);font:400 17px var(--serif);color-scheme:light}.inline-field input{min-height:48px}.inline-field select{min-height:48px}.stay-start>.button{width:100%;margin-top:28px;min-height:64px;font:400 23px var(--serif);letter-spacing:-.015em}.quiet-note{margin-top:20px;font-size:12px;line-height:1.8;text-align:center;color:var(--muted)}.stay-instagram{display:block;text-align:center;font-size:11px;margin-top:23px;text-decoration:underline;text-underline-offset:4px}
.practical{padding:80px var(--gutter) 100px;display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;border-top:1px solid var(--line)}.practical-heading h2{font-size:65px}.practical-heading>svg{width:57px;height:57px;margin-top:35px;margin-bottom:13px}.practical-heading>p:not(.eyebrow){font-size:13px;line-height:1.8}.practical-heading .text-link{margin-top:20px;font-size:12px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style:none;padding:26px 0;display:flex;gap:24px;justify-content:space-between;align-items:center;font-size:15px;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:26px;font-weight:400;line-height:1;transition:transform .25s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:14px;color:var(--muted);line-height:1.9;padding:0 30px 26px 0;max-width:640px}.site-footer{padding:48px var(--gutter) 26px;background:#e9e3d2}.footer-top{display:flex;gap:50px;align-items:center;justify-content:space-between;padding-bottom:40px}.footer-brand{font:500 clamp(45px,6.5vw,96px)/1.2 var(--serif);letter-spacing:-.075em;white-space:nowrap}.footer-brand>span{color:#9b8351}.footer-top>svg{width:74px;height:74px;transform:rotate(9deg)}.footer-top .text-link{font-size:13px;white-space:nowrap}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted);letter-spacing:.035em}.footer-bottom>div{display:flex;gap:25px;align-items:center}.footer-bottom button{padding:0;font-size:10px;color:inherit;letter-spacing:inherit}.footer-bottom a:hover,.footer-bottom button:hover{text-decoration:underline;text-underline-offset:4px}.mobile-book-bar{display:none}

/* A quiet drawer for a real enquiry, never a fake booking receipt. */
dialog{border:0;padding:0;background:var(--paper);color:var(--green);max-width:100vw;max-height:100svh}dialog::backdrop{background:rgba(12,25,19,.58);backdrop-filter:blur(5px)}dialog[open]{animation:dialog-in .4s cubic-bezier(.2,.75,.3,1) both}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:27px;font-weight:400;line-height:1;border:1px solid var(--line);border-radius:50%;transition:background .2s,transform .2s}.icon-button:hover{background:#dedbc9}.icon-button:disabled{opacity:.3}.booking-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(780px,100vw);height:100svh;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.booking-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 42px;border-bottom:1px solid var(--line)}.booking-brand{font:500 28px var(--serif);letter-spacing:-.055em}.booking-content{padding:35px 42px}.booking-content>.eyebrow{font-size:10px;margin-bottom:10px}.booking-content>h2{font-size:45px;line-height:1.08;letter-spacing:-.045em}.booking-progress{display:flex;gap:30px;padding:0 0 18px;margin:23px 0 22px;border-bottom:1px solid var(--line);list-style:none;font-size:11px;color:var(--muted)}.booking-progress>li[aria-current]{color:var(--green);font-weight:600}.booking-explainer{font-size:13px;line-height:1.75;color:var(--muted);max-width:520px;margin-bottom:24px}.date-fields{display:flex;gap:16px}.date-fields>label{width:50%;padding:11px 15px;border:1px solid var(--line);border-radius:5px}.date-fields label.active{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.date-fields label>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:500}.date-fields input{width:100%;min-width:0;border:0;background:transparent;color:var(--green);padding:7px 0 0;min-height:36px;font-size:15px;color-scheme:light}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:21px;margin-bottom:2px}.calendar-header .icon-button{width:34px;height:34px;font-size:18px}.calendar-header>span{font-size:11px;color:var(--muted);text-align:center}.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:28px}.calendar-month h3{font-family:var(--sans);font-size:13px;font-weight:500;text-align:center;margin:10px 0 15px;text-transform:capitalize;letter-spacing:0}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.calendar-weekdays{font-size:9px;color:var(--muted);margin-bottom:5px}.calendar-days>button,.calendar-days>.empty-day{aspect-ratio:1;min-width:0;display:flex;justify-content:center;align-items:center;font-size:12px;padding:0;border-radius:50%;position:relative}.calendar-days>button:hover:not(:disabled){background:#d9ddca}.calendar-days>button:disabled{color:#a6a69b;text-decoration:line-through}.calendar-days>button.in-range{background:#dce0cb;border-radius:0}.calendar-days>button.is-start,.calendar-days>button.is-end{background:var(--green);color:var(--cream);border-radius:50%}.calendar-days>button.is-today:not(.is-start):not(.is-end)::after{content:'';position:absolute;bottom:3px;width:3px;height:3px;background:var(--green);border-radius:50%}.calendar-days>button:focus-visible{outline-offset:1px;z-index:1}.range-summary{font-size:11px;padding:15px 0 18px;min-height:47px;color:var(--muted)}.range-summary.has-range{color:var(--green);font-weight:500}.guest-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.guest-row label{font-size:14px}.guest-row span{display:block;font-size:10px;margin-top:4px;color:var(--muted)}.guest-row select{background:transparent;color:var(--green);border:1px solid var(--line);border-radius:4px;min-height:44px;padding:8px 10px;font-size:13px}.check-row{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:13px;padding:20px 0}.check-row>input,.extras input{accent-color:var(--green);width:18px;height:18px;flex-shrink:0;margin:0}.check-row>span{display:flex;align-items:center;gap:10px}.check-row svg{width:24px;height:24px}.extras{border:0;border-top:1px solid var(--line);padding:18px 0 0;margin:0}.extras>legend{padding:0 12px 0 0;font-size:13px}.extras>p{font-size:10px;color:var(--muted);margin:-2px 0 13px}.extras>label{display:inline-flex;align-items:center;gap:11px;cursor:pointer;font-size:13px;margin-right:28px;padding:8px 0}.form-field{display:block;margin-top:23px;font-size:13px}.form-field input,.form-field textarea{display:block;width:100%;border:1px solid var(--line);border-radius:5px;background:#f9f5eb;resize:vertical;padding:13px 14px;margin-top:8px;color:var(--green);font-size:14px;line-height:1.6}.form-field input{min-height:49px}.form-field textarea::placeholder,.form-field input::placeholder{color:#7c8174;font-size:13px}.optional{font-size:11px;color:var(--muted)}.returning-check{margin-top:10px;padding-bottom:0}.privacy-note{font-size:11px;color:var(--muted);line-height:1.85;margin-top:22px}.selected-stay{border-left:2px solid var(--green);padding-left:15px;font-size:13px;line-height:1.8;margin-top:6px}.booking-actions{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:23px}.booking-actions>.button{margin-left:auto;min-width:250px;font-size:13px}.booking-actions>.text-link{font-size:12px;border:0}.form-error{font-size:12px;color:#943b2e;line-height:1.6;margin-top:15px}.form-error:empty{display:none}.booking-footer{display:flex;gap:15px;align-items:center;padding:20px 42px 28px;font-size:10px;color:var(--muted)}.booking-footer>svg{width:35px;height:35px;color:var(--green)}.enquiry-actions{display:flex;flex-direction:column;gap:13px;margin-top:22px}.enquiry-actions .button{width:100%;font-size:14px}.not-sent{font-size:12px;line-height:1.85;padding:18px 0;border-top:1px solid var(--line);margin-top:14px;color:var(--muted)}.copy-status{font-size:12px;min-height:23px;margin-top:12px}.copy-status:empty{margin-top:0;min-height:0}#enquiry-message{font-size:12px;line-height:1.85;min-height:275px}.booking-step .text-link{font-size:12px}.booking-step input[aria-invalid=true]{border-color:#943b2e}

.gallery-dialog{position:fixed;inset:0;margin:0;width:100vw;height:100svh;background:#182d23;color:var(--paper);overflow:hidden}.gallery-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 30px;height:85px}.gallery-brand{font:500 30px var(--serif);letter-spacing:-.055em}.gallery-top>p{margin-left:auto;font-size:12px}.gallery-dialog .icon-button{border-color:#f3eddd55}.gallery-dialog .icon-button:hover{background:#365440}.gallery-stage{display:grid;grid-template-columns:60px 1fr 60px;align-items:center;gap:20px;height:calc(100svh - 205px);padding:5px 25px 15px}.gallery-stage>figure{height:100%;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.gallery-stage>figure>img{max-height:calc(100% - 36px);width:auto;max-width:100%;object-fit:contain}.gallery-stage figcaption{font-size:12px;line-height:1.6;margin-top:12px;text-align:center;height:24px;flex-shrink:0}.gallery-next{justify-self:end}.gallery-thumbnails{display:flex;align-items:center;gap:10px;overflow-x:auto;padding:10px 25px 20px;scrollbar-width:thin;scrollbar-color:#73816b transparent;height:120px}.gallery-thumbnails>button{padding:3px;border:1px solid transparent;flex-shrink:0;opacity:.5;transition:opacity .25s,border-color .25s;width:88px;height:72px}.gallery-thumbnails>button[aria-current=true]{border-color:var(--paper);opacity:1}.gallery-thumbnails>button:hover{opacity:1}.gallery-thumbnails img{width:100%;height:100%;object-fit:cover}.preview-dialog{position:fixed;inset:0;margin:auto;width:550px;height:max-content;max-height:90svh;overflow:auto;padding:50px 40px}.preview-dialog>.icon-button{position:absolute;right:15px;top:15px}.preview-dialog h2{font-size:40px;margin-bottom:20px}.preview-dialog p:not(.eyebrow){font-size:14px;margin-top:16px;color:var(--muted)}.noscript-note{padding:25px var(--gutter);border-top:1px solid var(--line)}

/* Content stays visible without scripting; motion is an enhancement. */
.motion-ready .reveal{opacity:0;transform:translateY(27px);transition:opacity .9s,transform .9s cubic-bezier(.2,.65,.3,1)}.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}.motion-ready .hand-note.is-visible{transform:rotate(-7deg)}
@keyframes rise-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes photo-arrive{from{transform:scale(1.06)}to{transform:scale(1)}}
@keyframes nudge-down{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@keyframes dialog-in{from{opacity:0;transform:translateX(25px)}to{opacity:1;transform:translateX(0)}}

.booking-header{position:sticky;top:0;z-index:3;background:var(--paper)}
.calendar-days>button.is-start:hover:not(:disabled),.calendar-days>button.is-end:hover:not(:disabled){background:var(--green);color:var(--cream)}
.site-header:not(.scrolled)::before{content:'';position:absolute;inset:0 0 -42px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(15,30,23,.42),rgba(15,30,23,0))}
@media(min-width:1700px){.cottage,.stay-layout,.practical{padding-left:max(var(--gutter),calc((100vw - 1480px)/2));padding-right:max(var(--gutter),calc((100vw - 1480px)/2))}.rituals{padding-left:max(var(--gutter),calc((100vw - 1480px)/2));padding-right:max(var(--gutter),calc((100vw - 1480px)/2));gap:130px}}
@media(max-width:1180px){.header-location{font-size:9px;letter-spacing:.16em}.header-location span{padding:0 6px}.site-header{padding:0 25px;gap:20px}.main-nav{gap:21px;font-size:12px}.section-intro{gap:60px}.cottage-facts{flex-wrap:wrap}.cottage-facts ul{justify-content:space-between;flex:1;gap:18px}.cottage-facts li{font-size:12px;gap:8px}.cottage-facts .button{min-height:48px}.rituals{gap:8vw}.ritual-sun{right:-20px;width:75px;height:75px}.ritual-small-image{left:-55px}.stay-layout{gap:50px}.footer-top{gap:30px}.footer-top>svg{width:60px;height:60px}.album-scene{height:540px}.print-stamp-evening{height:75%}.print-stamp-garden{height:34%}.print-caption{font-size:13px}}
@media(max-width:940px){.header-location{display:none}.main-nav{margin-left:auto}.section-intro{gap:40px}.intro-aside{padding-top:75px}.intro-aside>p:first-of-type{font-size:18px}.sun-doodle{width:90px;height:90px;right:10px}.cottage-facts{justify-content:center}.cottage-facts ul{flex-basis:100%;justify-content:space-between}.cottage-description{gap:50px}.rituals{gap:7vw}.ritual-tabs>button{gap:12px;font-size:23px}.ritual-tabs>p{padding-left:26px;font-size:13px}.ritual-copy h2{font-size:67px}.ritual-sun{width:70px;height:70px;right:-24px}.ritual-visual{min-height:680px}.ritual-small-image{width:50%;height:32%;left:-40px;bottom:90px}.ritual-small-image .print-caption{font-size:11px}.hand-note{font-size:24px}.hand-note>span{font-size:20px;margin-left:0}.stay-layout{gap:35px}.stay-layout h2{font-size:58px}.inline-field>span{flex-basis:75px}.inline-field{font-size:13px;gap:15px}.inline-field input,.inline-field select{font-size:15px}.returning-note{gap:25px}.returning-note>svg{width:55px;height:55px}.footer-top>svg{display:none}.footer-brand{font-size:62px}.practical{gap:50px}.practical-heading h2{font-size:56px}}

@media(max-width:700px){
  :root{--gutter:24px}html{scroll-padding-top:82px}body{font-size:15px}h2{font-size:53px;letter-spacing:-.055em}.eyebrow{font-size:10px;letter-spacing:.2em;margin-bottom:16px}.button{min-height:53px;font-size:14px;gap:24px}
  .site-header,.site-header.scrolled{height:79px;padding:0 21px;gap:20px}.brand-mark svg{width:45px;height:45px}.brand-mark>span{display:block;font-size:23px}.menu-toggle{display:flex;margin-left:auto;flex-direction:column;gap:7px;justify-content:center;align-items:center;padding:10px;width:44px;height:44px;z-index:32}.menu-toggle>span{width:23px;height:1px;background:currentColor;transition:transform .25s}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);color:var(--green);margin:0;padding:18px 25px 32px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:8px;font-size:20px}.main-nav>a{font-family:var(--serif);padding:10px 2px}.main-nav .button{margin-top:8px;font-size:14px}.menu-open .main-nav{display:flex}.menu-open .site-header{background:var(--paper);color:var(--green)}
  .hero{min-height:670px;height:100svh;max-height:1000px}.hero-photo{object-position:43% 50%}.hero-shade{background:linear-gradient(180deg,rgba(18,30,23,.28),rgba(18,30,23,.05) 42%,rgba(12,28,18,.4) 75%,rgba(10,22,15,.72))}.hero-center{padding:75px 20px 185px;justify-content:center}.hero-kicker{font-size:8px;letter-spacing:.11em;max-width:260px;margin-bottom:26px}.hero-wordmark{font-size:clamp(105px,25.4vw,170px);line-height:.83;letter-spacing:-.065em}.hero-wordmark>span:nth-child(2){margin-top:.025em}.hero-tagline{font-size:20px;line-height:1.4;margin-top:26px}.hero-foot{bottom:26px;left:24px;right:24px;flex-direction:column;align-items:center;gap:21px;text-align:center}.hero-foot>p{font-size:12px;line-height:1.65}.hero-cta{width:100%;max-width:345px;min-height:57px}.hero-side-note{display:none}.scroll-cue{display:none}
  .cottage{padding:72px var(--gutter) 63px}.section-intro{grid-template-columns:1fr;gap:26px;margin-bottom:34px}.intro-aside{padding:0}.intro-aside>p:first-of-type{font-size:18px;line-height:1.6}.intro-aside .small-copy{font-size:13px;line-height:1.85;max-width:320px;margin-top:17px}.sun-doodle{top:-130px;right:0;width:68px;height:68px}.album-scene{height:530px;margin-bottom:28px;max-width:520px}.photo-print{padding:7px 7px 0}.print-main{width:94%;height:58%;top:10px;left:0;transform:rotate(-3deg)}.print-main img{object-position:50% 50%}.print-stamp-evening{width:55%;height:49%;right:0;top:auto;bottom:16px;transform:rotate(6deg)}.print-stamp-garden{width:51%;height:26%;left:-7px;bottom:46px;transform:rotate(-7deg)}.photo-print img{height:calc(100% - 33px)}.print-caption{height:33px;font-size:11px;padding:0 3px}.album-note{font-size:19px;left:13px;bottom:-8px;transform:rotate(-7deg);line-height:1.1}.album-note>span{font-size:31px;right:-42px;top:-4px}.cottage-facts{padding:26px 0;gap:25px}.cottage-facts ul{display:grid;grid-template-columns:1fr 1fr;gap:22px 14px;width:100%}.cottage-facts li{font-size:11px;gap:9px}.cottage-facts li svg{width:25px;height:25px}.cottage-facts .button{width:100%;min-height:51px;font-size:13px}.cottage-description{grid-template-columns:1fr;gap:24px;margin-top:28px}.cottage-description p{font-size:13px;line-height:1.8}.serif-label{font-size:21px}
  .rituals{padding:67px var(--gutter) 67px;grid-template-columns:1fr;gap:39px}.ritual-copy h2{font-size:65px;margin-bottom:32px}.ritual-sun{right:30px;top:8px;width:83px;height:83px}.ritual-tabs>button{font-size:25px;padding:21px 0;gap:15px}.tab-index{font-size:11px}.ritual-tabs>p{padding:0 10px 23px 30px;font-size:13px}.ritual-fee{font-size:11px;margin-top:21px}.light-link{font-size:12px;margin-top:21px}.hand-note{display:none}.ritual-visual{min-height:0;height:490px;margin-left:30px;margin-bottom:20px}.ritual-main-image{border-radius:66px 8px 12px 8px}.ritual-small-image{width:48%;height:36%;bottom:30px;left:-33px}.ritual-small-image .print-caption{font-size:10px;height:29px}.ritual-small-image img{height:calc(100% - 29px)}.ritual-image-caption{font-size:10px;bottom:-28px;right:0}
  .landscape-banner{height:250px}.landscape-banner>img{object-position:45% 50%}.landscape-banner>span{top:24px;font-size:9px;letter-spacing:.19em}.landscape-banner>p{font-size:33px;bottom:24px;right:8%}.returning-note{padding:46px var(--gutter);gap:18px;flex-direction:column}.returning-note>svg{width:55px;height:55px}.returning-note .eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:12px}.returning-note blockquote{font-size:26px;line-height:1.4;max-width:400px}.returning-note a{font-size:10px;margin-top:15px}
  .stay-layout{padding:62px var(--gutter);grid-template-columns:1fr;gap:37px}.stay-layout h2{font-size:clamp(45px,12.4vw,64px);line-height:1.06}.stay-intro{font-size:17px;margin-top:22px}.host-signature{font-size:26px;margin-top:20px}.stay-start{padding:0}.inline-field{min-height:69px;gap:18px;font-size:14px}.inline-field>span{flex-basis:90px}.inline-field input,.inline-field select{font-size:16px}.stay-start>.button{margin-top:27px;font-size:22px;min-height:59px}.quiet-note{font-size:11px;margin-top:16px}.stay-instagram{font-size:10px;margin-top:20px;line-height:1.85}
  .practical{padding:55px var(--gutter) 60px;grid-template-columns:1fr;gap:35px}.practical-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:30px;align-items:end}.practical-heading>.eyebrow{grid-column:1/-1}.practical-heading h2{font-size:49px;grid-row:2/4}.practical-heading>svg{display:none}.practical-heading>p:not(.eyebrow){grid-column:2;font-size:11px;padding-top:7px}.practical-heading .text-link{grid-column:2;font-size:11px;margin-top:14px;justify-self:start}.faq-list summary{padding:21px 0;font-size:13px}.faq-list details>p{font-size:12px;padding:0 15px 24px 0}
  .site-footer{padding:36px var(--gutter) 25px}.footer-top{flex-direction:column;align-items:flex-start;gap:15px;padding-bottom:28px}.footer-brand{font-size:clamp(41px,11.2vw,62px);line-height:1.3}.footer-top .text-link{font-size:12px}.footer-bottom{flex-direction:column;gap:16px;padding-top:20px;font-size:9px}.footer-bottom>div{gap:25px;flex-wrap:wrap}.footer-bottom button{font-size:9px}.mobile-book-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:28;background:var(--paper);border-top:1px solid var(--line);align-items:center;justify-content:space-between;gap:15px;padding:11px 16px calc(11px + env(safe-area-inset-bottom));transform:translateY(110%);visibility:hidden;transition:transform .3s,visibility .3s}.mobile-book-bar.is-visible{visibility:visible;transform:translateY(0)}.mobile-book-bar>span{font:italic 14px var(--serif);max-width:115px;line-height:1.5}.mobile-book-bar .button{font-size:11px;min-height:43px;padding:10px 17px}
  .booking-header{padding:17px 21px}.booking-brand{font-size:25px}.booking-content{padding:27px 21px}.booking-content>h2{font-size:35px}.booking-content>.eyebrow{font-size:9px}.booking-progress{gap:25px;font-size:10px;margin-top:22px}.booking-explainer{font-size:12px;margin-bottom:18px}.date-fields{gap:10px}.date-fields>label{padding:10px}.date-fields label>span{font-size:9px}.date-fields input{font-size:14px;padding-top:8px;min-height:36px}.calendar-header{margin-top:18px}.calendar-header>span{font-size:10px}.calendar-months{grid-template-columns:1fr;gap:0}.calendar-month:nth-child(2){display:none}.calendar-month h3{font-size:14px;margin:7px 0 15px}.calendar-weekdays{font-size:10px}.calendar-days>button,.calendar-days>.empty-day{max-height:45px;font-size:13px}.range-summary{font-size:10px;padding:14px 0 17px}.guest-row{padding:18px 0}.guest-row label{font-size:13px}.guest-row span{font-size:9px;max-width:185px}.guest-row select{font-size:12px;min-height:44px}.check-row{font-size:12px;padding:17px 0}.extras>legend{font-size:12px}.extras>p{font-size:10px;line-height:1.7}.extras>label{font-size:12px}.booking-actions{gap:12px;margin-top:23px}.booking-actions>.button{min-width:0;flex:1;min-height:53px;font-size:12px;padding:12px 18px}.booking-actions>.text-link{font-size:11px;white-space:nowrap}.booking-footer{padding:10px 21px 23px;font-size:9px;gap:12px}.booking-footer>svg{width:30px;height:30px}.form-field{font-size:12px}.form-field input,.form-field textarea{font-size:16px}.privacy-note{font-size:10px}.selected-stay{font-size:12px}.enquiry-actions .button{font-size:13px}.not-sent{font-size:11px}.optional{font-size:10px}
  .gallery-top{padding:14px 18px;height:75px;gap:16px}.gallery-brand{font-size:24px}.gallery-top>p{font-size:10px}.gallery-stage{height:calc(100svh - 190px);padding:0 10px 0;grid-template-columns:30px 1fr 30px;gap:3px}.gallery-stage .icon-button{width:29px;height:40px;font-size:21px;border:0}.gallery-stage figcaption{font-size:10px;line-height:1.7;height:auto;max-width:260px;min-height:38px;margin-top:18px}.gallery-stage>figure>img{max-height:calc(100% - 75px)}.gallery-thumbnails{padding:7px 17px 20px;gap:7px;height:115px}.gallery-thumbnails>button{width:70px;height:66px}.preview-dialog{max-width:calc(100vw - 24px);padding:50px 25px 30px}.preview-dialog h2{font-size:35px}.preview-dialog p:not(.eyebrow){font-size:13px}
}
@media(max-width:370px){.hero{min-height:650px}.hero-wordmark{font-size:97px}.hero-tagline{font-size:18px}.brand-mark>span{font-size:21px}.sun-doodle{right:-5px;width:56px;height:56px}.album-scene{height:465px}.cottage-facts li{font-size:10px}.stay-layout h2{font-size:43px}.practical-heading{column-gap:18px}.practical-heading h2{font-size:44px}.ritual-visual{height:430px}.ritual-tabs>button{font-size:23px}.booking-content{padding-left:17px;padding-right:17px}.booking-content>h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.motion-ready .hand-note{transform:rotate(-7deg)}}

/* Feedback 2026-10-11: centered location, single CTA, stamps, reviews as postcards, hosts. */
.hero-foot{justify-content:center}
.hero-kicker{font-size:12px}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:0;transition:opacity 1.2s ease}
.hero-video.is-playing{opacity:1}
@media(min-width:1181px){.main-nav{margin-left:auto}.header-location{position:absolute;left:50%;transform:translateX(-50%);margin:0;font-size:13px;letter-spacing:.3em}.header-location span{padding:0 14px}}
@media(min-width:941px) and (max-width:1180px){.header-location{font-size:11px;letter-spacing:.24em}}

.button-icon{width:24px;height:24px;flex-shrink:0}
.photo-print.stamp{--r:6px;padding:calc(2*var(--r)) calc(2*var(--r)) calc(1.6*var(--r));box-shadow:none;filter:drop-shadow(0 9px 18px #233e3220);background:radial-gradient(var(--r),#0000 97%,#fffaf0) round calc(-1.5*var(--r)) calc(-1.5*var(--r))/calc(3*var(--r)) calc(3*var(--r)),linear-gradient(#fffaf0 0 0) no-repeat 50%/calc(100% - 3*var(--r)) calc(100% - 3*var(--r))}
.photo-print.stamp:hover{box-shadow:none;filter:drop-shadow(0 15px 26px #233e3230)}
.photo-print.stamp img{outline:1px solid #233e321f;outline-offset:-1px}
.photo-print.stamp .print-caption{justify-content:center}

.cottage-facts li.fact-key{font-weight:600;font-size:14px}
.cottage-facts li.fact-key svg{width:34px;height:34px}
@media(min-width:941px){.cottage-facts ul{flex-wrap:wrap;row-gap:20px;column-gap:30px}}
@media(max-width:700px){.cottage-facts li.fact-key{font-size:12px}}

/* Reviews: backs of postcards drifting left to right. */
.reviews{padding:70px 0 60px;border-bottom:1px solid var(--line);overflow:hidden}
.reviews-head{text-align:center;padding:0 var(--gutter);margin-bottom:38px}
.reviews-head .eyebrow{margin-bottom:10px}
.reviews-score{font:italic 20px var(--serif);color:var(--muted)}
.reviews-marquee{overflow:hidden;padding:18px 0 26px;-webkit-mask:linear-gradient(90deg,#0000,#000 6%,#000 94%,#0000);mask:linear-gradient(90deg,#0000,#000 6%,#000 94%,#0000)}
.reviews-marquee:focus-visible{outline:2px solid var(--green);outline-offset:-2px}
.reviews-track{display:flex;gap:34px;width:max-content;padding:0 17px}
.reviews-track.is-looping{animation:reviews-drift 150s linear infinite}
.reviews-marquee:hover .reviews-track,.reviews-marquee:focus-within .reviews-track{animation-play-state:paused}
@keyframes reviews-drift{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.postcard{width:440px;min-height:250px;flex-shrink:0;display:grid;grid-template-columns:1fr 140px;gap:22px;padding:26px 24px 22px 28px;background:#fbf3e0;color:var(--ink);box-shadow:0 1px 0 #233e3214,0 12px 26px #233e3216;transform:rotate(-1.2deg)}
.postcard:nth-child(even){transform:rotate(1.1deg) translateY(8px)}
.postcard:nth-child(3n){background:#f7ead0}
.postcard blockquote{margin:0;font:italic 400 19px/1.45 var(--serif);letter-spacing:-.02em;align-self:center}
.postcard-side{border-left:1px solid #233e3233;padding-left:20px;display:flex;flex-direction:column;gap:9px}
.postcard-stamp{align-self:flex-end;width:58px;height:66px;display:grid;place-items:center;color:#9a804d;--r:3px;background:radial-gradient(var(--r),#0000 97%,#fffaf0) round calc(-1.5*var(--r)) calc(-1.5*var(--r))/calc(3*var(--r)) calc(3*var(--r)),linear-gradient(#fffaf0 0 0) no-repeat 50%/calc(100% - 3*var(--r)) calc(100% - 3*var(--r));filter:drop-shadow(0 1px 1px #233e3226)}
.postcard-stamp svg{width:38px;height:38px}
.postcard-stars{margin-top:auto;color:#b98a2f;letter-spacing:.12em;font-size:14px}
.postcard-name{font:500 22px/1.2 var(--serif);letter-spacing:-.03em;padding-bottom:6px;border-bottom:1px solid #233e3226}
.postcard-meta{font-size:11px;color:var(--muted);padding-bottom:6px;border-bottom:1px solid #233e3226}
.reviews-source{display:block;width:max-content;margin:6px auto 0;font-size:12px;color:var(--muted);border-bottom:1px solid transparent}
.reviews-source:hover{border-bottom-color:currentColor}
@media(max-width:700px){.reviews{padding:48px 0 40px}.reviews-head{margin-bottom:22px}.reviews-score{font-size:17px}.reviews-track{gap:20px}.postcard{width:300px;min-height:230px;grid-template-columns:1fr;gap:14px;padding:20px 20px 18px}.postcard blockquote{font-size:16px}.postcard-side{border-left:0;border-top:1px solid #233e3233;padding:12px 0 0;display:grid;grid-template-columns:1fr auto;column-gap:12px;row-gap:4px}.postcard-stamp{grid-row:1/4;grid-column:2;width:46px;height:52px}.postcard-stamp svg{width:30px;height:30px}.postcard-name{font-size:18px;border:0;padding:0}.postcard-meta{border:0;padding:0}.postcard-stars{margin:0}}
@media(prefers-reduced-motion:reduce){.reviews-marquee{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-mask:none;mask:none}.postcard{scroll-snap-align:center}}

/* Hosts tile. */
.hosts{display:grid;grid-template-columns:auto 1fr;column-gap:34px;align-items:start;align-content:start}
.hosts-photo{grid-row:1/4;width:190px;margin:8px 0 0;padding:9px 9px 34px;background:#fffaf0;box-shadow:0 10px 24px #233e321c;transform:rotate(-4deg)}
.hosts-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hosts h2{margin-bottom:22px}
.hosts-bio{font-size:15px;line-height:1.75;max-width:520px;color:var(--ink)}
.hosts .host-signature{margin-top:24px;transform:rotate(-4deg)}
@media(max-width:940px){.hosts{grid-template-columns:1fr}.hosts-photo{grid-row:auto;width:170px;margin-bottom:28px}}
@media(max-width:700px){.hosts-bio{font-size:14px}.hosts .host-signature{font-size:24px}}

/* Contact: Instagram and phone, larger than before. */
.stay-contact{margin-top:34px;padding-top:26px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:14px}
.stay-contact>p{font:italic 26px/1.2 var(--serif);letter-spacing:-.03em}
.stay-contact a{display:flex;align-items:center;gap:14px;font:400 21px/1.3 var(--serif);letter-spacing:-.02em;width:max-content;border-bottom:1px solid transparent}
.stay-contact a:hover{border-bottom-color:currentColor}
.stay-contact svg{width:30px;height:30px;flex-shrink:0}
@media(max-width:700px){.stay-contact>p{font-size:22px}.stay-contact a{font-size:18px;width:auto}.stay-contact svg{width:26px;height:26px}}
.enquiry-actions{flex-wrap:wrap}

/* Availability from iCal (only when data-availability is set). */
.calendar-days>button.is-busy{text-decoration:line-through;text-decoration-thickness:1px;opacity:.42}
.busy-legend{display:none;font-size:12px;color:var(--muted);margin-top:6px}
.busy-legend>span{text-decoration:line-through;opacity:.5;margin-right:6px}
.has-availability .busy-legend{display:block}

/* One CTA: on desktop it lives in the header, on phones the header button hides in the menu, so the hero carries it. */
@media(min-width:701px){.hero-foot .hero-cta{display:none}}

/* Rhythm 2026-10-11 (Dawid: keep the green, use the cottage's own colours):
   cream chatka, green rituals, postcards pinned to the cottage's wooden wall, cream hosts, green FAQ and footer. */
:root{--wood:#a36a2a;--wood-dark:#3b2512;--honey:#dcb482}
.reviews{position:relative;border-bottom:0;padding:92px 0 84px;color:var(--cream);background:linear-gradient(180deg,rgba(40,24,10,.5),rgba(40,24,10,.32) 40%,rgba(40,24,10,.5)),url(./textures/deska.jpg) center/auto 320px repeat,var(--wood)}
.reviews .eyebrow{color:var(--cream)}
.reviews-score{color:#f3e2c4}
.reviews-source{color:#f3e2c4}
.reviews-marquee{-webkit-mask:linear-gradient(90deg,#0000,#000 4%,#000 96%,#0000);mask:linear-gradient(90deg,#0000,#000 4%,#000 96%,#0000)}
.postcard{box-shadow:0 2px 0 #00000014,0 18px 30px #1a0e0459}
.postcard::before{content:'';position:absolute;top:-9px;left:50%;width:64px;height:20px;margin-left:-32px;background:rgba(243,237,221,.72);transform:rotate(-3deg);box-shadow:0 1px 2px #0000001f}
.postcard{position:relative}
.postcard-stars{color:var(--wood)}
.postcard-stamp{color:var(--wood)}
.practical,.site-footer{background:var(--green);color:var(--cream);--ink:var(--cream);--line:rgba(255,244,217,.2);--muted:#c3cbbd}
.practical{border-top:0}
.practical-heading>svg{color:var(--butter)}
.site-footer{border-top:1px solid rgba(255,244,217,.16)}
.footer-brand>span{color:var(--butter)}
.practical .text-link,.site-footer .text-link{color:var(--cream)}
@media(max-width:700px){.reviews{padding:58px 0 50px}}

.faq-link{text-decoration:underline;text-underline-offset:4px;color:var(--ink);white-space:nowrap}

/* „Lipinki · Beskid Niski” sits centred over the wordmark in the hero, not in the header (the nav needs the room). */
.site-header .header-location{display:none}
.site-header .main-nav{margin-left:auto}
.hero-location{font-size:14px;letter-spacing:.32em;text-transform:uppercase;margin-bottom:14px;animation:rise-in 1s .1s both}
.hero-location span{padding:0 14px}
.hero-kicker{opacity:.92}
@media(max-width:700px){.hero-location{font-size:11px;letter-spacing:.24em;margin-bottom:10px}.hero-location span{padding:0 8px}}

.hero-location span{font-weight:700;font-size:1.35em;line-height:0;vertical-align:-.06em}
/* A moving, bright clip needs a touch more shade than the still photo for the small lines to stay legible. */
.hero-video.is-playing+.hero-shade{background:linear-gradient(180deg,rgba(14,24,18,.42),rgba(14,24,18,.24) 45%,rgba(12,22,15,.38) 75%,rgba(10,20,14,.66))}
.hero-location,.hero-kicker{text-shadow:0 1px 14px rgba(8,16,11,.45)}

/* Opt-in background music (muzyka.js). */
.music-toggle{position:fixed;left:22px;bottom:22px;z-index:27;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:9px 16px 9px 13px;border-radius:100px;background:rgba(255,244,217,.94);color:var(--green);border:1px solid rgba(35,62,50,.18);box-shadow:0 8px 22px #233e3226;font:500 13px var(--sans);backdrop-filter:blur(4px);transition:transform .2s,box-shadow .2s}
.music-toggle:hover{transform:translateY(-2px);box-shadow:0 12px 26px #233e3233}
.music-bars{display:inline-flex;align-items:flex-end;gap:2.5px;width:18px;height:16px}
.music-bars i{display:block;width:3px;height:30%;border-radius:2px;background:currentColor;opacity:.55}
.music-bars i:nth-child(2){height:60%}.music-bars i:nth-child(3){height:40%}.music-bars i:nth-child(4){height:75%}
.music-toggle.is-on .music-bars i{opacity:1;animation:music-bar .9s ease-in-out infinite alternate}
.music-toggle.is-on .music-bars i:nth-child(2){animation-delay:-.3s}.music-toggle.is-on .music-bars i:nth-child(3){animation-delay:-.6s}.music-toggle.is-on .music-bars i:nth-child(4){animation-delay:-.15s}
@keyframes music-bar{from{height:20%}to{height:100%}}
.music-toggle.is-waiting{animation:music-hint 2.4s ease-in-out infinite}
@keyframes music-hint{50%{box-shadow:0 0 0 6px rgba(255,244,217,.45),0 8px 22px #233e3226}}
@media(max-width:700px){.music-toggle{left:14px;bottom:calc(84px + env(safe-area-inset-bottom));min-height:40px;padding:8px 13px 8px 11px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.music-toggle.is-on .music-bars i{animation:none;height:70%}.music-toggle.is-waiting{animation:none}}

/* Owner photos 2026-10-12: focal points from the photo editor (research/zdjecia-wybor-2026-10-12.json). */
.hero picture{display:contents}
.hero-photo{object-position:50% 90%}
.print-main img{object-position:50% 62%}
.print-stamp-garden img{object-position:50% 100%}
.print-stamp-evening img{object-position:50% 50%}
#ritual-photo{object-position:35% 60%}
#ritual-inset{object-position:40% 50%}
@media(orientation:portrait){.hero-photo{object-position:50% 55%}}
/* Pale clouds behind the cream wordmark need a little more shade than the old photo. */
.hero-shade{background:linear-gradient(180deg,rgba(17,32,28,.34) 0%,rgba(21,34,27,.26) 40%,rgba(18,27,20,.22) 62%,rgba(13,26,17,.55) 100%)}
.hero-wordmark,.hero-tagline{text-shadow:0 2px 24px rgba(8,16,11,.28)}
