:root{--forest:#18362f;--forest-2:#234a40;--cream:#f4f0e7;--paper:#fffdf8;--clay:#c36c42;--ink:#18211e;--muted:#64716c;--line:#dcd7cb;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{z-index:20;color:#fff;background:linear-gradient(#081310b3,#0000);justify-content:space-between;align-items:center;height:86px;padding:0 5vw;transition:all .25s;display:flex;position:fixed;top:0;left:0;right:0}.brand{font-family:var(--serif);align-items:center;gap:12px;font-size:1.25rem;line-height:1;display:flex}.brand small{font:600 .62rem var(--sans);letter-spacing:.16em;text-transform:uppercase;margin-top:6px;display:block}.brand-mark{width:43px;height:43px;font:700 .76rem var(--sans);letter-spacing:.08em;border:1px solid;border-radius:50%;place-items:center;display:grid}.site-header nav{align-items:center;gap:30px;font-size:.9rem;font-weight:600;display:flex}.nav-cta{border:1px solid #ffffffbf;border-radius:100px;padding:10px 18px}.menu-toggle{color:#fff;background:0 0;border:0;display:none}.hero{color:#fff;align-items:center;height:100vh;min-height:780px;display:flex;position:relative;overflow:hidden}.hero>img,.hero-overlay{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{background:linear-gradient(90deg,#0b1c18d4 0%,#0b1c184d 62%,#0b1c1826),linear-gradient(#0000 50%,#0b1c188c)}.hero-content{z-index:2;width:min(770px,90vw);margin-top:4vh;margin-left:8vw;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.2em;margin:0 0 18px;font-size:.72rem;font-weight:700}.eyebrow.dark{color:var(--clay)}h1,h2,h3{font-family:var(--serif);margin:0;line-height:1.06}h1{letter-spacing:-.045em;font-size:clamp(3.4rem,7.2vw,7.2rem)}h2{letter-spacing:-.035em;font-size:clamp(2.5rem,4.5vw,4.6rem)}.hero-content>p:not(.eyebrow){max-width:620px;margin:28px 0 34px;font-size:1.15rem}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;padding:15px 24px;font-weight:700;display:inline-flex}.button.primary{background:var(--clay);color:#fff}.button.ghost{color:#fff;background:#ffffff0d;border-color:#fff9}.button.outline{border-color:var(--forest);color:var(--forest);margin-top:24px}.hero-facts{z-index:2;background:var(--cream);color:var(--ink);gap:46px;padding:25px 5vw 25px 38px;display:flex;position:absolute;bottom:0;right:0}.hero-facts span{text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}.hero-facts b{text-transform:none;letter-spacing:0;font-size:1.08rem;display:block}.section{padding:110px 8vw}.intro{background:var(--cream);grid-template-columns:1fr 1fr;gap:10vw;display:grid}.intro .lead{color:var(--forest);margin-top:0;font-size:1.3rem}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:48px;display:flex}.section-heading>p{color:var(--muted)}.gallery-grid{grid-template-columns:2fr 1fr 1fr;grid-auto-rows:260px;gap:14px;display:grid}.gallery-item{cursor:pointer;background:#ddd;border:0;padding:0;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery-item:hover img{transform:scale(1.035)}.item-1{grid-row:span 2}.item-6{grid-column:span 2}.amenities{background:var(--forest);color:#fff}.amenities .section-heading>p{color:#b9c9c3}.amenities-grid{border-top:1px solid #fff3;border-left:1px solid #fff3;grid-template-columns:repeat(3,1fr);display:grid}.amenities-grid article{border-bottom:1px solid #fff3;border-right:1px solid #fff3;min-height:230px;padding:38px}.amenities-grid article>span{color:#94aaa2;font-size:.72rem}.amenities-grid h3{margin:24px 0 12px;font-size:1.55rem}.amenities-grid p{color:#c9d5d0;margin:0}.feature-strip{color:#d9e2de;flex-wrap:wrap;gap:18px 38px;margin-top:38px;font-size:.86rem;display:flex}.feature-strip span:before{content:"•";color:#d99a75;margin-right:10px}.stay{background:var(--cream);grid-template-columns:1.1fr .9fr;padding:0;display:grid}.stay-image{min-height:650px}.stay-image img{object-fit:cover;width:100%;height:100%}.stay-content{padding:100px 8vw}.stay-content>p:not(.eyebrow){color:var(--muted);font-size:1.05rem}.stay dl{border-top:1px solid var(--line);margin:34px 0}.stay dl div{border-bottom:1px solid var(--line);justify-content:space-between;padding:15px 0;display:flex}dt{font-weight:700}dd{color:var(--muted);margin:0}.text-link{color:var(--clay);font-weight:700}.reviews{text-align:center}.rating{justify-content:center;align-items:center;gap:20px;margin:25px 0 55px;display:flex}.rating strong{font:700 5rem var(--serif);color:var(--forest)}.rating span{text-align:left;font-weight:700}.rating small{color:var(--muted);font-weight:400}.quotes{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.quotes blockquote{background:var(--cream);font:600 1.2rem/1.55 var(--serif);margin:0;padding:35px}.location{background:#efe7d8;grid-template-columns:1fr 1fr;gap:10vw;display:grid}.location>div>p:not(.eyebrow){color:var(--muted);max-width:520px}.distances{align-content:center;display:grid}.distances div{border-bottom:1px solid #cfc5b2;justify-content:space-between;align-items:baseline;padding:25px 0;display:flex}.distances strong{font:700 2.5rem var(--serif)}.distances span{color:var(--muted)}.contact{background:var(--forest);color:#fff;grid-template-columns:.8fr 1.2fr;gap:9vw;display:grid}.contact-copy{align-self:start;position:sticky;top:120px}.contact-copy>p:not(.eyebrow){color:#c9d5d0}.contact-copy>a{color:#efb18d;margin-top:18px;display:inline-block}.contact-form{gap:18px;display:grid}.field-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.contact-form label{gap:8px;font-size:.82rem;font-weight:600;display:grid}.contact-form input,.contact-form select,.contact-form textarea{color:#fff;background:#ffffff14;border:1px solid #ffffff4d;border-radius:3px;outline:none;width:100%;padding:13px 14px}.contact-form select option{color:var(--ink)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#efb18d}.consent{color:#c9d5d0;grid-template-columns:auto 1fr;align-items:start;font-weight:400!important;display:flex!important}.consent input{width:auto;margin-top:4px}.hp{left:-9999px;position:absolute!important}.form-message{margin:0}.form-message.success{color:#aee0bd}.form-message.error{color:#ffc1b7}footer{color:#c9d5d0;background:#10251f;grid-template-columns:1fr auto auto;align-items:center;gap:36px;padding:48px 8vw;font-size:.85rem;display:grid}.footer-brand{color:#fff}.copyright{color:#8fa49c;border-top:1px solid #ffffff1f;grid-column:1/-1;padding-top:20px}.lightbox{z-index:50;background:#050e0bf2;place-items:center;padding:4vw;display:grid;position:fixed;inset:0}.lightbox img{max-width:88vw;max-height:88vh}.lightbox button{color:#fff;cursor:pointer;background:0 0;border:0;position:absolute}.lightbox-close{top:24px;right:28px}.lightbox-prev,.lightbox-next{font-size:4rem;top:50%}.lightbox-prev{left:24px}.lightbox-next{right:24px}@media (width<=900px){.site-header{height:72px}.menu-toggle{display:block}.site-header nav{background:var(--forest);flex-direction:column;align-items:stretch;padding:25px 5vw;display:none;position:absolute;top:72px;left:0;right:0}.site-header nav.open{display:flex}.hero{min-height:700px}.hero-content{margin-left:5vw}.hero-facts{justify-content:space-between;gap:24px;padding:18px 5vw;left:0}.section{padding:80px 6vw}.intro,.stay,.location,.contact{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.item-1{grid-row:span 1}.item-6{grid-column:span 1}.amenities-grid{grid-template-columns:1fr 1fr}.stay-image{min-height:480px}.stay-content{padding:70px 6vw}.quotes{grid-template-columns:1fr}.contact-copy{position:static}footer{grid-template-columns:1fr}}@media (width<=600px){h1{font-size:3.25rem}.hero-facts span:nth-child(3){display:none}.hero-content>p:not(.eyebrow){font-size:1rem}.section-heading{display:block}.gallery-grid{grid-auto-rows:190px}.amenities-grid{grid-template-columns:1fr}.amenities-grid article{min-height:auto}.field-row{grid-template-columns:1fr}.rating{align-items:start}.distances strong{font-size:2rem}.lightbox-prev{left:5px}.lightbox-next{right:5px}}@view-transition{navigation:auto}:root{--duration-exit:.15s;--duration-enter:.21s;--duration-move:.4s}@keyframes fade{0%{filter:blur(3px);opacity:0}to{filter:blur();opacity:1}}@keyframes slide{0%{translate:var(--slide-offset)}to{translate:0}}@keyframes slide-y{0%{transform:translateY(var(--slide-y-offset,10px))}to{transform:translateY(0)}}::view-transition-old(.fade-out){animation:var(--duration-exit) ease-in fade reverse}::view-transition-new(.fade-in){animation:var(--duration-enter) ease-out var(--duration-exit) both fade}::view-transition-old(.slide-down){animation:var(--duration-exit) ease-out both fade reverse, var(--duration-exit) ease-out both slide-y reverse}::view-transition-new(.slide-up){animation:var(--duration-enter) ease-in var(--duration-exit) both fade, var(--duration-move) ease-in both slide-y}::view-transition-new(.slide-from-right){--slide-offset:60px;animation:var(--duration-enter) ease-out var(--duration-exit) both fade, var(--duration-move) ease-in-out both slide}::view-transition-old(.slide-to-left){--slide-offset:-60px;animation:var(--duration-exit) ease-in both fade reverse, var(--duration-move) ease-in-out both slide reverse}::view-transition-new(.slide-from-left){--slide-offset:-60px;animation:var(--duration-enter) ease-out var(--duration-exit) both fade, var(--duration-move) ease-in-out both slide}::view-transition-old(.slide-to-right){--slide-offset:60px;animation:var(--duration-exit) ease-in both fade reverse, var(--duration-move) ease-in-out both slide reverse}::view-transition-old(.nav-forward){--slide-offset:-60px;animation:var(--duration-exit) ease-in both fade reverse, var(--duration-move) ease-in-out both slide reverse}::view-transition-new(.nav-forward){--slide-offset:60px;animation:var(--duration-enter) ease-out var(--duration-exit) both fade, var(--duration-move) ease-in-out both slide}::view-transition-old(.nav-back){--slide-offset:60px;animation:var(--duration-exit) ease-in both fade reverse, var(--duration-move) ease-in-out both slide reverse}::view-transition-new(.nav-back){--slide-offset:-60px;animation:var(--duration-enter) ease-out var(--duration-exit) both fade, var(--duration-move) ease-in-out both slide}::view-transition-group(.morph){animation-duration:var(--duration-move)}::view-transition-image-pair(.morph){animation-name:via-blur}@keyframes via-blur{30%{filter:blur(3px)}}::view-transition-group(.text-morph){animation-duration:var(--duration-move)}::view-transition-old(.text-morph){display:none}::view-transition-new(.text-morph){object-fit:none;object-position:left top;animation:none}::view-transition-old(.scale-out){animation:var(--duration-exit) ease-in scale-down}::view-transition-new(.scale-in){animation:var(--duration-enter) ease-out var(--duration-exit) both scale-up}@keyframes scale-down{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.85)}}@keyframes scale-up{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}::view-transition-old(.pixel-out){image-rendering:pixelated;animation-duration:.42s;animation-timing-function:steps(8,end);animation-fill-mode:both}::view-transition-new(.pixel-in){image-rendering:pixelated;animation-duration:.42s;animation-timing-function:steps(8,end);animation-fill-mode:both}::view-transition-old(.pixel-out){animation-name:pixel-dissolve-out}::view-transition-new(.pixel-in){animation-name:pixel-dissolve-in}@keyframes pixel-dissolve-out{0%{filter:blur()contrast();opacity:1;transform:scale(1)}45%{filter:blur(4px)contrast(1.8);opacity:.72;transform:scale(1.012)}to{filter:blur(14px)contrast(3);opacity:0;transform:scale(1.025)}}@keyframes pixel-dissolve-in{0%{filter:blur(14px)contrast(3);opacity:0;transform:scale(.975)}55%{filter:blur(4px)contrast(1.8);opacity:.72;transform:scale(.99)}to{filter:blur()contrast();opacity:1;transform:scale(1)}}::view-transition-group(persistent-nav){z-index:100;animation:none}::view-transition-old(persistent-nav){display:none}::view-transition-new(persistent-nav){animation:none}.site-header.is-scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#10251ff7;box-shadow:0 8px 30px #0a181429}.reveal-ready .reveal-target{opacity:0;transition:opacity .62s,transform .62s cubic-bezier(.2,.7,.2,1);transform:translateY(22px)}.reveal-ready .reveal-target.is-visible{opacity:1;transform:translateY(0)}.site-header a,.site-header button,.button,.gallery-item,.text-link,.faq summary{transition:color .18s,background-color .18s,border-color .18s,transform .18s,box-shadow .18s}.site-header nav>a:not(.nav-cta):hover,.site-header nav>a:not(.nav-cta):focus-visible{color:#efb18d}.nav-cta:hover,.nav-cta:focus-visible,.button:hover,.button:focus-visible{transform:translateY(-2px)}:focus-visible{outline-offset:4px;outline:3px solid #efb18d}.faq{background:#fffdf8;grid-template-columns:.8fr 1.2fr;gap:9vw;display:grid}.faq-intro>p:not(.eyebrow){color:#64716c;max-width:480px}.faq-list{border-top:1px solid #dcd7cb}.faq details{border-bottom:1px solid #dcd7cb}.faq summary{cursor:pointer;color:#18362f;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:1.6rem;font-weight:400}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{color:#64716c;margin:-4px 42px 24px 0}.rates{background:#efe7d8}.rate-columns{grid-template-columns:1fr 1fr;gap:22px;display:grid}.rate-panel{background:#fffdf8;border:1px solid #d7cebc;padding:38px}.rate-panel.accent{color:#fff;background:#18362f;border-color:#18362f}.rate-panel-title{border-bottom:1px solid #dcd7cb;justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:25px;display:flex}.rate-panel.accent .rate-panel-title{border-color:#fff3}.rate-panel-title span{color:#c36c42;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:700}.rate-panel-title strong{font-family:Playfair Display,Georgia,serif;font-size:1.3rem}.rate-row{border-bottom:1px solid #dcd7cb;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;display:flex}.rate-panel.accent .rate-row{border-color:#fff3}.rate-row h3{font-family:DM Sans,Arial,sans-serif;font-size:.95rem;line-height:1.35}.rate-row p{color:#64716c;margin:3px 0 0;font-size:.82rem}.rate-panel.accent .rate-row p{color:#b9c9c3}.rate-row>strong{white-space:nowrap;color:#18362f;font-family:Playfair Display,Georgia,serif;font-size:1.4rem}.rate-panel.accent .rate-row>strong{color:#efb18d}.rate-note{color:#64716c;margin:22px 0 0;font-size:.84rem}.rate-features{color:#d5dfdb;margin:24px 0 0;padding-left:20px}.moments{background:#fffdf8;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);align-items:center;gap:clamp(50px,7vw,110px);display:grid}.moments-copy .lead{color:var(--forest);font:600 clamp(1.2rem, 2vw, 1.55rem)/1.45 var(--serif)}.moments-copy>p:not(.eyebrow):not(.lead){color:var(--muted)}.moments-copy .text-link{margin-top:28px;display:inline-block}.moments-tags{flex-wrap:wrap;gap:9px;margin-top:28px;display:flex}.moments-tags span{border:1px solid var(--line);color:var(--forest);letter-spacing:.05em;text-transform:uppercase;border-radius:100px;padding:7px 13px;font-size:.75rem;font-weight:700}.moments-collage{grid-template-rows:repeat(4,minmax(115px,1fr));grid-template-columns:1.25fr .75fr;gap:12px;min-height:680px;display:grid}.moments-collage figure{background:var(--cream);min-width:0;margin:0;position:relative;overflow:hidden}.moments-collage .moment-main{grid-row:1/-1}.moments-collage img{object-fit:cover;width:100%;height:100%;transition:transform .6s,filter .6s}.moments-collage figure:hover img{filter:saturate(1.08);transform:scale(1.025)}.moments-collage figcaption{color:#fff;opacity:0;background:#10251fd1;padding:8px 10px;font-size:.72rem;line-height:1.35;transition:opacity .25s,transform .25s;position:absolute;bottom:12px;left:12px;right:12px;transform:translateY(8px)}.moments-collage figure:hover figcaption,.moments-collage figure:focus-within figcaption{opacity:1;transform:translateY(0)}@media (width<=900px){.moments{grid-template-columns:1fr}.moments-collage{min-height:600px}}@media (width<=600px){.moments-collage{grid-template-rows:280px 170px 170px;grid-template-columns:1fr 1fr;min-height:0}.moments-collage .moment-main{grid-area:auto/1/auto/-1}.moments-collage figcaption{opacity:1;transform:none}}.booking-policy{background:#fffdf8;grid-template-columns:repeat(3,1fr) auto;align-items:center;gap:28px;margin-top:22px;padding:28px 34px;display:grid}.booking-policy span{color:#64716c;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;display:block}.booking-policy strong{color:#18362f}.map-card{background:#dcd7cb;grid-column:1/-1;min-height:360px;margin-top:20px;display:block;position:relative;overflow:hidden}.map-card img{object-fit:cover;width:100%;height:100%;min-height:360px;transition:transform .5s}.map-card span{color:#fff;background:#18362f;padding:12px 17px;font-size:.82rem;font-weight:700;position:absolute;bottom:20px;right:20px;box-shadow:0 8px 24px #071f1538}.map-card:hover img{transform:scale(1.015)}.contact-links{gap:8px;margin-top:22px;display:grid}.contact-links a{color:#efb18d}.whatsapp-float{z-index:25;color:#fff;background:#1f8f59;border-radius:999px;align-items:center;gap:9px;padding:11px 17px 11px 11px;font-size:.82rem;font-weight:700;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 12px 35px #071f1547}.whatsapp-float>span:first-child{border:1px solid #fff9;border-radius:50%;place-items:center;width:31px;height:31px;font-size:.65rem;display:grid}.whatsapp-float:hover{background:#187c4c;transform:translateY(-3px)}.consent a{color:#efb18d;text-underline-offset:3px;text-decoration:underline}.lightbox-count{color:#fff;margin:0;font-size:.85rem;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}@media (width<=900px){.faq{grid-template-columns:1fr;gap:45px}.rate-columns{grid-template-columns:1fr}.booking-policy{grid-template-columns:repeat(3,1fr)}.booking-policy .button{grid-column:1/-1}}@media (width<=600px){.rate-panel{padding:26px 22px}.rate-panel-title,.rate-row{align-items:flex-start}.rate-panel-title{flex-direction:column}.booking-policy{grid-template-columns:1fr;padding:24px}.booking-policy .button{grid-column:auto}.whatsapp-float>span:last-child{display:none}.whatsapp-float{padding:9px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}.reveal-ready .reveal-target{opacity:1;transform:none}}.site-header{height:96px;padding-left:max(24px,3vw)}.brand-emblem{background:#fff;border:1px solid #ffffffbf;border-radius:18px;flex:0 0 78px;width:78px;height:78px;transition:width .25s,height .25s,flex-basis .25s,border-radius .25s;display:block;overflow:hidden;box-shadow:0 8px 30px #08151138}.brand-emblem img{object-fit:contain;width:100%;height:100%}.brand-copy{text-shadow:0 1px 12px #00000059}.site-header.is-scrolled .brand-emblem{border-radius:15px;flex-basis:66px;width:66px;height:66px}.site-header.is-scrolled .brand-copy{text-shadow:none}.hero{align-items:flex-start}.hero-content{margin-top:0;padding-top:clamp(150px,19vh,190px)}.footer-brand .brand-emblem{width:92px;height:92px;box-shadow:none;border-radius:20px;flex-basis:92px}@media (width<=900px){.site-header{height:76px}.brand-emblem,.site-header.is-scrolled .brand-emblem{border-radius:13px;flex-basis:60px;width:60px;height:60px}.brand-copy{font-size:1.05rem}.brand-copy small{font-size:.52rem}.site-header nav{top:76px}.hero-content{padding-top:118px}}@media (width<=430px){.brand-copy small{display:none}}.recaptcha-field{min-height:78px;overflow-x:auto}.captcha-message{margin:6px 0 0;font-size:.82rem}.captcha-message.loading{color:#c9d5d0}.captcha-message.error{color:#ffc1b7}.whatsapp-qr{z-index:18;color:#18362f;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8f5;border:1px solid #18362f29;border-radius:14px;width:178px;padding:13px;transition:transform .18s,box-shadow .18s;display:grid;position:fixed;top:106px;right:22px;box-shadow:0 12px 32px #08191433}.whatsapp-qr:hover,.whatsapp-qr:focus-visible{transform:translateY(-3px);box-shadow:0 16px 38px #08191447}.whatsapp-qr span{letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:.68rem;font-weight:800}.whatsapp-qr img{background:#fff;border-radius:8px;width:100%;padding:5px}.whatsapp-qr strong{margin-top:7px;font-size:.88rem}.whatsapp-qr small{color:#64716c;font-size:.72rem}@media (width<=1050px){.whatsapp-qr{width:144px;padding:10px;top:92px;right:14px}.whatsapp-qr span{font-size:.58rem}}@media (width<=767px){.whatsapp-qr{display:none}}
