:root{--cream:#f7f5ef;--paper:#edeae1;--cream2:#f2efe7;--forest:#18332f;--deep:#102824;--ink:#23352f;--muted:#7c8176;--gold:#bd9972;--hair:#d8d7cd;--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}body.no-scroll{overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2,h3,blockquote{font-family:var(--serif)}h1 em,h2 em,h3 em{font-weight:400}::selection{background:#be9d71;color:#fff}.container{width:min(90%,1490px);margin:0 auto}.eyebrow{font-size:10px;letter-spacing:.24em;font-weight:700;line-height:1.5;text-transform:uppercase;color:#9a795a}.eyebrow.light{color:#f4e4d2}.eyebrow.muted{color:#b9c7be}.section-pad{padding:135px 0}.skip-link{position:fixed;left:20px;top:-80px;z-index:300;background:var(--white);padding:14px 20px}.skip-link:focus{top:12px}.site-shell{min-height:100vh}
#site-loader{position:fixed;inset:0;background:var(--deep);display:grid;place-items:center;z-index:1000;transition:opacity .75s var(--ease),visibility .75s;pointer-events:all}#site-loader.is-done{opacity:0;visibility:hidden;pointer-events:none}.loader-center{display:flex;align-items:center;flex-direction:column;color:#e8dcc9;gap:22px}.loader-center .brand-mark{width:70px;height:70px;animation:loaderFloat 1.4s ease-in-out infinite alternate}.loader-center>span{font-family:var(--serif);font-size:23px;letter-spacing:.22em}.loader-progress{height:1px;width:120px;background:#41544d;overflow:hidden;display:block;position:relative}.loader-progress:after{content:"";position:absolute;inset:0;background:#d8b491;transform:translateX(-105%);animation:loaderFill 1.3s ease forwards}@keyframes loaderFill{to{transform:translateX(0)}}@keyframes loaderFloat{to{transform:translateY(-5px)}}
.site-header{height:96px;position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 5%;color:var(--white);transition:background .5s var(--ease),color .4s var(--ease),height .4s var(--ease),box-shadow .4s;gap:20px}.site-header.scrolled,.site-header.menu-open{background:rgba(247,245,239,.97);color:var(--forest);height:76px;box-shadow:0 1px 0 rgba(36,49,43,.08);backdrop-filter:blur(20px)}.brand{display:inline-flex;align-items:center;gap:12px;position:relative;z-index:122;flex-shrink:0}.brand-mark{width:47px;height:47px;flex-shrink:0}.brand-text{display:flex;flex-direction:column;gap:5px;white-space:nowrap}.brand-text strong{font-family:var(--serif);font-size:17px;font-weight:500;letter-spacing:.16em}.brand-text small{font-size:8px;letter-spacing:.25em;font-weight:500;opacity:.75}.desktop-nav{display:flex;align-items:center;gap:clamp(18px,2.3vw,39px)}.nav-link{font-size:11px;font-weight:500;letter-spacing:.035em;position:relative;white-space:nowrap;opacity:.84;transition:opacity .3s}.nav-link:after{content:"";height:1px;background:currentColor;position:absolute;bottom:-9px;left:0;width:0;transition:width .35s var(--ease)}.nav-link:hover,.nav-link.is-active{opacity:1}.nav-link:hover:after,.nav-link.is-active:after{width:100%}.header-actions{display:flex;align-items:center;gap:18px}.header-book{border:1px solid rgba(255,255,255,.5);padding:16px 19px;display:flex;align-items:center;justify-content:center;gap:21px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;transition:background .3s,color .3s,border .3s;white-space:nowrap}.header-book:hover{background:#fff;color:var(--forest)}.scrolled .header-book,.menu-open .header-book{background:var(--forest);color:#fff;border-color:var(--forest)}.scrolled .header-book:hover{background:#284b42}.lang-switch{position:relative}.lang-trigger{border:0;color:inherit;background:none;font-size:11px;letter-spacing:.1em;display:flex;align-items:center;gap:10px;padding:15px 0}.tiny-chevron{width:6px;height:6px;transform:rotate(45deg) translateY(-3px);border-bottom:1px solid currentColor;border-right:1px solid currentColor}.lang-menu{position:absolute;top:48px;right:-15px;display:none;background:var(--cream);color:var(--forest);min-width:100px;padding:10px;box-shadow:0 22px 60px rgba(0,0,0,.15);border:1px solid var(--hair)}.lang-menu.open{display:flex;flex-direction:column}.lang-menu a{padding:9px 12px;font-size:11px;letter-spacing:.12em}.lang-menu a:hover,.lang-menu .selected{background:#e2e4d8}.menu-toggle{height:42px;width:42px;border:1px solid currentColor;background:none;color:inherit;display:none;position:relative;z-index:125;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{height:1px;width:19px;background:currentColor;transition:transform .4s var(--ease)}.menu-open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;z-index:99;background:var(--cream);color:var(--forest);transform:translateY(-105%);transition:transform .7s var(--ease);visibility:hidden}.mobile-menu.is-open{transform:translateY(0);visibility:visible}.mobile-menu-inner{width:min(90%,1280px);margin:auto;height:100%;padding-top:130px;padding-bottom:30px;display:flex;flex-direction:column;justify-content:space-between;overflow-y:auto}.mobile-menu nav{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.mobile-menu .nav-link{font-family:var(--serif);font-size:clamp(39px,6vw,85px);line-height:1.05;opacity:1;padding:4px 0}.mobile-menu .nav-link:after{bottom:0}.mobile-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--hair);padding-top:22px;gap:16px;flex-wrap:wrap}.mobile-languages{display:flex;gap:13px}.mobile-languages a{font-size:11px}.mobile-languages .selected{color:var(--gold)}.mobile-address{font-size:11px;max-width:210px;line-height:1.5;color:var(--muted)}
.hero{height:min(900px,100svh);min-height:690px;position:relative;background:#344b46;color:white;overflow:hidden}.hero-photo,.hero-img-overlay{position:absolute;inset:0}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 44%;animation:heroZoom 2.1s var(--ease) both}.hero-img-overlay{background:linear-gradient(90deg,rgba(8,25,24,.78) 0%,rgba(10,28,29,.5) 45%,rgba(10,29,30,.22) 100%),linear-gradient(0deg,rgba(7,22,21,.42) 0%,transparent 33%)}@keyframes heroZoom{from{transform:scale(1.13);filter:brightness(.75)}to{transform:scale(1);filter:brightness(1)}}.hero-content{position:relative;z-index:2;height:100%;display:flex;align-items:center}.hero-copy{max-width:800px;padding:90px 0 30px}.hero-kicker{display:flex;align-items:center;gap:18px;letter-spacing:.26em;font-weight:700;font-size:10px;color:#e3d2bf;margin-bottom:30px}.hero-kicker .brand-mark{height:39px;width:39px}.hero-copy h1{font-size:clamp(62px,8.2vw,138px);line-height:.98;letter-spacing:-.065em;margin-bottom:30px;font-weight:400;max-width:860px}.hero-copy h1 em{display:block;white-space:normal}.hero-copy>p{font-size:16px;line-height:1.9;max-width:460px;font-weight:300;color:#eee9df;letter-spacing:.008em;margin-bottom:36px}.hero-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.btn{min-height:55px;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;border:1px solid transparent;padding:17px 22px;font-size:11px;text-transform:uppercase;font-weight:600;letter-spacing:.12em;transition:transform .35s var(--ease),color .3s,background .3s,border-color .3s}.btn:hover{transform:translateY(-3px)}.btn-dark{background:var(--forest);color:white}.btn-dark:hover{background:#2d5045}.btn-line{border-color:#8b9a8f;color:var(--forest);background:transparent}.btn-line:hover{background:var(--forest);color:white}.btn-light{background:#efe8da;color:var(--forest)}.hero .btn-dark{background:#f0ebe0;color:var(--forest)}.hero .btn-dark:hover{background:white}.text-link{display:inline-flex;align-items:center;gap:16px;text-transform:uppercase;font-size:11px;letter-spacing:.13em;font-weight:600;border-bottom:1px solid rgba(30,53,47,.4);padding-bottom:11px;transition:gap .4s var(--ease)}.text-link:hover{gap:25px}.text-link.light{color:#fff;border-color:rgba(255,255,255,.5)}.hero-vertical{position:absolute;right:3%;top:45%;z-index:3;writing-mode:vertical-rl;font-size:10px;letter-spacing:.25em;color:#eee3d3}.hero-scroll{position:absolute;bottom:58px;left:0;display:flex;align-items:center;gap:23px;font-size:10px;letter-spacing:.2em;text-transform:uppercase}.hero-scroll i{width:54px;height:1px;background:#ddd1bf}.booking-shell{position:relative;z-index:4;margin-top:-50px}.booking-form{display:flex;align-items:stretch;box-shadow:0 25px 75px rgba(19,45,37,.12);background:var(--cream);min-height:102px}.booking-cell{display:flex;align-items:center;gap:17px;flex:1;padding:24px 26px;border-right:1px solid var(--hair);min-width:0}.booking-cell>span{color:#9b8870}.booking-cell label{display:flex;flex-direction:column;gap:9px;text-transform:uppercase;font-size:10px;letter-spacing:.16em;font-weight:600;color:var(--muted);width:100%;min-width:0}.booking-cell input,.booking-cell select{border:0;background:transparent;color:var(--forest);font-size:14px;letter-spacing:0;font-weight:500;outline:none;width:100%;min-width:0;appearance:none;color-scheme:light}.booking-cell input::-webkit-calendar-picker-indicator{opacity:.55;cursor:pointer}.booking-submit{border:0;background:var(--forest);color:#fff;padding:0 28px;min-width:236px;display:flex;justify-content:space-between;align-items:center;gap:22px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;transition:background .25s}.booking-submit:hover{background:#2a5245}
.intro{padding-top:172px}.intro-grid{display:grid;grid-template-columns:220px 1fr;gap:40px}.intro-side{display:flex;flex-direction:column;align-items:flex-start;gap:34px}.intro-line{width:1px;height:120px;background:var(--gold);margin:8px 0 0 3px}.vertical-note{writing-mode:vertical-rl;letter-spacing:.2em;font-size:10px;color:var(--muted)}.intro-main h2{font-size:clamp(52px,6.25vw,105px);letter-spacing:-.054em;line-height:1.13;margin:0;max-width:1040px}.intro-main h2 em{color:#a27e60}.intro-under{display:flex;justify-content:space-between;align-items:end;margin-top:52px;gap:40px}.intro-under p{font-size:17px;max-width:530px;line-height:1.85;color:#6e756d;font-weight:300;margin:0}.stats-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);margin-top:95px;padding:42px 0}.stat{display:flex;align-items:center;gap:20px;flex:1}.stat>b{font-family:var(--serif);font-size:66px;font-weight:400;letter-spacing:-.06em;white-space:nowrap}.stat>b small{font-family:var(--sans);font-size:13px;letter-spacing:0;color:var(--muted)}.stat>span{color:var(--forest);text-transform:uppercase;font-size:10px;letter-spacing:.12em;line-height:1.9}.stat>span em{font-style:normal;color:var(--muted)}.stat-line{height:44px;width:1px;background:var(--hair)}
.rooms-section{background:var(--paper)}.section-heading h2{font-size:clamp(50px,5.8vw,96px);line-height:1.12;letter-spacing:-.05em;margin:24px 0 20px;max-width:1000px}.section-heading h2 em{color:#a27e60}.section-heading p{font-size:16px;line-height:1.85;max-width:620px;color:#6e756d;font-weight:300}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:70px}.room-photo-wrap{height:390px;display:block;position:relative;overflow:hidden;background:#a9ab9f}.room-photo{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.room-card:hover .room-photo{transform:scale(1.07)}.room-card-index{position:absolute;left:22px;top:21px;color:#fff;text-shadow:0 1px 5px #000;letter-spacing:.16em;font-size:10px}.room-card-arrow{position:absolute;right:18px;bottom:18px;height:46px;width:46px;display:grid;place-items:center;background:#f2efe7;color:var(--forest);transition:background .3s,color .3s}.room-card:hover .room-card-arrow{background:var(--forest);color:white}.room-card-meta{display:flex;justify-content:space-between;gap:8px;padding:23px 0;align-items:center}.room-card-meta h3{font-size:25px;letter-spacing:-.025em;margin-bottom:8px}.room-card-meta p{font-size:13px;color:#7c8176;margin:0}.room-card-meta>a{flex-shrink:0}.section-bottom{display:flex;justify-content:center;margin-top:35px}
.story-section{display:grid;grid-template-columns:53% 47%;min-height:750px;background:#e8e4da}.story-photo{position:relative;min-height:650px;background:#83938a;overflow:hidden}.story-photo img{width:100%;height:100%;object-fit:cover;position:absolute}.story-content{padding:clamp(80px,9vw,160px) clamp(45px,6vw,100px);display:flex;flex-direction:column;align-items:start;justify-content:center}.story-content h2{font-size:clamp(50px,5.3vw,87px);line-height:1.1;letter-spacing:-.052em;margin:27px 0}.story-content h2 em{color:#a27e60}.story-content>p{font-size:16px;line-height:1.85;color:#646f68;max-width:520px}.story-quote{display:flex;align-items:center;gap:17px;border-top:1px solid #c9cbc0;margin:18px 0 38px;padding-top:25px;width:100%;font-family:var(--serif);font-style:italic;font-size:18px;color:#846c58}.story-quote .brand-mark{width:35px;height:35px}
.near-section{background:var(--cream)}.near-top{display:flex;justify-content:space-between;align-items:end}.near-coord{font-size:10px;letter-spacing:.13em;color:var(--muted)}.near-grid{display:grid;grid-template-columns:53% 1fr;gap:8%;align-items:center;margin-top:60px}.near-picture{height:610px;position:relative;background:#9db9b7;overflow:hidden}.near-picture img{width:100%;height:100%;object-fit:cover}.near-picture span{position:absolute;left:25px;bottom:24px;color:white;font-size:10px;letter-spacing:.18em}.near-list{display:flex;flex-direction:column}.near-item{display:grid;grid-template-columns:30px 1fr 24px;align-items:start;gap:20px;border-bottom:1px solid var(--hair);padding:30px 0}.near-item>span{font-size:11px;color:#a58264}.near-item h3{font-size:28px;letter-spacing:-.025em;margin-bottom:9px}.near-item p{color:#7c8176;font-size:13px;margin:0}.near-list .text-link{align-self:start;margin-top:35px}.quote-section{background:var(--deep);color:#fff;text-align:center;padding:125px 0}.quote-inner{display:flex;flex-direction:column;align-items:center}.quote-inner h2{font-size:clamp(44px,5vw,82px);letter-spacing:-.04em;margin:20px 0}.quote-inner h2 em{color:#d4b394}.quote-stars{color:#d5b08b;letter-spacing:.55em;font-size:13px;margin:15px 0}.quote-inner blockquote{font-size:clamp(26px,3vw,47px);line-height:1.45;font-style:italic;max-width:920px;margin:16px auto 25px}.quote-credit{color:#a7bbb2;font-size:11px;letter-spacing:.17em;text-transform:uppercase}.quote-inner .text-link{margin-top:25px}.full-cta{min-height:630px;position:relative;display:flex;align-items:center;color:#fff;background:#253934;overflow:hidden}.full-cta-photo,.full-cta-overlay{position:absolute;inset:0}.full-cta-photo img{width:100%;height:100%;object-fit:cover}.full-cta-overlay{background:linear-gradient(90deg,rgba(8,30,29,.8),rgba(10,32,31,.2)),rgba(17,34,30,.1)}.full-cta-inner{position:relative;z-index:1;padding:95px 0}.full-cta-inner h2{font-size:clamp(62px,8vw,124px);letter-spacing:-.055em;line-height:1.05;max-width:860px;margin:22px 0}.full-cta-inner h2 em{color:#e2be9b}.full-cta-inner p{font-size:17px;color:#f5eee8;margin-bottom:32px}.full-cta-inner .btn{background:var(--cream);color:var(--forest)}
.site-footer{background:#102824;color:#e8e7dd}.footer-top{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;padding-top:105px;padding-bottom:95px}.footer-logo{font-family:var(--serif);font-size:clamp(70px,9vw,155px);line-height:1.1;letter-spacing:-.07em;margin-top:25px}.footer-logo em{color:#d1af8f}.footer-left>p{line-height:1.85;max-width:400px;color:#aebdb2;font-size:14px;margin:20px 0 33px}.footer-book{border-bottom:1px solid #8b9e94;display:inline-flex;align-items:center;gap:55px;padding-bottom:12px;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.footer-cols{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding-top:22px}.footer-cols>div{display:flex;flex-direction:column;gap:20px}.footer-label{font-size:10px;letter-spacing:.2em;color:#b79576;margin-bottom:13px}.footer-cols a{font-size:13px;line-height:1.6;color:#e1e5dd;transition:color .2s}.footer-cols a:hover{color:#cda786}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:25px 0;border-top:1px solid rgba(255,255,255,.15);font-size:10px;color:#9aada3;letter-spacing:.04em}.footer-bottom a:hover{text-decoration:underline}.back-top{position:fixed;bottom:30px;right:30px;width:54px;height:54px;background:var(--forest);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:50%;z-index:80;display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(15px);transition:opacity .35s,visibility .35s,transform .35s;box-shadow:0 7px 35px rgba(0,0,0,.1)}.back-top.show{opacity:1;visibility:visible;transform:translateY(0)}.back-top:hover{background:#33574c}.cookie-panel{position:fixed;left:25px;bottom:25px;z-index:90;background:#f8f6f0;max-width:415px;padding:20px 22px;display:flex;align-items:center;gap:20px;box-shadow:0 14px 65px rgba(0,0,0,.2);border:1px solid var(--hair);transform:translateY(150%);transition:transform .6s var(--ease)}.cookie-panel.show{transform:translateY(0)}.cookie-panel p{margin:0;color:#566158;font-size:11px;line-height:1.6}.cookie-ok{border:0;background:var(--forest);padding:11px 14px;color:white;white-space:nowrap;font-size:10px;letter-spacing:.07em}
.page-hero{height:clamp(540px,70vh,760px);position:relative;color:#fff;background:#344a45;display:flex;align-items:end;overflow:hidden}.page-hero-photo,.page-hero-tint{position:absolute;inset:0}.page-hero-photo img{width:100%;height:100%;object-fit:cover;animation:heroZoom 1.6s var(--ease) both}.page-hero-tint{background:linear-gradient(90deg,rgba(8,25,24,.82),rgba(12,40,37,.26)),linear-gradient(0deg,rgba(6,23,22,.4),transparent 60%)}.page-hero-content{position:relative;z-index:2;padding:180px 0 90px}.page-hero-content h1{font-size:clamp(63px,8vw,128px);line-height:1.05;letter-spacing:-.055em;margin:25px 0;max-width:1120px}.page-hero-content h1 em{color:#e8c49e}.page-hero-content p{font-size:17px;line-height:1.85;max-width:580px;color:#f0e9de}.page-hero-line{height:1px;width:90px;background:#dbc1a5;margin-top:34px}
.room-list{background:var(--cream)}.room-features{display:flex;flex-direction:column;gap:100px;margin-top:70px}.room-feature{display:grid;grid-template-columns:54% 1fr;gap:8%;align-items:center;scroll-margin-top:100px}.room-feature:nth-child(even){grid-template-columns:1fr 54%}.room-feature:nth-child(even) .room-feature-image{order:2}.room-feature:nth-child(even) .room-feature-body{order:1}.room-feature-image{height:570px;position:relative;background:#bcc0b5;overflow:hidden}.room-feature-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.room-feature-image:hover img{transform:scale(1.05)}.image-count{position:absolute;left:24px;bottom:24px;background:rgba(22,44,37,.85);padding:12px 17px;color:white;letter-spacing:.17em;font-size:11px}.room-feature-body h3{font-size:clamp(47px,4.8vw,79px);letter-spacing:-.05em;line-height:1.14;margin:25px 0}.room-feature-body p{font-size:16px;color:#677268;line-height:1.9;max-width:480px}.feature-chips{display:flex;flex-wrap:wrap;gap:14px 20px;margin:35px 0}.feature-chips span{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.06em;color:#657369}.feature-chips svg{width:16px;height:16px}.disclaimer{font-size:12px;line-height:1.7;color:#92988d;max-width:710px;margin:55px 0 0}.amenity-section{background:var(--paper)}.amenities-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:35px}.amenity{padding:38px;border:1px solid #d6d6cc;min-height:195px}.amenity>span{color:#b69a77}.amenity h3{font-size:23px;line-height:1.3;margin-top:35px}
.exp-intro-grid{display:grid;grid-template-columns:1fr 48%;gap:10%;align-items:center}.exp-intro-copy h2{font-size:clamp(60px,6vw,98px);letter-spacing:-.05em;line-height:1.1;margin:28px 0}.exp-intro-copy h2 em{color:#a27e60}.exp-intro-copy p{max-width:550px;color:#6b766d;line-height:1.9;font-size:16px;margin-bottom:35px}.exp-intro-photo{height:660px;overflow:hidden;background:#afb8ae}.exp-intro-photo img{width:100%;height:100%;object-fit:cover}.experience-stories{background:#eae8df}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.experience-img{height:430px;overflow:hidden;background:#879d92}.experience-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.experience-tile:hover .experience-img img{transform:scale(1.05)}.experience-text{padding:30px 5px}.experience-text h3{font-size:33px;letter-spacing:-.025em;margin:15px 0}.experience-text p{font-size:14px;color:#6d786d;line-height:1.75}.arrival{background:var(--forest);color:#fff;padding:70px 0}.arrival-inner{display:grid;grid-template-columns:1.1fr 1.3fr auto;gap:60px;align-items:center}.arrival-inner>div svg{color:#d6b28e}.arrival h2{font-size:43px;line-height:1.2;margin:15px 0 0}.arrival p{font-size:14px;color:#d4ded3;line-height:1.8}.arrival .btn{background:#efece2;color:var(--forest)}
.gallery-section{min-height:600px}.gallery-filter{display:flex;gap:27px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--hair);margin-bottom:45px}.gallery-filter button{border:0;background:none;padding:17px 0;color:#7e897e;font-size:12px;letter-spacing:.05em;border-bottom:2px solid transparent}.gallery-filter button.active{color:var(--forest);border-bottom-color:var(--gold)}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:175px;gap:18px}.gallery-item{position:relative;overflow:hidden;border:0;padding:0;background:#9aa89b;grid-column:span 4;grid-row:span 2}.gallery-item:nth-child(1){grid-column:span 7;grid-row:span 3}.gallery-item:nth-child(2){grid-column:span 5;grid-row:span 3}.gallery-item:nth-child(3){grid-column:span 4;grid-row:span 2}.gallery-item:nth-child(4){grid-column:span 4;grid-row:span 2}.gallery-item:nth-child(5){grid-column:span 4;grid-row:span 2}.gallery-item:nth-child(6){grid-column:span 12;grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease),filter .5s}.gallery-item:hover img{transform:scale(1.05);filter:brightness(.72)}.gallery-item-icon{position:absolute;top:20px;right:20px;width:43px;height:43px;border:1px solid #fff;color:#fff;display:grid;place-items:center;transition:background .3s}.gallery-item:hover .gallery-item-icon{background:rgba(0,0,0,.3)}.gallery-caption{position:absolute;bottom:22px;left:22px;color:#fff;font-size:11px;letter-spacing:.08em;text-shadow:0 1px 5px #000}.gallery-item[hidden]{display:none!important}.gallery-grid.filtered{grid-template-columns:repeat(3,1fr);grid-auto-rows:300px}.gallery-grid.filtered .gallery-item{grid-column:span 1;grid-row:span 1}.lightbox{position:fixed;inset:0;z-index:200;background:rgba(8,20,19,.96);display:none;align-items:center;justify-content:center;color:#fff}.lightbox.open{display:flex}.lightbox figure{max-width:min(82vw,1200px);max-height:80vh;margin:0;display:flex;flex-direction:column;gap:12px;align-items:center}.lightbox figure img{max-height:73vh;width:auto;max-width:100%;object-fit:contain}.lightbox figcaption{font-size:12px;color:#b7c6bd}.lightbox button{position:absolute;border:1px solid #88958c;color:white;background:none;display:grid;place-items:center;height:45px;width:45px}.lightbox-close{top:32px;right:34px}.lightbox-prev{left:3%;font-size:24px}.lightbox-next{right:3%;font-size:24px}.lightbox-count{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);font-size:11px;letter-spacing:.2em}
.contact-grid{display:grid;grid-template-columns:1fr 47%;gap:13%;align-items:start}.contact-info h2{font-size:clamp(53px,6vw,90px);line-height:1.1;letter-spacing:-.05em;margin:24px 0 50px}.contact-block{border-top:1px solid var(--hair);padding:26px 0}.contact-block>span{display:block;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#987f65;margin-bottom:14px}.contact-block>a:not(.btn){font-family:var(--serif);font-size:27px;line-height:1.4;display:inline-flex;align-items:center;gap:18px}.contact-block p{font-size:14px;color:#6c796e;line-height:1.8;max-width:400px}.contact-block .btn{margin-top:10px}.contact-photo{height:550px;background:#b1b9b2;overflow:hidden}.contact-photo img{height:100%;width:100%;object-fit:cover}.contact-aside-info{background:var(--paper);padding:35px}.contact-aside-info h3{font-size:35px;margin:15px 0}.contact-aside-info p{line-height:1.8;font-size:14px;color:#708176}.map-section{background:#eae8de;padding:100px 0}.map-grid{display:grid;grid-template-columns:1fr 55%;gap:7%;align-items:center}.map-grid h2{font-size:clamp(53px,5vw,82px);letter-spacing:-.05em;line-height:1.1;margin:24px 0}.map-grid p{font-size:15px;line-height:1.8;color:#6f7c70;max-width:400px;margin-bottom:25px}.map-art{height:480px;background:repeating-linear-gradient(45deg,transparent,transparent 14px,rgba(255,255,255,.16) 15px),#c8d2c4;position:relative;overflow:hidden;display:grid;place-items:center}.map-art:before{content:"";position:absolute;height:630px;width:630px;border:80px solid rgba(237,239,230,.4);border-radius:50%;left:-170px;top:10px}.map-art .brand-mark{width:240px;height:240px;position:relative;color:rgba(36,74,63,.15)}.map-art-top{position:absolute;top:30px;left:35px;letter-spacing:.25em;font-size:10px;color:#5b7163}.map-art-pin{display:flex;align-items:center;gap:12px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--forest);padding:16px 23px;color:white;white-space:nowrap;box-shadow:0 15px 50px rgba(0,0,0,.15)}.map-art-pin span{font-size:12px;letter-spacing:.17em}.map-art-waves{position:absolute;width:900px;height:900px;border:2px solid #b1c5b5;border-radius:50%;right:-690px;bottom:-670px}.faq-grid{display:grid;grid-template-columns:43% 1fr;gap:8%}.faq-list{border-top:1px solid var(--hair)}.faq-item{border-bottom:1px solid var(--hair)}.faq-item summary{list-style:none;cursor:pointer;padding:27px 0;font-family:var(--serif);font-size:26px;display:flex;align-items:center;justify-content:space-between;gap:15px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary svg{transition:transform .3s}.faq-item[open] summary svg{transform:rotate(45deg)}.faq-item p{color:#6b766d;line-height:1.8;font-size:14px;margin:0;padding:0 0 25px}.simple-page{padding:140px 0 50px;min-height:65vh}.simple-page h1{font-size:clamp(50px,6vw,90px);margin:22px 0}.simple-page p{line-height:1.8;max-width:700px;color:#6e786d}
.reveal{opacity:0;transform:translateY(30px);transition:opacity 1s var(--ease),transform 1s var(--ease)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
@media(max-width:1240px){.desktop-nav{gap:15px}.nav-link{font-size:10px}.header-book{gap:12px;padding:14px 12px}.brand-text strong{font-size:15px}.brand-mark{width:40px;height:40px}.stat>b{font-size:51px}.stat{gap:12px}.story-content{padding:80px 6vw}.room-photo-wrap{height:340px}}
@media(max-width:980px){.site-header{height:82px}.site-header.scrolled,.site-header.menu-open{height:72px}.desktop-nav{display:none}.menu-toggle{display:flex}.header-book{display:none}.mobile-menu-inner{padding-top:125px}.hero-copy h1{font-size:clamp(75px,10vw,110px)}.booking-cell{padding:20px 17px}.booking-submit{min-width:180px;padding:0 18px}.intro-grid{grid-template-columns:120px 1fr}.intro-main h2{font-size:clamp(50px,7vw,90px)}.stat>b{font-size:43px}.stat span{font-size:9px}.room-grid{gap:14px}.room-photo-wrap{height:270px}.room-card-meta h3{font-size:20px}.room-card-meta p{font-size:12px}.story-section{min-height:580px}.story-photo{min-height:550px}.near-grid{grid-template-columns:1fr 1fr;gap:6%}.near-picture{height:520px}.near-item{gap:12px}.near-item h3{font-size:24px}.footer-top{grid-template-columns:1fr 1fr}.room-feature{gap:6%}.room-feature-image{height:440px}.room-feature-body h3{font-size:52px}.amenity{padding:25px}.exp-intro-photo{height:520px}.experience-img{height:310px}.experience-text h3{font-size:28px}.arrival-inner{grid-template-columns:1fr 1.2fr;gap:35px}.arrival-inner .btn{grid-column:1/-1;justify-self:start}.contact-grid{gap:7%}.map-grid{gap:5%}}
@media(max-width:680px){.container{width:min(90%,570px)}.section-pad{padding:78px 0}.site-header{padding:0 5%}.brand-text strong{font-size:14px}.brand-text small{font-size:7px}.brand-mark{width:38px;height:38px}.header-actions{gap:17px}.lang-trigger{font-size:10px}.mobile-menu-inner{padding-top:115px}.mobile-menu .nav-link{font-size:clamp(38px,11.5vw,66px);padding:1px 0}.mobile-bottom{padding-top:12px}.mobile-address{display:none}.hero{min-height:725px;height:94svh;max-height:900px}.hero-photo img{object-position:47% center}.hero-img-overlay{background:linear-gradient(90deg,rgba(8,25,24,.76),rgba(7,26,25,.39)),linear-gradient(0deg,rgba(7,22,21,.47),transparent 40%)}.hero-content{align-items:center}.hero-copy{padding:100px 0 50px}.hero-copy h1{font-size:clamp(65px,14vw,90px);margin-bottom:26px}.hero-copy h1 em{display:inline}.hero-kicker{font-size:8px;letter-spacing:.19em;gap:9px}.hero-kicker .brand-mark{width:29px;height:29px}.hero-copy>p{font-size:14px;line-height:1.8;max-width:330px}.hero-links{gap:20px}.hero .btn{min-height:51px;gap:18px;font-size:10px;padding:13px 15px}.hero-links .text-link{font-size:10px}.hero-vertical{display:none}.hero-scroll{bottom:105px;font-size:9px}.booking-shell{margin-top:-48px;width:92%}.booking-form{display:grid;grid-template-columns:1fr 1fr;min-height:0}.booking-cell{padding:17px 14px;border-bottom:1px solid var(--hair);min-height:76px;gap:9px}.booking-cell:nth-child(2){border-right:0}.booking-cell:nth-child(3){border-bottom:0}.booking-cell label{font-size:9px;gap:6px}.booking-cell input,.booking-cell select{font-size:12px}.booking-cell>span svg{height:16px;width:16px}.booking-submit{grid-column:2;min-width:0;min-height:72px;padding:12px;font-size:10px;gap:8px}.booking-submit svg{height:17px;width:17px}.intro{padding-top:100px}.intro-grid{grid-template-columns:1fr;gap:20px}.intro-side{gap:0}.intro-line,.vertical-note{display:none}.intro-main h2{font-size:clamp(45px,11vw,73px)}.intro-under{margin-top:27px;display:block}.intro-under p{font-size:14px;line-height:1.8}.intro-under .btn{margin-top:25px}.stats-strip{margin-top:60px;display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:27px 0}.stat{flex-direction:column;align-items:flex-start;gap:1px}.stat>b{font-size:48px}.stat>span{font-size:9px}.stat-line{display:none}.stats-strip .stat:last-child{grid-column:1/-1;border-top:1px solid var(--hair);padding-top:18px;flex-direction:row;align-items:center}.section-heading h2{font-size:clamp(44px,10.8vw,65px);margin:15px 0}.section-heading p{font-size:14px}.room-grid{grid-template-columns:1fr;gap:25px;margin-top:33px}.room-photo-wrap{height:410px}.room-card-meta{padding:16px 0}.room-card-meta h3{font-size:24px}.room-card-meta p{font-size:13px}.section-bottom{margin-top:20px}.story-section{grid-template-columns:1fr}.story-photo{min-height:420px}.story-content{padding:70px 5%}.story-content h2{font-size:clamp(52px,11vw,70px)}.story-content>p{font-size:14px}.near-top{display:block}.near-coord{display:none}.near-grid{grid-template-columns:1fr;gap:25px;margin-top:35px}.near-picture{height:440px}.near-item{padding:22px 0}.near-item h3{font-size:25px}.quote-section{padding:82px 0}.quote-inner h2{font-size:clamp(40px,10vw,60px)}.quote-inner blockquote{font-size:26px}.full-cta{min-height:580px}.full-cta-inner{padding:85px 0}.full-cta-inner h2{font-size:clamp(60px,13vw,84px)}.full-cta-inner p{font-size:14px}.footer-top{grid-template-columns:1fr;gap:40px;padding:70px 0 55px}.footer-logo{font-size:clamp(75px,15vw,110px)}.footer-cols{gap:20px}.footer-bottom{display:flex;flex-wrap:wrap;gap:12px;font-size:9px}.footer-bottom span:last-child{width:100%}.back-top{bottom:20px;right:16px;height:48px;width:48px}.cookie-panel{bottom:16px;left:16px;right:16px;max-width:none}.page-hero{height:620px}.page-hero-content{padding:180px 0 70px}.page-hero-content h1{font-size:clamp(55px,12vw,75px)}.page-hero-content p{font-size:14px}.room-features{gap:67px;margin-top:45px}.room-feature,.room-feature:nth-child(even){display:flex;flex-direction:column;gap:30px;align-items:stretch}.room-feature:nth-child(even) .room-feature-image{order:0}.room-feature:nth-child(even) .room-feature-body{order:0}.room-feature-image{height:390px}.room-feature-body h3{font-size:clamp(44px,10.5vw,68px);margin:17px 0}.room-feature-body p{font-size:14px}.feature-chips{margin:24px 0}.amenities-grid{grid-template-columns:1fr 1fr;gap:10px}.amenity{min-height:145px;padding:19px}.amenity h3{font-size:18px;margin-top:22px}.exp-intro-grid{grid-template-columns:1fr;gap:35px}.exp-intro-copy h2{font-size:clamp(55px,11vw,78px)}.exp-intro-copy p{font-size:14px}.exp-intro-photo{height:430px}.experience-grid{grid-template-columns:1fr;gap:20px}.experience-img{height:380px}.experience-text{padding:18px 3px}.experience-text h3{font-size:30px}.arrival{padding:55px 0}.arrival-inner{grid-template-columns:1fr;gap:15px}.arrival h2{font-size:36px}.arrival .btn{grid-column:auto}.gallery-grid,.gallery-grid.filtered{grid-template-columns:1fr 1fr;grid-auto-rows:170px;gap:10px}.gallery-item,.gallery-item:nth-child(n),.gallery-grid.filtered .gallery-item{grid-column:span 1;grid-row:span 2}.gallery-item:first-child{grid-column:span 2;grid-row:span 2}.gallery-item:last-child{grid-column:span 2;grid-row:span 2}.gallery-item-icon{width:35px;height:35px;right:10px;top:10px}.gallery-item-icon svg{width:17px}.gallery-caption{font-size:9px;bottom:12px;left:12px}.gallery-filter{gap:15px}.gallery-filter button{font-size:11px}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-close{top:15px;right:15px}.contact-grid{grid-template-columns:1fr;gap:55px}.contact-info h2{font-size:56px}.contact-block>a:not(.btn){font-size:23px}.contact-photo{height:440px}.map-grid{grid-template-columns:1fr;gap:35px}.map-art{height:350px}.map-grid h2{font-size:58px}.faq-grid{grid-template-columns:1fr;gap:20px}.faq-item summary{font-size:21px}.simple-page{padding-top:120px}}
@media(max-width:400px){.hero-copy h1{font-size:60px}.room-photo-wrap{height:350px}.mobile-menu .nav-link{font-size:37px}.page-hero-content h1{font-size:54px}.booking-cell{padding:13px 10px}.booking-submit{font-size:9px}.stat>b{font-size:40px}.footer-cols a{font-size:12px}}
/* OfficialMrPro refinement: purposeful rounded edges, never generic soft cards */
.btn,.header-book{border-radius:100px}.booking-form{border-radius:15px;overflow:hidden}.room-photo-wrap,.story-photo,.near-picture,.room-feature-image,.exp-intro-photo,.experience-img,.contact-photo,.gallery-item,.map-art{border-radius:14px}.room-card-arrow,.gallery-item-icon{border-radius:50%}.amenity,.contact-aside-info{border-radius:12px}.cookie-panel{border-radius:14px}.back-top{bottom:calc(24px + env(safe-area-inset-bottom,0px));right:calc(24px + env(safe-area-inset-right,0px))}.quote-stars{display:flex;gap:8px;align-items:center}.quote-stars svg{fill:#d5b08b;stroke:#d5b08b}@media(max-width:680px){.back-top{bottom:calc(16px + env(safe-area-inset-bottom,0px));right:calc(16px + env(safe-area-inset-right,0px))}.booking-cell:nth-child(3){border-bottom:0}.booking-cell:nth-child(4){border-bottom:0}}
