:root{--ink:#202723;--muted:#686e68;--cream:#f5f2eb;--paper:#fbfaf6;--forest:#1c2923;--line:#d8d8cf;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:absolute;left:-9999px;top:10px;z-index:20;background:white;padding:12px}.skip:focus{left:10px}::selection{background:#b6bfaa;color:#19221e}.header{height:96px;display:flex;align-items:center;gap:40px;padding:0 clamp(24px,5vw,86px);position:fixed;z-index:10;top:0;width:100%;color:#fff;border-bottom:1px solid #ffffff47;transition:background .3s,height .3s,border .3s}.header.scrolled{height:76px;background:rgba(24,33,29,.93);backdrop-filter:blur(16px);border-color:#ffffff20}.brand{display:flex;align-items:center;gap:12px;min-width:206px;font-family:var(--serif);font-size:18px;letter-spacing:.075em;line-height:1.1;white-space:nowrap}.brand small{display:block;margin-top:5px;font-family:var(--sans);letter-spacing:.27em;font-size:8px;font-weight:600}.brand-mark svg{width:38px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.nav{display:flex;justify-content:center;align-items:center;flex:1;gap:clamp(13px,1.8vw,32px)}.nav a,.header-book,.eyebrow,.hero-bottom,.text-link,.button,.quiet-link,.card-content>span,.image-note,.footer-bottom{font-size:11px;font-weight:700;letter-spacing:.15em}.nav a{letter-spacing:.04em;white-space:nowrap;position:relative}.nav a:after{content:"";position:absolute;bottom:-7px;left:0;width:0;height:1px;background:currentColor;transition:width .25s}.nav a:hover:after{width:100%}.header-book{border:1px solid #ffffff8a;padding:13px 17px;white-space:nowrap}.header-book span{margin-left:18px}.header-book:hover{background:white;color:var(--forest)}.menu-toggle{display:none}.hero{height:min(900px,100svh);min-height:670px;position:relative;background:#2a392e;color:#fff;overflow:hidden}.hero-photo,.landscape-image,.spa-visual,.card-photo{position:absolute;inset:0;background-position:center;background-size:cover}.hero-photo{background-image:url("assets/hotel-hero.webp");transform:scale(1.04);animation:slowzoom 14s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,22,20,.67),rgba(10,24,19,.18) 72%),linear-gradient(0deg,rgba(10,24,19,.5),transparent 35%)}@keyframes slowzoom{from{transform:scale(1.12)}to{transform:scale(1.04)}}.hero-copy{position:absolute;left:clamp(28px,8vw,145px);top:48%;transform:translateY(-42%);max-width:800px}.eyebrow{display:inline-block;color:#747b70}.eyebrow.light{color:#fff;opacity:.87}.hero h1,h2,h3,p{margin-top:0}.hero h1,h2{font-family:var(--serif);font-weight:400}.hero h1{font-size:clamp(84px,11vw,165px);line-height:.98;letter-spacing:-.055em;margin:32px 0 29px}.hero h1 em,h2 em{font-weight:400}.hero-copy>p{font-size:clamp(18px,1.9vw,23px);margin-bottom:39px}.hero-actions{display:flex;align-items:center;gap:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:18px 21px;min-height:58px;transition:background .25s,color .25s,transform .25s}.button:hover{transform:translateY(-2px)}.button-light{background:#f6f5ef;color:#233029}.button-light:hover{background:#dce2d6}.quiet-link{border-bottom:1px solid #ffffff90;padding-bottom:8px}.quiet-link span{margin-left:12px}.hero-bottom{position:absolute;bottom:27px;left:clamp(28px,5vw,86px);right:clamp(28px,5vw,86px);display:flex;justify-content:space-between;align-items:center;font-size:10px}.hero-bottom a span{margin-left:16px}.section{padding:clamp(90px,11vw,175px) clamp(28px,8vw,145px)}.intro{display:grid;grid-template-columns:25% 1fr;gap:6%;background:var(--paper)}.intro-side{display:flex;flex-direction:column;align-items:flex-start;gap:28px;font-size:10px;letter-spacing:.13em;color:#777d73}.intro-side .line{width:1px;height:90px;background:#b7bdb1}.intro h2,.section h2,.spa-content h2,.events h2,.contact h2{font-size:clamp(47px,5.6vw,88px);line-height:1.16;letter-spacing:-.047em}.intro h2{margin-bottom:35px}.intro-body>p{max-width:550px;margin-left:18%;font-size:18px;line-height:1.8;color:#606760}.intro-body>.text-link{margin-left:18%;margin-top:22px}.text-link{display:inline-flex;justify-content:space-between;gap:50px;min-width:205px;border-bottom:1px solid currentColor;padding-bottom:11px;transition:gap .25s}.text-link:hover{gap:65px}.landscape{height:650px;position:relative;background:#536557}.landscape-image{background-image:url("assets/hotel-side.webp");background-attachment:fixed}.landscape:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,31,25,.45),transparent)}.landscape-label{position:absolute;z-index:1;color:#fff;bottom:65px;left:clamp(28px,8vw,145px);display:flex;align-items:end;gap:20px}.landscape-label strong{font:400 clamp(100px,16vw,210px)/.8 var(--serif);letter-spacing:-.07em}.landscape-label span{font-size:11px;letter-spacing:.17em;line-height:1.7;padding-bottom:7px}.section-heading{display:grid;grid-template-columns:25% 1fr;gap:6%;align-items:start}.section-heading h2{max-width:840px;margin-bottom:23px}.section-heading p{max-width:525px;font-size:17px;color:var(--muted);line-height:1.8}.stay{background:var(--cream)}.stay-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:64px}.photo-card{height:clamp(400px,42vw,620px);position:relative;overflow:hidden;color:#fff;background:#38473b}.card-photo{transition:transform .8s}.photo-card:hover .card-photo{transform:scale(1.06)}.photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,19,15,.7),transparent 55%)}.stay-hotel .card-photo{background-image:url("assets/hotel-side.webp")}.stay-houses .card-photo{background-image:url("assets/hotel-hero.webp");background-position:60% center}.card-content{position:absolute;z-index:1;bottom:39px;left:40px;right:40px}.card-content h3{font:400 clamp(30px,3.1vw,47px) var(--serif);margin:10px 0 0}.card-content .card-arrow{position:absolute;right:0;bottom:9px;font-size:26px;font-weight:400}.image-note{color:#8a9087;font-size:10px;margin-top:18px;letter-spacing:0}.spa-section{display:grid;grid-template-columns:1fr 1fr;min-height:690px;background:#d9dfd6}.spa-visual{position:relative;min-height:650px;background-image:linear-gradient(#1e3b3670,#1e3b3670),url("assets/hotel-hero.webp");background-position:center}.spa-number{position:absolute;bottom:34px;left:38px;color:white;font-size:11px;font-weight:700;letter-spacing:.15em}.spa-content{padding:clamp(80px,10vw,145px) clamp(40px,7vw,125px);display:flex;align-items:start;flex-direction:column;justify-content:center}.spa-content h2{margin:28px 0}.spa-content p{max-width:490px;font-size:17px;line-height:1.8;color:#526157;margin-bottom:32px}.restaurant{display:grid;grid-template-columns:37% 1fr;gap:9%;align-items:center;background:var(--paper)}.restaurant-copy h2{margin:30px 0}.restaurant-copy p{color:var(--muted);font-size:17px;line-height:1.8;margin-bottom:35px}.restaurant-images{display:grid;grid-template-columns:1fr .55fr;align-items:end;gap:22px}.restaurant-images img{width:100%;height:550px;object-fit:cover}.restaurant-images img:nth-child(2){height:360px}.experience{background:#e8e9e1}.experience-list{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid #afb7aa}.experience-list>div{padding:28px 32px 15px 0;border-right:1px solid #afb7aa}.experience-list>div+div{padding-left:32px}.experience-list>div:last-child{border:0}.experience-list span{font-size:11px;color:#6d776e}.experience-list h3{font:400 clamp(26px,2.7vw,40px) var(--serif);margin:80px 0 18px}.experience-list p{color:var(--muted);font-size:15px}.events{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:white;min-height:670px}.events-photo img{width:100%;height:100%;max-height:780px;min-height:620px;object-fit:cover;filter:saturate(.72)}.events-copy{padding:clamp(80px,10vw,145px) clamp(40px,7vw,125px);display:flex;flex-direction:column;justify-content:center;align-items:start}.events h2{margin:30px 0}.events p{max-width:500px;font-size:17px;color:#d5ded5;line-height:1.8;margin-bottom:36px}.contact{background:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{margin:26px 0 0}.contact-details{padding-top:42px;display:flex;flex-direction:column;align-items:start;gap:18px}.contact-details p{font-size:18px;line-height:1.8;margin-bottom:20px}.contact-details a{border-bottom:1px solid #9da69c;padding-bottom:8px}footer{background:#19241e;color:#f5f4ed;padding:60px clamp(28px,8vw,145px) 29px}.footer-top{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:100px}.footer-top span:first-child{font:400 clamp(42px,6.5vw,104px) var(--serif);letter-spacing:-.06em}.footer-top span:last-child{font:italic 400 clamp(18px,2vw,30px) var(--serif)}.footer-bottom{border-top:1px solid #ffffff40;padding-top:25px;display:flex;justify-content:space-between;color:#ccd3ca;font-size:10px}
@media(max-width:1130px){.nav{gap:12px}.nav a{font-size:10px}.header{gap:20px;padding:0 28px}.brand{min-width:185px;font-size:16px}.header-book{padding:11px}.header-book span{margin-left:5px}}
@media(max-width:900px){.header{height:76px}.nav{position:fixed;left:0;right:0;top:76px;height:calc(100svh - 76px);display:none;background:#1c2923;flex-direction:column;justify-content:center;gap:22px}.nav.open{display:flex}.nav a{font:400 32px var(--serif)}.header-book{margin-left:auto}.menu-toggle{width:38px;height:38px;display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;color:white;cursor:pointer}.menu-toggle span{display:block;height:1px;width:28px;background:currentColor}.hero-bottom span:last-child{display:none}.intro,.section-heading{grid-template-columns:1fr;gap:25px}.intro-side .line,.intro-side>span:last-child{display:none}.intro-body>p,.intro-body>.text-link{margin-left:0}.restaurant{grid-template-columns:1fr}.restaurant-images{margin-top:25px}.spa-section{grid-template-columns:1fr}.spa-visual{min-height:420px}.spa-content{padding:85px 8vw}.events{grid-template-columns:1fr}.events-photo img{height:470px;min-height:0}.events-copy{padding:85px 8vw}.landscape-image{background-attachment:scroll}}
@media(max-width:600px){.header{padding:0 20px}.brand{min-width:0;font-size:14px;gap:6px}.brand-mark svg{width:28px}.brand small{font-size:6px}.header-book{font-size:9px;padding:9px}.header-book span{display:none}.hero{min-height:680px;height:100svh}.hero-photo{background-position:53% center}.hero-copy{left:28px;right:20px;top:49%}.hero h1{font-size:clamp(75px,18vw,108px);margin:28px 0}.hero-copy>p{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:24px}.hero-bottom{left:28px;right:28px;font-size:8px}.section{padding:85px 26px}.intro h2,.section h2,.spa-content h2,.events h2,.contact h2{font-size:clamp(45px,11vw,67px)}.intro-body>p{font-size:16px}.landscape{height:480px}.landscape-label{left:26px;bottom:32px;gap:14px}.landscape-label strong{font-size:110px}.landscape-label span{font-size:9px}.stay-grid{grid-template-columns:1fr;margin-top:36px}.photo-card{height:440px}.card-content{left:25px;right:25px;bottom:25px}.spa-visual{min-height:360px}.spa-content{padding:80px 26px}.restaurant-images{gap:9px}.restaurant-images img{height:320px}.restaurant-images img:nth-child(2){height:230px}.experience-list{grid-template-columns:1fr;margin-top:35px}.experience-list>div,.experience-list>div+div{padding:25px 0;border-right:0;border-bottom:1px solid #afb7aa}.experience-list h3{margin:24px 0 6px}.events-photo img{height:350px}.events-copy{padding:80px 26px}.contact{grid-template-columns:1fr;gap:10px}.contact-details{padding-top:0}footer{padding:50px 26px 25px}.footer-top{display:block;padding-bottom:80px}.footer-top span{display:block}.footer-top span:last-child{margin-top:5px}.footer-bottom{gap:15px;flex-wrap:wrap}.footer-bottom span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-photo{animation:none}.card-photo,.button,.text-link{transition:none}}

/* Bohemian editorial direction */
:root{--ink:#2b342c;--muted:#697269;--cream:#f5efe5;--paper:#fcf9f3;--forest:#283d32;--line:#ded9cd}
body{background:var(--paper)}
.header{color:var(--ink);border-bottom-color:rgba(40,61,50,.13)}
.header.scrolled{background:rgba(252,249,243,.94);border-color:rgba(40,61,50,.13)}
.header-book{border-color:var(--forest);border-radius:40px;background:var(--forest);color:white;padding:14px 22px}
.header-book:hover{background:#bc784f;border-color:#bc784f;color:white}
.brand-mark{color:#ad7150}
.hero{height:min(900px,100svh);min-height:700px;background:#f4ede1;color:var(--ink)}
.hero:before{content:"";position:absolute;width:560px;height:560px;border:1px solid #d4c7b7;border-radius:50%;left:-310px;top:230px;opacity:.65}
.hero-photo{inset:145px clamp(30px,7vw,115px) 90px 52%;border-radius:240px 240px 24px 24px;background-position:center;box-shadow:30px 35px 0 rgba(178,148,112,.13);animation:none;transform:none}
.hero-shade{display:none}
.hero-copy{left:clamp(40px,8vw,140px);top:52%;max-width:46%;transform:translateY(-50%)}
.eyebrow.light{color:#896d55;opacity:1}
.hero h1{font-size:clamp(74px,8.5vw,136px);letter-spacing:-.07em;line-height:1.05;margin:27px 0 26px}
.hero h1 em{color:#a87356}
.hero-copy>p{color:#57645b;max-width:400px;font-size:19px;line-height:1.65}
.button-light{background:var(--forest);color:white;border-radius:50px;padding:19px 25px}
.button-light:hover{background:#ad7150;color:#fff}
.quiet-link{border-color:#9a968d;color:var(--forest)}
.hero-bottom{color:#6b7569;bottom:28px}
.intro{background:#fcf9f3}
.intro-side .line{background:#c7ae96}
.intro h2 em,.section h2 em,.spa-content h2 em,.events h2 em,.contact h2 em{color:#ad7150}
.text-link{color:#9a6244}
.landscape{height:660px;background:var(--paper);padding:0 clamp(28px,5vw,86px) 55px;overflow:hidden}
.landscape-image{inset:0 clamp(28px,5vw,86px) 55px;border-radius:28px 150px 28px 28px;background-attachment:scroll}
.landscape:after{inset:0 clamp(28px,5vw,86px) 55px;border-radius:28px 150px 28px 28px}
.landscape-label{bottom:110px;left:clamp(55px,10vw,175px)}
.stay{background:#f3ede2}
.photo-card{border-radius:150px 150px 22px 22px}
.stay-grid{gap:30px}
.card-photo{background-position:center}
.card-content{left:45px;right:45px}
.spa-section{background:#f8f4ec;grid-template-columns:1fr 1fr;gap:6%;padding:90px clamp(28px,5vw,86px)}
.spa-visual{min-height:650px;border-radius:260px 260px 26px 26px;overflow:hidden;background-position:52% center}
.spa-visual:after{content:"";position:absolute;inset:0;border:1px solid #ffffff45;border-radius:inherit}
.spa-content{padding:80px clamp(20px,5vw,90px) 80px 0}
.spa-content h2 em{color:#a87356}
.restaurant{background:var(--paper)}
.restaurant-images{align-items:center;gap:19px}
.restaurant-images img:first-child{height:570px;border-radius:180px 180px 22px 22px}
.restaurant-images img:nth-child(2){height:360px;border-radius:130px 130px 18px 18px;margin-top:175px}
.experience{background:#e5e8df}
.experience-list>div{border-color:#b9c4b8}
.events{background:#3b5143;gap:0}
.events-photo{padding:65px 0 65px clamp(28px,5vw,86px);display:flex;align-items:center}
.events-photo img{height:590px;min-height:0;border-radius:210px 210px 22px 22px;object-position:center}
.events-copy{padding-left:clamp(55px,7vw,120px)}
.events h2 em{color:#e7c2a5}
.events .eyebrow.light{color:#f1d4ba}
.events .button-light{background:#f8f4ec;color:var(--forest)}
.events .button-light:hover{background:#e4c9ac}
.contact{background:#fcf9f3}
footer{background:#273a2e}
@media(max-width:1130px){.hero-photo{left:55%}.hero-copy{max-width:50%}.hero h1{font-size:clamp(66px,8vw,105px)}}
@media(max-width:900px){.nav{background:#f6efe6}.nav a{color:var(--ink)}.menu-toggle{color:var(--forest)}.hero{height:auto;min-height:0;padding:145px 8vw 80px;display:flex;flex-direction:column}.hero-photo{position:relative;inset:auto;order:2;width:100%;height:550px;border-radius:220px 220px 22px 22px;margin-top:45px;box-shadow:18px 18px 0 rgba(178,148,112,.13)}.hero-copy{position:relative;left:auto;top:auto;transform:none;max-width:650px;order:1}.hero h1{font-size:clamp(75px,12vw,112px)}.hero-bottom{display:none}.landscape{height:550px}.spa-section{grid-template-columns:1fr;gap:0;padding:55px 8vw}.spa-visual{min-height:510px}.spa-content{padding:65px 0 40px}.events-photo{padding:55px 8vw 0}.events-photo img{height:530px}.events-copy{padding:70px 8vw 90px}}
@media(max-width:600px){.header{background:rgba(252,249,243,.94);border-bottom:1px solid rgba(40,61,50,.12)}.header-book{padding:10px 12px;font-size:8px}.hero{padding:125px 25px 65px}.hero:before{width:300px;height:300px;left:-190px;top:140px}.hero h1{font-size:clamp(68px,16vw,95px);margin:20px 0}.hero-copy>p{font-size:17px;margin-bottom:26px}.hero-photo{height:420px;margin-top:45px;border-radius:180px 180px 20px 20px}.hero-actions{gap:20px}.landscape{height:430px;padding:0 18px 36px}.landscape-image,.landscape:after{inset:0 18px 36px;border-radius:24px 100px 24px 24px}.landscape-label{left:45px;bottom:70px}.photo-card{height:440px;border-radius:125px 125px 20px 20px}.stay-grid{gap:24px}.spa-section{padding:25px 25px 65px}.spa-visual{min-height:390px;border-radius:180px 180px 18px 18px}.spa-content{padding:60px 0 0}.restaurant-images img:first-child{height:360px;border-radius:100px 100px 18px 18px}.restaurant-images img:nth-child(2){height:240px;border-radius:85px 85px 14px 14px;margin-top:85px}.events-photo{padding:40px 25px 0}.events-photo img{height:350px;border-radius:150px 150px 18px 18px}.events-copy{padding:65px 25px 80px}}

/* Site refinement */
.header{gap:24px}.brand{min-width:230px;width:230px;display:block}.brand img{display:block;width:100%;height:67px;object-fit:contain;object-position:left center}.nav{gap:clamp(17px,2vw,32px)}.nav a{font-size:13px;letter-spacing:0;font-weight:600}.header-book{font-size:12px}
.hero-photo{background-image:url("assets/hotel-hero.webp");background-position:50% center;background-color:#6c795c;border-radius:34% 34% 24px 24px}
.hero-copy{max-width:45%}.hero h1{font-size:clamp(76px,9.4vw,146px)}.hero-copy>p{max-width:450px}
.landscape-image{background-image:url("assets/hotel-side.webp");background-position:center 55%}.landscape:after{background:linear-gradient(90deg,rgba(13,25,19,.5),transparent 72%)}
.stay-grid{grid-template-columns:1.12fr .88fr;align-items:stretch}.stay-hotel{border-radius:28px 130px 28px 28px}.stay-hotel .card-photo{background-image:url("assets/hotel-side.webp");background-position:center}.stay-houses{border-radius:130px 28px 28px 28px;background:#d8d4c7;color:#304138}.stay-houses .card-photo{display:none}.stay-houses:before{content:"";position:absolute;border:1px solid #acaa97;width:72%;aspect-ratio:1;border-radius:50%;right:-24%;top:-10%;opacity:.65}.stay-houses:after{background:none}.stay-houses .card-content{bottom:48px}.stay-houses .card-content>span:first-child{color:#6b786a}.stay-houses .card-content h3{font-size:clamp(38px,4vw,64px);max-width:400px;line-height:1.1;margin:20px 0}.stay-houses .card-content p{font-size:16px;line-height:1.65;max-width:310px;margin:16px 0 0}
.spa-section{background:#edece4}.spa-visual{background:#496656;border-radius:25px 160px 25px 25px;display:flex;align-items:center;justify-content:center;overflow:hidden}.spa-visual:before{content:"";width:58%;aspect-ratio:1;border:1px solid rgba(241,239,221,.35);border-radius:50%;position:absolute;box-shadow:0 0 0 62px rgba(241,239,221,.035),0 0 0 125px rgba(241,239,221,.03)}.spa-visual:after{border-radius:inherit}.spa-overline{position:absolute;top:42px;left:42px;color:#d9e4d7;letter-spacing:.15em;font-size:11px;font-weight:700}.spa-word{position:relative;color:#f6f2e7;font:italic 400 clamp(90px,9vw,150px) var(--serif);letter-spacing:-.06em}
.restaurant-images img:first-child{border-radius:26px 130px 26px 26px;height:530px}.restaurant-images img:nth-child(2){border-radius:95px 24px 24px 24px;height:340px;margin-top:135px}
.events-photo{padding-right:0}.events-photo img{height:480px;min-height:0;border-radius:28px 150px 28px 28px;object-fit:cover;object-position:center}.events-copy{padding-top:100px;padding-bottom:100px}
.inquiry{background:#efe8dc;display:grid;grid-template-columns:.86fr 1.14fr;gap:9%;align-items:start}.inquiry h2{margin:28px 0;font:400 clamp(48px,5.7vw,85px)/1.14 var(--serif);letter-spacing:-.05em}.inquiry h2 em{color:#a87356}.inquiry-intro p{font-size:17px;line-height:1.75;color:#58635c;max-width:440px}.inquiry-form{background:#fbf9f2;border-radius:30px;padding:clamp(28px,4vw,55px);box-shadow:0 18px 55px #2636260d}.inquiry-form label{display:flex;flex-direction:column;gap:10px;font-size:13px;font-weight:600;color:#455249;margin-bottom:23px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{min-width:0;width:100%;border:1px solid #d6d6ca;background:#fff;font:400 16px var(--sans);border-radius:10px;padding:13px 14px;color:var(--ink)}.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{outline:2px solid #a87356;outline-offset:2px}.inquiry-form .button{border:0;cursor:pointer}.form-note{font-size:13px;line-height:1.5;color:#667168;margin:20px 0 0}
@media(max-width:1130px){.brand{min-width:190px;width:190px}.nav{gap:15px}.nav a{font-size:12px}.header-book{font-size:10px;padding:11px 16px}.hero h1{font-size:clamp(73px,9vw,116px)}}
@media(max-width:900px){.header{gap:10px}.brand{min-width:180px;width:180px}.brand img{height:62px}.nav a{font-size:30px}.hero-copy{max-width:650px}.hero-photo{background-position:center 44%}.stay-grid{grid-template-columns:1fr 1fr}.spa-visual{min-height:520px}.inquiry{grid-template-columns:1fr;gap:36px}}
@media(max-width:600px){.header{padding:0 18px}.brand{min-width:130px;width:130px}.brand img{height:55px}.header-book{font-size:9px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(70px,16vw,102px)}.hero-photo{height:370px;border-radius:44% 44% 20px 20px}.landscape-image{background-position:55% center}.stay-grid{grid-template-columns:1fr}.stay-hotel{border-radius:22px 100px 22px 22px}.stay-houses{border-radius:100px 22px 22px 22px}.spa-visual{min-height:370px;border-radius:22px 100px 22px 22px}.spa-word{font-size:86px}.spa-overline{top:25px;left:25px;font-size:9px}.restaurant-images img:first-child{border-radius:22px 95px 22px 22px;height:320px}.restaurant-images img:nth-child(2){border-radius:75px 18px 18px 18px;height:215px;margin-top:70px}.events-photo img{height:300px;border-radius:22px 100px 22px 22px}.inquiry{padding-top:80px}.inquiry-form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}}

/* Footer */
.site-footer{background:#293e32;color:#f8f5ec;padding:0 clamp(28px,8vw,145px)}
.footer-cta{display:flex;align-items:end;justify-content:space-between;gap:55px;padding:clamp(75px,9vw,130px) 0 clamp(75px,8vw,115px)}
.footer-cta .eyebrow{color:#dec9b4}
.footer-cta h2{font:400 clamp(56px,7.1vw,112px)/1.08 var(--serif);letter-spacing:-.055em;margin:25px 0 0}.footer-cta h2 em{color:#e8bd9d}
.footer-cta-link{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;white-space:nowrap;background:#f5efe4;color:#2d4134;border-radius:50px;padding:22px 27px;margin-bottom:13px;font-size:12px;font-weight:700;letter-spacing:.12em;transition:background .25s,transform .25s}
.footer-cta-link:hover{background:#e7c0a1;transform:translateY(-3px)}
.footer-main{display:grid;grid-template-columns:1.3fr .65fr 1fr;gap:9%;border-top:1px solid #ffffff40;padding:62px 0 80px}
.footer-identity img{width:min(310px,100%);height:auto;display:block;filter:brightness(0) invert(1);opacity:.95}.footer-identity p{font-size:15px;line-height:1.7;color:#d5dbd1;margin:27px 0 0}
.footer-column{display:flex;flex-direction:column;align-items:start;gap:15px}.footer-column h3{font:700 11px var(--sans);letter-spacing:.16em;color:#d9bda5;margin:0 0 13px}.footer-column a,.footer-column span{font-size:16px;line-height:1.6;color:#f6f4ec}.footer-column a:hover{text-decoration:underline;text-underline-offset:5px}.footer-column span{color:#ccd4cc}.footer-column .footer-map{font-size:11px;font-weight:700;letter-spacing:.12em;border-bottom:1px solid #cdd7cb;margin-top:5px;padding-bottom:7px}
.site-footer .footer-bottom{border-top:1px solid #ffffff40;padding:25px 0 32px;color:#cbd4c9;align-items:center}.site-footer .footer-bottom a:hover{color:white}
@media(max-width:900px){.footer-cta{display:block}.footer-cta-link{margin:40px 0 0}.footer-main{gap:5%;grid-template-columns:1.2fr .7fr 1fr}}
@media(max-width:600px){.site-footer{padding:0 26px}.footer-cta{padding:78px 0 72px}.footer-cta h2{font-size:clamp(52px,11vw,72px)}.footer-cta-link{font-size:10px;gap:24px;padding:19px 22px}.footer-main{grid-template-columns:1fr 1fr;gap:40px 22px;padding:53px 0 63px}.footer-identity{grid-column:1/-1}.footer-identity img{max-width:270px}.footer-column a,.footer-column span{font-size:14px}.site-footer .footer-bottom{gap:13px}.site-footer .footer-bottom span:nth-child(2){display:none}.site-footer .footer-bottom a{margin-left:auto}}

/* Photographs from the complex */
.hero-photo{background-image:url("assets/lake-reflections.webp");background-position:53% center}
.landscape-image{background-image:url("assets/waterfront.webp");background-position:center 45%}
.stay-hotel .card-photo{background-image:url("assets/hotel-front.webp")}
.stay-houses{color:white;background:#456049}
.stay-houses .card-photo{display:block;background-image:url("assets/house.webp");background-position:center}
.stay-houses:before{display:none}
.stay-houses:after{background:linear-gradient(0deg,rgba(8,25,19,.72),transparent 65%)}
.stay-houses .card-content>span:first-child{color:white}
.stay-houses .card-content h3{font-size:clamp(32px,3.1vw,47px);line-height:1.15;margin:10px 0 0}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.inquiry-form button:disabled{opacity:.55;cursor:wait}

/* Interior pages */
.page-header{background:#fcf9f3;border-bottom:1px solid #273a2e20}
.page-header .nav a[aria-current="page"]{color:#a76f4d}
.page-hero{min-height:700px;position:relative;overflow:hidden;color:#fff;background:#304b3d;display:flex;align-items:end;padding:150px clamp(28px,8vw,145px) 95px}
.page-hero-image,.page-hero-overlay{position:absolute;inset:76px 0 0}
.page-hero-image{background-size:cover;background-position:center}
.page-hero-overlay{background:linear-gradient(90deg,rgba(10,26,21,.72),rgba(10,26,21,.16) 82%),linear-gradient(0deg,rgba(8,25,19,.45),transparent 52%)}
.page-hero-content{position:relative;z-index:1;max-width:900px}.page-hero-content .eyebrow{color:#f6ebe1}.page-hero h1{font:400 clamp(72px,9vw,136px)/1.05 var(--serif);letter-spacing:-.06em;margin:22px 0 25px}.page-hero h1 em{color:#e4bea1}.page-hero p{font-size:20px;line-height:1.6;max-width:610px;margin:0}
.page-hero-spa{background:#3d6152}.page-hero-spa:before,.spa-hero-circle{content:"";position:absolute;border:1px solid rgba(255,255,255,.16);width:650px;height:650px;border-radius:50%;right:2%;top:11%}.spa-hero-circle{width:420px;height:420px;right:10%;top:26%;background:#ffffff08}
.page-intro{display:grid;grid-template-columns:26% 1fr;gap:5%;align-items:start}.page-intro h2,.page-feature h2,.page-options h2,.spa-details h2,.page-book h2{font:400 clamp(48px,6vw,88px)/1.15 var(--serif);letter-spacing:-.05em;margin:0 0 32px}.page-intro h2 em,.page-feature h2 em,.page-options h2 em,.spa-details h2 em{color:#a87356}.page-intro p{max-width:680px;color:#626e65;font-size:18px;line-height:1.8}
.page-feature{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#f5efe5;padding:90px clamp(28px,8vw,145px);align-items:center}.page-feature-photo{min-width:0}.page-feature-photo img{display:block;width:100%;height:620px;object-fit:cover;border-radius:150px 28px 28px 28px}.page-feature-copy h2{margin:28px 0}.page-feature-copy p{font-size:17px;line-height:1.8;color:#606d63;max-width:570px}.page-feature-copy .text-link{margin-top:25px}.page-feature-photo-right{background:#f9f8f2}.page-feature-photo-right .page-feature-copy{order:1}.page-feature-photo-right .page-feature-photo{order:2}.page-feature-photo-right .page-feature-photo img{border-radius:28px 150px 28px 28px}.page-feature-quiet{background:#e5e9e1}
.feature-list{list-style:none;margin:34px 0;padding:0;border-top:1px solid #c7c9bd}.feature-list li{border-bottom:1px solid #c7c9bd;padding:14px 0;font-size:15px}
.page-options{background:#fcf9f3}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:70px}.option-grid article{border-top:1px solid #aeb7aa;padding:25px 16px 28px 0}.option-grid span,.spa-detail-grid span{font-size:11px;font-weight:700;letter-spacing:.15em;color:#9c725b}.option-grid h3{font:400 clamp(27px,2.6vw,39px)/1.22 var(--serif);margin:60px 0 19px}.option-grid p{color:#667268;line-height:1.7}
.spa-details{background:#edf0e9}.spa-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px 80px;margin-top:70px}.spa-detail-grid article{border-top:1px solid #aeb9ab;padding:24px 0 28px}.spa-detail-grid h3{font:400 clamp(29px,3vw,43px) var(--serif);margin:28px 0 16px}.spa-detail-grid p{color:#617064;line-height:1.75;max-width:400px}
.page-book{text-align:center;background:#30483a;color:white;padding:110px 28px 120px}.page-book .eyebrow{color:#dcc3ad}.page-book h2{margin:25px 0 38px}.page-book h2 em{color:#e9c3a6}.page-book .button{margin:auto;background:#f4eee4;color:#30483a}.page-book .button:hover{background:#e5bfa0}.page-book p{font-size:14px;color:#d3ddd2;margin:28px auto 0}
@media(max-width:900px){.page-hero{min-height:630px}.page-intro{grid-template-columns:1fr;gap:30px}.page-feature{grid-template-columns:1fr;gap:42px;padding:70px 8vw}.page-feature-photo img{height:500px}.page-feature-photo-right .page-feature-copy{order:2}.page-feature-photo-right .page-feature-photo{order:1}.option-grid{gap:18px}}
@media(max-width:600px){.page-hero{min-height:600px;padding:145px 26px 65px}.page-hero-image,.page-hero-overlay{top:76px}.page-hero h1{font-size:clamp(58px,13vw,83px)}.page-hero p{font-size:17px}.page-intro h2,.page-feature h2,.page-options h2,.spa-details h2,.page-book h2{font-size:clamp(45px,10vw,65px)}.page-intro p{font-size:16px}.page-feature{padding:65px 26px}.page-feature-photo img{height:360px;border-radius:95px 20px 20px 20px}.page-feature-photo-right .page-feature-photo img{border-radius:20px 95px 20px 20px}.option-grid,.spa-detail-grid{grid-template-columns:1fr;gap:0;margin-top:36px}.option-grid h3{margin:28px 0 12px}.spa-detail-grid article{padding:24px 0}.spa-detail-grid h3{margin:22px 0 11px}.page-book{padding:80px 26px 90px}.page-book .button{font-size:10px}}

.stay-gallery{background:#f4efe7}.stay-gallery .section-heading p{max-width:600px;color:#677267;line-height:1.7}.stay-gallery-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px;margin-top:55px}.stay-gallery figure{margin:0;min-width:0}.stay-gallery img{display:block;width:100%;height:380px;object-fit:cover;border-radius:110px 18px 18px 18px}.stay-gallery figure:nth-child(2) img{border-radius:18px 110px 18px 18px}.stay-gallery figure:nth-child(3) img{border-radius:18px 18px 110px 18px}.stay-gallery figcaption{color:#687568;font-size:12px;letter-spacing:.04em;margin-top:15px}
@media(max-width:900px){.stay-gallery-grid{grid-template-columns:1fr 1fr}.stay-gallery figure:first-child{grid-column:1/-1}.stay-gallery figure:first-child img{height:440px}.stay-gallery img{height:290px}}
@media(max-width:600px){.stay-gallery-grid{grid-template-columns:1fr;gap:28px;margin-top:35px}.stay-gallery figure:first-child{grid-column:auto}.stay-gallery img,.stay-gallery figure:first-child img{height:320px;border-radius:95px 18px 18px 18px}}
.hero-en h1{font-size:clamp(68px,7.5vw,105px)}.hero-en .hero-copy{max-width:48%}
@media(max-width:900px){.hero-en .hero-copy{max-width:650px}.hero-en h1{font-size:clamp(68px,11vw,100px)}}
@media(max-width:600px){.hero-en .hero-copy{max-width:100%}.hero-en h1{font-size:clamp(58px,12vw,78px)}}

/* Narrow screens: keep contacts and controls inside the viewport. */
.footer-column,.footer-column a,.contact-details a{min-width:0;overflow-wrap:anywhere}
@media(max-width:420px){
  .header{gap:8px;padding:0 14px}
  .brand{min-width:116px;width:116px}
  .brand img{height:50px}
  .header-book{padding:9px 10px;font-size:8px}
  .menu-toggle{flex:none;width:32px}
  .hero{padding-left:20px;padding-right:20px}
  .hero-en h1{font-size:clamp(52px,13vw,62px);line-height:1.07;letter-spacing:-.055em}
  .hero .button{gap:18px;max-width:100%}
  .site-footer{padding:0 20px}
  .footer-main{gap:32px 16px}
  .footer-column a,.footer-column span{font-size:13px}
}
@media(max-width:900px) and (max-height:620px){.nav.open{justify-content:flex-start;overflow-y:auto;padding:24px 0}.nav a{font-size:25px}}
@media(max-width:420px){.header-book{font-size:9px}.inquiry-form label{font-size:14px}.inquiry-form .button{font-size:11px}}

/* Belite Skali — warm, editorial hospitality details */
:root{--paper:#fbf8f1;--cream:#f1eadf;--forest:#263d31;--clay:#a66c4d;--ink:#27372d}
html{scroll-padding-top:76px}
body{background:var(--paper)}
.header{background:rgba(251,248,241,.95);border-bottom:1px solid #40544320;backdrop-filter:blur(14px)}
.header.scrolled{background:rgba(251,248,241,.96);border-color:#40544328}
.header .nav a{transition:color .25s}
.header .nav a:hover,.header .nav a:focus-visible{color:var(--clay)}
.header-book,.button,.footer-cta-link{letter-spacing:.09em}
.header-book,.button-light{box-shadow:0 9px 22px #263d3118}
.button:focus-visible,.header-book:focus-visible,.nav a:focus-visible,.footer-cta-link:focus-visible,.option-link:focus-visible{outline:2px solid var(--clay);outline-offset:4px}

.hero{background:#f1e9dd}
.hero:before{border-color:#bea78e;opacity:.38}
.hero-photo{inset:132px clamp(38px,7vw,115px) 104px 54%;border-radius:46% 46% 30px 30px;box-shadow:24px 26px 0 #d7c7ad55;background-position:53% center}
.hero-photo{background-image:none}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:53% center;border-radius:inherit;filter:none}
.hero-photo:after{content:"";position:absolute;left:-62px;bottom:-26px;width:160px;height:208px;border:9px solid #f1e9dd;border-radius:90px 90px 16px 16px;background:url('assets/house-garden.webp') center/cover;box-shadow:0 18px 42px #243a2a36;transform:rotate(-5deg)}
.hero-copy{left:clamp(50px,8vw,140px);max-width:45%;top:51%}
.hero h1{font-size:clamp(78px,9vw,138px);line-height:1.02}
.hero-en h1{font-size:clamp(68px,7.2vw,104px);line-height:1.04}
.hero-copy>p{font-size:clamp(18px,1.5vw,21px);max-width:420px;color:#42564a}
.hero-actions .button{font-size:13px}
.hero-bottom{color:#667468}
.eyebrow{letter-spacing:.15em;font-size:12px}
.text-link,.quiet-link{font-size:13px}
.hero-bottom,.card-content>span{font-size:12px}

.intro{padding-top:clamp(85px,9vw,125px);padding-bottom:clamp(85px,9vw,125px)}
.intro h2,.section-heading h2{line-height:1.13}
.intro-body>p{max-width:610px}
.landscape{height:600px}
.landscape-image,.landscape:after{border-radius:36px 36px 170px 36px}
.landscape-image,.card-photo,.page-hero-image{filter:none}
.landscape-label strong{font-size:clamp(130px,17vw,225px)}

.stay{background:#eee8dc}
.stay,.restaurant,.experience,.inquiry,.contact{padding-top:clamp(85px,9vw,125px);padding-bottom:clamp(85px,9vw,125px)}
.stay-grid{grid-template-columns:1fr 1fr;gap:28px;margin-top:75px}
.stay-hotel,.stay-houses{border-radius:160px 22px 22px 22px;box-shadow:0 28px 48px #2c3d3020}
.stay-houses{border-radius:22px 160px 22px 22px}
.stay-hotel .card-photo{background-position:center 52%}
.stay-houses .card-photo{background-position:center 55%}
.photo-card{height:clamp(480px,43vw,620px)}
.photo-card:after{background:linear-gradient(0deg,#12291dca,transparent 65%)}
.card-content{bottom:37px;left:38px;right:38px}
.card-content h3{max-width:420px}

.spa-section{background:#f7f2ea;gap:7%;min-height:590px}
.spa-visual{border-radius:190px 26px 26px 26px;box-shadow:18px 20px 0 #d8cdb94a;min-height:540px}
.restaurant-images img:nth-child(2){object-position:center;transform:translateY(-18px)}
.events{background:#2a4436}
.events-photo img{border-radius:180px 22px 22px 22px;box-shadow:18px 20px 0 #d6b89523}
.events-photo img,.restaurant-images img,.page-feature-photo img,.stay-gallery img{filter:none}
.events-copy{padding-right:clamp(32px,7vw,120px)}
.inquiry{background:#e9e0d2}
.inquiry-form{border-radius:24px 110px 24px 24px;box-shadow:0 22px 45px #263d3112}
.contact{background:#fbf8f1}

/* Interior pages: framed photography and useful room choices. */
.page-hero{margin:104px clamp(16px,3vw,46px) 0;min-height:615px;padding:90px clamp(42px,8vw,140px) 80px;border-radius:28px 190px 28px 28px;overflow:hidden}
.page-hero-image,.page-hero-overlay{inset:0}
.page-hero-image{background-position:center 47%}
.page-hero-overlay{background:linear-gradient(90deg,#10281de0,#10281d28 75%),linear-gradient(0deg,#10281d80,transparent 50%)}
.page-hero h1{font-size:clamp(70px,8.2vw,118px);line-height:1.07;margin-bottom:18px}
.page-hero p{font-size:19px}
.page-hero-spa{background:#3c624e}
.page-intro{padding-top:105px;padding-bottom:110px}
.page-feature{gap:9%;padding-top:105px;padding-bottom:105px}
.page-feature-photo img{border-radius:26px 155px 26px 26px;box-shadow:17px 20px 0 #bca88a36}
.page-feature-photo-right .page-feature-photo img{border-radius:155px 26px 26px 26px}
.page-options{background:#faf7ef}
.option-grid{gap:22px;margin-top:56px;align-items:stretch}
.option-grid article{display:flex;flex-direction:column;min-height:380px;padding:37px 32px 30px;border:1px solid #dfd2c2;background:#f2eadf;border-radius:22px 110px 22px 22px;transition:transform .3s,box-shadow .3s}
.option-grid article:nth-child(2){border-radius:110px 22px 22px 22px;background:#e9ecdf}
.option-grid article:nth-child(3){border-radius:22px 22px 110px 22px;background:#e8dccc}
.option-grid article:hover{transform:translateY(-5px);box-shadow:0 20px 35px #263d3117}
.option-grid span{font-size:13px;color:#91634d}
.option-grid h3{font-size:clamp(29px,2.8vw,39px);margin:72px 0 16px}
.option-grid p{font-size:16px;line-height:1.65}
.option-link{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #b9ad9d;padding-top:18px;margin-top:auto;font-size:13px;font-weight:700;letter-spacing:.05em;color:#304c39}
.option-link span{font-size:19px;line-height:1}
.stay-gallery{background:#eae5d9}
.stay-gallery img{box-shadow:0 14px 30px #354b321b}
.stay-gallery figure:nth-child(2) img{border-radius:24px 24px 110px 24px}
.stay-gallery figure:nth-child(3) img{border-radius:110px 24px 24px 24px}
.page-book{background:#2a4436}

/* A warm photographic closing note, with the details below kept legible. */
.site-footer{background:#263d31}
.footer-cta{position:relative;min-height:460px;isolation:isolate;overflow:hidden}
.footer-cta:before{content:"";position:absolute;z-index:-1;right:15%;top:36px;width:230px;height:350px;background:linear-gradient(#172e2055,#172e2055),url('assets/waterfront.webp') center/cover;border-radius:120px 120px 18px 18px;transform:rotate(7deg);opacity:.82}
.footer-cta h2{max-width:860px}
.footer-cta-link{position:relative;z-index:1}
.footer-main{gap:7%}
.footer-column h3{font-size:12px}
.footer-column a,.footer-column span{line-height:1.7}
.footer-cta-link{font-size:13px}
.form-note{font-size:14px}
.inquiry-form label{font-size:14px}
.footer-column .footer-map{font-size:13px}
.site-footer .footer-bottom{font-size:12px;letter-spacing:.07em}

@media(max-width:1130px){
  .hero-photo{left:53%}.hero-copy{max-width:48%}.hero h1{font-size:clamp(68px,8.1vw,108px)}
  .footer-cta:before{right:8%;opacity:.38}
  .option-grid article{padding:30px 24px;min-height:400px}
}
@media(max-width:900px){
  .hero{padding-top:150px}.hero-photo{inset:auto;box-shadow:18px 20px 0 #d7c7ad55;border-radius:200px 200px 22px 22px}
  .hero-photo:after{left:-25px;bottom:-25px;width:120px;height:150px;border-width:7px}
  .hero-copy{left:auto;max-width:680px;top:auto}
  .stay-grid{grid-template-columns:1fr 1fr}
  .page-hero{margin:84px 18px 0;min-height:560px;padding:95px 7vw 65px;border-radius:24px 135px 24px 24px}
  .page-hero h1{font-size:clamp(65px,9vw,100px)}
  .option-grid{grid-template-columns:1fr 1fr}
  .option-grid article{min-height:350px}
  .footer-cta:before{right:0;opacity:.25}
}
@media(max-width:600px){
  .hero{padding:125px 24px 74px}.hero h1{font-size:clamp(69px,15vw,95px)}
  .hero-photo{height:390px;border-radius:46% 46% 22px 22px;margin-top:38px}
  .hero-photo:after{left:-12px;bottom:-21px;width:88px;height:112px;border-width:5px}
  .landscape{height:430px}.landscape-image,.landscape:after{border-radius:26px 26px 110px 26px}
  .stay-grid{grid-template-columns:1fr;gap:25px;margin-top:45px}.stay-hotel{border-radius:120px 20px 20px 20px}.stay-houses{border-radius:20px 120px 20px 20px}
  .photo-card{height:470px}.card-content{left:26px;right:26px;bottom:27px}
  .spa-visual{border-radius:130px 22px 22px 22px;min-height:340px}
  .events-photo img{border-radius:130px 20px 20px 20px}
  .inquiry-form{border-radius:24px 75px 24px 24px}
  .page-hero{margin:78px 10px 0;min-height:555px;padding:100px 28px 60px;border-radius:22px 95px 22px 22px}
  .page-hero h1{font-size:clamp(55px,12vw,76px)}.page-hero p{font-size:17px}
  .page-intro{padding-top:80px;padding-bottom:80px}
  .page-feature{padding-top:65px;padding-bottom:65px}
  .page-feature-photo img{border-radius:20px 105px 20px 20px;box-shadow:10px 12px 0 #bca88a36}
  .page-feature-photo-right .page-feature-photo img{border-radius:105px 20px 20px 20px}
  .option-grid{grid-template-columns:1fr;gap:16px}
  .option-grid article{min-height:310px;border-radius:20px 85px 20px 20px;padding:28px}
  .option-grid article:nth-child(2){border-radius:85px 20px 20px 20px}
  .option-grid article:nth-child(3){border-radius:20px 20px 85px 20px}
  .option-grid h3{margin:50px 0 12px}
  .footer-cta{min-height:0;padding:76px 0 72px}.footer-cta:before{width:145px;height:220px;top:24px;right:-45px;opacity:.18}
  .footer-cta h2{position:relative}.footer-main{gap:35px 18px}
}
@media(max-width:420px){
  .header-book{font-size:10px}
  .hero h1{font-size:clamp(64px,16vw,75px)}.hero-en h1{font-size:clamp(52px,13vw,62px)}
  .hero-photo{height:355px}
  .page-hero h1{font-size:clamp(48px,11.5vw,60px)}
  .footer-cta:before{display:none}
}

/* Stay information uses the same quiet editorial palette as the accommodation pages. */
.terms-page{background:#f8f5ed;color:#25382d}
.terms-heading{display:grid;grid-template-columns:1.08fr .92fr;gap:7%;align-items:center;padding:145px clamp(28px,8vw,145px) 75px;background:#e8e0d2;min-height:620px}
.terms-heading h1{font:400 clamp(54px,6.4vw,88px)/1.08 var(--serif);letter-spacing:-.055em;margin:25px 0}
.terms-heading h1 em{color:#925f49}
.terms-heading p{max-width:680px;font-size:18px;line-height:1.7;color:#4f5b50}
.terms-heading img{display:block;width:100%;height:420px;object-fit:cover;object-position:center;border-radius:140px 22px 22px 22px;box-shadow:18px 18px 0 #d1c2ab66}
.terms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:85px clamp(28px,8vw,145px)}
.terms-card{padding:clamp(28px,3.5vw,55px);border:1px solid #ded2c0;border-radius:24px 85px 24px 24px;background:#fdfbf6}
.terms-card:nth-child(even){border-radius:85px 24px 24px 24px}
.terms-card-wide{grid-column:1/-1;border-radius:24px 24px 85px 24px}
.terms-card h2{font:400 clamp(32px,3.4vw,48px)/1.2 var(--serif);letter-spacing:-.035em;margin:20px 0 24px}
.terms-card p,.terms-card li{font-size:16px;line-height:1.75;color:#4b594e}
.terms-card ul{padding-left:21px;margin:0}
.terms-card li+li{margin-top:12px}
.terms-card p:last-child{margin-bottom:0}
.terms-prices{display:grid;gap:12px;margin:20px 0}
.terms-prices div{display:flex;gap:10px;justify-content:space-between;border-bottom:1px solid #ded2c0;padding:10px 0}
.terms-prices span{text-align:right}
.terms-end{text-align:center;padding:65px 28px 85px;background:#2a4436;color:white}
.terms-end p{font:400 clamp(30px,4vw,50px)/1.2 var(--serif);margin:0 0 25px}
.terms-end .button{margin:auto}
.stay-terms-link{text-align:center;background:#eae5d9;padding:0 28px 65px;margin:0}
.stay-terms-link a,.page-book p a{font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:5px}

/* A clear contact route with the location and the question form side by side. */
.contact-page{background:#fbf8f1}
.contact-hero{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:7%;padding:150px clamp(28px,8vw,145px) 90px;background:#e9e1d4}
.contact-hero h1{font:400 clamp(62px,6.6vw,96px)/1.08 var(--serif);letter-spacing:-.055em;margin:23px 0 26px}
.contact-hero h1 em,.contact-body h2 em{color:#98664f}
.contact-hero-copy>p{max-width:520px;font-size:18px;line-height:1.75;color:#516052}
.contact-hero>img{display:block;width:100%;height:500px;object-fit:cover;object-position:center;border-radius:170px 24px 24px 24px;box-shadow:18px 18px 0 #d2c2ab75}
.contact-methods{display:grid;gap:22px;margin-top:42px}
.contact-methods>div{border-top:1px solid #c6b8a5;padding-top:16px}
.contact-methods>div>span{display:block;font-size:12px;letter-spacing:.14em;font-weight:700;color:#8a6c55;margin-bottom:7px}
.contact-methods a{font:400 clamp(21px,2vw,29px)/1.35 var(--serif);color:#263d31;overflow-wrap:anywhere}
.contact-methods a:hover,.contact-directions:hover{color:#9a6244}
.contact-methods a span{font:400 18px var(--sans);margin-left:5px}
.contact-body{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:clamp(80px,9vw,125px) clamp(28px,8vw,145px) clamp(90px,10vw,145px)}
.contact-body h2{font:400 clamp(44px,4vw,62px)/1.13 var(--serif);letter-spacing:-.045em;margin:20px 0}
.contact-map-column>p,.contact-form-column>p{font-size:17px;line-height:1.7;color:#536056;max-width:500px;margin-bottom:30px}
.contact-map{height:475px;border-radius:24px 95px 24px 24px;overflow:hidden;background:#dfdfd2;box-shadow:0 17px 35px #263d3119}
.contact-map iframe{display:block;width:100%;height:100%;border:0}
.contact-directions{display:inline-block;border-bottom:1px solid currentColor;margin-top:24px;padding-bottom:9px;font-size:14px;font-weight:700;letter-spacing:.07em;color:#304c39}
.contact-form{margin:0;padding:clamp(28px,3vw,42px);border-radius:22px 80px 22px 22px}
.contact-form .form-row{gap:15px}
.contact-form textarea{min-height:160px;resize:vertical}
.contact-form .form-note{min-height:25px}
@media(max-width:1000px){.contact-hero{gap:5%}.contact-hero>img{height:430px}.contact-body{gap:5%}.contact-form .form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:760px){.contact-hero,.contact-body{grid-template-columns:1fr}.contact-hero{padding-top:125px;gap:40px}.contact-hero>img{height:340px;max-width:620px;border-radius:110px 20px 20px 20px}.contact-body{gap:75px}.contact-form .form-row{grid-template-columns:1fr 1fr;gap:15px}}
@media(max-width:600px){.contact-hero{padding:120px 25px 65px}.contact-hero h1{font-size:clamp(54px,12vw,72px)}.contact-hero>img{height:290px}.contact-body{padding:75px 25px 95px;gap:65px}.contact-body h2{font-size:clamp(42px,10vw,54px)}.contact-map{height:350px;border-radius:20px 75px 20px 20px}.contact-form{padding:27px}.contact-form .form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:900px){.terms-heading{grid-template-columns:1fr;gap:30px;padding-top:130px;min-height:0}.terms-heading img{height:360px;max-width:680px}}
@media(max-width:720px){.terms-heading{padding:120px 28px 60px}.terms-heading h1{font-size:clamp(52px,11vw,74px)}.terms-heading img{height:320px;border-radius:100px 20px 20px 20px}.terms-grid{grid-template-columns:1fr;padding-top:50px;padding-bottom:60px}.terms-card-wide{grid-column:auto}.terms-card,.terms-card:nth-child(even),.terms-card-wide{border-radius:22px 65px 22px 22px}.terms-prices div{display:block}.terms-prices span{display:block;text-align:left;margin-top:3px}}
@media(max-width:600px){
  .header-book{font-size:12px;letter-spacing:.035em}
  .header-book span{margin-left:7px}
  .footer-cta-link,.page-book .button,.inquiry-form .button{font-size:13px}
  .site-footer .footer-column a,.site-footer .footer-column span{font-size:14px}
  .restaurant-images img:nth-child(2){transform:none}
}
@media(max-width:420px){.header-book{font-size:11px;padding:9px 8px}.header-book span{margin-left:4px}}
@media(prefers-reduced-motion:reduce){.option-grid article{transition:none}}

/* The first screen gives each kind of visit a direct, legible route. */
.hero .hero-copy{max-width:min(50%,650px);top:48%}
.hero h1{font-size:clamp(58px,6.2vw,91px);line-height:1.06;margin:23px 0 20px}
.hero-copy>p{max-width:520px;margin-bottom:24px;line-height:1.55}
.hero-actions .button{min-height:53px;padding:14px 20px}
.hero-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:34px;max-width:605px}
.hero-paths a{position:relative;display:flex;flex-direction:column;justify-content:end;min-height:105px;padding:15px 25px 15px 15px;background:#fbf8f1c4;border:1px solid #a3988666;border-radius:16px 38px 16px 16px;backdrop-filter:blur(8px);transition:background .25s,transform .25s,box-shadow .25s}
.hero-paths a:nth-child(2){border-radius:38px 16px 16px 16px}
.hero-paths a:nth-child(3){border-radius:16px 16px 38px 16px}
.hero-paths a:hover{background:#fff;transform:translateY(-4px);box-shadow:0 12px 25px #2a3c301c}
.hero-paths a:focus-visible{outline:2px solid var(--clay);outline-offset:3px}
.hero-paths span{color:#806952;font-size:10px;font-weight:700;letter-spacing:.07em;white-space:nowrap}
.hero-paths strong{font:400 clamp(19px,1.65vw,25px)/1.16 var(--serif);margin-top:10px}
.hero-paths i{position:absolute;right:13px;bottom:12px;font:400 18px var(--sans)}
@media(max-width:1130px){.hero .hero-copy{max-width:51%}.hero h1{font-size:clamp(54px,6.3vw,77px)}.hero-paths{gap:6px}.hero-paths a{padding:12px 20px 12px 11px;min-height:94px}.hero-paths span{font-size:9px}}
@media(max-width:900px){.hero .hero-copy{max-width:680px;top:auto}.hero h1{font-size:clamp(66px,9vw,94px)}.hero-paths{max-width:680px}.hero-photo{margin-top:35px}}
@media(max-width:600px){.hero h1{font-size:clamp(51px,11vw,68px);margin:19px 0}.hero-copy>p{font-size:16px;margin-bottom:21px}.hero-paths{margin-top:28px;gap:8px}.hero-paths a{min-height:91px;padding:12px 8px;border-radius:15px 25px 15px 15px}.hero-paths a:nth-child(2){border-radius:25px 15px 15px 15px}.hero-paths a:nth-child(3){border-radius:15px 15px 25px 15px}.hero-paths span{font-size:8px;white-space:normal;line-height:1.3}.hero-paths strong{font-size:17px;margin-top:8px}.hero-paths i{right:8px;bottom:8px;font-size:14px}.hero-photo{margin-top:30px}.hero-en h1{font-size:clamp(53px,11vw,68px)}}
@media(max-width:380px){.hero-paths{grid-template-columns:1fr}.hero-paths a{min-height:62px;padding:9px 35px 9px 13px}.hero-paths strong{margin-top:2px}.hero-paths i{bottom:17px}.hero-photo{height:300px}}
@media(prefers-reduced-motion:reduce){.hero-paths a{transition:none}}

/* Spa: a photographic, staggered route through the actual spaces. */
.spa-page{background:#f8f5ef;overflow:hidden}
.spa-page .eyebrow{color:#9c725b}
.spa-lead{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:5%;min-height:740px;padding:125px clamp(25px,7vw,120px) 70px;background:#e9eee9}
.spa-lead-copy{position:relative;z-index:1;padding:30px 0 25px}
.spa-lead h1,.spa-page h2,.spa-room h3{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}
.spa-lead h1{font-size:clamp(65px,6.7vw,108px);line-height:1.07;margin:28px -90px 26px 0}
.spa-page h1 em,.spa-page h2 em{color:#a77353;font-weight:400}
.spa-lead-copy>p{max-width:480px;font-size:19px;line-height:1.68;color:#506259;margin-bottom:32px}
.spa-lead-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.spa-lead-actions .button{background:#273f36;color:white;min-height:55px;font-size:12px}
.spa-lead-actions>a:last-child{font-size:12px;font-weight:700;letter-spacing:.09em;border-bottom:1px solid #869a90;padding-bottom:8px}
.spa-lead-actions>a:last-child span{margin-left:12px}
.spa-lead-photo{position:relative;height:590px;min-width:0;border-radius:210px 25px 25px 25px;overflow:hidden;box-shadow:23px 24px 0 #cedbcf}
.spa-lead-photo img,.spa-water-image img,.spa-room img,.spa-final>img{display:block;width:100%;height:100%;object-fit:cover}
.spa-lead-photo img{object-position:center}
.spa-lead-photo>span{position:absolute;bottom:25px;left:30px;color:white;font-size:12px;letter-spacing:.1em;font-weight:700;text-shadow:0 1px 7px #273f36}
.spa-intro{display:grid;grid-template-columns:.36fr 1fr .76fr;gap:5%;align-items:start;padding:110px clamp(25px,7vw,120px) 115px}
.spa-page h2{font-size:clamp(43px,5vw,72px);line-height:1.17;margin:0}
.spa-intro p{font-size:18px;line-height:1.75;color:#5f6b63;margin:7px 0 0}
.spa-water{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px;background:#dce9e5}
.spa-water-image{min-height:580px;overflow:hidden;border-radius:0 170px 24px 0}
.spa-water-copy{align-self:center;padding:70px clamp(35px,8vw,145px)}
.spa-water-copy h2{margin:28px 0}.spa-water-copy p{font-size:18px;line-height:1.75;max-width:420px;color:#4c625b}
.spa-small-note{display:block;margin-top:45px;border-top:1px solid #98b2a8;padding-top:15px;color:#527267;font-size:12px;letter-spacing:.12em;font-weight:700}
.spa-rooms{padding:120px clamp(25px,7vw,120px) 135px}
.spa-rooms-heading{display:flex;justify-content:space-between;gap:35px;align-items:start;margin-bottom:60px}.spa-rooms-heading h2{max-width:670px}
.spa-rooms-grid{display:grid;grid-template-columns:1.1fr .9fr .95fr;align-items:start;gap:25px}
.spa-room{min-width:0}.spa-room img{height:clamp(260px,28vw,420px);border-radius:110px 20px 20px 20px}.spa-room:nth-child(2){margin-top:80px}.spa-room:nth-child(2) img{border-radius:20px 100px 20px 20px}.spa-room:nth-child(3){margin-top:145px}.spa-room:nth-child(3) img{border-radius:20px 20px 95px 20px}
.spa-room>div{padding:24px 8px}.spa-room span{font-size:12px;letter-spacing:.12em;font-weight:700;color:#9c725b}.spa-room h3{font-size:clamp(27px,2.8vw,42px);line-height:1.15;margin:13px 0}.spa-room p{font-size:16px;line-height:1.65;color:#5f6b63;max-width:330px}
.spa-final{display:grid;grid-template-columns:.75fr 1fr;min-height:540px;background:#294439;color:white}.spa-final>img{max-height:650px;min-height:540px;border-radius:0 130px 0 0}.spa-final>div{align-self:center;padding:70px clamp(35px,8vw,140px)}.spa-final .eyebrow{color:#e3c8ab}.spa-final h2{margin:25px 0}.spa-final p{font-size:18px;line-height:1.7;color:#d2ded4;max-width:480px;margin-bottom:30px}.spa-final .button{font-size:12px}
@media(max-width:1000px){.spa-lead{grid-template-columns:1fr 1fr;min-height:680px}.spa-lead h1{font-size:clamp(54px,6vw,77px);margin-right:-45px}.spa-lead-photo{height:510px}.spa-intro{grid-template-columns:1fr 2fr}.spa-intro p{grid-column:2}.spa-water-copy{padding:60px 7vw}.spa-rooms-grid{gap:18px}}
@media(max-width:760px){.spa-lead{grid-template-columns:1fr;padding:125px 25px 65px;gap:35px}.spa-lead h1{font-size:clamp(59px,10vw,88px);margin-right:0}.spa-lead-photo{height:400px;max-width:700px;border-radius:140px 22px 22px 22px;box-shadow:13px 14px 0 #cedbcf}.spa-intro{grid-template-columns:1fr;gap:20px;padding:85px 25px}.spa-intro p{grid-column:auto;margin:0;max-width:580px}.spa-water{grid-template-columns:1fr}.spa-water-image{min-height:0;height:420px;border-radius:0 110px 22px 0}.spa-water-copy{padding:70px 25px 80px}.spa-rooms{padding:85px 25px 95px}.spa-rooms-heading{display:block}.spa-rooms-heading h2{margin-top:20px}.spa-rooms-grid{grid-template-columns:1fr 1fr;gap:25px}.spa-room:nth-child(2),.spa-room:nth-child(3){margin-top:0}.spa-room img{height:290px}.spa-room:nth-child(3){grid-column:1/-1;max-width:440px}.spa-final{grid-template-columns:1fr}.spa-final>img{height:350px;min-height:0;border-radius:0 90px 0 0}.spa-final>div{padding:70px 25px 85px}}
@media(max-width:520px){.spa-lead{padding-top:116px}.spa-lead h1{font-size:clamp(53px,12vw,70px)}.spa-lead-copy>p,.spa-intro p,.spa-water-copy p,.spa-final p{font-size:16px}.spa-lead-actions{gap:22px}.spa-lead-photo{height:285px;border-radius:105px 20px 20px 20px}.spa-lead-photo>span{font-size:10px;left:18px}.spa-page h2{font-size:clamp(42px,10vw,55px)}.spa-water-image{height:300px}.spa-rooms-grid{grid-template-columns:1fr;gap:30px}.spa-room:nth-child(3){grid-column:auto}.spa-room img{height:280px}.spa-room:nth-child(2) img{border-radius:20px 85px 20px 20px}.spa-room:nth-child(3) img{border-radius:20px 20px 85px 20px}.spa-room>div{padding:17px 3px}.spa-room h3{font-size:35px}.spa-room p{margin-bottom:0}.spa-final>img{height:270px}}

/* Events: warm editorial storytelling around real celebrations. */
.event-page{background:#faf6ee;overflow:hidden}
.event-page .eyebrow{color:#9d745c}
.event-page h1,.event-page h2{font-family:var(--serif);font-weight:400;letter-spacing:-.052em}
.event-page h1 em,.event-page h2 em{color:#ae765c;font-weight:400}
.event-lead{display:grid;grid-template-columns:.9fr 1.1fr;gap:5%;align-items:center;min-height:770px;padding:126px clamp(25px,7vw,120px) 72px;background:#eee6db}
.event-lead-copy{z-index:1}.event-lead h1{font-size:clamp(62px,6.2vw,100px);line-height:1.08;margin:26px -70px 28px 0}
.event-lead-copy>p{max-width:480px;font-size:19px;line-height:1.7;color:#5b6156;margin-bottom:31px}
.event-lead-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.event-lead-actions .button{background:#284235;color:#fff;font-size:12px;min-height:55px}.event-lead-actions>a:last-child{font-size:12px;font-weight:700;letter-spacing:.06em;border-bottom:1px solid #a99888;padding-bottom:8px}
.event-lead-visual{position:relative;height:590px;min-width:0;overflow:hidden;border-radius:210px 25px 25px 25px;box-shadow:23px 23px 0 #d8c7b2}
.event-lead-visual img,.event-wedding-photo img,.event-story img,.event-other>img{display:block;width:100%;height:100%;object-fit:cover}
.event-lead-visual img{object-position:center 45%}.event-lead-visual:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#1a302475)}.event-lead-visual>span{position:absolute;bottom:25px;left:27px;color:white;z-index:1;font-size:12px;font-weight:700;letter-spacing:.12em}
.event-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;padding:115px clamp(25px,7vw,120px) 125px;align-items:end}.event-page h2{font-size:clamp(47px,5.2vw,76px);line-height:1.17;margin:24px 0 0}.event-intro p{font-size:18px;line-height:1.8;color:#5e675c;max-width:520px;margin:0 0 10px}
.event-wedding{display:grid;grid-template-columns:1fr 1fr;background:#e6d9ca;min-height:660px}.event-wedding-photo{min-height:660px;overflow:hidden;border-radius:0 175px 23px 0}.event-wedding-photo img{object-position:center}.event-wedding-copy{align-self:center;padding:70px clamp(35px,7vw,120px)}.event-wedding-copy h2{margin:24px 0}.event-wedding-copy>p{font-size:17px;line-height:1.75;max-width:530px;color:#536056}.event-wedding-list{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin:28px 0 32px}.event-wedding-list span{border-top:1px solid #bca995;padding:13px 0;font-size:11px;letter-spacing:.06em;font-weight:700;color:#6a6356}.event-wedding-copy .text-link{font-size:12px}
.event-story{padding:115px clamp(25px,7vw,120px) 130px}.event-story-heading{display:flex;align-items:start;justify-content:space-between;gap:45px;margin-bottom:58px}.event-story-heading h2{margin:0;max-width:700px}.event-story-grid{display:grid;grid-template-columns:.92fr 1.08fr .94fr;gap:22px;align-items:start}.event-story figure{margin:0;min-width:0}.event-story figure:nth-child(2){margin-top:65px}.event-story figure:nth-child(3){margin-top:130px}.event-story img{height:clamp(260px,26vw,395px);border-radius:110px 20px 20px 20px}.event-story figure:nth-child(2) img{border-radius:20px 105px 20px 20px}.event-story figure:nth-child(3) img{border-radius:20px 20px 100px 20px}.event-story figcaption{font-size:11px;font-weight:700;letter-spacing:.1em;color:#8f7059;margin:19px 2px}
.event-other{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%;padding:95px clamp(25px,7vw,120px);background:#e7eae3}.event-other-copy h2{margin:24px 0}.event-other-copy p{font-size:18px;line-height:1.75;color:#536056;max-width:560px;margin-bottom:34px}.event-other>img{height:510px;border-radius:160px 22px 22px 22px;box-shadow:18px 20px 0 #cdd6c9}
.event-final{text-align:center;padding:110px 25px 120px;background:#294438;color:white}.event-final .eyebrow{color:#dfbea4}.event-final h2{margin:27px auto 23px;max-width:950px}.event-final h2 em{color:#e2baa0}.event-final p{max-width:570px;margin:0 auto 32px;font-size:18px;line-height:1.7;color:#d8e0d5}.event-final .button{font-size:12px}
@media(max-width:1000px){.event-lead{grid-template-columns:1fr 1fr;min-height:670px}.event-lead h1{font-size:clamp(54px,6.2vw,80px);margin-right:-35px}.event-lead-visual{height:505px}.event-wedding-copy{padding:55px 5vw}.event-story-grid{gap:15px}}
@media(max-width:760px){.event-lead{grid-template-columns:1fr;gap:35px;padding:125px 25px 65px}.event-lead h1{font-size:clamp(60px,10vw,85px);margin-right:0}.event-lead-visual{height:430px;max-width:700px;border-radius:145px 22px 22px 22px;box-shadow:14px 15px 0 #d8c7b2}.event-intro{grid-template-columns:1fr;gap:25px;padding:85px 25px}.event-intro p{max-width:580px}.event-wedding{grid-template-columns:1fr}.event-wedding-photo{min-height:0;height:430px;border-radius:0 120px 20px 0}.event-wedding-copy{padding:70px 25px 85px}.event-story{padding:90px 25px 100px}.event-story-heading{display:block}.event-story-heading h2{margin-top:22px}.event-story-grid{grid-template-columns:1fr 1fr;gap:25px}.event-story figure:nth-child(2),.event-story figure:nth-child(3){margin-top:0}.event-story figure:nth-child(3){grid-column:1/-1;max-width:440px}.event-story img{height:285px}.event-other{grid-template-columns:1fr;gap:45px;padding:85px 25px 105px}.event-other>img{height:410px;max-width:680px}.event-final{padding:90px 25px 100px}}
@media(max-width:520px){.event-lead{padding-top:115px}.event-lead h1{font-size:clamp(52px,11.5vw,70px)}.event-lead-copy>p,.event-intro p,.event-wedding-copy>p,.event-other-copy p,.event-final p{font-size:16px}.event-lead-visual{height:305px;border-radius:105px 20px 20px 20px}.event-lead-visual>span{font-size:10px;left:18px}.event-page h2{font-size:clamp(42px,10vw,56px)}.event-wedding-photo{height:300px}.event-wedding-list span{font-size:10px}.event-story-grid{grid-template-columns:1fr;gap:30px}.event-story figure:nth-child(3){grid-column:auto}.event-story img{height:285px}.event-other>img{height:300px;border-radius:100px 20px 20px 20px;box-shadow:10px 11px 0 #cdd6c9}}

/* Real wedding photography and a clear path to the offer while its PDF is prepared. */
.event-lead-visual img{object-position:center 42%}
.event-wedding-photo img{object-position:center 44%}
.event-wedding-copy>p+p{margin-top:-3px}
.event-wedding-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.event-wedding-actions>span{font-size:13px;line-height:1.5;color:#6a6356}
.event-story figcaption{display:grid;gap:6px;margin-top:18px;letter-spacing:0}
.event-story figcaption strong{font:400 clamp(23px,2vw,31px)/1.12 var(--serif);color:#2a4335}
.event-story figcaption span{font:400 14px/1.6 var(--sans);color:#657066}
@media(max-width:520px){.event-wedding-list{grid-template-columns:1fr 1fr;gap:0 12px}.event-wedding-actions .text-link{font-size:11px;gap:18px}.event-story figcaption span{font-size:14px}}

/* A brief brand reveal on the first visit in each browser tab. */
.brand-intro{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;background:#f5efe5;pointer-events:auto;animation:intro-exit 1.85s both}
.brand-intro:before{content:"";position:absolute;inset:24px;border:1px solid #c5b8a555;border-radius:16px;pointer-events:none}
.brand-intro img{display:block;width:min(440px,72vw);height:auto;object-fit:contain;opacity:0;animation:intro-logo 1.5s ease both}
@keyframes intro-logo{0%{opacity:0;transform:translateY(12px) scale(.96)}35%,75%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-5px) scale(1.015)}}
@keyframes intro-exit{0%,69%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}100%{opacity:0;visibility:hidden;pointer-events:none}}
.intro-seen .brand-intro{display:none}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none}}

/* Real rooms and houses, with a clearer choice before the enquiry. */
.stay-page{background:#faf7f0;overflow:hidden}.stay-page .eyebrow{color:#9a735c}
.stay-page h1,.stay-page h2,.stay-page h3{font-family:var(--serif);font-weight:400;letter-spacing:-.05em}
.stay-page h1 em,.stay-page h2 em{font-weight:400;color:#a56e54}
.stay-lead{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:5%;min-height:745px;padding:126px clamp(25px,7vw,120px) 65px;background:#eae8db}
.houses-page .stay-lead{background:#e7e4d7}
.stay-lead-copy{position:relative;z-index:1}.stay-lead h1{font-size:clamp(62px,6.5vw,99px);line-height:1.08;margin:26px -72px 24px 0}.houses-page .stay-lead h1{font-size:clamp(60px,5.7vw,88px)}
.stay-lead-copy>p{font-size:19px;line-height:1.7;color:#526157;max-width:495px;margin-bottom:28px}
.stay-lead-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.stay-lead-actions .button{background:#284337;color:white;font-size:12px;min-height:55px;gap:22px}.stay-lead-actions>a:last-child{font-size:12px;font-weight:700;letter-spacing:.06em;border-bottom:1px solid #a9a18d;padding-bottom:8px}
.stay-lead-image{position:relative;height:555px;min-width:0;border-radius:185px 24px 24px 24px;overflow:hidden;box-shadow:20px 22px 0 #ced5c2}
.houses-page .stay-lead-image{box-shadow:20px 22px 0 #d2c9ad}.stay-lead-image img,.house-option>img,.stay-photo-grid img,.stay-nearby>img{display:block;width:100%;height:100%;object-fit:cover}.stay-lead-image img{object-position:center}
.stay-lead-image:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#152b235c)}.stay-lead-image>span{position:absolute;z-index:1;left:25px;bottom:22px;color:#fff;font-size:11px;letter-spacing:.12em;font-weight:700}
.stay-highlights{display:flex;justify-content:space-between;gap:20px;padding:20px clamp(25px,7vw,120px);border-bottom:1px solid #d1d3c2;background:#f1f0e6;color:#627062;font-size:12px;font-weight:700;letter-spacing:.08em}
.stay-intro{display:grid;grid-template-columns:.27fr 1fr .8fr;gap:5%;align-items:start;padding:105px clamp(25px,7vw,120px) 115px}
.stay-page h2{font-size:clamp(48px,5.2vw,75px);line-height:1.17;margin:0}.stay-intro p{font-size:18px;line-height:1.78;color:#5a685e;max-width:490px;margin:8px 0 0}
.stay-choices,.house-options{padding:100px clamp(25px,7vw,120px) 115px;background:#e7e9dc}.houses-page .house-options{background:#eee8dc}
.stay-section-heading{display:flex;justify-content:space-between;align-items:start;gap:30px;margin-bottom:55px}.stay-section-heading h2{max-width:680px}
.stay-choice-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.stay-choice-list article{display:flex;flex-direction:column;min-height:380px;padding:33px 31px;border:1px solid #d0d3c1;background:#f9f8f1;border-radius:25px 100px 25px 25px}.stay-choice-list article:nth-child(2){border-radius:100px 25px 25px 25px}.stay-choice-list article:nth-child(3){border-radius:25px 25px 100px 25px}
.stay-choice-number{font-size:12px;letter-spacing:.1em;font-weight:700;color:#8b6e56}.stay-choice-list h3{font-size:clamp(31px,3vw,45px);line-height:1.17;margin:72px 0 17px}.stay-choice-list p{font-size:16px;line-height:1.65;color:#5d675d;margin-bottom:30px}
.stay-choice-list a{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #afb8a8;padding-top:17px;margin-top:auto;font-size:12px;letter-spacing:.05em;font-weight:700;color:#355242}.stay-choice-list a span{font-size:19px}
.stay-choice-list a:hover,.stay-info-link:hover{color:#a56e54}.stay-choice-list a:focus-visible,.stay-lead-actions a:focus-visible,.house-option a:focus-visible{outline:2px solid #a56e54;outline-offset:4px}
.stay-choice-note{font-size:14px;line-height:1.6;color:#687166;margin:30px 0 0}
.house-option{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;margin-top:38px;padding:40px;background:#faf7f0;border-radius:25px 130px 25px 25px}.house-option-reverse{background:#e1e7da;border-radius:130px 25px 25px 25px}.house-option-reverse>img{order:2}.house-option>img{height:425px;border-radius:95px 20px 20px 20px}.house-option-reverse>img{border-radius:20px 95px 20px 20px}
.house-option h3{font-size:clamp(37px,4vw,56px);line-height:1.15;margin:21px 0}.house-option p{font-size:17px;line-height:1.75;color:#5d685d;max-width:540px;margin-bottom:33px}
.stay-real-photos{padding:105px clamp(25px,7vw,120px) 125px}.stay-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.stay-photo-grid figure{margin:0;min-width:0}.stay-photo-grid figure:nth-child(2){margin-top:55px}.stay-photo-grid figure:nth-child(3){margin-top:105px}.stay-photo-grid img{height:clamp(260px,28vw,405px);border-radius:95px 20px 20px 20px}.stay-photo-grid figure:nth-child(2) img{border-radius:20px 95px 20px 20px}.stay-photo-grid figure:nth-child(3) img{border-radius:20px 20px 95px 20px}.stay-photo-grid figcaption{margin:18px 2px;font-size:12px;letter-spacing:.1em;font-weight:700;color:#896d54}
.stay-nearby{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;background:#e2e9e3;min-height:540px}.stay-nearby>img{height:540px;border-radius:0 140px 24px 0}.stay-nearby>div{padding:70px clamp(35px,7vw,110px) 70px 0}.stay-nearby h2{margin:25px 0}.stay-nearby p{font-size:18px;line-height:1.7;color:#57675c;max-width:450px;margin-bottom:30px}
.stay-finish{display:flex;align-items:center;flex-direction:column;text-align:center;padding:110px 25px 120px;background:#294438;color:#fff}.stay-finish .eyebrow{color:#e5c6a8}.stay-finish h2{margin:25px 0}.stay-finish h2 em{color:#e1b99c}.stay-finish p{font-size:18px;line-height:1.7;max-width:540px;color:#d7e0d6;margin-bottom:30px}.stay-finish .button{font-size:12px}.stay-info-link{font-size:14px;border-bottom:1px solid #bdcbbb;margin-top:24px;padding-bottom:6px}
@media(max-width:1000px){.stay-lead{grid-template-columns:1fr 1fr;min-height:680px}.stay-lead h1,.houses-page .stay-lead h1{font-size:clamp(52px,6vw,74px);margin-right:-35px}.stay-lead-image{height:510px}.stay-intro{grid-template-columns:1fr 2fr}.stay-intro p{grid-column:2}.stay-choice-list article{padding:28px 23px}.stay-choice-list h3{font-size:31px}.house-option{gap:5%;padding:30px}.house-option>img{height:380px}}
@media(max-width:760px){.stay-lead{grid-template-columns:1fr;gap:35px;padding:125px 25px 65px}.stay-lead h1,.houses-page .stay-lead h1{font-size:clamp(61px,10vw,85px);margin-right:0}.stay-lead-image{height:430px;max-width:700px;border-radius:145px 22px 22px 22px;box-shadow:14px 15px 0 #ced5c2}.stay-highlights{flex-wrap:wrap;justify-content:flex-start;gap:12px 25px}.stay-intro{grid-template-columns:1fr;gap:22px;padding:85px 25px}.stay-intro p{grid-column:auto;margin:0}.stay-choices,.house-options{padding:85px 25px 95px}.stay-section-heading{display:block}.stay-section-heading h2{margin-top:20px}.stay-choice-list{grid-template-columns:1fr 1fr}.stay-choice-list article{min-height:330px}.stay-choice-list article:nth-child(3){grid-column:1/-1;min-height:270px}.stay-choice-list h3{margin-top:45px}.house-option,.house-option-reverse{grid-template-columns:1fr;gap:28px;border-radius:25px 95px 25px 25px}.house-option-reverse>img{order:0}.house-option>img{height:360px}.stay-real-photos{padding:85px 25px 100px}.stay-photo-grid{grid-template-columns:1fr 1fr;gap:20px}.stay-photo-grid figure:nth-child(2),.stay-photo-grid figure:nth-child(3){margin-top:0}.stay-photo-grid figure:nth-child(3){grid-column:1/-1;max-width:430px}.stay-photo-grid img{height:300px}.stay-nearby{grid-template-columns:1fr}.stay-nearby>img{height:380px;border-radius:0 100px 20px 0}.stay-nearby>div{padding:70px 25px 85px}.stay-finish{padding:90px 25px 100px}}
@media(max-width:520px){.stay-lead{padding-top:115px}.stay-lead h1,.houses-page .stay-lead h1{font-size:clamp(52px,11vw,68px)}.stay-lead-copy>p,.stay-intro p,.house-option p,.stay-nearby p,.stay-finish p{font-size:16px}.stay-lead-image{height:295px;border-radius:105px 20px 20px 20px}.stay-page h2{font-size:clamp(43px,10vw,56px)}.stay-highlights{font-size:10px;line-height:1.5}.stay-choice-list{grid-template-columns:1fr;gap:15px}.stay-choice-list article,.stay-choice-list article:nth-child(3){grid-column:auto;min-height:275px}.stay-choice-list h3{font-size:34px;margin:45px 0 14px}.house-option{padding:18px 18px 35px}.house-option>img{height:270px;border-radius:70px 18px 18px 18px}.house-option h3{font-size:39px}.stay-photo-grid{grid-template-columns:1fr;gap:24px}.stay-photo-grid figure:nth-child(3){grid-column:auto}.stay-photo-grid img{height:275px}.stay-nearby>img{height:280px}}

/* Navigation remains legible without crowding the logo or enquiry button. */
@media(min-width:1131px){.header .nav a{font-size:15px;letter-spacing:.005em}.header .nav{gap:clamp(15px,1.7vw,27px)}}
@media(min-width:901px) and (max-width:1130px){.header{gap:15px;padding-left:28px;padding-right:28px}.header .brand{min-width:170px;width:170px}.header .nav{gap:10px}.header .nav a{font-size:14px;letter-spacing:0}.header .header-book{font-size:11px;padding:11px 12px}}
@media(max-width:900px){.header .nav a{font-size:28px}}
/* Occasion journeys and real-photo gallery */
.occasion-pathways{background:#f4f0e7}.occasion-pathways h2,.event-pathways h2,.feature-page h1,.feature-page h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}.occasion-pathways h2{font-size:clamp(44px,5vw,76px);margin:18px 0 40px}.occasion-pathways em,.event-pathways em,.feature-page em{font-weight:400;color:#ab765b}.occasion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.occasion-grid a{display:flex;flex-direction:column;background:#fff;min-width:0;padding-bottom:26px;border-radius:95px 22px 22px 22px;overflow:hidden}.occasion-grid a:nth-child(2){border-radius:22px 95px 22px 22px}.occasion-grid a:nth-child(3){border-radius:22px 22px 95px 22px}.occasion-grid img{width:100%;height:290px;object-fit:cover}.occasion-grid span,.occasion-grid strong,.occasion-grid i{margin-left:25px;margin-right:25px}.occasion-grid span{font-size:12px;color:#9a715a;font-weight:700;letter-spacing:.08em;margin-top:23px}.occasion-grid strong{font:400 clamp(27px,2.6vw,40px)/1.16 var(--serif);margin-top:11px}.occasion-grid i{font-style:normal;font-size:12px;font-weight:700;margin-top:24px;color:#37604c}.occasion-grid a:hover img{filter:brightness(.9)}.event-pathways{padding:95px clamp(25px,7vw,120px);background:#ebe9dc}.event-pathways h2{font-size:clamp(45px,5vw,70px);margin:15px 0 35px}.event-pathways>div{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.event-pathways a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:25px;border:1px solid #c6c8b7;border-radius:24px;font:400 clamp(22px,2vw,30px)/1.25 var(--serif)}.event-pathways a:hover{background:#fff}.feature-page{background:#faf7f0}.feature-hero{display:grid;grid-template-columns:.88fr 1.12fr;gap:5%;align-items:center;padding:130px clamp(25px,7vw,120px) 80px;background:#eae6d9;min-height:680px}.feature-hero-copy{z-index:1}.feature-hero h1{font-size:clamp(55px,6vw,92px);line-height:1.1;margin:24px -45px 24px 0}.feature-hero p,.feature-story p,.feature-faq p,.feature-end p{font-size:18px;line-height:1.75;color:#5c685c;max-width:570px}.feature-hero img{width:100%;height:540px;object-fit:cover;border-radius:170px 25px 25px 25px;box-shadow:20px 20px 0 #d3cbbb}.feature-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px}.feature-actions .button{background:#294838;color:#fff}.feature-ribbon{padding:22px 7%;text-align:center;font-size:13px;letter-spacing:.07em;color:#496350;border-bottom:1px solid #d4d9cc}.feature-story{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9%;padding:110px clamp(25px,7vw,120px)}.feature-story h2,.feature-gallery h2,.feature-faq h2,.feature-end h2{font-size:clamp(46px,5vw,72px);line-height:1.15;margin:20px 0}.feature-story img{width:100%;height:480px;object-fit:cover;border-radius:24px 145px 24px 24px}.feature-story .text-link{display:inline-block;margin-top:22px}.feature-gallery{padding:100px clamp(25px,7vw,120px);background:#e7eadf}.feature-gallery>div{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:45px 0 30px}.feature-gallery img{width:100%;height:340px;object-fit:cover;border-radius:95px 18px 18px 18px}.feature-gallery img:nth-child(2){border-radius:18px 95px 18px 18px}.feature-gallery img:nth-child(3){border-radius:18px 18px 95px 18px}.feature-faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;padding:100px clamp(25px,7vw,120px)}.feature-faq details{border-bottom:1px solid #c4ccbc}.feature-faq summary{cursor:pointer;padding:22px 10px 22px 0;font-size:18px;font-weight:600}.feature-faq p{font-size:16px;margin:0 0 24px}.feature-end{text-align:center;padding:95px 25px 105px;background:#294739;color:#fff}.feature-end h2{margin:18px auto;max-width:790px}.feature-end h2 em{color:#e5b799}.feature-end p{color:#d9e5d7;margin:0 auto 28px}.feature-end .button{display:inline-flex}.gallery-intro{text-align:center;padding:160px 25px 75px;background:#e8e5d8}.gallery-intro h1{font-size:clamp(55px,7vw,105px);margin:20px 0}.gallery-intro p{font-size:18px;max-width:560px;line-height:1.7;margin:auto}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 18px;padding:75px clamp(25px,7vw,120px) 110px}.gallery-grid figure{margin:0;min-width:0}.gallery-grid img{display:block;width:100%;height:320px;object-fit:cover;border-radius:90px 18px 18px 18px}.gallery-grid figure:nth-child(3n+2) img{border-radius:18px 90px 18px 18px}.gallery-grid figure:nth-child(3n) img{border-radius:18px 18px 90px 18px}.gallery-grid figcaption{font-size:13px;letter-spacing:.04em;margin:15px 4px;color:#58705d}.mobile-contact{display:none}
@media(max-width:900px){.occasion-grid{gap:12px}.occasion-grid img{height:220px}.feature-hero{grid-template-columns:1fr 1fr;gap:24px}.feature-hero img{height:430px}.feature-hero h1{font-size:clamp(48px,6vw,72px)}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.occasion-grid,.event-pathways>div,.feature-hero,.feature-story,.feature-faq{grid-template-columns:1fr}.occasion-grid img{height:260px}.occasion-grid a{border-radius:60px 20px 20px 20px!important}.event-pathways{padding:75px 25px}.event-pathways a{padding:18px}.feature-hero{padding:120px 25px 65px}.feature-hero h1{margin-right:0;font-size:clamp(48px,10vw,70px)}.feature-hero p,.feature-story p{font-size:16px}.feature-hero img{height:340px;border-radius:120px 20px 20px 20px}.feature-story{padding:80px 25px}.feature-story img{height:350px}.feature-gallery,.feature-faq{padding:80px 25px}.feature-gallery>div{grid-template-columns:1fr 1fr}.feature-gallery img{height:240px}.feature-gallery img:nth-child(3){display:none}.gallery-grid{gap:25px 12px;padding:55px 20px 85px}.gallery-grid img{height:240px;border-radius:60px 15px 15px 15px}.mobile-contact{position:fixed;display:grid;grid-template-columns:1fr 1.4fr;gap:7px;bottom:0;left:0;right:0;padding:9px 12px max(9px,env(safe-area-inset-bottom));background:#faf7f0;box-shadow:0 -8px 24px #193a3422;z-index:40}.mobile-contact a{display:grid;place-items:center;min-height:48px;border:1px solid #345443;border-radius:10px;font-size:14px;font-weight:700;color:#244535}.mobile-contact a:last-child{background:#244535;color:white}.site-footer{padding-bottom:70px}}
@media(max-width:440px){.feature-gallery>div,.gallery-grid{grid-template-columns:1fr}.feature-gallery img:nth-child(3){display:block}.gallery-grid img{height:310px}.feature-ribbon{font-size:11px;line-height:1.8}}
.trust-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;background:#e5ebe5}.trust-section h2{font:400 clamp(45px,5vw,72px)/1.14 var(--serif);letter-spacing:-.05em;margin:23px 0}.trust-section h2 em{font-weight:400;color:#a7745b}.trust-section p{font-size:18px;line-height:1.75;color:#56675b;max-width:560px}.trust-section img{width:100%;height:460px;object-fit:cover;border-radius:150px 20px 20px 20px}.trust-actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px}
@media(max-width:700px){.trust-section{grid-template-columns:1fr}.trust-section img{height:300px;border-radius:100px 20px 20px 20px}.trust-section p{font-size:16px}}
.social-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.social-buttons a{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:44px;padding:10px 17px;border:1px solid currentColor;border-radius:999px;font-size:14px;font-weight:600;line-height:1.25;transition:background .2s,color .2s,transform .2s}.social-buttons a:hover{transform:translateY(-2px);background:#f6f1e6;color:#254437}.social-buttons a:focus-visible{outline:2px solid #bf8b67;outline-offset:3px}.contact-social{margin-top:25px}.contact-social a{color:#284a3a}
.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;background:#f6f2e9}.faq-heading{position:sticky;top:105px;align-self:start}.faq-heading h2{font:400 clamp(46px,5.1vw,76px)/1.14 var(--serif);letter-spacing:-.05em;margin:24px 0}.faq-heading h2 em{color:#aa765c;font-weight:400}.faq-heading p{font-size:17px;line-height:1.7;color:#5e695e;max-width:390px}.faq-heading .text-link{display:inline-block;margin-top:22px}.faq-list{border-top:1px solid #c8cbbd}.faq-list details{border-bottom:1px solid #c8cbbd}.faq-list summary{position:relative;cursor:pointer;list-style:none;padding:24px 48px 24px 0;font-size:18px;font-weight:600;line-height:1.45;color:#294739}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;right:5px;top:19px;font:400 30px/1 var(--serif);color:#a27456}.faq-list details[open] summary::after{content:'−'}.faq-list details p{margin:0 45px 24px 0;max-width:630px;color:#59675c;font-size:16px;line-height:1.7}.faq-list summary:focus-visible,.faq-more:focus-visible{outline:2px solid #a27456;outline-offset:3px}.faq-more{display:inline-block;margin-top:25px;font-size:14px;font-weight:700;color:#365c48;border-bottom:1px solid currentColor;padding-bottom:5px}
@media(max-width:800px){.faq-section{grid-template-columns:1fr;gap:42px}.faq-heading{position:static}.faq-heading h2{font-size:clamp(44px,9vw,65px)}}
@media(max-width:500px){.faq-list summary{font-size:16px;padding:20px 37px 20px 0}.faq-list details p{font-size:15px;margin-right:10px}.faq-list summary::after{top:17px}}
/* The story of the former marble quarry */
.story-teaser{display:grid;grid-template-columns:1.05fr .95fr;gap:9%;align-items:center;background:#e9e6d9}.story-teaser-visual{position:relative;min-width:0}.story-teaser-visual img{display:block;width:100%;height:540px;object-fit:cover;border-radius:165px 22px 22px 22px}.story-teaser-visual span{position:absolute;bottom:24px;left:28px;color:#fff;font-size:12px;font-weight:700;letter-spacing:.1em;text-shadow:0 1px 12px #142e29}.story-teaser h2,.story-page h1,.story-page h2{font-family:var(--serif);font-weight:400;letter-spacing:-.05em}.story-teaser h2{font-size:clamp(56px,5.6vw,86px);line-height:1.1;margin:24px 0}.story-teaser em,.story-page em{font-weight:400;color:#ae765b}.story-teaser p{font-size:18px;line-height:1.77;color:#516153;max-width:550px}.story-teaser .text-link{display:inline-block;margin-top:28px}.story-page{background:#faf7ef}.story-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:5%;align-items:center;padding:130px clamp(25px,7vw,120px) 85px;background:#e7e7da;min-height:720px}.story-hero-copy{z-index:1}.story-hero h1{font-size:clamp(59px,6.1vw,96px);line-height:1.09;margin:25px -65px 25px 0}.story-hero p{max-width:510px;color:#516153;font-size:19px;line-height:1.72}.story-hero .text-link{display:inline-block;margin-top:28px}.story-hero img{width:100%;height:550px;object-fit:cover;border-radius:190px 24px 24px 24px;box-shadow:21px 21px 0 #d0d7c8}.story-chapter{display:grid;grid-template-columns:.33fr 1fr;gap:10%;padding:115px clamp(25px,10vw,165px)}.story-chapter>div{max-width:850px}.story-chapter h2{font-size:clamp(51px,5.5vw,78px);line-height:1.16;margin:0 0 34px}.story-chapter p{font-size:19px;line-height:1.8;color:#536256;margin:0 0 22px}.story-chapter-today{background:#e5eadd}.story-image{position:relative;height:570px;overflow:hidden}.story-image img{width:100%;height:100%;object-fit:cover}.story-image::after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0c241a7a)}.story-image span{position:absolute;bottom:34px;left:clamp(25px,7vw,120px);color:white;z-index:1;font-weight:700;font-size:13px;letter-spacing:.14em}.story-moments{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:100px clamp(25px,7vw,120px)}.story-moments figure{margin:0}.story-moments img{width:100%;height:450px;object-fit:cover;border-radius:125px 22px 22px 22px}.story-moments figure:nth-child(2) img{border-radius:22px 125px 22px 22px}.story-moments figcaption{margin:15px 4px;color:#8b6d57;font-weight:700;font-size:12px;letter-spacing:.1em}
@media(max-width:850px){.story-teaser,.story-hero{grid-template-columns:1fr 1fr;gap:5%}.story-hero h1{font-size:clamp(48px,6vw,72px)}.story-chapter{gap:5%}}
@media(max-width:700px){.story-teaser,.story-hero,.story-chapter{grid-template-columns:1fr}.story-teaser-visual img{height:340px;border-radius:115px 20px 20px 20px}.story-teaser h2{font-size:clamp(51px,11vw,70px)}.story-teaser p,.story-hero p,.story-chapter p{font-size:16px}.story-hero{padding:120px 25px 70px;gap:40px}.story-hero h1{font-size:clamp(52px,10vw,73px);margin-right:0}.story-hero img{height:350px;border-radius:125px 20px 20px 20px}.story-chapter{padding:85px 25px;gap:25px}.story-chapter h2{font-size:clamp(48px,10vw,65px)}.story-image{height:360px}.story-moments{padding:75px 25px}.story-moments img{height:270px;border-radius:70px 15px 15px 15px}}
@media(max-width:470px){.story-moments{grid-template-columns:1fr}.story-moments img{height:310px}}
.restaurant-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:24px}.restaurant-actions .text-link{min-width:0;margin:0}.restaurant-menu-link{display:inline-flex;align-items:center;justify-content:center;min-height:51px;padding:13px 18px;border:1px solid #2e503d;border-radius:999px;color:#2d503c;font-size:13px;font-weight:700;letter-spacing:.04em;transition:background .2s,color .2s}.restaurant-menu-link:hover{background:#2d503c;color:#fff}.restaurant-menu-link:focus-visible{outline:2px solid #a56e54;outline-offset:3px}.restaurant-menu-empty{font-size:14px;color:#626e62;margin:15px 0 0}.restaurant-menu-link[hidden],.restaurant-menu-empty[hidden]{display:none!important}
/* Editorial typography with Cyrillic coverage across every public page. */
body{font-family:var(--sans);font-weight:400;line-height:1.62}
button,input,select,textarea{font-family:var(--sans)}
h1,h2,h3{letter-spacing:-.025em!important}
.header .nav a{font-weight:600}
.eyebrow,.footer-bottom,.card-content>span,.hero-bottom{letter-spacing:.09em}
@media(min-width:1131px){.header .nav{gap:clamp(12px,1.3vw,22px)}.header .nav a{font-size:15px;letter-spacing:0}}
@media(min-width:901px) and (max-width:1130px){.header .nav{gap:9px}.header .nav a{font-size:14px}}
.site-added-section{position:relative;box-sizing:border-box;display:grid;align-items:center;gap:8%;padding:clamp(78px,9vw,145px) clamp(25px,8vw,145px);background:#f3f0e8;color:#283f33;min-height:360px}
.site-added-section:nth-of-type(even){background:#e7eae3}
.site-added-copy{max-width:780px;margin-inline:auto;width:100%}
.site-added-eyebrow{display:block;margin-bottom:22px;font:700 12px/1.4 Manrope,Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#946c52}
.site-added-section h2{margin:0 0 24px;font:400 clamp(46px,6vw,86px)/1.06 "Cormorant Garamond",Georgia,serif;letter-spacing:-.035em}
.site-added-section p{font:400 clamp(16px,1.5vw,19px)/1.75 Manrope,Arial,sans-serif;white-space:pre-line;margin:0 0 28px;max-width:720px}
.site-added-link{display:inline-flex;align-items:center;padding:15px 22px;background:#294b38;color:white;font:700 13px/1.3 Manrope,Arial,sans-serif;text-decoration:none;border-radius:5px}
.site-added-link:hover{background:#456c50;color:white}
.site-added-image{grid-template-columns:1fr 1fr}
.site-added-image img{display:block;width:100%;height:clamp(320px,40vw,560px);object-fit:cover;border-radius:180px 18px 18px 18px}
.site-added-quote{background:#284738!important;color:#f8f4e9;text-align:center}
.site-added-quote .site-added-eyebrow{color:#d1ab81}
.site-added-quote .site-added-link{background:#f5eee1;color:#284738}
.site-added-cta{background:#e2e8de;text-align:center}
@media(max-width:760px){.site-added-section{padding:82px 25px;min-height:0}.site-added-image{grid-template-columns:1fr;gap:35px}.site-added-image img{height:340px;border-radius:115px 16px 16px 16px}.site-added-section h2{font-size:clamp(43px,10vw,65px)}}

/* Focused home edit: one opening story, real hotel photo, quieter type and footer. */
.hero-photo img{object-position:48% center}
.hero-photo:after{display:none}
.intro{padding-top:clamp(82px,8vw,115px);padding-bottom:clamp(85px,8vw,120px)}
.intro-body h2{margin-bottom:35px}
.intro-story{display:grid;grid-template-columns:minmax(220px,.84fr) minmax(240px,1fr);gap:clamp(24px,3.5vw,55px);align-items:center}
.intro-story>img{width:100%;height:355px;object-fit:cover;border-radius:125px 18px 18px 18px;box-shadow:14px 15px 0 #d3d8ca7a}
.intro-story>div{max-width:450px}
.intro-stat{display:flex;align-items:baseline;gap:15px;color:#a36f55;font:400 clamp(65px,6vw,91px)/.9 var(--serif);letter-spacing:-.065em}
.intro-stat small{max-width:90px;color:#5a6b5d;font:700 11px/1.5 var(--sans);letter-spacing:.1em}
.intro-story p{font-size:16px;line-height:1.7;color:#546357;margin:18px 0 0}
.intro-story .text-link{margin-top:24px}
main h2 em{font-style:normal}
.site-footer .footer-main{grid-template-columns:1.35fr .72fr 1.1fr;gap:clamp(28px,5vw,75px);padding:53px 0 62px}
.site-footer .footer-cta{min-height:375px;padding-top:80px;padding-bottom:70px}
.site-footer .footer-cta h2{font-size:clamp(55px,6.5vw,96px)}
.site-footer .footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.site-footer .footer-column h3{margin-bottom:13px}
.site-footer .footer-column a{width:fit-content}
@media(max-width:900px){.intro-story{grid-template-columns:.86fr 1fr}.intro-story>img{height:320px}.site-footer .footer-main{grid-template-columns:1fr 1fr;gap:35px}.site-footer .footer-identity{grid-column:1/-1}}
@media(max-width:600px){.intro-story{grid-template-columns:1fr;gap:35px}.intro-story>img{height:315px;max-width:530px;border-radius:105px 18px 18px 18px}.intro-body h2{margin-bottom:29px}.intro-story p{font-size:16px}.site-footer .footer-cta{min-height:0;padding:70px 0 65px}.site-footer .footer-main{grid-template-columns:1fr 1fr;gap:35px 20px;padding:44px 0 55px}.site-footer .footer-identity{grid-column:1/-1}}

/* Clear routes under the hero and a more useful, quieter header. */
.header{height:84px;gap:clamp(15px,2vw,30px);padding-inline:clamp(22px,3vw,55px);box-shadow:0 6px 28px #273d2c0c}
.header.scrolled{height:72px}
.header .brand{min-width:0;flex:0 0 auto}
.header .brand img{max-height:61px;width:auto}
.header .nav{gap:clamp(12px,1.45vw,25px)}
.header .nav a{font-size:clamp(13px,1vw,15px);font-weight:600}
.header-phone{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;color:#284638;font-size:clamp(11px,.95vw,14px);font-weight:700;letter-spacing:.015em}
.header-phone:hover{color:#a66c4d}
.header-phone .phone-symbol{display:grid;place-items:center;width:27px;height:27px;border:1px solid #a9b3a5;border-radius:50%;font-size:12px;line-height:1}
.header-book{border-radius:100px;background:#2a4938;color:#fff;border-color:#2a4938;padding:12px 17px}
.header-book:hover{background:#af795b;color:#fff;border-color:#af795b}
.header-phone:focus-visible{outline:2px solid var(--clay);outline-offset:4px}
.hero .hero-copy{top:50%}
.quick-routes{padding:65px clamp(24px,6vw,100px) 90px;background:#f8f5ed}
.quick-routes-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}
.quick-routes-head p{font:400 clamp(27px,3.5vw,46px)/1.1 var(--serif);letter-spacing:-.04em;margin:0}
.quick-routes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.quick-routes-grid a{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(280px,26vw,380px);padding:30px;color:#fff;overflow:hidden;border-radius:100px 18px 18px 18px;isolation:isolate;transition:transform .25s,box-shadow .25s}
.quick-routes-grid a:nth-child(2){border-radius:18px 100px 18px 18px}
.quick-routes-grid a:nth-child(3){border-radius:18px 18px 100px 18px}
.quick-routes-grid a:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,#102319d9,transparent 65%)}
.quick-routes-grid img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s}
.quick-routes-grid a:hover{transform:translateY(-5px);box-shadow:0 20px 35px #263d312b}
.quick-routes-grid a:hover img{transform:scale(1.04)}
.quick-routes-grid a:focus-visible{outline:3px solid var(--clay);outline-offset:4px}
.quick-routes-grid span{font-size:11px;font-weight:700;letter-spacing:.14em;color:#eee6d7}
.quick-routes-grid strong{font:400 clamp(29px,3.15vw,45px)/1.1 var(--serif);letter-spacing:-.025em;max-width:300px;margin-top:9px}
.quick-routes-grid i{position:absolute;right:30px;bottom:30px;font:400 23px var(--sans)}
@media(max-width:1260px){.header{gap:14px;padding-inline:22px}.header .brand img{max-height:53px}.header .nav{gap:10px}.header-phone{font-size:11px}.header-phone .phone-symbol{display:none}.header-book{padding:10px 12px}}
@media(max-width:1050px) and (min-width:901px){.header-phone span:last-child{display:none}.header-phone .phone-symbol{display:grid}.header .nav a{font-size:13px}}
@media(max-width:900px){.header{height:76px;padding-inline:24px}.header.scrolled{height:70px}.header .brand img{max-height:53px}.header-phone{margin-left:auto}.header-phone span:last-child{display:none}.header-phone .phone-symbol{display:grid;width:35px;height:35px}.quick-routes{padding:62px 25px 80px}.quick-routes-grid{gap:12px}.quick-routes-grid a{min-height:270px;padding:20px;border-radius:75px 16px 16px 16px}.quick-routes-grid a:nth-child(2){border-radius:16px 75px 16px 16px}.quick-routes-grid a:nth-child(3){border-radius:16px 16px 75px 16px}.quick-routes-grid strong{font-size:clamp(25px,3vw,34px)}}
@media(max-width:600px){.header{gap:10px;padding-inline:18px}.header .brand img{max-height:48px}.header-phone .phone-symbol{width:32px;height:32px}.header-book{padding:10px 11px}.quick-routes{padding:55px 20px 70px}.quick-routes-head{display:block}.quick-routes-head p{margin-top:12px;font-size:34px}.quick-routes-grid{grid-template-columns:1fr;gap:13px}.quick-routes-grid a,.quick-routes-grid a:nth-child(2),.quick-routes-grid a:nth-child(3){min-height:250px;border-radius:95px 18px 18px 18px;padding:25px}.quick-routes-grid strong{font-size:37px}.quick-routes-grid i{right:25px;bottom:25px}.hero-bottom{display:none}}
@media(prefers-reduced-motion:reduce){.quick-routes-grid a,.quick-routes-grid img{transition:none}}

/* Questions live on a focused page reached from the footer. */
.faq-page{background:#f8f5ed}
.faq-lead{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:7%;padding:145px clamp(25px,8vw,135px) 75px;background:#e8e9dc}
.faq-lead h1{font:400 clamp(60px,7vw,100px)/1.05 var(--serif);letter-spacing:-.055em;margin:24px 0}
.faq-lead h1 em{color:#a77356;font-style:italic}
.faq-lead p{max-width:490px;font-size:18px;line-height:1.7;color:#506255}
.faq-lead img{display:block;width:100%;height:440px;object-fit:cover;border-radius:155px 20px 20px 20px;box-shadow:17px 17px 0 #d1d8c9}
.faq-page .faq-section{padding-top:100px;padding-bottom:120px}
@media(max-width:760px){.faq-lead{grid-template-columns:1fr;padding:125px 25px 75px;gap:35px}.faq-lead h1{font-size:clamp(56px,11vw,75px)}.faq-lead img{height:320px;border-radius:105px 18px 18px 18px}.faq-page .faq-section{padding-top:75px;padding-bottom:90px}}

/* Keep the accommodation headline as one editorial line at every width. */
.stay .section-heading h2{white-space:nowrap;max-width:none;font-size:clamp(26px,4.65vw,66px);letter-spacing:-.055em}
@media(max-width:380px){.stay .section-heading h2{font-size:23px}}

/* About: the film and a clear photographic timeline. */
.story-film{display:grid;grid-template-columns:1fr .86fr;gap:clamp(40px,6vw,105px);align-items:center;padding:95px clamp(25px,9vw,155px);background:#263f32;color:#f9f4e9;overflow:hidden}
.story-film-copy{max-width:600px}
.story-film .eyebrow{color:#dbc3ad}
.story-film h2,.story-turn h2{font:400 clamp(52px,5.5vw,80px)/1.1 var(--serif);letter-spacing:-.05em;margin:26px 0}
.story-film h2 em{color:#e9bd9f;font-weight:400}
.story-film p{font-size:18px;line-height:1.75;color:#dce5db;max-width:510px}
.story-film-duration{display:inline-block;margin-top:26px;padding-top:17px;border-top:1px solid #ffffff5c;color:#d6c7b7;font-size:12px;letter-spacing:.07em}
.story-film-frame{justify-self:center;width:min(100%,450px);padding:9px;border:1px solid #c1a9916b;border-radius:195px 195px 23px 23px;box-shadow:25px 25px 0 #142a214c;background:#20372b}
.story-film video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:185px 185px 17px 17px;background:#1b2f25}
.story-turn{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center;padding:115px clamp(25px,8vw,135px);background:#f5f0e6}
.story-turn-copy{max-width:540px}
.story-turn h2 em{color:#ae765b;font-weight:400}
.story-turn p{font-size:18px;line-height:1.76;color:#536357;margin:0 0 21px}
.story-turn-photos{position:relative;min-height:540px;padding:0 21% 55px 0}
.story-turn-photos img{display:block;width:100%;height:485px;object-fit:cover;border-radius:155px 22px 22px 22px}
.story-turn-photos img:nth-child(2){position:absolute;right:0;bottom:0;width:43%;height:255px;border-radius:95px 18px 18px 18px;border:8px solid #f5f0e6;box-shadow:0 15px 28px #263d3128}
.story-moments{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-top:90px;padding-bottom:100px}
.story-moments img{height:360px;border-radius:105px 20px 20px 20px}
.story-moments figure:nth-child(2) img{border-radius:20px 105px 20px 20px}
.story-moments figure:nth-child(3) img{border-radius:20px 20px 105px 20px}
@media(max-width:900px){.story-film{grid-template-columns:1fr .78fr;gap:35px;padding:80px 5vw}.story-film-frame{width:min(100%,390px)}.story-turn{gap:5%;padding:90px 5vw}.story-turn-photos{min-height:440px}.story-turn-photos img{height:395px}.story-turn-photos img:nth-child(2){height:195px}.story-moments img{height:290px}}
@media(max-width:700px){.story-film,.story-turn{grid-template-columns:1fr}.story-film{padding:80px 25px 90px;gap:43px}.story-film h2,.story-turn h2{font-size:clamp(48px,10vw,68px)}.story-film p,.story-turn p{font-size:16px}.story-film-frame{width:min(100%,400px)}.story-turn{padding:80px 25px 85px;gap:40px}.story-turn-photos{min-height:420px;max-width:600px}.story-turn-photos img{height:375px}.story-moments{grid-template-columns:1fr 1fr;gap:25px 14px;padding:75px 25px}.story-moments figure:nth-child(3){grid-column:1/-1;max-width:500px}.story-moments img{height:280px}}
@media(max-width:470px){.story-turn-photos{min-height:340px;padding-right:16%}.story-turn-photos img{height:315px}.story-turn-photos img:nth-child(2){width:41%;height:145px;border-width:5px}.story-moments{grid-template-columns:1fr}.story-moments figure:nth-child(3){grid-column:auto}.story-moments img{height:300px}}

.story-panorama{position:relative;margin:0;overflow:hidden;height:clamp(390px,48vw,680px);background:#2b3b32}
.story-panorama:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#10231b8c)}
.story-panorama img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 58%}
.story-panorama span{position:absolute;z-index:1;left:clamp(25px,8vw,135px);bottom:35px;color:#fff;font-size:12px;font-weight:700;letter-spacing:.16em;text-shadow:0 2px 15px #172c24}
@media(max-width:700px){.story-panorama{height:410px}.story-panorama img{object-position:56% center}.story-panorama span{font-size:10px;bottom:23px;max-width:250px}}

.spa-gallery{padding:105px clamp(25px,7vw,120px) 115px;background:#ecebe4}
.spa-gallery-heading{display:grid;grid-template-columns:.36fr 1fr .76fr;align-items:end;gap:5%;margin-bottom:48px}
.spa-gallery-heading p{max-width:440px;font-size:17px;line-height:1.72;color:#5f6b63;margin:0 0 5px}
.spa-gallery-grid{display:grid;grid-template-columns:1fr 1.08fr .94fr;gap:22px;align-items:start}
.spa-gallery-grid figure{min-width:0;margin:0}.spa-gallery-grid figure:nth-child(2){margin-top:60px}.spa-gallery-grid figure:nth-child(3){margin-top:115px}
.spa-gallery-grid img{display:block;width:100%;height:clamp(245px,25vw,370px);object-fit:cover;border-radius:90px 20px 20px 20px}
.spa-gallery-grid figure:nth-child(2) img{border-radius:20px 90px 20px 20px}.spa-gallery-grid figure:nth-child(3) img{border-radius:20px 20px 90px 20px}
.spa-gallery-grid figcaption{font-size:11px;font-weight:700;letter-spacing:.1em;color:#956f58;margin:17px 2px}
@media(max-width:1000px){.spa-gallery-heading{grid-template-columns:1fr 2fr}.spa-gallery-heading p{grid-column:2}}
@media(max-width:760px){.spa-gallery{padding:85px 25px}.spa-gallery-heading{display:block}.spa-gallery-heading h2{margin:20px 0}.spa-gallery-grid{grid-template-columns:1fr 1fr}.spa-gallery-grid figure:nth-child(2),.spa-gallery-grid figure:nth-child(3){margin-top:0}.spa-gallery-grid figure:nth-child(3){grid-column:1/-1;max-width:440px}.spa-gallery-grid img{height:290px}}
@media(max-width:520px){.spa-gallery-grid{grid-template-columns:1fr;gap:22px}.spa-gallery-grid figure:nth-child(3){grid-column:auto}.spa-gallery-grid img{height:275px}.spa-gallery-heading p{font-size:16px}}

.spa-menus{background:#f5f2eb;padding:105px clamp(25px,7vw,120px) 120px}
.spa-menus-heading{display:grid;grid-template-columns:.36fr 1fr .76fr;gap:5%;align-items:end;margin-bottom:50px}
.spa-menus-heading p{font-size:17px;line-height:1.72;color:#5f6b63;max-width:460px;margin:0 0 5px}
.spa-menus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.spa-menu-card{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(0,1fr);background:#e7e9df;border-radius:100px 22px 22px 22px;overflow:hidden;min-height:340px}
.spa-menu-card:nth-child(2){background:#e9e1d3;border-radius:22px 100px 22px 22px}
.spa-menu-card>a{display:block;min-height:100%;overflow:hidden}.spa-menu-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .3s ease}.spa-menu-card>a:hover img{transform:scale(1.04)}
.spa-menu-card>div{padding:38px 30px;align-self:center}.spa-menu-number{font-size:10px;letter-spacing:.12em;font-weight:700;color:#9c725b}.spa-menu-card h3{font-family:var(--serif);font-weight:400;font-size:clamp(27px,2.6vw,40px);line-height:1.1;margin:19px 0 12px}.spa-menu-card p{font-size:15px;line-height:1.65;color:#5f6b63;margin:0 0 24px}
.spa-menu-link{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.07em;color:#294439;border-bottom:1px solid #9aaa9a;padding-bottom:8px}.spa-menu-link span{margin-left:7px}
@media(max-width:1100px){.spa-menu-card{grid-template-columns:1fr}.spa-menu-card>a{height:250px;min-height:0}.spa-menu-card img{object-position:center 22%}.spa-menu-card>div{padding:28px}.spa-menu-card,.spa-menu-card:nth-child(2){border-radius:24px 75px 24px 24px}}
@media(max-width:760px){.spa-menus{padding:85px 25px}.spa-menus-heading{display:block}.spa-menus-heading h2{margin:20px 0}.spa-menus-grid{gap:15px}}
@media(max-width:600px){.spa-menus-heading p{font-size:16px}.spa-menus-grid{grid-template-columns:1fr;gap:22px}.spa-menu-card>a{height:280px}.spa-menu-card img{object-position:center 25%}}
@media(prefers-reduced-motion:reduce){.spa-menu-card img{transition:none}}

/* The two massage pages open from one button as a compact flipbook. */
.spa-menus{padding-bottom:110px}
.spa-menus-heading{margin-bottom:38px}
.spa-menu-open{display:flex;align-items:center;gap:28px;width:min(100%,1000px);min-height:132px;margin:0 auto;padding:24px 34px;border:0;border-radius:24px 90px 24px 24px;background:#294839;color:#fff;text-align:left;cursor:pointer;box-shadow:0 19px 42px #243c2d24;transition:background .2s,transform .2s}
.spa-menu-open:hover{background:#365c47;transform:translateY(-3px)}
.spa-menu-open:focus-visible,.spa-book-dialog button:focus-visible,.spa-book-pdf:focus-visible{outline:3px solid #bb8060;outline-offset:4px}
.spa-menu-open-icon{display:grid;place-items:center;flex:none;width:65px;height:65px;border:1px solid #ffffff80;border-radius:50%;font:400 30px var(--serif)}
.spa-menu-open>span:nth-child(2){display:grid;gap:8px;min-width:0}
.spa-menu-open small{font-size:11px;letter-spacing:.16em;color:#d9cab7}
.spa-menu-open strong{font:400 clamp(27px,3vw,41px)/1.08 var(--serif);letter-spacing:-.02em}
.spa-menu-open-arrow{margin-left:auto;font-size:28px}
.spa-book-dialog{width:min(650px,calc(100vw - 20px));max-width:none;max-height:calc(100dvh - 18px);padding:0;border:0;border-radius:25px;background:#f7f2e9;color:#263d31;box-shadow:0 30px 90px #13251d6b;overflow:auto}
.spa-book-dialog::backdrop{background:#13251dd9;backdrop-filter:blur(8px)}
.spa-book-inner{padding:20px 24px 24px}
.spa-book-top{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:14px}
.spa-book-top .eyebrow{font-size:10px;color:#9a735c}
.spa-book-top h2{font:400 31px/1.1 var(--serif);margin:4px 0 0}
.spa-book-close{flex:none;width:42px;height:42px;border:1px solid #9dad9e;border-radius:50%;background:transparent;color:#294839;font-size:28px;line-height:1;cursor:pointer}
.spa-book-frame{display:grid;place-items:center;perspective:1500px;padding:8px 10px 12px;background:#e0e4d7;border-radius:17px;overflow:hidden}
.spa-book-sheet{position:relative;width:fit-content;max-width:100%;box-shadow:-8px 5px 0 #bfc7b9,0 13px 28px #1c302d42;transform-style:preserve-3d}
.spa-book-sheet:before{content:"";position:absolute;z-index:1;inset:0 auto 0 0;width:13px;background:linear-gradient(90deg,#182b2966,transparent);pointer-events:none}
.spa-book-sheet img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 225px);object-fit:contain}
.spa-book-sheet.spa-turn-forward{transform-origin:left center;animation:spa-turn-forward .54s ease-in-out both}
.spa-book-sheet.spa-turn-backward{transform-origin:right center;animation:spa-turn-backward .54s ease-in-out both}
@keyframes spa-turn-forward{0%{transform:rotateY(0)}49%{transform:rotateY(-90deg)}50%{transform:rotateY(90deg)}100%{transform:rotateY(0)}}
@keyframes spa-turn-backward{0%{transform:rotateY(0)}49%{transform:rotateY(90deg)}50%{transform:rotateY(-90deg)}100%{transform:rotateY(0)}}
.spa-book-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 3px 10px}
.spa-book-controls button{min-width:100px;min-height:43px;padding:8px 13px;border:1px solid #8da090;border-radius:30px;background:transparent;color:#294839;font-size:14px;font-weight:700;cursor:pointer}
.spa-book-controls button:disabled{opacity:.35;cursor:default}
.spa-book-controls>span{font-size:13px;font-weight:700;letter-spacing:.08em}
.spa-book-pdf{display:block;width:fit-content;margin:0 auto;border-bottom:1px solid currentColor;padding:4px 0 6px;color:#294839;font-size:12px;font-weight:700;letter-spacing:.06em;text-align:center}
@media(max-width:600px){.spa-menus{padding-bottom:85px}.spa-menu-open{gap:15px;min-height:105px;padding:20px;border-radius:20px 65px 20px 20px}.spa-menu-open-icon{width:49px;height:49px;font-size:24px}.spa-menu-open strong{font-size:clamp(22px,6vw,31px)}.spa-menu-open small{font-size:9px}.spa-menu-open-arrow{font-size:20px}.spa-book-inner{padding:14px 14px 18px}.spa-book-top h2{font-size:26px}.spa-book-controls button{min-width:82px;padding:7px 9px}.spa-book-controls button span{display:none}.spa-book-sheet img{max-height:calc(100dvh - 210px)}}
@media(prefers-reduced-motion:reduce){.spa-menu-open{transition:none}.spa-book-sheet.spa-turn-forward,.spa-book-sheet.spa-turn-backward{animation:none}}

.house-gallery-intro{max-width:690px;font-size:17px;line-height:1.7;color:#5a685e;margin:-27px 0 48px}
.houses-page .stay-photo-grid figure:nth-child(n+4){margin-top:0}
.houses-page .stay-photo-grid figure:nth-child(4) img{border-radius:20px 85px 20px 20px}
.houses-page .stay-photo-grid figure:nth-child(5) img{border-radius:85px 20px 20px 20px}
.houses-page .stay-photo-grid figure:nth-child(6) img{border-radius:20px 20px 85px 20px}
@media(max-width:760px){.houses-page .stay-photo-grid figure:nth-child(3){grid-column:auto;max-width:none}.house-gallery-intro{margin:-15px 0 38px}}
@media(max-width:520px){.house-gallery-intro{font-size:16px}.houses-page .stay-photo-grid img{height:275px}}

.houses-page .stay-photo-grid figure:last-child{grid-column:2/4}
.houses-page .stay-photo-grid figure:last-child img{height:clamp(260px,28vw,405px);border-radius:20px 90px 20px 20px}
@media(max-width:760px){.houses-page .stay-photo-grid figure:last-child{grid-column:1/-1}}
@media(max-width:520px){.houses-page .stay-photo-grid figure:last-child{grid-column:auto}.houses-page .stay-photo-grid figure:last-child img{height:275px}}

/* Mobile navigation and compact layouts. */
@media(max-width:900px){
  .header .nav{top:76px;height:calc(100dvh - 76px);min-height:0;overflow-y:auto;overscroll-behavior:contain;justify-content:flex-start;align-items:stretch;gap:4px;padding:clamp(18px,5vh,48px) 22px calc(90px + env(safe-area-inset-bottom));}
  .header.scrolled .nav{top:70px;height:calc(100dvh - 70px)}
  .header .nav a{display:flex;align-items:center;justify-content:center;flex:none;min-height:45px;width:100%;font-size:clamp(24px,6vw,30px);line-height:1.15;text-align:center;white-space:normal}
  .header .nav a:after{bottom:2px}
  .menu-toggle{width:44px;height:44px;flex:none;align-items:center;touch-action:manipulation}
  body.menu-open .mobile-contact{display:none}
}
@media(max-width:600px){
  .header .header-book{display:none}
  .header .header-phone{min-width:44px;min-height:44px;justify-content:center;margin-left:auto}
  .stay .section-heading h2{font-size:clamp(19px,6vw,32px);white-space:nowrap}
  .footer-column,.footer-column a,.footer-column span{overflow-wrap:anywhere}
  .mobile-contact a{min-width:0;text-align:center;line-height:1.2}
  .inquiry-form,.contact-form{min-width:0}
  .inquiry-form input,.inquiry-form select,.inquiry-form textarea,.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}
}
@media(max-width:380px){
  .header{padding-inline:14px}
  .header .brand img{max-height:43px}
  .header .nav{padding-inline:16px}
  .stay .section-heading h2{font-size:clamp(18px,5.9vw,22px)}
}

/* Fish restaurant: natural stone and timber indoors, a lighter garden outside. */
.restaurant-page{background:#faf7f0;overflow:hidden}
.restaurant-page .eyebrow{color:#967154}
.restaurant-page h1,.restaurant-page h2{font-family:var(--serif);font-weight:400;letter-spacing:-.05em;line-height:1.12}
.restaurant-page h1 em,.restaurant-page h2 em{font-weight:400;color:#ae765b}
.restaurant-lead{display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:5%;min-height:770px;padding:130px clamp(25px,7vw,120px) 80px;background:#eae5d9}
.restaurant-lead-copy{z-index:1}.restaurant-lead h1{font-size:clamp(62px,6.2vw,100px);margin:24px -65px 26px 0}.restaurant-lead-copy>p{font-size:19px;line-height:1.72;color:#526256;max-width:510px}
.restaurant-lead-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}.restaurant-lead-actions .button{background:#294839;color:white;min-height:54px;font-size:12px}.restaurant-lead-actions>a:last-child{font-size:12px;font-weight:700;letter-spacing:.06em;border-bottom:1px solid #aa9987;padding-bottom:8px}
.restaurant-lead-photo{position:relative;height:585px;min-width:0;overflow:hidden;border-radius:190px 24px 24px 24px;box-shadow:19px 21px 0 #d2c9b9}.restaurant-lead-photo img,.restaurant-interior-photo img,.restaurant-garden-photo img{display:block;width:100%;height:100%;object-fit:cover}.restaurant-lead-photo img{object-position:center}
.restaurant-lead-photo:after,.restaurant-garden-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#192b21a6)}.restaurant-lead-photo>span,.restaurant-garden-photo>span{position:absolute;z-index:1;bottom:25px;left:27px;right:25px;color:white;font-size:11px;font-weight:700;letter-spacing:.11em}
.restaurant-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:9%;align-items:end;padding:110px clamp(25px,8vw,140px) 120px}.restaurant-intro h2,.restaurant-interior h2,.restaurant-garden h2,.restaurant-finish h2{font-size:clamp(48px,5.3vw,77px);margin:22px 0 0}.restaurant-intro>p{font-size:18px;line-height:1.8;color:#5c685d;max-width:520px;margin:0 0 8px}
.restaurant-interior{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:670px;background:#ddd9c9}.restaurant-interior-photo{height:670px;overflow:hidden;border-radius:0 160px 24px 0}.restaurant-interior-photo img{object-position:center 56%}.restaurant-interior-copy{padding:85px clamp(35px,7vw,120px)}.restaurant-interior-copy p,.restaurant-garden-copy p{font-size:18px;line-height:1.78;color:#526157;max-width:550px;margin:26px 0 30px}.restaurant-detail{display:inline-block;border-top:1px solid #a7a995;padding-top:15px;color:#6c705f;font-size:12px;font-weight:700;letter-spacing:.11em}
.restaurant-garden{display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:8%;padding:105px clamp(25px,7vw,120px) 120px;background:#e7ebe4}.restaurant-garden-copy .text-link{color:#2c4d39}.restaurant-garden-photo{position:relative;height:540px;overflow:hidden;border-radius:160px 24px 24px 24px;box-shadow:18px 20px 0 #cbd4ca}.restaurant-garden-photo img{object-position:center}
.restaurant-finish{text-align:center;padding:100px 25px 115px;background:#294839;color:white}.restaurant-finish .eyebrow{color:#dec1a6}.restaurant-finish h2{margin:22px auto}.restaurant-finish h2 em{color:#e5baa0}.restaurant-finish>p{max-width:610px;margin:0 auto 28px;color:#d9e4d8;font-size:17px;line-height:1.7}.restaurant-finish-actions{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap}.restaurant-finish .button{font-size:12px}.restaurant-finish .restaurant-menu-link{color:#f2eadf;border-color:#abc5af}.restaurant-finish .restaurant-menu-empty{color:#cddccc;margin-top:20px}
@media(max-width:1000px){.restaurant-lead{grid-template-columns:1fr 1fr;min-height:680px}.restaurant-lead h1{font-size:clamp(54px,6vw,80px);margin-right:-30px}.restaurant-lead-photo{height:500px}.restaurant-interior-copy{padding:60px 5vw}}
@media(max-width:760px){.restaurant-lead{grid-template-columns:1fr;gap:36px;padding:125px 25px 65px}.restaurant-lead h1{font-size:clamp(62px,10vw,88px);margin-right:0}.restaurant-lead-photo{height:420px;max-width:700px;border-radius:135px 20px 20px 20px;box-shadow:12px 14px 0 #d2c9b9}.restaurant-intro{grid-template-columns:1fr;gap:20px;padding:85px 25px}.restaurant-intro>p{margin:0}.restaurant-interior{grid-template-columns:1fr}.restaurant-interior-photo{height:440px;border-radius:0 105px 20px 0}.restaurant-interior-copy{padding:75px 25px 85px}.restaurant-garden{grid-template-columns:1fr;gap:38px;padding:85px 25px 100px}.restaurant-garden-photo{height:390px;max-width:700px;border-radius:115px 20px 20px 20px}.restaurant-finish{padding:85px 25px 100px}}
@media(max-width:520px){.restaurant-lead{padding-top:115px}.restaurant-lead h1{font-size:clamp(52px,11.5vw,72px)}.restaurant-lead-copy>p,.restaurant-intro>p,.restaurant-interior-copy p,.restaurant-garden-copy p,.restaurant-finish>p{font-size:16px}.restaurant-page h2{font-size:clamp(42px,10vw,56px)}.restaurant-lead-photo{height:290px;border-radius:95px 18px 18px 18px}.restaurant-lead-photo>span,.restaurant-garden-photo>span{font-size:9px;left:18px;bottom:16px}.restaurant-interior-photo{height:330px}.restaurant-garden-photo{height:290px;border-radius:90px 18px 18px 18px}.restaurant-finish-actions{flex-direction:column}.restaurant-finish .restaurant-menu-link{font-size:12px}}

/* Seasonal offers use the existing landscape, with clear dates and enquiry paths. */
.offers-page{background:#faf7ef;overflow:hidden}.offers-page h1,.offers-page h2,.offers-page h3,.offers-home-teaser h2{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.05em}.offers-page em,.offers-home-teaser em{font-weight:400;color:#d6aa85}
.offers-hero{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:5%;min-height:760px;padding:132px clamp(25px,7vw,120px) 78px;background:#263d31;color:#f8f3e9;isolation:isolate;overflow:hidden}
.offers-hero-copy{position:relative;z-index:2}.offers-hero .eyebrow{color:#e4c5a8}.offers-hero h1{font-size:clamp(63px,6.3vw,102px);margin:24px -60px 28px 0}.offers-hero-copy>p{font-size:19px;line-height:1.7;color:#e0e5d9;max-width:530px}.offers-hero .button{margin-top:18px;font-size:12px}
.offers-hero-photo{position:relative;height:575px;min-width:0;border-radius:190px 22px 22px 22px;overflow:hidden;box-shadow:20px 21px 0 #8fa59530}.offers-hero-photo img,.offers-details-photo img{display:block;width:100%;height:100%;object-fit:cover}.offers-hero-photo img{object-position:center 53%}.offers-hero-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#132719ba)}.offers-hero-photo span{position:absolute;z-index:1;bottom:22px;left:26px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.12em}.offers-hero-year{position:absolute;z-index:0;left:clamp(20px,4vw,80px);bottom:-.16em;color:#f6efe911;font:400 clamp(180px,26vw,440px)/1 var(--serif);letter-spacing:-.09em;pointer-events:none}
.offers-intro{display:grid;grid-template-columns:.34fr 1fr;gap:7%;padding:105px clamp(25px,9vw,150px) 48px}.offers-intro .eyebrow{color:#9b7057;margin-top:15px}.offers-intro h2{font-size:clamp(47px,5.5vw,75px);margin:0 0 23px}.offers-intro em,.offers-package em,.offers-details em{color:#a87355}.offers-intro p{font-size:18px;line-height:1.75;color:#566659;max-width:760px;margin:0}
.offers-packages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;padding:22px clamp(25px,7vw,120px) 120px}.offers-package{display:flex;flex-direction:column;min-height:485px;padding:37px clamp(28px,3vw,48px) 36px;background:#e8e8dd;border-radius:110px 24px 24px 24px;color:#2a4436}.offers-package-alt{background:#e9ded0;border-radius:24px 110px 24px 24px}.offers-package-top{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid #aeb9a9;padding-bottom:17px;font-size:11px;font-weight:700;letter-spacing:.1em}.offers-package-top strong{white-space:nowrap;color:#9a6b4f}.offers-package h3{font-size:clamp(47px,5vw,75px);margin:37px 0 16px}.offers-package-dates{font-weight:700;color:#345941;font-size:15px}.offers-package>p:not(.offers-package-dates){color:#59675b;font-size:17px;line-height:1.7;max-width:510px}.offers-package-foot{display:flex;flex-direction:column;gap:15px;margin-top:auto;border-top:1px solid #aeb9a9;padding-top:19px}.offers-package-foot>span{font-size:11px;font-weight:700;letter-spacing:.1em;color:#8e735f}.offers-package-foot>a{display:flex;justify-content:space-between;align-items:center;gap:12px;width:fit-content;min-height:44px;border-bottom:1px solid currentColor;font-size:13px;font-weight:700;letter-spacing:.08em;color:#294d3b}.offers-package-foot>a span{font-size:19px}
.offers-details{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:620px;background:#e2e8dd}.offers-details-photo{height:620px;overflow:hidden;border-radius:0 145px 22px 0}.offers-details-copy{padding:70px clamp(35px,7vw,120px)}.offers-details h2{font-size:clamp(48px,5.2vw,74px);margin:23px 0}.offers-details-copy p{font-size:17px;line-height:1.76;color:#566559;max-width:550px;margin-bottom:20px}.offers-details-copy .text-link{margin-top:10px}
.offers-final{padding:105px 25px 115px;background:#314e3c;color:#fff;text-align:center}.offers-final .eyebrow{color:#e4c5a8}.offers-final h2{font-size:clamp(51px,6vw,82px);margin:22px auto}.offers-final p{font-size:18px;line-height:1.7;color:#d8e3d6;max-width:620px;margin:0 auto 31px}.offers-final>div{display:flex;justify-content:center;align-items:center;gap:25px;flex-wrap:wrap}.offers-final .button{font-size:12px}.offers-call{border-bottom:1px solid #e7d4bf;padding-bottom:7px;font-size:16px;font-weight:700}
.offers-home-teaser{position:relative;display:flex;align-items:center;min-height:390px;padding:80px clamp(25px,8vw,145px);background:#263d31;color:#f7f2e9;overflow:hidden}.offers-home-teaser>div{position:relative;z-index:1;max-width:800px}.offers-home-teaser .eyebrow{color:#dec4a8}.offers-home-teaser h2{font-size:clamp(54px,6vw,85px);margin:20px 0}.offers-home-teaser p{font-size:17px;line-height:1.7;color:#d9e3d5;max-width:560px}.offers-home-teaser .button{margin-top:15px;font-size:12px}.offers-home-year{position:absolute;right:5%;top:50%;transform:translateY(-45%);color:#f7f2e91b;font:400 clamp(150px,23vw,360px)/1 var(--serif);letter-spacing:-.09em;pointer-events:none}
@media(max-width:900px){.offers-hero{grid-template-columns:1fr;gap:38px;padding:125px 25px 70px}.offers-hero h1{margin-right:0}.offers-hero-photo{height:440px;max-width:700px;border-radius:140px 20px 20px 20px}.offers-hero-year{right:18px;left:auto;bottom:5px;font-size:200px}.offers-intro{grid-template-columns:1fr;gap:18px;padding:80px 25px 35px}.offers-packages{padding:15px 25px 90px}.offers-details{grid-template-columns:1fr}.offers-details-photo{height:410px;border-radius:0 110px 20px 0}.offers-details-copy{padding:75px 25px 90px}}
@media(max-width:650px){.offers-hero h1{font-size:clamp(53px,11vw,73px)}.offers-hero-copy>p,.offers-intro p,.offers-details-copy p,.offers-final p{font-size:16px}.offers-hero-photo{height:300px;border-radius:100px 18px 18px 18px}.offers-hero-year{font-size:145px;bottom:24px}.offers-intro h2,.offers-details h2{font-size:clamp(43px,10vw,57px)}.offers-packages{grid-template-columns:1fr;gap:20px}.offers-package,.offers-package-alt{min-height:0;border-radius:80px 20px 20px 20px;padding:31px 24px}.offers-package h3{font-size:clamp(48px,12vw,66px)}.offers-package>p:not(.offers-package-dates){font-size:16px}.offers-package-foot{margin-top:25px}.offers-details-photo{height:300px}.offers-final{padding:85px 25px 100px}.offers-final h2{font-size:clamp(46px,11vw,63px)}.offers-home-teaser{min-height:360px;padding:75px 25px}.offers-home-teaser h2{font-size:clamp(50px,11vw,66px)}.offers-home-teaser p{font-size:16px}.offers-home-year{right:-10px;top:auto;bottom:-35px;transform:none;font-size:170px}}
@media(prefers-reduced-motion:reduce){.offers-page{scroll-behavior:auto}}

/* Hotel photography: balanced pairs and a panoramic terrace finish. */
.hotel-page .stay-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hotel-page .stay-photo-grid figure:nth-child(n){margin-top:0;grid-column:auto;max-width:none}
.hotel-page .stay-photo-grid figure:last-child{grid-column:1/-1}
.hotel-page .stay-photo-grid figure:last-child img{height:clamp(280px,36vw,500px);border-radius:20px 95px 20px 20px}
@media(max-width:520px){.hotel-page .stay-photo-grid{grid-template-columns:1fr}.hotel-page .stay-photo-grid figure:last-child{grid-column:auto}.hotel-page .stay-photo-grid figure:last-child img{height:275px}}

/* Weddings: lakeside photography and an anchored planning journey. */
.wedding-page{background:#faf7f0;color:#293c32}.wedding-page h1,.wedding-page h2{font-family:var(--font-heading,Georgia),Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.08}.wedding-page h2{font-size:clamp(42px,4.4vw,66px);margin:20px 0 26px}.wedding-page p{font-size:18px;line-height:1.8}.wedding-page section[id]{scroll-margin-top:165px}.wed-hero{position:relative;min-height:720px;height:calc(100svh - 84px);max-height:960px;margin-top:84px;display:flex;align-items:end;padding:70px clamp(25px,7vw,110px);isolation:isolate}.wed-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2}.wed-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#12271eda,transparent 85%),linear-gradient(0deg,#12271e70,transparent 65%);z-index:-1}.wed-hero-copy{max-width:750px;color:white}.wed-hero h1{font-size:clamp(62px,7.2vw,110px);margin:25px 0}.wed-hero p{max-width:480px;margin:0 0 30px}.wed-nav{position:sticky;top:84px;z-index:25;display:flex;justify-content:center;gap:clamp(18px,2.4vw,38px);padding:23px 25px;background:#faf7f0f5;backdrop-filter:blur(14px);border-bottom:1px solid #293c3225;overflow-x:auto}.wed-nav a{font-size:15px;white-space:nowrap;text-decoration:none;color:#293c32;line-height:1.5;border-bottom:1px solid transparent}.wed-nav a:hover,.wed-nav a:focus-visible{border-color:currentColor}.wed-intro{padding:110px 25px 90px;text-align:center;max-width:1120px;margin:auto}.wed-intro>p{max-width:760px;margin:0 auto 50px}.wed-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-top:35px;border-top:1px solid #293c3225}.wed-facts span{display:grid;gap:12px;font-size:13px;letter-spacing:.08em}.wed-facts strong{font:400 48px Georgia,serif;letter-spacing:-.03em}.wed-story{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(45px,7vw,110px);align-items:center;max-width:1380px;padding:55px clamp(25px,5vw,75px);margin:auto}.wed-photo{height:620px;overflow:hidden;border-radius:150px 24px 24px 24px}.wed-photo img{width:100%;height:100%;object-fit:cover}.wed-reverse .wed-photo{order:2;border-radius:24px 150px 24px 24px}.wed-copy{max-width:540px}.wed-copy .button{margin-top:15px}.wed-copy .wed-note{font-size:14px;line-height:1.6;opacity:.8;margin-top:20px}.wed-links{display:flex;flex-wrap:wrap;gap:25px;margin-top:25px}.wed-gallery{padding:100px clamp(25px,6vw,95px);text-align:center}.wed-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:45px}.wed-gallery-grid a{display:block;overflow:hidden;border-radius:20px}.wed-gallery-grid a:nth-child(even){margin-top:45px}.wed-gallery-grid img{display:block;width:100%;height:430px;object-fit:cover;transition:transform .4s}.wed-gallery-grid a:hover img{transform:scale(1.025)}.wed-end{background:#293c32;color:#fff;text-align:center;padding:100px 25px 110px}.wed-end>p{max-width:660px;margin:0 auto 35px}.wed-end-actions{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.wed-phone{display:inline-block;color:#fff;font-size:20px;margin-top:32px;text-decoration:none}.wedding-page a:focus-visible{outline:2px solid #ad8760;outline-offset:6px}
@media(max-width:900px){.wed-hero{margin-top:76px;min-height:580px;height:78svh}.wed-nav{top:76px;justify-content:flex-start;padding:18px 25px;gap:25px}.wed-story{gap:35px}.wed-photo{height:490px;border-radius:100px 20px 20px 20px}.wed-reverse .wed-photo{border-radius:20px 100px 20px 20px}.wed-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wed-gallery-grid a:nth-child(even){margin-top:0}.wed-gallery-grid img{height:430px}}
@media(max-width:640px){.wedding-page section[id]{scroll-margin-top:145px}.wed-hero{padding:45px 25px;min-height:550px;max-height:740px}.wed-hero h1{font-size:clamp(52px,11vw,72px)}.wed-hero:after{background:linear-gradient(0deg,#12271edb, #12271e20)}.wed-hero>img{object-position:58% center}.wedding-page p{font-size:16px;line-height:1.75}.wed-intro{padding:70px 25px 40px}.wed-facts{gap:15px;grid-template-columns:1fr 1fr}.wed-facts span:last-child{grid-column:1/-1;margin-top:15px}.wed-facts strong{font-size:38px}.wed-facts span{font-size:12px}.wed-story{grid-template-columns:1fr;padding:35px 25px;gap:30px}.wed-reverse .wed-photo{order:0}.wed-photo{height:430px}.wed-copy{max-width:none}.wed-gallery{padding:65px 25px}.wed-gallery-grid{gap:12px}.wed-gallery-grid img{height:270px}.wed-end{padding:75px 25px 85px}.wed-end-actions{flex-direction:column;align-items:center}}
@media(prefers-reduced-motion:reduce){.wed-gallery-grid img{transition:none}}

.general-terms-page{max-width:1060px;margin:auto;padding:155px 30px 100px;color:#293c32}.general-terms-heading{max-width:850px}.general-terms-heading h1{font-size:clamp(58px,7vw,90px);line-height:1.08;font-weight:400;margin:20px 0 35px}.general-terms-page p,.general-terms-page li{font-size:17px;line-height:1.85}.general-terms-nav{display:flex;flex-wrap:wrap;gap:16px 30px;padding:25px 0;margin:30px 0 60px;border-block:1px solid #293c3225}.general-terms-nav a{color:inherit;font-size:16px;text-underline-offset:5px}.general-terms-group{scroll-margin-top:110px;margin-bottom:75px}.general-terms-group h2{font-size:clamp(32px,4vw,46px);font-weight:400;line-height:1.2;margin:0 0 35px}.general-terms-item{display:grid;grid-template-columns:55px 1fr;gap:20px;border-top:1px solid #293c3220;padding:28px 0}.general-terms-number{font-size:16px;color:#896d54;padding-top:5px}.general-terms-item h3{font-size:23px;line-height:1.35;font-family:Manrope,sans-serif;margin:0 0 18px;font-weight:600}.general-terms-item ul{padding-left:22px;margin:0}.general-terms-item li+li{margin-top:9px}.general-terms-item p{margin:0 0 15px}@media(max-width:600px){.general-terms-page{padding:125px 24px 70px}.general-terms-nav{display:grid;margin-bottom:40px}.general-terms-item{grid-template-columns:30px 1fr;gap:12px}.general-terms-item h3{font-size:20px}.general-terms-page li,.general-terms-page p{font-size:16px}}

/* Footer page links in two balanced columns. */
.site-footer .footer-main{grid-template-columns:1.05fr 1.15fr 1fr;gap:clamp(25px,4vw,60px)}
.site-footer .footer-menu{min-width:0;width:100%}
.site-footer .footer-menu-links{display:grid;grid-template-rows:repeat(5,auto);grid-auto-flow:column;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 24px;width:100%;align-items:start}
.site-footer .footer-menu-links a{font-size:14px;line-height:1.6;max-width:100%;overflow-wrap:normal}
@media(max-width:900px){.site-footer .footer-main{grid-template-columns:1.2fr 1fr;gap:35px}.site-footer .footer-menu-links{gap:10px 20px}}
@media(max-width:600px){.site-footer .footer-main{grid-template-columns:1fr;gap:35px}.site-footer .footer-menu-links{gap:10px 24px}.site-footer .footer-menu-links a{font-size:15px}}

/* A consistent outline phone icon, independent of emoji fonts. */
.header-phone .phone-symbol{align-items:center;justify-content:center;color:inherit}
.header-phone .phone-symbol::before{content:"";display:block;width:19px;height:19px;background:currentColor;-webkit-mask:url('assets/phone-outline.svg') center/contain no-repeat;mask:url('assets/phone-outline.svg') center/contain no-repeat}
.button>span:empty,.text-link>span:empty,.card-arrow:empty,.contact-methods a>span:empty{display:none}

/* A quiet, accessible segmented language selector. */
.header .nav .language-switch{display:inline-flex;flex-shrink:0;align-items:center;gap:2px;padding:3px;border:1px solid #293c3225;border-radius:999px;background:#ffffff70}
.header .nav .language-switch a,.header .nav .language-switch span{display:grid;place-items:center;min-width:34px;min-height:32px;padding:4px 8px;border-radius:999px;font:600 12px/1 Manrope,sans-serif;letter-spacing:.04em;text-decoration:none;color:#405443;margin:0}
.header .nav .language-switch .language-active{background:#293c32;color:#fff}
.header .nav .language-switch a:hover{background:#293c3210}
.header .nav .language-switch a::after{display:none}
.header .nav .language-switch a:focus-visible{outline:2px solid #896d54;outline-offset:3px}
@media(max-width:900px){.header .nav .language-switch{align-self:flex-start;margin-top:12px;padding:4px}.header .nav .language-switch a,.header .nav .language-switch span{min-width:58px;min-height:44px;font-size:14px}}

/* Shared controls and gallery presentation. */
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;border-radius:999px;font-size:14px;line-height:1.35;letter-spacing:.035em;text-align:center;transition:background-color .2s,color .2s,box-shadow .2s}
.button:focus-visible,.gallery-open:focus-visible{outline:2px solid #896d54;outline-offset:5px}.button:hover{box-shadow:0 5px 18px #293c321a}
.nav-close{display:none}.menu-toggle span{transition:transform .2s}
.gallery-open{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:inherit;overflow:hidden;color:inherit}
.photo-viewer{max-width:none;max-height:none;width:100%;height:100dvh;margin:0;padding:20px clamp(20px,4vw,65px);border:0;background:#14231ff7;color:#fff;overflow:auto;overscroll-behavior:contain}.photo-viewer::backdrop{background:#14231f}.photo-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px}.photo-viewer-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.photo-viewer button{min-height:44px;border:1px solid #ffffff60;color:white;background:transparent;border-radius:999px;padding:10px 22px;font:500 14px Manrope,sans-serif;cursor:pointer}.photo-viewer button:focus-visible{outline:2px solid white;outline-offset:4px}.photo-viewer button:disabled{opacity:.35;cursor:default}.photo-viewer figure{margin:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}.photo-viewer img{max-width:100%;max-height:calc(100dvh - 195px);object-fit:contain;min-height:0;touch-action:pan-y pinch-zoom;border-radius:8px}.photo-viewer figcaption{font-size:14px;text-align:center;line-height:1.5}.photo-viewer-controls{display:flex;justify-content:center;gap:16px;padding-bottom:env(safe-area-inset-bottom)}
.soft-reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.soft-reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.header .nav{padding:20px 28px calc(30px + env(safe-area-inset-bottom));gap:0;background:#faf7f0}.header .nav.open{animation:menu-panel-in .2s ease}.header .nav>a{justify-content:flex-start;text-align:left;min-height:52px;padding:9px 0;font:500 clamp(22px,4.8vw,29px)/1.25 Manrope,sans-serif;border-bottom:1px solid #293c3215}.nav-close{display:block;align-self:flex-end;flex:none;border:1px solid #293c3240;border-radius:999px;background:transparent;color:#293c32;min-height:44px;padding:10px 18px;font:500 14px Manrope,sans-serif;margin:0 0 15px}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header .nav .language-switch{margin-top:24px;width:fit-content}.header .nav .language-switch a{width:auto}.menu-open{overflow:hidden}}
@keyframes menu-panel-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:600px){.section{padding-top:65px;padding-bottom:65px}.intro-story>img{height:290px}.stay-grid{margin-top:30px;gap:18px}.stay-grid .photo-card{height:340px}.restaurant-images{gap:14px}.restaurant-images img{height:330px}.restaurant-images img:nth-child(2){height:250px}.spa-section{padding-top:40px;padding-bottom:40px}.spa-content{padding-top:40px;padding-bottom:20px}.stay-real-photos,.stay-choices,.house-options{padding-top:65px;padding-bottom:70px}.feature-story,.feature-gallery{padding-top:60px;padding-bottom:65px}.contact-hero{padding-bottom:60px}.button{font-size:13px;padding:14px 21px}.photo-viewer{padding:16px 16px calc(16px + env(safe-area-inset-bottom))}.photo-viewer-controls{gap:12px}.photo-viewer button{padding:10px 18px}.photo-viewer figcaption{font-size:13px}.gallery-grid .gallery-open,.stay-photo-grid .gallery-open{border-radius:inherit}}
@media(prefers-reduced-motion:reduce){.soft-reveal{opacity:1;transform:none;transition:none}.header .nav.open{animation:none}.menu-toggle span,.button{transition:none}}

.occasion-grid a[href$="/weddings/"] img{object-position:center 70%}

/* Arrival details and the additional poolside accommodation. */
.pool-house-option{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:48px 0 0;margin-top:48px;border-top:1px solid #c7cbbf}.pool-house-option h3{font:400 clamp(32px,4vw,52px)/1.15 var(--serif);margin:18px 0}.pool-house-option h3 em{color:#ab765b;font-weight:400}.pool-house-option p{font-size:17px;line-height:1.8;color:#5c685c}.pool-house-option .text-link{display:inline-block;margin-top:16px}
.arrival-guide{padding:85px clamp(24px,7vw,120px);background:#e7eadf}.arrival-guide h2{font:400 clamp(42px,5vw,68px)/1.12 var(--serif);margin:18px 0 32px;letter-spacing:-.035em}.arrival-guide h2 em{color:#ab765b;font-weight:400}.arrival-details{display:grid;grid-template-columns:1.3fr 1fr;gap:7%;padding-bottom:60px;border-bottom:1px solid #c7cbbf}.arrival-guide h3{font:400 clamp(26px,2.6vw,36px)/1.2 var(--serif);margin:0 0 18px}.arrival-guide p{font-size:17px;line-height:1.8;color:#536454;margin:0 0 24px}.arrival-guide .button{background:#294838;color:#fff;display:inline-flex;max-width:100%;white-space:normal;text-align:center;font-size:14px}.arrival-nearby{padding-top:60px}.arrival-places{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.arrival-places article{display:flex;flex-direction:column;padding:30px 25px;background:#faf7f0;border-radius:28px}.arrival-places .text-link{margin-top:auto;padding-top:12px}.arrival-guide .text-link{font-size:14px;display:inline-block}.arrival-guide a:focus-visible,.pool-house-option a:focus-visible{outline:2px solid #294838;outline-offset:5px}
@media(max-width:700px){.arrival-details,.arrival-places,.pool-house-option{grid-template-columns:1fr;gap:30px}.arrival-guide{padding-top:65px;padding-bottom:65px}.arrival-places article{padding:27px 22px}.pool-house-option{padding-top:35px;margin-top:35px}.arrival-guide p,.pool-house-option p{font-size:16px}}



/* Confirmed New Year offer: readable prices and a three-day programme. */
.offers-packages .offers-package h3{font-size:clamp(37px,4vw,58px)}.offers-package-top{font-size:14px;letter-spacing:.035em;flex-wrap:wrap}.offers-package-foot>span{font-size:14px;letter-spacing:.03em}.offers-package-foot>a{font-size:14px}.nye-price-table{width:100%;border-collapse:collapse;margin:10px 0 28px;font-size:16px}.nye-price-table caption{text-align:left;font-size:14px;line-height:1.6;color:#59675b;padding-bottom:14px}.nye-price-table th,.nye-price-table td{text-align:left;padding:15px 0;border-bottom:1px solid #aeb9a9}.nye-price-table thead th{font-size:14px;color:#59675b}.nye-price-table tbody th{font-weight:500}.nye-price-table td{text-align:right;font-weight:700;font-size:23px;white-space:nowrap}.nye-price-table thead th:last-child{text-align:right}.nye-inclusions{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:80px clamp(25px,7vw,120px);background:#e7eadf}.nye-inclusions h2{font:400 clamp(43px,5vw,67px)/1.12 var(--serif);margin:22px 0}.nye-inclusions h2 em{font-weight:400;color:#a87355}.nye-inclusions p{font-size:17px;line-height:1.8;color:#566659}.nye-programme{padding:0;margin:0;list-style:none}.nye-programme li{display:grid;grid-template-columns:65px 1fr;gap:22px;padding:25px 0;border-bottom:1px solid #b9c1b1}.nye-programme li:first-child{padding-top:0}.nye-programme li>span{font-size:18px;font-weight:700;color:#986a50}.nye-programme h3{font:400 30px/1.2 var(--serif);margin:0 0 12px}.nye-programme p{margin:0}.nye-family{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:65px clamp(25px,7vw,120px);background:#faf7f0}.nye-family article{padding:30px;border:1px solid #ced2c5;border-radius:25px}.nye-family h3{font:400 31px/1.25 var(--serif);margin:17px 0 12px}.nye-family p{font-size:17px;color:#566659;margin:0}.nye-terms-link{display:inline-block;margin-top:25px;text-decoration:underline;text-underline-offset:4px;font-size:14px}
@media(max-width:700px){.nye-inclusions,.nye-family{grid-template-columns:1fr;gap:35px}.nye-inclusions{padding-top:60px;padding-bottom:60px}.nye-family{padding-top:45px;padding-bottom:45px}.nye-programme li{grid-template-columns:56px 1fr;gap:14px}.nye-programme h3{font-size:27px}.nye-price-table td{font-size:21px}.nye-inclusions p,.nye-family p{font-size:16px}}

/* Audit fixes: prevent crowded headers and keep touch controls readable. */
main, main section, main article, main figure, .footer-main > *, .form-row > *{min-width:0}
main h1,main h2,main h3,.button,.text-link,.footer-cta-link{overflow-wrap:break-word}
.button,.footer-cta-link{max-width:100%;white-space:normal}
:focus-visible{outline:2px solid var(--clay);outline-offset:4px}
body.spa-menu-visible{overflow:hidden}
.spa-book-controls button span{display:inline}
.spa-book-controls button{min-width:0;min-height:44px}
.spa-book-controls>span{flex:none}
.spa-book-dialog{overscroll-behavior:contain}
.spa-book-sheet img{touch-action:pan-y pinch-zoom}
@media(max-width:900px){
  .header{height:76px;gap:12px;padding-inline:24px}
  .header.scrolled{height:70px}
  .header .brand{width:auto;max-width:230px}
  .header .brand img{height:53px;width:auto;max-width:100%}
  .header .header-phone{margin-left:auto;min-height:44px;min-width:44px;justify-content:center}
  .header-phone span:last-child{display:none}
  .header-phone .phone-symbol{display:grid;width:35px;height:35px}
  .header .header-book{display:none}
  .menu-toggle{display:flex;align-items:center;justify-content:center;flex-direction:column;flex:none;gap:6px;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--forest);cursor:pointer;touch-action:manipulation}
  .menu-toggle span{display:block;width:28px;height:1px;background:currentColor}
  .header .nav{position:fixed;left:0;right:0;top:76px;height:calc(100dvh - 76px);display:none;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:20px 28px calc(30px + env(safe-area-inset-bottom));background:#faf7f0;overflow-y:auto;overscroll-behavior:contain}
  .header.scrolled .nav{top:70px;height:calc(100dvh - 70px)}
  .header .nav.open{display:flex}
  .header .nav>a{display:flex;justify-content:flex-start;align-items:center;flex:none;min-height:52px;width:100%;padding:9px 0;white-space:normal;text-align:left;font:500 clamp(22px,4.8vw,29px)/1.25 var(--sans);border-bottom:1px solid #293c3215;color:var(--forest)}
  .header .nav .nav-close{display:block;align-self:flex-end;flex:none;min-height:44px;padding:10px 18px;margin:0 0 15px;border:1px solid #293c3240;border-radius:999px;background:transparent;color:var(--forest);font:500 14px var(--sans)}
  .header .nav .language-switch{align-self:flex-start;margin-top:24px;width:fit-content}
  .header .nav .language-switch a,.header .nav .language-switch span{min-width:58px;min-height:44px;font-size:14px;width:auto}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  body.menu-open .mobile-contact{display:none}
}
@media(max-width:600px){
  .header{padding-inline:14px;gap:8px}
  .header .brand{max-width:calc(100% - 104px)}
  .header .brand img{height:48px}
  .site-footer{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
  .mobile-contact{padding-bottom:max(9px,env(safe-area-inset-bottom))}
  .mobile-contact a{min-height:48px;padding:8px 6px;font-size:clamp(12px,3.5vw,14px)}
  .spa-book-controls{gap:8px}
  .spa-book-controls button{padding:8px 12px;font-size:14px}
  .spa-book-pdf{min-height:44px;display:flex;align-items:center;justify-content:center}
  .offers-hero-photo{height:400px}
  .nye-price-table th{padding-right:10px}
}
@media(max-width:360px){.offers-hero-photo{height:360px}.header .brand img{height:43px}}

@media(max-width:700px){.site-footer{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}

/* Full desktop navigation, with a tighter header on smaller laptops. */
@media(min-width:901px) and (max-width:1440px){
  .header{gap:14px;padding-inline:20px}
  .header .brand{width:190px;flex:0 0 190px}
  .header .brand img{width:100%;max-height:53px}
  .header .nav{gap:12px;min-width:0}
  .header .nav>a{font-size:15px}
  .header .header-book{display:none}
  .header-phone{font-size:13px}
}
@media(min-width:901px) and (max-width:1180px){
  .header{gap:10px;padding-inline:16px}
  .header .brand{width:150px;flex-basis:150px}
  .header .nav{gap:8px}
  .header .nav>a{font-size:14px}
  .header-phone span:last-child{display:none}
  .header-phone .phone-symbol{display:grid;width:35px;height:35px}
  .header-phone{min-width:44px;min-height:44px;justify-content:center}
}

/* Editorial calibration: balanced headings, readable copy and centred closing notes. */
main h1,main h2,main h3{ text-wrap:balance }
main p{ text-wrap:pretty }
.intro-story p,.stay-intro p,.spa-intro p,.event-intro>p,.restaurant-intro>p,.offers-intro p,.story-chapter p{max-width:62ch}
.spa-gallery-heading,.spa-menus-heading,.stay-section-heading{align-items:start}
.spa-gallery-heading h2,.spa-menus-heading h2,.stay-section-heading h2{margin-top:0}
.stay-lead h1,.spa-lead h1,.event-lead h1,.restaurant-lead h1,.offers-hero h1,.story-hero h1,.houses-page .stay-lead h1{margin-right:0}
.stay-finish,.spa-final>div,.event-final,.restaurant-finish,.offers-final,.feature-end,.page-book,.terms-end{text-align:center}
.stay-finish h2,.spa-final h2,.event-final h2,.restaurant-finish h2,.offers-final h2,.feature-end h2,.page-book h2{margin-inline:auto;max-width:20ch}
.stay-finish p,.spa-final p,.event-final p,.restaurant-finish>p,.offers-final p,.feature-end p,.page-book p{margin-inline:auto;max-width:58ch;line-height:1.7}
.spa-final .button,.page-book .button{align-self:center}
@media(max-width:760px){
  .spa-gallery-heading h2,.spa-menus-heading h2,.stay-section-heading h2{margin-top:20px}
  .spa-lead h1,.stay-lead h1,.restaurant-lead h1,.event-lead h1,.offers-hero h1,.story-hero h1{line-height:1.12}
  .contact-hero h1{line-height:1.12}
}

/* Keep the head table visible in the portrait wedding photograph. */
.event-wedding-photo img[src$="wedding-head-table-retouched.webp"]{object-position:50% 78%}

/* Alternating photo sizes retain the original portrait framing. */
.event-real-gallery{padding:90px clamp(25px,7vw,120px);background:#edece3}
.event-real-gallery h2{margin:20px 0 50px}
.event-real-gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:55px 24px;align-items:start}
.event-real-gallery figure{margin:0;min-width:0;grid-column:span 6}
.event-real-gallery figure:nth-child(1){grid-column:1/span 7}
.event-real-gallery figure:nth-child(2){grid-column:9/span 4;margin-top:110px}
.event-real-gallery figure:nth-child(3){grid-column:2/span 4}
.event-real-gallery figure:nth-child(4){grid-column:7/span 6;margin-top:90px}
.event-real-gallery figure:nth-child(5){grid-column:3/span 7;margin-top:20px}
.event-real-gallery a{display:block;border-radius:30px;overflow:hidden}
.event-real-gallery img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.event-real-gallery figcaption{margin-top:15px;font-size:16px;line-height:1.5;color:#516153}
@media(max-width:900px){
 .event-real-gallery-grid{gap:40px 20px}
 .event-real-gallery figure:nth-child(1){grid-column:1/span 7}
 .event-real-gallery figure:nth-child(2){grid-column:8/span 5;margin-top:65px}
 .event-real-gallery figure:nth-child(3){grid-column:1/span 5}
 .event-real-gallery figure:nth-child(4){grid-column:6/span 7;margin-top:55px}
 .event-real-gallery figure:nth-child(5){grid-column:2/span 9;margin-top:0}
}
@media(max-width:520px){
 .event-real-gallery{padding:65px 25px}
 .event-real-gallery h2{margin-bottom:35px}
 .event-real-gallery-grid{display:flex;flex-direction:column;gap:36px}
 .event-real-gallery figure:nth-child(n){width:90%;margin:0;align-self:flex-start}
 .event-real-gallery figure:nth-child(2),.event-real-gallery figure:nth-child(4){width:76%;align-self:flex-end}
 .event-real-gallery figure:nth-child(3){width:83%}
 .event-real-gallery figure:nth-child(5){width:95%}
 .event-real-gallery a{border-radius:22px}
 .event-real-gallery img{aspect-ratio:auto}
}

/* Position the portrait wedding hero around the couple’s faces. */
.event-lead-visual img[src$="wedding-couple-lake-retouched.webp"]{object-position:50% 20%}

.event-pathways>div{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:700px){.event-pathways>div{grid-template-columns:1fr}}

img[src$="retreat-hall-corrected.webp"]{object-position:50% 52%}

/* Natural photo proportions and consistent rendering across screen sizes. */
main img[src^="assets/"]{max-width:100%}
.gallery-grid img,.stay-photo-grid img,.houses-page .stay-photo-grid figure:last-child img,.hotel-page .stay-photo-grid figure:last-child img,.spa-gallery-grid img,.event-story-grid img,.feature-gallery img,.wed-gallery-grid img{height:auto;aspect-ratio:auto;object-fit:contain}
.occasion-grid img[src$="wedding-couple-lake-retouched.webp"],.feature-hero img[src$="wedding-couple-lake-retouched.webp"]{object-position:50% 20%}
@media(max-width:520px){.event-lead-visual:has(img[src$="wedding-couple-lake-retouched.webp"]){height:auto}.event-lead-visual img[src$="wedding-couple-lake-retouched.webp"]{height:auto;aspect-ratio:3/4}}

/* Accommodation rates supplied by the property, for two guests. */
.stay-rate{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:24px 0;color:#294838}
.stay-rate strong{font-family:var(--serif);font-size:38px;font-weight:400;line-height:1.1;white-space:nowrap}
.stay-rate span{font-size:13px;color:#657060;line-height:1.5}
.stay-choice-list .stay-rate{margin-top:auto;padding-top:22px}
@media(max-width:520px){.stay-rate strong{font-size:34px}.stay-rate{gap:12px;margin:20px 0}}

/* Keep the couple’s faces visible in cropped editorial frames. */
img[src$="wedding-couple-lake-retouched.webp"]{object-position:50% 20%}

/* Concise footer, enquiry notice and activity gallery. */
.site-footer .footer-main{padding-top:54px}
.form-privacy{font-size:14px;line-height:1.7;margin:16px 0;color:var(--muted)}
.form-privacy a{text-decoration:underline;text-underline-offset:3px}
.feature-gallery figure{margin:0;min-width:0}
.feature-gallery figure img{width:100%;display:block}
.feature-gallery figcaption{font-size:14px;line-height:1.5;margin-top:10px}
@media(max-width:520px){.site-footer .footer-main{padding-top:32px}.form-privacy{font-size:14px}}

/* Events: a quieter, focused wedding story. */
.event-redesign{background:#faf7f0;--celebration-space:clamp(24px,6vw,96px)}
.event-redesign h1,.event-redesign h2,.event-redesign h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}
.event-redesign h2{font-size:clamp(42px,4.8vw,72px);line-height:1.08;margin:20px 0 26px}
.event-redesign h2 em{color:#9b7057}
.event-redesign p{font-size:17px;line-height:1.8;color:#59685d}
.event-redesign img{display:block;max-width:100%}
.event-redesign section[id]{scroll-margin-top:115px}
.celebration-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(35px,7vw,110px);align-items:center;padding:140px var(--celebration-space) 65px;background:#233e32;color:#faf7f0}
.celebration-hero-copy{max-width:650px}
.celebration-hero .eyebrow{color:#d7c6aa;font-size:13px;letter-spacing:.13em}
.celebration-hero h1{font-size:clamp(65px,7.1vw,108px);line-height:1.04;margin:26px 0 28px}
.celebration-hero h1 em{color:#e2c2a7;font-weight:400}
.celebration-hero p{font-size:19px;color:#e1e6dc;max-width:470px;margin:0 0 32px}
.celebration-hero .button{font-size:14px;min-height:52px}
.celebration-explore{display:block;width:fit-content;margin-top:23px;font-size:13px;font-weight:600;letter-spacing:.08em;border-bottom:1px solid #829382;padding-bottom:6px}
.celebration-hero-photo{margin:0;max-width:470px;justify-self:end;position:relative}
.celebration-hero-photo img{width:100%;height:auto;border-radius:200px 200px 20px 20px;object-fit:contain}
.celebration-hero-photo figcaption{font-size:12px;letter-spacing:.13em;margin-top:16px;color:#d7c6aa;text-align:center}
.celebration-nav{display:flex;justify-content:center;gap:clamp(20px,5vw,75px);padding:24px var(--celebration-space);border-bottom:1px solid #d9d9cc;background:#f0ede4}
.celebration-nav a{font-size:15px;font-weight:600;color:#344e3d;padding:8px 0;text-underline-offset:7px}
.celebration-nav a:hover,.celebration-nav a:focus-visible{text-decoration:underline}
.celebration-journey,.celebration-other{padding:85px var(--celebration-space)}
.celebration-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:8%;align-items:end;margin-bottom:44px}
.celebration-heading h2{margin-bottom:0}
.celebration-heading>p{max-width:450px;margin:0}
.celebration-steps{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:28px;align-items:start}
.celebration-steps article{min-width:0}
.celebration-steps article:nth-child(2){padding-top:60px}
.celebration-steps article:nth-child(3){padding-top:110px}
.celebration-steps img{width:100%;height:auto;border-radius:85px 16px 16px 16px}
.celebration-steps article:nth-child(2) img{border-radius:16px 85px 16px 16px}
.celebration-steps article:nth-child(3) img{border-radius:16px 16px 85px 16px}
.celebration-steps h3{font-size:32px;line-height:1.15;margin:22px 0 10px}
.celebration-steps p{font-size:16px;margin:0}
.celebration-venue{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,8vw,120px);align-items:center;padding:75px var(--celebration-space);background:#e9e7da}
.celebration-venue-photo img{width:100%;height:auto;border-radius:20px 120px 20px 20px}
.celebration-venue-copy{max-width:650px}
.celebration-capacity{display:flex;align-items:center;gap:25px;padding:16px 0;border-top:1px solid #bfc5b5;border-bottom:1px solid #bfc5b5;margin:30px 0}
.celebration-capacity strong{font:400 clamp(66px,7vw,100px)/1 var(--serif);color:#294838}
.celebration-capacity span{font-size:14px;line-height:1.5;max-width:160px;color:#4a5c4d}
.celebration-venue-copy .text-link{display:inline-block;margin-top:12px;font-size:14px}
.event-redesign .celebration-moments{padding:85px var(--celebration-space);background:#faf7f0}
.event-redesign .celebration-moments h2{margin-bottom:40px}
.event-redesign .celebration-mosaic{grid-template-columns:repeat(12,minmax(0,1fr));gap:35px;align-items:start}
.event-redesign .celebration-mosaic figure:nth-child(1){grid-column:1/span 4;margin:0}
.event-redesign .celebration-mosaic figure:nth-child(2){grid-column:6/span 7;margin:85px 0 0}
.event-redesign .celebration-mosaic figure:nth-child(3){grid-column:2/span 5;margin:-100px 0 0}
.event-redesign .celebration-mosaic img{width:100%;height:auto;object-fit:contain;border-radius:20px 85px 20px 20px}
.event-redesign .celebration-mosaic figure:nth-child(2) img{border-radius:100px 20px 20px 20px}
.event-redesign .celebration-mosaic figcaption{font-size:14px;line-height:1.6;margin:12px 2px 0;color:#59685d}
.celebration-other{background:#eeeade}
.celebration-other-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:40px}
.celebration-other-grid article{background:#faf7f0;border-radius:24px;overflow:hidden;min-width:0}
.celebration-card-photo{display:block;overflow:hidden}
.celebration-card-photo img{width:100%;height:310px;object-fit:cover;object-position:center 50%}
.celebration-other-grid article>div{padding:28px 32px 34px}
.celebration-other-grid h3{font-size:38px;line-height:1.15;margin:0 0 14px}
.celebration-other-grid p{font-size:16px;margin:0 0 24px}
.celebration-other-grid .text-link{font-size:13px}
.celebration-image-note{display:block;font-size:12px;color:#6b776a;margin-bottom:12px}
.celebration-contact{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding:70px var(--celebration-space);background:#233e32;color:#faf7f0}
.celebration-contact .eyebrow{color:#d7c6aa}
.celebration-contact h2{margin-bottom:0}
.celebration-contact h2 em{color:#e2c2a7}
.celebration-contact p{color:#e1e6dc;margin:0 0 26px}
.celebration-phone{display:block;font-size:18px;margin-top:22px;color:#e1e6dc}
@media(min-width:1500px){.event-redesign{--celebration-space:max(96px,calc((100vw - 1320px)/2))}}
@media(max-width:900px){
 .celebration-hero{gap:35px;padding-top:125px}.celebration-hero h1{font-size:72px}.celebration-hero p{font-size:17px}
 .celebration-heading{grid-template-columns:1fr;gap:22px}.celebration-heading>p{max-width:600px}
 .celebration-steps{gap:20px}.celebration-steps h3{font-size:27px}
 .celebration-venue{gap:35px;grid-template-columns:1fr 1.1fr}.celebration-venue h2{font-size:46px}
 .event-redesign .celebration-mosaic figure:nth-child(3){margin:-35px 0 0}
}
@media(max-width:600px){
 .celebration-hero{grid-template-columns:1fr;padding:115px 24px 36px;gap:35px}
 .celebration-hero h1{font-size:clamp(52px,12vw,72px);margin:24px 0}.celebration-hero p{font-size:17px}
 .celebration-hero .eyebrow{font-size:12px;line-height:1.7}.celebration-hero-photo{width:88%;justify-self:end}
 .celebration-hero-photo img{border-radius:150px 150px 16px 16px}
 .celebration-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px 20px;padding:18px 24px}.celebration-nav a{font-size:14px;text-align:center}
 .celebration-journey,.celebration-other,.event-redesign .celebration-moments{padding:55px 24px}
 .event-redesign h2{font-size:clamp(39px,10vw,52px)}.event-redesign section[id]{scroll-margin-top:90px}
 .celebration-steps{grid-template-columns:1fr;gap:35px}
 .celebration-steps article:nth-child(2),.celebration-steps article:nth-child(3){padding-top:0}
 .celebration-steps article:first-child{width:88%}.celebration-steps article:nth-child(2){width:92%;justify-self:end}.celebration-steps article:nth-child(3){width:94%}
 .celebration-steps h3{font-size:32px;margin-top:18px}.celebration-steps img{border-radius:60px 16px 16px 16px}
 .celebration-venue{display:flex;flex-direction:column-reverse;padding:55px 24px;gap:30px}
 .celebration-venue-photo{width:85%;align-self:flex-end}.celebration-venue-photo img{border-radius:16px 85px 16px 16px}
 .celebration-capacity{gap:20px;margin:24px 0}.celebration-capacity strong{font-size:85px}
 .event-redesign .celebration-mosaic{display:flex;flex-direction:column;gap:32px}
 .event-redesign .celebration-mosaic figure:nth-child(1){width:76%;margin:0}
 .event-redesign .celebration-mosaic figure:nth-child(2){width:94%;margin:0;align-self:flex-end}
 .event-redesign .celebration-mosaic figure:nth-child(3){width:82%;margin:0}
 .celebration-other-grid{grid-template-columns:1fr;gap:24px;margin-top:28px}
 .celebration-card-photo img{height:245px}.celebration-other-grid article>div{padding:24px}.celebration-other-grid h3{font-size:34px}
 .celebration-contact{grid-template-columns:1fr;padding:55px 24px;gap:28px}
}

/* Modern gallery: consistent frames and swipe on mobile. */
.event-redesign .celebration-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.event-redesign .celebration-mosaic figure:nth-child(n){grid-column:auto;width:100%;margin:0;align-self:auto}
.event-redesign .celebration-mosaic figure:nth-child(n) img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:20px}
.event-redesign .celebration-mosaic a{display:block}
@media(max-width:600px){
 .event-redesign .celebration-mosaic{display:flex;flex-direction:row;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scroll-padding-inline:0;padding-bottom:18px;scrollbar-width:thin;scrollbar-color:#a9b4a0 #e9e7da}
 .event-redesign .celebration-mosaic figure:nth-child(n){width:82%;flex:0 0 82%;scroll-snap-align:start;margin:0;align-self:auto}
 .event-redesign .celebration-mosaic figure:nth-child(n) img{border-radius:16px}
}

/* Retreats: natural spaces, clear planning and calm imagery. */
.retreats-page{color:#293d33;background:#f7f4ec;overflow:clip}
.retreats-page section,.retreats-facts{max-width:1280px;margin-inline:auto;padding:80px 48px}
.retreats-page h1{font-size:clamp(3.2rem,6.4vw,6.5rem);line-height:1.08;letter-spacing:-.025em;margin:24px 0 30px}
.retreats-page h2{font-size:clamp(2.5rem,4.4vw,4.5rem);line-height:1.12;margin:20px 0 28px}
.retreats-page h3{font-size:2rem;line-height:1.2;margin:0 0 16px}
.retreats-page em{color:#9a7056;font-weight:400}
.retreats-page p{font-size:1.1rem;line-height:1.8;max-width:58ch;margin:0 0 24px}
.retreats-page figure{margin:0;min-width:0}
.retreats-page img{display:block;width:100%;height:auto;border-radius:24px}
.retreats-page figcaption{font-size:.875rem;line-height:1.5;color:#657166;margin:14px 0 0}
.retreats-page .eyebrow{font-size:.875rem;letter-spacing:.12em;line-height:1.6}
.retreats-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}
.retreats-hero figure{max-width:450px;justify-self:end}
.retreats-hero img{border-radius:180px 180px 24px 24px}
.retreats-explore{display:block;width:fit-content;margin-top:26px;padding-bottom:8px;border-bottom:1px solid #a09e8f;font-size:.875rem;letter-spacing:.06em}
.retreats-page .retreats-facts{padding-block:28px;display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #d7d9cb;gap:20px;font-size:1rem;text-align:center}
.retreats-practice{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;scroll-margin-top:120px}
.retreats-moments>h2{max-width:700px}
.retreats-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px}
.retreats-cards article{background:#fff;border-radius:24px;overflow:hidden;min-width:0}
.retreats-cards img{border-radius:0;aspect-ratio:4/3;object-fit:cover}
.retreats-cards article>div{padding:30px 26px}
.retreats-cards p{font-size:1rem;line-height:1.7}
.retreats-cards a{font-size:.875rem;letter-spacing:.06em;border-bottom:1px solid #b6bba8;padding-bottom:6px;display:inline-block}
.retreats-planning{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.retreats-planning dl{margin:32px 0 0}
.retreats-planning dl>div{padding:20px 0;border-top:1px solid #d1d5c7}
.retreats-planning dt{font-size:1.1rem;font-weight:600;margin-bottom:8px}
.retreats-planning dd{font-size:1rem;line-height:1.7;margin:0;color:#59675d}
.retreats-page .retreats-contact{max-width:none;background:#29483a;color:#f8f5ec;display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:80px max(48px,calc((100vw - 1184px)/2))}
.retreats-contact em{color:#d6b49a}
.retreats-contact .eyebrow{color:#d5ddd0}
.retreats-contact .button-light{display:inline-flex;background:#f7f4ec;color:#29483a;padding:18px 28px;border-radius:999px;line-height:1.4}
.retreats-phone{display:block;font-size:1.35rem;margin-top:24px;width:fit-content}
.retreats-page .retreats-note{font-size:.875rem;line-height:1.7;margin-top:24px;color:#d9e0d7}
@media(max-width:900px){.retreats-page section,.retreats-facts{padding:56px 28px}.retreats-hero,.retreats-practice,.retreats-planning{gap:36px}.retreats-cards{gap:16px}.retreats-cards article>div{padding:24px 18px}.retreats-page h3{font-size:1.65rem}.retreats-page .retreats-contact{padding:56px 28px;gap:36px}}
@media(max-width:600px){.retreats-page section{padding:48px 22px}.retreats-hero,.retreats-practice,.retreats-planning,.retreats-page .retreats-contact{grid-template-columns:1fr;gap:32px}.retreats-page h1{font-size:3.5rem}.retreats-page h2{font-size:2.65rem}.retreats-hero figure{width:100%;max-width:400px;justify-self:center}.retreats-hero img{border-radius:150px 150px 20px 20px}.retreats-page .retreats-facts{grid-template-columns:1fr 1fr;padding:24px 22px;gap:20px 12px;text-align:left}.retreats-cards{grid-template-columns:1fr;gap:24px}.retreats-cards article>div{padding:28px}.retreats-practice figure{order:2}.retreats-page .retreats-contact{padding:48px 22px}.retreats-page p{font-size:1rem}.retreats-page img{border-radius:20px}}

/* Match the established typography on the other event pages. */
.retreats-page{font-family:var(--sans)}
.retreats-page h1,.retreats-page h2,.retreats-page h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}
.retreats-page h1{font-size:clamp(3.4rem,6.4vw,6.5rem);line-height:1.08}
.retreats-page h1 em,.retreats-page h2 em,.retreats-page h3 em{font-family:inherit;font-weight:400;font-style:italic}
.retreats-hero>div,.retreats-practice>div,.retreats-planning>div,.retreats-contact>div{min-width:0}
.retreats-page h1,.retreats-page h2,.retreats-page h3{overflow-wrap:break-word}
.retreats-page p,.retreats-page dt,.retreats-page dd,.retreats-page figcaption,.retreats-page a,.retreats-facts,.retreats-page .eyebrow{font-family:var(--sans)}
@media(max-width:600px){.retreats-page h1{font-size:clamp(2.75rem,9.5vw,3.5rem);line-height:1.1}.retreats-page h2{font-size:clamp(2.25rem,7.4vw,2.65rem);line-height:1.15}.retreats-page h3{font-size:1.85rem;line-height:1.2}}

/* A consistent landscape frame keeps the spa detail photo in proportion. */
.spa-page .spa-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.spa-page .spa-gallery-grid figure:nth-child(n){margin-top:0;max-width:none}
.spa-page .spa-gallery-grid figure:nth-child(n) img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:24px}
.spa-page .spa-gallery-grid figure:nth-child(3) img{object-position:center 65%}
.spa-page .spa-gallery-grid figcaption{font-size:.875rem;line-height:1.5;letter-spacing:.07em}
@media(max-width:760px){.spa-page .spa-gallery-grid{grid-template-columns:1fr 1fr}.spa-page .spa-gallery-grid figure:nth-child(3){grid-column:auto}}
@media(max-width:520px){.spa-page .spa-gallery-grid{grid-template-columns:1fr}.spa-page .spa-gallery-grid figure:nth-child(n) img{border-radius:20px}}

/* Preserve the wide panorama and the resort in the foreground. */
.contact-hero>img{height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center;border-radius:60px 24px 24px 24px}
@media(max-width:760px){.contact-hero>img{height:auto;aspect-ratio:4/3;border-radius:40px 20px 20px 20px}}
.wedding-inquiry{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,90px);padding:80px clamp(24px,7vw,110px);background:#f7f4ec;scroll-margin-top:110px}
.wedding-inquiry>div{min-width:0}.wedding-inquiry h2{font-size:clamp(42px,4.5vw,70px);line-height:1.12}.wedding-inquiry p{font-size:17px;line-height:1.75}.wedding-inquiry>div>a{font-size:20px}.wedding-inquiry .contact-form{min-width:0}.wedding-inquiry .form-row{grid-template-columns:1fr 1fr}.wedding-inquiry .form-privacy,.wedding-inquiry .form-note{font-size:14px}.wedding-inquiry .form-privacy a{text-decoration:underline}
@media(max-width:760px){.wedding-inquiry{grid-template-columns:1fr;padding-block:55px}.wedding-inquiry .form-row{grid-template-columns:1fr}.wedding-inquiry .contact-form{padding:25px}}

.bank-details{padding:60px clamp(25px,8vw,145px);background:#e9e7dc}.bank-details h2{font-size:clamp(36px,4vw,56px);margin:15px 0 25px}.bank-details dl{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:850px;margin:0 0 30px}.bank-details dt{font-size:14px;color:#657166;margin-bottom:7px}.bank-details dd{font-size:18px;margin:0;overflow-wrap:anywhere}.bank-iban{letter-spacing:.035em}.bank-copy-status{min-height:24px;font-size:14px}@media(max-width:600px){.bank-details dl{grid-template-columns:1fr}}

/* WordPress / Elementor integration */
body.admin-bar .header{top:32px} .belite-elementor-page .elementor-widget-wrap{padding:0!important}.belite-elementor-page .elementor-widget{margin:0!important}.belite-elementor-page .elementor-container{max-width:none!important}.belite-elementor-page .elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:0!important}
@media(max-width:782px){body.admin-bar .header{top:46px}}

/* Final accessibility and small-screen refinements */
:where(a,button,input,select,textarea):focus-visible{outline:2px solid #9b6b50;outline-offset:4px} .form-note:focus{outline:2px solid #9b6b50;outline-offset:6px} .contact-form input,.contact-form select,.contact-form textarea{max-width:100%;min-width:0} .contact-form :disabled{cursor:wait;opacity:.7} .stay-rate span{overflow-wrap:anywhere}
@media(max-width:700px){html{scroll-padding-top:100px;scroll-padding-bottom:110px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px!important}.mobile-contact{padding-bottom:calc(10px + env(safe-area-inset-bottom))}.mobile-contact a{min-height:48px}.contact-details a,.footer-column a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Two footer menu columns for any number of WordPress links. */
.site-footer .footer-main{grid-template-columns:minmax(0,1fr) minmax(340px,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,60px)}
.site-footer .footer-menu-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(var(--footer-menu-rows,6),auto);grid-auto-flow:column;gap:4px 24px;align-items:start}
.site-footer .footer-menu-links a{display:flex;align-items:center;width:100%;min-width:0;min-height:40px;padding:6px 0;font-size:15px;line-height:1.5;letter-spacing:normal;overflow-wrap:break-word;box-sizing:border-box}
.site-footer .footer-menu-links a:focus-visible{outline:2px solid #e8bd9d;outline-offset:4px;border-radius:3px}
@media(max-width:1050px){.site-footer .footer-main{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px}.site-footer .footer-identity{grid-column:1/-1}}
@media(max-width:650px){.site-footer .footer-main{grid-template-columns:minmax(0,1fr);gap:32px}.site-footer .footer-menu-links{gap:4px 20px}.site-footer .footer-menu-links a{font-size:15px;min-height:44px}.site-footer .footer-column h3{margin-bottom:10px}}
