:root{--paper:#f7f6f0;--ink:#272d25;--green:#3d513b;--muted:#73766b;--line:#dedfd5;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans','Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--sans)}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #a77641;outline-offset:5px}button{color:inherit}img{display:block;width:100%;object-fit:cover}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.wrap{max-width:1440px;padding:0 64px;margin:auto}.header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:13px}.brand>svg{width:53px;height:53px;color:var(--green)}.brand-name{font:500 29px/1 var(--serif);white-space:nowrap}.brand small{display:block;font:9px/1.2 var(--sans);letter-spacing:2.4px;text-transform:uppercase;margin-top:8px}.nav{display:flex;gap:28px;align-items:center;font-size:13px}.nav a:hover{color:#7b895f}.header-actions{display:flex;align-items:center;gap:24px}.languages{display:flex;gap:8px;align-items:center;font-size:11px}.languages button{border:0;background:none;padding:4px 0;color:var(--muted)}.languages button.active{color:var(--ink);border-bottom:1px solid}.btn{display:inline-flex;justify-content:center;align-items:center;gap:22px;padding:14px 23px;background:var(--green);color:white;border:1px solid var(--green);font-size:13px;line-height:1.5}.btn:hover{background:#293e2c}.btn.outline{background:transparent;color:var(--green);border-color:#aeb5a5}.btn.outline:hover{background:#e9ecdf}.btn svg{width:17px}.menu-toggle{display:none;background:none;border:0}.eyebrow{font-size:10px;letter-spacing:2.2px;text-transform:uppercase;font-weight:600;display:flex;align-items:center;gap:10px}.eyebrow:before{content:'';width:22px;height:1px;background:currentColor}.hero-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:55px;padding-top:58px;padding-bottom:39px}.hero-intro h1{font:400 clamp(38px,4.1vw,63px)/1.2 var(--serif);letter-spacing:-1.9px;margin:18px 0 0}.hero-intro h1 em{font-weight:400;color:#70805a}.hero-aside{max-width:260px;padding-bottom:6px}.hero-aside p{color:var(--muted);font-size:13px;line-height:1.9;margin:0 0 19px}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:12px;border-bottom:1px solid #a3aa93;padding-bottom:6px}.text-link svg{width:17px}.hero-photo{position:relative;height:clamp(370px,37vw,535px);overflow:hidden}.hero-photo>img{height:100%;object-position:center 53%}.location-tag{position:absolute;top:25px;left:25px;background:var(--paper);padding:10px 15px;display:flex;gap:9px;align-items:center;font-size:10px;letter-spacing:.5px}.location-tag svg{width:15px;height:15px}.photo-note{position:absolute;bottom:24px;left:25px;color:white;background:#263825;padding:8px 15px;font-size:11px;letter-spacing:.4px}.hero-number{position:absolute;right:25px;bottom:25px;background:var(--paper);border-radius:50%;width:62px;height:62px;display:grid;place-items:center}.hero-number svg{transform:rotate(90deg)}.amenity-strip{display:flex;justify-content:space-between;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}.amenity-strip>div{display:flex;align-items:center;gap:11px;font-size:11px;color:#5c6455}.amenity-strip svg{width:20px}.section{padding-top:95px;padding-bottom:95px}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:35px}h2{font:400 clamp(32px,3vw,44px)/1.25 var(--serif);letter-spacing:-.9px;margin:15px 0 0}h2 em{font-weight:400;color:#71805b}h3{font:400 25px/1.3 var(--serif);margin:16px 0 10px}p{color:var(--muted)}.story{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.story-photo{position:relative}.story-photo img{height:470px}.story-stamp{position:absolute;bottom:-23px;right:25px;width:118px;height:118px;border-radius:50%;background:#e9ecde;border:7px solid var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:9px;letter-spacing:1px;text-transform:uppercase;line-height:1.6}.story-stamp svg{margin-bottom:6px;width:26px;height:26px}.story-copy p{font-size:14px;max-width:440px;margin:24px 0}.story-signature{font-family:var(--serif);font-style:italic;color:var(--green);font-size:21px;margin-top:26px}.light-section{background:#eeeee5}.stay-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:54px;align-items:center}.stay-image{height:460px}.stay-copy p{font-size:14px}.stay-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d2d5c7;border-bottom:1px solid #d2d5c7;margin:25px 0;padding:20px 0}.stay-facts strong{display:block;font:32px var(--serif)}.stay-facts span{font-size:11px;color:var(--muted)}.room-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:18px}.room-thumbs img{height:175px}.room-thumbs button,.gallery-item{padding:0;border:0;background:none;text-align:left}.room-thumbs button:hover img,.gallery-item:hover img{filter:brightness(.93)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.facility-card img{height:260px}.facility-card .card-label{display:flex;justify-content:space-between;align-items:center}.facility-card p{font-size:13px;margin:0}.facility-card svg{width:20px;color:var(--green)}.facility-list{display:grid;grid-template-columns:repeat(5,1fr);gap:23px 16px;padding-top:38px;margin-top:38px;border-top:1px solid var(--line)}.facility-list>div{display:flex;align-items:center;gap:10px;font-size:12px}.facility-list svg{color:#71805b}.food-banner{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--paper)}.food-banner img{height:390px}.food-copy{padding:55px;align-self:center}.food-copy h2{font-size:37px}.food-copy p{color:#d3dacb;font-size:14px}.gallery-top{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:28px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{background:transparent;border:1px solid var(--line);padding:8px 17px;border-radius:25px;font-size:11px}.filters button.active{background:var(--green);border-color:var(--green);color:white}.photo-count{font-size:11px;color:var(--muted);white-space:nowrap}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.gallery-item{position:relative;overflow:hidden}.gallery-item img{height:260px}.gallery-item span{position:absolute;bottom:12px;left:12px;background:var(--paper);padding:4px 11px;font-size:10px}.gallery-more{text-align:center;margin-top:28px}.pricing{display:grid;grid-template-columns:1fr 1.3fr;gap:90px}.pricing-intro p{max-width:310px;font-size:14px}.price-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:23px 0;border-bottom:1px solid #cfd3c4}.price-row:first-child{padding-top:0}.price-row h3{font:500 16px var(--sans);margin:0 0 4px}.price-row small{color:var(--muted);font-size:11px}.price-row strong{font:30px var(--serif);white-space:nowrap}.price-row strong span{font:12px var(--sans)}.pricing-note{font-size:11px}.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.area-card{padding:28px 0;border-top:1px solid var(--line)}.area-card>span{font:italic 25px var(--serif);color:#8d997c}.area-card p{font-size:13px}.area-card a{font-size:11px;display:inline-flex;gap:15px;align-items:center}.area-card a svg{width:15px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-copy>p{font-size:14px;max-width:380px}.contact-links{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.contact-location{margin-top:32px;padding-top:25px;border-top:1px solid var(--line)}.contact-location h3{font:500 15px var(--sans);display:flex;gap:10px;align-items:center}.contact-location p{font-size:12px}.map{width:100%;height:220px;border:0;margin-top:20px}.booking-form{background:#eeeee5;padding:32px}.booking-form h3{margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field.full{grid-column:1/-1}.field label{display:block;font-size:11px;margin-bottom:6px}.field input,.field textarea{display:block;width:100%;border:1px solid #d5d9cb;border-radius:0;background:var(--paper);padding:11px 12px;min-width:0;color:var(--ink);font-size:13px}.field textarea{resize:vertical;min-height:80px}.booking-form .btn{width:100%;margin-top:20px}.form-note{font-size:10px;margin-bottom:0}.form-status{font-size:12px;color:var(--green)}.faq{margin-top:65px;display:grid;grid-template-columns:1fr 1.3fr;gap:90px}.faq h2{font-size:32px}.faq details{border-bottom:1px solid var(--line);padding:15px 0}.faq summary{cursor:pointer;font-size:13px;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq summary:after{content:'+';font-size:18px}.faq details[open] summary:after{content:'−'}.faq details p{font-size:12px;margin-bottom:5px}.footer{background:#2d3e2e;color:#f1f1e7;padding:45px 0 20px}.footer-top{display:flex;justify-content:space-between;gap:25px;align-items:center;padding-bottom:35px}.footer .brand svg{color:#dae1cf}.footer-tagline{font:italic 24px var(--serif);color:#c9d2ba}.footer-bottom{border-top:1px solid #50604d;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:#b9c2b1}.floating-contact{position:fixed;bottom:22px;right:24px;width:48px;height:48px;border-radius:50%;background:var(--green);color:white;border:1px solid #a4af96;display:grid;place-items:center;z-index:15}.lightbox{background:#182019;color:#fff;border:0;padding:0;max-width:94vw;width:1100px;max-height:94dvh}.lightbox::backdrop{background:#101910e8}.lightbox-top{padding:13px 20px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.lightbox button{background:none;border:1px solid #697568;color:white;padding:6px 15px;font-size:20px}.lightbox-image{height:73dvh;object-fit:contain}.lightbox-controls{display:flex;justify-content:space-between;padding:15px 20px;align-items:center}.lightbox-controls span{font-size:11px}body:has(dialog[open]){overflow:hidden}.skip-link{position:fixed;top:-60px;left:15px;background:var(--paper);z-index:100;padding:10px}.skip-link:focus{top:10px}
@media(min-width:1600px){.wrap{max-width:1550px}.hero-photo{height:560px}}@media(max-width:1100px){.wrap{padding:0 35px}.nav{gap:17px}.header-actions{gap:16px}.nav a:nth-child(4){display:none}.hero-intro{gap:25px}.hero-intro h1{font-size:46px}.story,.pricing,.contact,.faq{gap:45px}.food-copy{padding:35px}.facility-list{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.wrap{padding:0 22px}.header-inner{height:77px;gap:12px}.brand>svg{width:38px;height:38px}.brand-name{font-size:24px}.brand small{font-size:7px;letter-spacing:1.8px}.header-actions{gap:16px}.header-actions>.btn{display:none}.menu-toggle{display:block;padding:4px}.nav{display:none;position:absolute;top:77px;left:0;right:0;padding:25px;background:var(--paper);border-bottom:1px solid var(--line)}.nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.nav a:nth-child(4){display:block}.hero-intro{display:block;padding-top:33px;padding-bottom:27px}.hero-intro h1{font-size:clamp(35px,7.2vw,53px);letter-spacing:-1.2px}.eyebrow{font-size:8px;letter-spacing:1.8px}.hero-aside{max-width:100%;margin-top:20px;display:flex;align-items:center;gap:25px}.hero-aside p{font-size:11px;margin:0;flex:1}.hero-aside .text-link{font-size:10px;gap:10px;white-space:nowrap}.hero-photo{height:410px}.hero-photo>img{object-position:55% center}.location-tag{top:15px;left:15px;font-size:8px;padding:8px 10px}.photo-note{left:15px;bottom:15px;font-size:9px}.hero-number{right:15px;bottom:15px;width:44px;height:44px}.amenity-strip{display:grid;grid-template-columns:1fr 1fr;gap:17px;padding:22px 0}.amenity-strip>div{font-size:10px}.amenity-strip>div:last-child{display:none}.section{padding-top:60px;padding-bottom:60px}.story,.stay-layout,.pricing,.contact,.faq{grid-template-columns:1fr;gap:35px}.story-photo img{height:330px}.story-copy{padding-top:10px}.story-copy p{max-width:none}.section-heading{gap:15px}.section-heading>.text-link{font-size:10px;gap:10px;white-space:nowrap}.stay-image{height:330px}.room-thumbs{gap:9px}.room-thumbs img{height:110px}.cards{grid-template-columns:1fr;gap:30px}.facility-card img{height:300px}.facility-card h3{font-size:24px}.facility-list{grid-template-columns:1fr 1fr;gap:22px 12px}.facility-list>div{font-size:10px}.food-banner{grid-template-columns:1fr}.food-banner img{height:280px}.food-copy{padding:30px}.food-copy h2{font-size:32px}.gallery-top{align-items:flex-start}.photo-count{display:none}.filters{gap:6px}.filters button{padding:7px 12px;font-size:10px}.gallery-grid{grid-template-columns:1fr 1fr;gap:10px}.gallery-item img{height:180px}.gallery-item span{font-size:8px;left:8px;bottom:8px}.area-grid{grid-template-columns:1fr;gap:0}.area-card{padding:22px 0}.area-card h3{margin-top:5px}.pricing-intro p{max-width:none}.booking-form{padding:23px}.faq{margin-top:45px;gap:15px}.footer-top{align-items:flex-start;flex-direction:column}.footer-tagline{font-size:22px}.footer-bottom{gap:15px;flex-direction:column}.floating-contact{width:43px;height:43px;right:14px;bottom:14px}.lightbox-image{height:65dvh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:760px){.brand{min-width:0;gap:8px}.brand>svg{width:32px;height:32px}.brand-name{font-size:18px;line-height:.95;white-space:normal;max-width:145px}.header-actions{gap:10px}.languages{gap:5px}.menu-toggle{padding:2px}}
