@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant.woff2') format('woff2');font-weight:300 700;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-italic.woff2') format('woff2');font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--paper:#f7f5ed;--white:#fffef9;--forest:#293e34;--ink:#2d382f;--muted:#677066;--line:#d9dcd0;--accent:#8b7251;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.8 var(--sans);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}
button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}figure,p{margin:0}
h1,h2,h3{margin:0;font-family:var(--serif);font-weight:400;line-height:1.06;letter-spacing:-.035em}h2{font-size:clamp(2.8rem,4.6vw,4.6rem);text-wrap:balance}h3{font-size:2.4rem}em{font-weight:400}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}input:focus,textarea:focus{outline:2px solid var(--forest);outline-offset:2px}[hidden]{display:none!important}
.wrap{max-width:1392px;margin-inline:auto;padding-inline:64px}.section{padding-block:110px}.eyebrow{font-size:.75rem;letter-spacing:.17em;font-weight:500;line-height:1.7;margin-bottom:24px;color:var(--accent)}
.text-link{display:inline-block;padding-bottom:5px;border-bottom:1px solid #9aa797;font-size:.875rem;font-weight:500;line-height:1.7;transition:border-color .2s}.text-link:hover{border-color:var(--forest)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:58px;padding:16px 26px;border:1px solid transparent;border-radius:0;font-size:.875rem;font-weight:500;line-height:1.5;transition:background .2s,color .2s}.button-dark{background:var(--forest);color:var(--paper)}.button-dark:hover{background:#3a5546}.button svg{width:22px;height:22px;flex-shrink:0}.button:disabled{opacity:.6;cursor:wait}
.skip{position:fixed;left:16px;top:-100px;background:var(--white);padding:14px;z-index:100}.skip:focus{top:16px}
.header{height:104px;display:flex;align-items:center;justify-content:space-between;padding-inline:max(48px,calc((100vw - 1264px)/2));background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;flex-direction:column;gap:2px;line-height:1.25}.brand-name{font:500 2rem/1.15 var(--serif);letter-spacing:-.025em}.brand-place{font-size:.75rem;letter-spacing:.19em;font-weight:500;margin-top:7px}
.header nav{display:flex;gap:32px;align-items:center;font-size:.8125rem;font-weight:500}.header nav a{padding-block:8px}.header nav a:not(.nav-reserve):hover{text-decoration:underline;text-underline-offset:6px}.header nav .nav-reserve{border:1px solid #9eaa9b;padding:11px 22px;transition:background .2s,color .2s}.header nav .nav-reserve:hover{background:var(--forest);color:var(--paper)}.menu-toggle{display:none}
/* Opening: a calm title beside the real house, with no dark wash over it. */
.hero{display:grid;grid-template-columns:1fr 1.06fr;gap:7%;align-items:center;padding-top:50px;padding-bottom:76px}
.hero-copy{padding-bottom:36px}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.13em;margin-bottom:32px}
.hero h1{font-size:clamp(4.8rem,7.5vw,7.6rem);line-height:.99;letter-spacing:-.05em}.hero h1 em{color:#778364}
.hero-copy>p:not(.eyebrow){max-width:410px;font-size:1rem;line-height:1.9;color:var(--muted);margin-top:29px}
.hero-actions{display:flex;align-items:center;gap:26px;margin-top:32px;flex-wrap:wrap}.hero-actions .text-link{font-size:.8125rem}
.hero-details{display:flex;flex-direction:column;gap:3px;margin-top:42px;font-size:.75rem;color:var(--muted);border-left:1px solid #b6bdae;padding-left:17px}
.hero-visual{position:relative;margin-bottom:25px}.hero-photo{aspect-ratio:4/5;object-fit:cover;object-position:100% 0}
.hero-visual figcaption{position:absolute;left:-38px;bottom:-25px;background:var(--paper);padding:22px 31px 12px;max-width:86%}
.hero-visual figcaption>span{font-size:.75rem;letter-spacing:.12em;color:var(--muted)}.hero-visual figcaption p{font:400 2.15rem/1.14 var(--serif);letter-spacing:-.025em;margin-top:12px}
.hero-gallery{position:absolute;bottom:24px;right:22px;display:grid;place-items:center;width:46px;height:46px;background:#f7f5ede8;color:var(--forest)}.hero-gallery svg{width:23px;height:23px}
.welcome-strip{display:flex;gap:26px;align-items:center;justify-content:center;padding-block:27px;border-block:1px solid var(--line)}.welcome-strip p{font:italic 1.6rem/1.3 var(--serif)}.welcome-strip>span{font-size:.8125rem;color:var(--muted)}.welcome-strip>a{display:grid;place-items:center;margin-left:24px;min-width:44px;min-height:44px}.welcome-strip svg{width:23px;height:23px}
/* The story is told through complete photographs and a restrained reading column. */
.story{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;padding-block:118px 132px}.story-copy h2{margin-bottom:30px}.story-copy>p:not(.eyebrow){max-width:470px;color:var(--muted);margin-top:18px}.story-copy .text-link{margin-top:26px}
.story-images{height:570px;position:relative}.story-tall{width:73%;margin-left:auto}.story-tall img{height:450px;object-fit:cover}.story-small{position:absolute;width:61%;bottom:0;left:-7%;border:10px solid var(--paper);border-bottom:0;background:var(--paper)}.story-small img{aspect-ratio:4/3;object-fit:cover}.story-small figcaption{font:italic 1.3rem/1.4 var(--serif);padding-top:14px;text-align:center}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:64px;margin-bottom:48px}.section-heading>p{max-width:350px;font-size:1rem;color:var(--muted)}
.rooms{background:var(--forest);color:var(--paper)}.rooms .eyebrow{color:#cebea4}.rooms .section-heading>p{color:#d3d9cd}
.room-layout{display:grid;grid-template-columns:1.6fr 1fr;align-items:center;gap:34px}.room-main img{aspect-ratio:1.66;object-fit:cover;object-position:55% 50%}.room-side{padding-top:90px}.room-side img{aspect-ratio:1.35;object-fit:cover;object-position:48% 50%}.room-main figcaption{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-top:17px}.room-main figcaption>span:first-child,.room-side figcaption{font:400 1.4rem/1.4 var(--serif)}.room-main figcaption>span:last-child{font-size:.75rem;letter-spacing:.12em}.room-side figcaption{padding-top:17px}
.pending-details{display:flex;gap:24px;font-size:.75rem;margin-top:26px;color:#d3d9cd;flex-wrap:wrap}.room-note{max-width:720px;border-top:1px solid #5a6c5c;margin-top:32px;padding-top:23px;font-size:.875rem;color:#d3d9cd}
.garden{display:grid;grid-template-columns:1.12fr 1fr;gap:10%;align-items:center;padding-block:120px}.garden figure img{aspect-ratio:1.08;object-fit:cover}.garden figcaption{font-size:.75rem;letter-spacing:.12em;padding-top:18px;color:var(--muted)}.garden h2{margin-bottom:30px}.garden>div>p:not(.eyebrow){color:var(--muted);margin-top:18px}.garden .text-link{margin-top:26px}
.family{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:11%;row-gap:25px;align-items:start;border-top:1px solid var(--line);padding-block:95px 100px}
.family-heading{grid-column:2;grid-row:1}.family-portrait{grid-column:1;grid-row:1 / span 3;padding-top:14px}.family-portrait img{aspect-ratio:1270/1694;object-fit:contain}.family-portrait figcaption{font:italic 1.4rem/1.4 var(--serif);padding-top:17px;color:var(--muted)}
.family-copy{grid-column:2;grid-row:2;color:var(--muted);max-width:490px}.family-copy p+p{margin-top:17px}.family-garden{grid-column:2;grid-row:3;margin-top:12px}.family-garden img{height:auto}.family-garden figcaption{font-size:.875rem;color:var(--muted);padding-top:15px;line-height:1.7}.family-garden figcaption span{display:block;font-size:.75rem;letter-spacing:.16em;color:var(--accent);margin-bottom:5px}
.family-note{grid-column:1/-1;text-align:center;margin:43px auto 0;padding-top:32px;border-top:1px solid var(--line);width:100%;font:400 clamp(1.7rem,2.5vw,2.25rem)/1.35 var(--serif)}.family-note em{display:inline-block}
/* Gallery: two generous frames followed by three quieter details. */
.gallery{background:#edeee4}.gallery .section-heading{margin-bottom:34px}.gallery-filters{display:flex;gap:28px;flex-wrap:wrap;border-bottom:1px solid #c8cec0;margin-bottom:38px}.gallery-filters button{min-height:48px;padding:9px 0 15px;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);font-size:.8125rem}.gallery-filters button[aria-pressed=true]{color:var(--forest);border-color:var(--forest)}
.gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px 24px}.gallery-item{display:block;grid-column:span 4;border:0;padding:0;background:transparent;text-align:left;align-self:start}.gallery-item:nth-child(5n+1),.gallery-item:nth-child(5n+2){grid-column:span 6}.gallery-item img{aspect-ratio:3/2;object-fit:cover;transition:filter .3s}.gallery-item:hover img{filter:brightness(1.06)}.gallery-label{display:block;padding:12px 0 0;color:var(--muted);font-size:.75rem;line-height:1.6}.gallery-hint{font-size:.75rem;color:var(--muted);text-align:center;margin-top:32px}.noscript-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.essentials{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%}.facts{border-top:1px solid var(--line)}.facts details{border-bottom:1px solid var(--line);padding:22px 0}.facts summary{font-weight:500;cursor:pointer;list-style:none;display:flex;align-items:center;gap:24px;justify-content:space-between}.facts summary::-webkit-details-marker{display:none}.facts summary:after{content:'+';font-size:1.5rem;font-weight:300}.facts details[open] summary:after{content:'−'}.facts p{padding-top:12px;color:var(--muted);font-size:.9375rem;padding-right:20px}
.booking{background:var(--forest);color:var(--paper)}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:start}.booking .eyebrow{color:#cebea4}.booking-copy h2{font-size:clamp(3.4rem,5vw,5rem)}.booking-copy>p:not(.eyebrow):not(.host-note){margin-top:27px;color:#d3d9cd}.phone{font:400 clamp(2.3rem,3.8vw,3.75rem)/1.2 var(--serif);display:inline-block;margin-top:38px;letter-spacing:-.02em}.host-note{font-size:.75rem;color:#d3d9cd;margin-top:7px}.booking-copy address{font-style:normal;margin-top:35px;font-size:.9375rem}.booking-copy .text-link{margin-top:16px;font-size:.8125rem;border-color:#8fa08f}
.booking-form{background:var(--paper);color:var(--ink);padding:42px;min-width:0}.booking-form h3{margin-bottom:28px}.booking-form label{display:flex;flex-direction:column;font-size:.8125rem;font-weight:500;gap:7px;margin-bottom:19px;min-width:0}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.booking-form input,.booking-form textarea{display:block;border:1px solid #c8d0c1;background:var(--white);border-radius:0;color:var(--forest);padding:12px 13px;font-size:16px;min-width:0;max-width:100%;width:100%;min-height:49px;line-height:1.5;-webkit-appearance:none;appearance:none}.booking-form input[type=date]{min-height:50px}.booking-form input::-webkit-date-and-time-value{min-height:24px;text-align:left}.booking-form textarea{resize:vertical;min-height:95px}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#747f75;opacity:1;font-size:.8125rem}.booking-form .optional{font-weight:400;display:contents}.booking-form .button{width:100%;gap:12px}.form-privacy{font-size:.75rem;line-height:1.8;color:var(--muted);margin-top:17px}.form-privacy a,.form-success a{text-decoration:underline;text-underline-offset:3px}.form-error{color:#943c2c;font-size:.8125rem}.form-error:not(:empty){margin-bottom:16px}.form-success{padding:16px 0;font-size:.8125rem}
.closing{height:420px;position:relative;isolation:isolate;color:white;display:grid;place-items:center;text-align:center;overflow:hidden;margin:24px 24px 0}.closing:after{content:'';position:absolute;inset:0;background:#14231970;z-index:-1}.closing>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.closing>div>p:last-child{font:400 clamp(3.2rem,5.5vw,5.5rem)/1.05 var(--serif);letter-spacing:-.035em}.closing .eyebrow{margin-bottom:20px;color:var(--paper)}
.footer{padding-block:52px 26px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-bottom:38px;border-bottom:1px solid var(--line)}.footer-top>p{font-size:.75rem;color:var(--muted)}.footer-top>a:last-child{font-size:.875rem}.footer-bottom{display:flex;gap:24px;justify-content:space-between;padding-top:24px;font-size:.75rem;color:var(--muted)}.footer-links{display:flex;gap:12px 20px;flex-wrap:wrap}.footer-bottom>p,.footer-bottom>a{flex-shrink:0}.footer-legal{display:flex;justify-content:space-between;align-items:center;gap:32px;padding-block:28px;border-bottom:1px solid var(--line);font-size:.75rem;color:var(--muted)}.footer-operator p+p{margin-top:12px}.footer-operator strong{color:var(--forest);font-weight:600}.footer-consumers{display:flex;flex-direction:column;align-items:flex-end;gap:16px}.anpc-link{font-size:.6875rem;font-weight:600;letter-spacing:.03em;color:var(--forest)}.sal-link{display:block;flex-shrink:0}.sal-link img{display:block;width:250px;height:50px;max-width:none}.footer-operator a,.legal a{overflow-wrap:anywhere}.footer a:hover{text-decoration:underline;text-underline-offset:5px}
.lightbox{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100%;max-height:none;background:#12231ef5;color:var(--paper);border:0;padding:20px 36px}.lightbox::backdrop{background:#12231e}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;height:48px;font-size:.875rem}.lightbox button{color:var(--paper);background:transparent;border:1px solid #718276;min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;gap:16px}.lightbox-toolbar button{padding:4px 16px;font-size:.875rem}.lightbox-toolbar button span{font-size:1.7rem}.lightbox-stage{height:calc(100% - 120px);display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:30px}.lightbox-stage img{height:100%;max-height:100%;object-fit:contain;min-height:0}.lightbox-stage svg{width:24px;height:24px}.lightbox>p{text-align:center;font-size:.8125rem;line-height:1.4;padding-top:18px}
.legal{max-width:900px;padding-block:75px 100px;min-height:70vh}.legal h1{font-size:4rem;margin-bottom:36px}.legal h2{font-size:2.1rem;margin:36px 0 16px}.legal p,.legal ul{color:var(--muted);margin-bottom:16px}.legal a{text-decoration:underline;text-underline-offset:4px}
.reviews{border-top:1px solid var(--line)}
.reviews-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px 64px;margin-bottom:48px}
.reviews-intro{max-width:700px;min-width:0}.reviews-intro h2{max-width:15ch}.reviews-intro>p:not(.eyebrow){max-width:450px;color:var(--muted);margin-top:24px}
.reviews-rating{display:flex;align-items:center;gap:20px;flex-shrink:0;padding-bottom:7px}
.reviews-rating>strong{font:500 4.2rem/1 var(--serif);letter-spacing:-.045em;color:var(--forest);white-space:nowrap}
.reviews-rating p{font-size:.8125rem;font-weight:500;line-height:1.6;color:var(--forest)}.reviews-rating span{display:block;font-size:.6875rem;line-height:1.7;color:var(--muted);margin-top:4px}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.review-card{display:flex;flex-direction:column;min-width:0;padding:30px 30px 28px;background:var(--white);border:1px solid var(--line)}
.review-card-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;font-size:.625rem;line-height:1.7;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.review-card-top>span:last-child{color:var(--accent)}
.review-card blockquote{margin:28px 0 20px}.review-card blockquote p{font:italic 500 clamp(1.9rem,2.4vw,2.3rem)/1.15 var(--serif);letter-spacing:-.02em;color:var(--forest);text-wrap:pretty}
.review-summary{color:var(--muted);font-size:.8125rem;line-height:1.9;margin-bottom:28px}.review-summary p+p{margin-top:12px}
.review-person{display:flex;align-items:center;gap:13px;margin-top:auto;padding-top:24px;border-top:1px solid var(--line)}
.review-initial{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--paper);font:500 1.3rem/1 var(--serif);color:var(--forest)}
.review-person>div{min-width:0}.review-person strong{display:block;font-size:.75rem;font-weight:600;line-height:1.5;color:var(--forest)}.review-person a{display:inline-block;font-size:.6875rem;line-height:1.7;color:var(--muted);margin-top:4px;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;overflow-wrap:anywhere}.review-person a:hover{color:var(--forest);text-decoration-color:var(--forest)}
.reviews-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px 40px;margin-top:28px}.reviews-bottom>p{max-width:660px;font-size:.6875rem;line-height:1.8;color:var(--muted)}.reviews-bottom .text-link{flex-shrink:0;font-size:.8125rem}
@media(max-width:1100px){.reviews-heading{gap:32px}.reviews-intro h2{max-width:13ch}.reviews-rating{gap:14px}.reviews-rating>strong{font-size:3.7rem}.reviews-grid{gap:18px}.review-card{padding:26px 23px}.review-card blockquote p{font-size:2rem}}
@media(max-width:960px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reviews-heading{align-items:flex-start}.reviews-rating{flex-direction:column;align-items:flex-start;gap:10px;padding-top:7px}.review-card{padding:30px}.review-card blockquote p{font-size:2.2rem}}
@media(max-width:760px){.reviews-heading{flex-direction:column;gap:28px;margin-bottom:32px}.reviews-intro h2{max-width:15ch}.reviews-intro>p:not(.eyebrow){margin-top:20px}.reviews-rating{flex-direction:row;align-items:center;gap:18px;padding:0}.reviews-rating>strong{font-size:3.6rem}.reviews-grid{grid-template-columns:1fr;gap:20px}.review-card{padding:28px}.review-card blockquote{margin-top:25px}.review-card blockquote p{font-size:2.15rem}.reviews-bottom{flex-direction:column;align-items:flex-start;gap:18px;margin-top:25px}}
@media(max-width:1100px){.wrap{padding-inline:40px}.header{padding-inline:36px}.header nav{gap:22px}.hero{gap:5%;padding-top:42px}.hero h1{font-size:clamp(4.6rem,7.5vw,6rem)}.hero-actions{gap:20px}.hero-details{margin-top:28px}.hero-visual figcaption{left:-20px;padding:18px 22px 10px}.hero-visual figcaption p{font-size:1.8rem}.hero-visual figcaption>span{font-size:.75rem}.story{gap:7%}.story-images{height:520px}.story-tall img{height:410px}.section-heading{gap:36px}.section-heading>p{max-width:290px}.room-main figcaption>span:last-child{display:none}.booking-layout{gap:6%}.booking-form{padding:28px}.footer-bottom{flex-direction:column;gap:12px}.garden{gap:7%}.family{column-gap:7%}.family-portrait figcaption{font-size:1.25rem}}
@media(max-width:760px){
 html{scroll-padding-top:89px}.wrap{padding-inline:24px}.section{padding-block:76px}h2{font-size:clamp(2.8rem,8.3vw,3.8rem)}.eyebrow{font-size:.75rem;letter-spacing:.13em;margin-bottom:19px}
 .header{height:82px;padding-inline:22px}.brand-name{font-size:1.7rem}.brand-place{font-size:.75rem;letter-spacing:.12em}.menu-toggle{display:flex;background:none;border:0;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:8px}.menu-toggle span{width:27px;height:1px;background:var(--forest);transition:transform .2s}.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)}
 .header nav{display:none;position:absolute;top:81px;inset-inline:0;background:var(--paper);padding:24px;box-shadow:0 10px 20px #253e331a;flex-direction:column;align-items:stretch;gap:12px;font-size:1rem}.header nav.is-open{display:flex}.header nav a{padding:9px 4px}.header nav .nav-reserve{margin-top:5px;text-align:center}
 .hero{grid-template-columns:minmax(0,1fr);gap:35px;padding-top:40px;padding-bottom:55px}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:24px}.hero h1{font-size:clamp(4.25rem,12vw,6.8rem);line-height:1.01}.hero-copy>p:not(.eyebrow){font-size:1rem;max-width:460px;margin-top:23px;line-height:1.85}.hero-actions{gap:22px;margin-top:27px}.hero-actions .button{min-height:55px;padding-inline:21px;gap:16px}.hero-actions .text-link{font-size:.8125rem}.hero-details{margin-top:27px;font-size:.75rem;gap:2px}
 .hero-visual{margin:0 0 25px 12px}.hero-photo{aspect-ratio:4/5}.hero-visual figcaption{left:-12px;bottom:-25px;padding:18px 21px 10px;max-width:83%}.hero-visual figcaption p{font-size:1.95rem}.hero-visual figcaption>span{font-size:.75rem;letter-spacing:.08em}.hero-gallery{right:15px;bottom:20px;width:42px;height:42px}
 .welcome-strip{gap:9px;justify-content:start;flex-wrap:wrap;padding-block:24px;position:relative;padding-right:80px}.welcome-strip p{font-size:1.5rem;flex-basis:100%}.welcome-strip>span{font-size:.75rem}.welcome-strip>a{position:absolute;right:24px;top:50%;transform:translateY(-50%);margin:0}
 .story{grid-template-columns:1fr;gap:44px;padding-block:78px 94px}.story-copy h2{margin-bottom:25px}.story-copy>p:not(.eyebrow){max-width:none}.story-images{height:auto;display:grid;grid-template-columns:1fr 1.8fr;align-items:end;max-width:510px;width:100%;margin:auto}.story-tall{grid-column:2;grid-row:1;width:100%;margin:0}.story-tall img{height:auto;aspect-ratio:3/4}.story-small{position:relative;grid-column:1/3;grid-row:1;width:58%;left:0;bottom:-24px;border-width:7px}.story-small figcaption{font-size:1.15rem}
 .section-heading{flex-direction:column;align-items:start;gap:24px;margin-bottom:34px}.section-heading>p{max-width:none}.room-layout{grid-template-columns:1fr;gap:32px}.room-main img{aspect-ratio:1.55}.room-side{padding:0;width:85%;margin-left:auto}.room-side img{aspect-ratio:1.5}.room-main figcaption>span:first-child,.room-side figcaption{font-size:1.3rem}.room-note{margin-top:26px;font-size:.875rem}.pending-details{gap:7px;flex-direction:column}
 .garden{grid-template-columns:1fr;gap:36px}.garden figure img{aspect-ratio:1.12}.garden figcaption{font-size:.75rem;letter-spacing:.06em}
 .family{grid-template-columns:minmax(0,1fr);gap:30px;padding-top:72px}.family-heading{grid-column:1;grid-row:1}.family-portrait{grid-column:1;grid-row:2;width:86%;padding:0;margin-left:auto}.family-portrait figcaption{font-size:1.3rem;padding-top:13px}.family-copy{grid-column:1;grid-row:3;max-width:none}.family-garden{grid-column:1;grid-row:4;margin-top:5px}.family-note{grid-column:1;grid-row:5;text-align:left;font-size:1.9rem;margin-top:6px;padding-top:26px}.family-note em{display:block;margin-top:5px}
 .gallery-filters{gap:9px 23px;margin-bottom:28px}.gallery-filters button{font-size:.75rem;padding:8px 0 12px;min-height:44px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 14px}.gallery-item,.gallery-item:nth-child(5n+1),.gallery-item:nth-child(5n+2){grid-column:span 1}.gallery-item img{aspect-ratio:1.12}.gallery-item:nth-child(5n+1),.gallery-item:nth-child(5n+2){grid-column:span 2}.gallery-item:nth-child(5n+1) img,.gallery-item:nth-child(5n+2) img{aspect-ratio:1.6}.gallery-label{font-size:.75rem;line-height:1.5;padding-top:9px}.gallery-hint{font-size:.75rem;margin-top:27px}
 .essentials{grid-template-columns:1fr;gap:32px}.facts summary{font-size:.9375rem}.facts p{font-size:.9375rem}.booking-layout{grid-template-columns:1fr;gap:38px}.booking-copy h2{font-size:3.5rem}.booking-copy>p:not(.eyebrow):not(.host-note){margin-top:22px}.phone{font-size:3.1rem;margin-top:26px}.booking-copy address{margin-top:26px}.booking-form{padding:28px 22px;margin-inline:-5px}.booking-form h3{font-size:2.3rem}.form-row{gap:12px}.booking-form input{padding-inline:10px}
 .closing{height:330px;margin:12px 10px 0}.closing>div>p:last-child{font-size:3.5rem}.footer{padding-block:40px 25px}.footer-top{flex-direction:column;align-items:start;gap:23px;padding-bottom:27px}.footer-links{gap:14px 18px}.footer-legal{flex-direction:column;align-items:flex-start;gap:24px}.footer-consumers{align-items:flex-start}.lightbox{padding:12px}.lightbox-stage{gap:8px;grid-template-columns:36px minmax(0,1fr) 36px}.lightbox-stage button{min-width:36px;width:36px;min-height:48px}.lightbox>p{padding-inline:10px}.legal h1{font-size:3rem}
}
@media(max-width:390px){.wrap{padding-inline:21px}.brand-name{font-size:1.6rem}.hero-actions{gap:16px}.hero-actions .button{padding-inline:17px;gap:12px}.hero-actions .text-link{font-size:.75rem}.hero-visual figcaption p{font-size:1.8rem}.booking-form{padding:25px 17px}.form-row{gap:9px}.booking-form input{padding-inline:8px}.gallery-filters{gap:9px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* The original immersive opening, retained at the owner's request. */
.hero{display:block;position:relative;max-width:none;margin:0;padding:0;min-height:660px;height:min(780px,calc(100svh - 104px));color:var(--white);isolation:isolate;background:var(--forest);overflow:hidden}
.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;z-index:-2}
.hero-photo{object-position:65% 0}
.hero-shade{background:linear-gradient(90deg,rgba(14,35,25,.8),rgba(14,35,25,.43) 43%,rgba(14,35,25,.04) 77%),linear-gradient(0deg,rgba(14,35,25,.4),transparent 35%);z-index:-1}
.hero-copy{padding:80px 7vw 95px;max-width:900px}
.hero-copy .eyebrow{color:var(--white);font-size:.75rem;letter-spacing:.18em;margin-bottom:24px}
.hero h1{font-size:clamp(4.2rem,7.7vw,7.6rem);font-weight:500;line-height:.99;letter-spacing:-.04em}
.hero h1 em{display:inline-block;color:inherit}
.hero-copy>p:not(.eyebrow){max-width:none;margin-top:28px;font-size:1rem;line-height:1.75;color:inherit}
.hero-copy .button{margin-top:34px}
.button-light{background:var(--paper);color:var(--forest)}.button-light:hover{background:white}
.hero-bottom{position:absolute;bottom:25px;inset-inline:7vw;display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.04em;gap:20px}.hero-bottom a{text-decoration:underline;text-underline-offset:6px}
.welcome-strip{min-height:78px;display:flex;justify-content:center;align-items:center;border-top:0;border-bottom:1px solid var(--line);gap:6vw;font-size:.8125rem;color:var(--muted);padding:20px 24px}.welcome-strip>span{font-size:inherit}.welcome-strip span+span{position:relative}.welcome-strip span+span:before{content:'·';position:absolute;left:-3vw}
@media(min-width:1600px){.hero-copy{max-width:1380px;margin:auto;padding-left:64px}.hero-bottom{max-width:1250px;margin:auto}.hero-photo{object-position:50% 0}}
@media(max-width:1000px){.hero-copy{padding-left:6vw}.hero h1{font-size:6rem}}
@media(max-width:760px){.hero{min-height:650px;height:calc(100svh - 82px);max-height:840px}.hero-photo{object-position:72% 0}.hero-shade{background:linear-gradient(90deg,#102b2395,#102b2335),linear-gradient(0deg,#102b235e,transparent 60%)}.hero-copy{padding:75px 26px 100px}.hero h1{font-size:clamp(3.9rem,11.5vw,5.7rem);max-width:600px;line-height:1.02}.hero-copy>p:not(.eyebrow){font-size:.9375rem;margin-top:26px}.hero-copy .button{margin-top:30px;min-height:55px;padding-inline:23px;font-size:.875rem}.hero-bottom{inset-inline:26px;bottom:22px;flex-direction:column;gap:6px;font-size:.75rem}.hero-bottom a{align-self:start}.welcome-strip{padding:20px 24px;gap:7px;flex-direction:column;flex-wrap:nowrap;font-size:.75rem;line-height:1.7}.welcome-strip span+span:before{display:none}.welcome-strip span:first-child{font-weight:600;color:var(--forest)}}
@media(max-width:390px){.hero h1{font-size:3.6rem}.hero-copy{padding-top:65px}.hero{min-height:620px}}

.gallery-more{display:flex;flex-direction:column;align-items:center;gap:18px;margin-top:38px}
.gallery-more>p{font-size:.75rem;color:var(--muted);letter-spacing:.04em}
.gallery-more .button{border-color:#8b9987;color:var(--forest);background:transparent;min-width:205px}
.gallery-more .button:hover{background:var(--forest);color:var(--paper)}
.gallery-more:has(>p:empty){display:none}
.gallery-more+.gallery-hint{margin-top:20px}
@media(max-width:760px){.gallery-more{margin-top:30px}}

.gallery-item-portrait img{object-fit:contain;background:#e0e1d8}
.gallery-grid[data-category=bai] .gallery-item{grid-column:span 6}
.gallery-grid[data-category=bai] .gallery-item img{aspect-ratio:20/9;object-fit:contain}
.gallery-grid[data-category=bai] .gallery-item-portrait img{aspect-ratio:3/4}
@media(max-width:760px){.gallery-grid[data-category=bai] .gallery-item{grid-column:span 2}.gallery-grid[data-category=bai] .gallery-item-portrait{grid-column:span 1}.gallery-grid[data-category=bai] .gallery-item-portrait img{aspect-ratio:9/20}}

/* Confirmed accommodation details and nearby places. */
.stay-facts{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:24px;margin-top:48px;padding-block:27px;border-block:1px solid #5a6c5c}.stay-facts div{display:flex;flex-direction:column;gap:8px}.stay-facts strong{font:400 clamp(2rem,3.1vw,3.1rem)/1.1 var(--serif)}.stay-facts span{font-size:.8125rem;color:#d3d9cd}.amenities{list-style:none;display:flex;gap:15px 30px;flex-wrap:wrap;margin:25px 0 0;padding:0;color:#d3d9cd;font-size:.875rem}.amenities li{display:flex;align-items:center;gap:10px}.amenities li:before{content:'✓';color:#cebea4}.rooms .room-note{border:0;margin-top:17px;padding-top:0}.room-main img{aspect-ratio:4/3}.room-side img{aspect-ratio:4/3}.story-small img{aspect-ratio:1;object-position:center 40%}.family-garden img{aspect-ratio:4/3;object-fit:cover}.places{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.places article img{aspect-ratio:4/3;object-fit:contain;background:#edeee4}.place-number{font-size:.6875rem;letter-spacing:.12em;color:var(--accent);margin-top:24px}.places h3{font-size:2.15rem;margin-top:10px}.places h3+p{font-size:.875rem;color:var(--muted);margin-top:16px}.places .text-link{margin-top:19px}.gastro-note{margin-top:65px;padding:36px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:15px 50px}.gastro-note .eyebrow{grid-column:1/-1;margin:0}.gastro-note h3{max-width:420px}.gastro-note>p:last-child{color:var(--muted);font-size:.9375rem}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:24px;font-size:.8125rem;overflow-wrap:anywhere}.contact-links a{text-decoration:underline;text-underline-offset:5px}.gallery-item img{aspect-ratio:4/3}.gallery-grid[data-category=bai] .gallery-item img{aspect-ratio:4/3}.gallery-grid[data-category=imprejurimi] .gallery-item img{object-fit:contain;background:#e0e1d8}
@media(max-width:760px){.stay-facts{grid-template-columns:1fr 1fr;gap:26px;margin-top:30px}.stay-facts div:last-child{grid-column:1/-1}.stay-facts strong{font-size:2.5rem}.amenities{display:grid;grid-template-columns:1fr;gap:12px}.places{grid-template-columns:1fr;gap:40px}.places article img{aspect-ratio:auto}.places h3{font-size:2.3rem}.gastro-note{grid-template-columns:1fr;gap:20px;margin-top:46px;padding-top:30px}.gastro-note .eyebrow{grid-column:1}.gallery-item:nth-child(5n+1) img,.gallery-item:nth-child(5n+2) img{aspect-ratio:4/3}.gallery-grid[data-category=bai] .gallery-item img{aspect-ratio:4/3}.room-main img,.room-side img{aspect-ratio:4/3}}

.gallery-item-contain img{object-fit:contain;background:#e0e1d8}

/* The chapel opposite the house, photographed by the host. */
.chapel-story{margin-top:80px;padding-top:64px;border-top:1px solid var(--line)}
.chapel-intro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8%;align-items:center}
.chapel-intro h3{font-size:clamp(2.8rem,4.2vw,4rem)}.chapel-intro h3+p{font-size:1rem;color:var(--muted);margin-top:24px;max-width:430px}.chapel-invitation{font-size:.8125rem;color:var(--muted);margin-top:20px;max-width:380px}
.chapel-photo{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit}.chapel-photo img{width:100%;height:auto}.chapel-photo:hover img{filter:brightness(1.04)}
.chapel-story figcaption{font-size:.8125rem;line-height:1.6;color:var(--muted);padding-top:12px}
.chapel-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px;align-items:start}
.chapel-hint{font-size:.75rem;color:var(--muted);margin-top:24px}
@media(max-width:760px){.chapel-story{margin-top:55px;padding-top:42px}.chapel-intro{grid-template-columns:minmax(0,1fr);gap:28px}.chapel-intro h3{font-size:3rem}.chapel-intro .eyebrow{font-size:.6875rem}.chapel-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px;margin-top:26px}.chapel-photos figure:last-child{grid-column:1/-1;max-width:460px;margin-inline:auto}.chapel-story figcaption{font-size:.75rem}.chapel-hint{margin-top:20px}}
