:root{color-scheme:light;scroll-behavior:smooth;font-family:Roboto,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--md-sys-color-primary: #7c2d12;--md-sys-color-on-primary: #ffffff;--md-sys-color-primary-container: #ffdbcd;--md-sys-color-on-primary-container: #331100;--md-sys-color-surface: #fff8f5;--md-sys-color-surface-container: #f5ebe6;--md-sys-color-surface-container-high: #eee0d9;--md-sys-color-on-surface: #211a17;--md-sys-color-on-surface-variant: #5b463d;--md-sys-color-outline-variant: #ddc5ba;--md-sys-shape-corner-extra-large: 28px;--md-sys-shape-corner-full: 999px;--md-sys-motion-emphasized: cubic-bezier(.2, 0, 0, 1);--content-width: 1540px;--sunrise-y: -10vh;--sunrise-x: 52%;--rays-angle: -18deg;--terra-intensity: .12;--streak-shift: 0vh;--atmosphere-opacity: .88}*{box-sizing:border-box}body{margin:0;min-height:100%;background:#fffaf3;color:var(--md-sys-color-on-surface)}#root{position:relative;isolation:isolate;min-height:100vh}#root:before{position:fixed;inset:0;z-index:0;pointer-events:none;content:"";opacity:var(--atmosphere-opacity);background:radial-gradient(ellipse 120% 42% at 22% calc(12% + var(--streak-shift)),rgb(255 255 255 / 26%) 0%,transparent 62%),radial-gradient(ellipse 110% 34% at 76% calc(22% + var(--streak-shift)),rgb(226 155 111 / 12%) 0%,transparent 68%),radial-gradient(ellipse 120% 30% at 42% calc(70% - var(--streak-shift)),rgb(190 93 67 / 8%) 0%,transparent 70%),conic-gradient(from var(--rays-angle) at 50% -16%,rgb(255 250 243 / 0) 0deg,rgb(255 255 255 / 42%) 22deg,rgb(248 223 210 / 18%) 42deg,rgb(255 250 243 / 0) 68deg,rgb(255 244 234 / 26%) 96deg,rgb(255 250 243 / 0) 128deg,rgb(255 255 255 / 32%) 164deg,rgb(255 250 243 / 0) 212deg,rgb(255 250 243 / 0) 360deg),radial-gradient(ellipse at var(--sunrise-x) var(--sunrise-y),rgb(255 255 255 / 86%) 0%,rgb(255 244 234 / 72%) 24%,rgb(248 223 210 / 48%) 42%,rgb(226 155 111 / calc(var(--terra-intensity) * .95)) 58%,transparent 76%),radial-gradient(ellipse at 50% 54%,rgb(190 93 67 / var(--terra-intensity)) 0%,rgb(248 223 210 / calc(var(--terra-intensity) * .85)) 24%,transparent 58%),linear-gradient(180deg,#fff,#fffaf3,#fff4ea 56%,#f4eee9 82%,#f8dfd2);background-size:cover,cover,cover,cover;transform:translateZ(0)}#root>main,#root>.site-footer{position:relative;z-index:1}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--md-sys-color-primary-container);outline-offset:4px}.sr-only{position:absolute;overflow:hidden;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);white-space:nowrap}.site-nav{position:fixed;z-index:10;top:18px;left:50%;display:grid;width:min(1240px,calc(100% - 56px));min-height:64px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(10px,1.8vw,28px);border:0;border-radius:0;background:transparent;color:#fff;padding:0;transform:translate(-50%);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;transition:opacity .3s var(--md-sys-motion-emphasized),transform .3s var(--md-sys-motion-emphasized),background-color .3s var(--md-sys-motion-emphasized);will-change:transform,opacity}.site-nav--hidden{opacity:0;pointer-events:none;transform:translate(-50%,-130%)}.site-nav__brand{display:inline-flex;width:fit-content;align-items:center;color:#fffaf3f5;font-family:Nunito Sans,Roboto,Arial,sans-serif;font-size:clamp(1.3rem,1.75vw,1.9rem);font-weight:800;letter-spacing:0;line-height:1;white-space:nowrap;text-shadow:0 1px 10px rgb(0 0 0 / 22%)}.site-nav__links{display:flex;min-width:0;align-items:center;justify-self:end;justify-content:center;gap:clamp(18px,2vw,30px);padding:0}.site-nav__links a,.language-action,.site-nav__cta,.site-footer a{transition:background-color .22s var(--md-sys-motion-emphasized),color .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized)}.site-nav__links a{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--md-sys-shape-corner-full);color:#fffaf3e5;min-height:44px;padding:0;font-size:clamp(1.05rem,1.14vw,1.18rem);font-weight:700;line-height:1;white-space:nowrap;text-shadow:0 1px 9px rgb(0 0 0 / 20%)}.site-nav__links a:hover{background:transparent;color:#fff}.site-nav__links a:after{position:absolute;right:0;bottom:2px;left:0;content:"";display:block;width:100%;height:2px;margin:0;border-radius:var(--md-sys-shape-corner-full);background:#ffdbcdd6;opacity:0;transform:scaleX(.4);transition:opacity .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized)}.site-nav__links a:hover:after,.site-nav__links a:focus-visible:after{opacity:1;transform:scaleX(1)}.site-nav__links a:active,.language-action:active,.site-nav__cta:active,.site-footer__contact:active{transform:scale(.96)}.language-action{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;border-radius:var(--md-sys-shape-corner-full);font-size:.9rem;font-weight:850;line-height:1;white-space:nowrap}.language-action--header{min-width:54px;padding:0 10px;background:transparent;color:#fffaf3eb;text-shadow:0 1px 9px rgb(0 0 0 / 20%)}.language-action--header:hover,.language-action--header:focus-visible{background:#fffaf32b;color:#fff}.language-action--header span{color:inherit;font-size:inherit;letter-spacing:0}.site-nav__actions{display:flex;align-items:center;justify-self:end;gap:clamp(8px,1vw,14px)}.site-nav__cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:56px;border-radius:var(--md-sys-shape-corner-full);background:#ffdbcdeb;color:var(--md-sys-color-on-primary-container);padding:0 22px;font-size:1.02rem;font-weight:800;white-space:nowrap;box-shadow:0 1px #ffffff61 inset,0 8px 18px #803f251a}.site-nav__cta:hover,.site-footer__contact:hover{transform:translateY(-2px)}.consent-banner{position:fixed;z-index:30;right:clamp(14px,3vw,34px);bottom:clamp(14px,3vw,34px);display:grid;width:min(520px,calc(100% - 28px));grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;border:1px solid rgb(91 70 61 / 12%);border-radius:22px;background:#fffaf3f5;color:var(--md-sys-color-on-surface);padding:18px;box-shadow:0 20px 56px #321f1733;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.consent-banner strong{display:block;margin-bottom:4px;font-size:1rem}.consent-banner p{margin:0;color:var(--md-sys-color-on-surface-variant);font-size:.84rem;line-height:1.45}.consent-banner__actions{display:flex;gap:8px}.consent-banner .button{min-height:44px;padding:0 16px;font-size:.82rem}.consent-banner .button--outlined{background:transparent;color:var(--md-sys-color-on-surface);box-shadow:0 0 0 1px #5b463d2e inset;-webkit-backdrop-filter:none;backdrop-filter:none}.section-rail{position:fixed;z-index:9;top:50%;right:clamp(16px,2.2vw,30px);display:grid;gap:12px;border-radius:var(--md-sys-shape-corner-full);background:#fff8f5c7;padding:12px;opacity:0;pointer-events:none;transform:translate(18px,-50%);-webkit-backdrop-filter:blur(18px) saturate(1.14);backdrop-filter:blur(18px) saturate(1.14);box-shadow:0 1px #ffffffb8 inset,0 18px 44px #39251b24;transition:opacity .26s var(--md-sys-motion-emphasized),transform .26s var(--md-sys-motion-emphasized)}.section-rail--visible{opacity:1;pointer-events:auto;transform:translateY(-50%)}.section-rail a{position:relative;display:grid;width:44px;height:44px;place-items:center;border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-surface-variant);transition:background-color .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized)}.section-rail a:before{content:"";width:10px;height:10px;border-radius:var(--md-sys-shape-corner-full);background:currentColor;opacity:.58;transition:height .22s var(--md-sys-motion-emphasized),opacity .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized)}.section-rail a:hover,.section-rail a.is-active{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.section-rail a.is-active:before{height:24px;opacity:1}.section-rail a:active{transform:scale(.96)}.section-rail span{position:absolute;right:calc(100% + 10px);width:max-content;max-width:180px;border-radius:var(--md-sys-shape-corner-full);background:#211a17e0;color:#fff;padding:8px 11px;font-size:.85rem;font-weight:800;opacity:0;transform:translate(8px);pointer-events:none;transition:opacity .18s var(--md-sys-motion-emphasized),transform .18s var(--md-sys-motion-emphasized)}.section-rail a:hover span,.section-rail a:focus-visible span{opacity:1;transform:translate(0)}.hero{position:relative;min-height:100svh;overflow:hidden;isolation:isolate;background:transparent}.hero__scrim{position:absolute;inset:0;z-index:-2;background:transparent}.hero__content{position:relative;z-index:1;display:grid;min-height:100svh;grid-template-rows:minmax(0,1fr) auto;align-items:center;gap:0;padding:0}.hero__intro{max-width:min(980px,92vw);justify-self:center;color:#fff;text-align:center}.eyebrow{color:#ffffffb8;font-size:.88rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.hero h1{margin:14px 0 0;font-size:clamp(2.7rem,5.4vw,5.25rem);font-weight:700;letter-spacing:0;line-height:.96;text-wrap:balance}.hero__intro p{max-width:760px;margin:20px auto 0;color:#ffffffc7;font-size:clamp(1.04rem,1.7vw,1.3rem);line-height:1.5;text-wrap:pretty}.button,.icon-button,.season-node{font:inherit;cursor:pointer}.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--md-sys-shape-corner-full);font-weight:700;transition:transform .25s var(--md-sys-motion-emphasized),background-color .25s var(--md-sys-motion-emphasized)}.button:hover,.icon-button:hover{transform:translateY(-2px)}.button:active,.icon-button:active{transform:scale(.96)}.button{min-height:62px;padding:0 32px;font-size:clamp(1rem,1.3vw,1.14rem);letter-spacing:0}.button--filled{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.button--outlined{box-shadow:0 0 0 1px #ffffff75 inset;background:#ffffff1a;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.button--form{gap:10px;width:fit-content}.icon-button{width:68px;height:68px;background:#fff8f5f0;color:var(--md-sys-color-on-surface);box-shadow:0 1px #fffc inset,0 14px 32px #0000002e}.seasonal-hero{position:relative;display:grid;min-height:100svh;overflow:hidden;border-radius:0;background:var(--md-sys-color-surface-container);box-shadow:none}.seasonal-hero:after{position:absolute;right:0;bottom:0;left:0;z-index:2;height:clamp(160px,22vh,240px);background:linear-gradient(180deg,#fffaf300,#fffaf3b8 62%,#fffaf3);content:"";pointer-events:none}.seasonal-hero__media,.seasonal-hero__media img,.seasonal-hero__scrim,.seasonal-hero__copy,.season-timeline{grid-area:1 / 1}.seasonal-hero__media{position:relative;overflow:hidden}.seasonal-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.018);transition:opacity .46s var(--md-sys-motion-emphasized),transform .56s var(--md-sys-motion-emphasized)}.seasonal-hero__media img.is-active{opacity:1;transform:scale(1)}.seasonal-hero__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgb(12 9 7 / 18%) 0%,transparent 16%),linear-gradient(90deg,rgb(15 12 10 / 74%) 0%,rgb(15 12 10 / 52%) 26%,rgb(15 12 10 / 18%) 56%,transparent 84%),linear-gradient(180deg,rgb(255 255 255 / 18%) 0%,transparent 24%,rgb(15 12 10 / 20%) 64%,rgb(15 12 10 / 64%) 100%)}.seasonal-hero__copy{position:relative;z-index:2;display:grid;width:min(900px,62%);align-content:start;justify-items:start;gap:clamp(12px,1.15vw,18px);padding:clamp(146px,17vh,220px) clamp(56px,6vw,180px) clamp(220px,27vh,310px);color:#fff;animation:heroContentIn .36s var(--md-sys-motion-emphasized)}.seasonal-hero__season{display:inline-flex;min-height:0;align-items:center;border-radius:0;background:transparent;color:#fff6f0eb;padding:0;font-size:clamp(.92rem,1.05vw,1.14rem);font-weight:800;text-transform:uppercase;-webkit-backdrop-filter:none;backdrop-filter:none}.seasonal-hero__copy h1{max-width:880px;margin:0;font-size:clamp(3.15rem,4.75vw,5.35rem);font-weight:700;letter-spacing:0;line-height:.96;text-wrap:balance}.seasonal-hero__copy p{max-width:640px;margin:0;color:#ffffffe0;font-size:clamp(1.08rem,1.25vw,1.38rem);line-height:1.42;text-wrap:pretty}.seasonal-hero__temperature{display:inline-flex;align-items:center;gap:12px;margin-top:4px;padding-top:6px;font-weight:800;text-transform:none}.seasonal-hero__temperature span{color:#ffffffd6;font-size:clamp(1rem,1.25vw,1.18rem);font-weight:700}.seasonal-hero__temperature strong{font-size:clamp(2.9rem,4.1vw,4.6rem);line-height:.9;font-variant-numeric:tabular-nums}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:6px}.season-timeline{position:relative;z-index:3;align-self:end;justify-self:center;width:min(92%,1500px);margin-bottom:clamp(18px,3vh,34px);overflow:hidden;border-radius:24px;background:#f9eee7d6;padding:16px clamp(34px,5.2vw,76px) 18px;box-shadow:0 12px 28px #3e261c14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);touch-action:pan-y}.season-timeline__track{position:absolute;top:84px;right:clamp(80px,10vw,164px);left:clamp(80px,10vw,164px);height:1px;overflow:hidden;border-radius:var(--md-sys-shape-corner-full);background:#5b463d1f}.season-timeline__track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#be5d43,#e29b6f);transition:width .36s var(--md-sys-motion-emphasized)}.season-timeline__items{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,4vw,78px)}.season-node{position:relative;display:grid;min-height:112px;grid-template-columns:minmax(0,1fr);grid-template-rows:36px 50px 24px;align-items:center;justify-items:center;gap:6px;border:0;border-radius:20px;background:transparent;color:var(--md-sys-color-on-surface-variant);padding:0 8px;text-align:center;transition:transform .32s var(--md-sys-motion-emphasized),color .32s var(--md-sys-motion-emphasized)}.season-node:before{position:absolute;top:68px;left:50%;z-index:2;width:11px;height:11px;border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-primary);content:"";opacity:0;transform:translate(-50%,-50%) scale(.65);transition:opacity .26s var(--md-sys-motion-emphasized),transform .26s var(--md-sys-motion-emphasized)}.season-node:hover{color:var(--md-sys-color-on-surface)}.season-node:active{transform:scale(.96)}.season-node.is-active{color:var(--md-sys-color-on-primary-container);transform:none}.season-node.is-active:before{opacity:1;transform:translate(-50%,-50%) scale(1)}.season-node__thumb{display:block;width:44px;height:44px;overflow:hidden;border-radius:var(--md-sys-shape-corner-full);background:#f9eee7eb;outline:1px solid rgb(0 0 0 / 8%);outline-offset:0;transition:width .32s var(--md-sys-motion-emphasized),height .32s var(--md-sys-motion-emphasized),opacity .32s var(--md-sys-motion-emphasized),outline-color .32s var(--md-sys-motion-emphasized),filter .32s var(--md-sys-motion-emphasized)}.season-node.is-active .season-node__thumb{width:52px;height:52px;outline-color:#be5d4338}.season-node__thumb img{width:100%;height:100%;object-fit:cover;opacity:.86;filter:saturate(.9);transition:opacity .32s var(--md-sys-motion-emphasized),filter .32s var(--md-sys-motion-emphasized)}.season-node.is-active .season-node__thumb img{opacity:1;filter:saturate(1.02)}.season-node__copy{display:grid;gap:3px;min-width:0;justify-items:center}.season-node__copy span{color:#211a17b8;font-size:clamp(.74rem,.8vw,.88rem);font-weight:850;line-height:1.1;text-transform:uppercase;white-space:nowrap}.season-node__copy small{color:#5b463d94;font-size:clamp(.7rem,.74vw,.8rem);font-weight:700;line-height:1.1;white-space:nowrap}.season-node.is-active .season-node__copy span{color:var(--md-sys-color-on-surface)}.season-node.is-active .season-node__copy small{color:#5b463dc7}.season-node__temperature{justify-self:center}.season-node__temperature strong{color:#7c2d1294;font-size:clamp(.98rem,1.05vw,1.14rem);line-height:1;font-variant-numeric:tabular-nums}.season-node.is-active .season-node__temperature strong{color:var(--md-sys-color-primary)}.season-timeline__hint{display:none}@media(min-width:1500px)and (min-height:920px){.seasonal-hero__copy{width:min(980px,56%);padding:clamp(170px,18.5vh,250px) clamp(96px,6.2vw,220px) clamp(250px,29vh,370px)}.seasonal-hero__copy h1{max-width:920px;font-size:clamp(4.35rem,4.35vw,5.95rem)}.seasonal-hero__copy p{max-width:680px}.season-timeline{width:min(78%,2100px);margin-bottom:clamp(28px,4vh,56px);padding:22px clamp(48px,5vw,110px) 24px}.season-timeline__track{top:102px;right:clamp(96px,8vw,190px);left:clamp(96px,8vw,190px)}.season-node{min-height:138px;grid-template-rows:42px 62px 28px;gap:6px}.season-node:before{top:82px;width:12px;height:12px}.season-node__thumb{width:52px;height:52px}.season-node.is-active .season-node__thumb{width:64px;height:64px}.season-node__copy span{font-size:clamp(.82rem,.72vw,.96rem)}.season-node__copy small{font-size:clamp(.76rem,.66vw,.86rem)}.season-node__temperature strong{font-size:clamp(1.08rem,.96vw,1.24rem)}}@keyframes heroContentIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(min-width:900px)and (max-height:900px){.seasonal-hero{min-height:100svh}.seasonal-hero__copy{width:min(920px,64%);gap:10px;padding-top:clamp(104px,13vh,132px);padding-bottom:clamp(190px,24vh,240px)}.seasonal-hero__season{font-size:clamp(.82rem,.92vw,1rem)}.seasonal-hero__copy h1{max-width:900px;font-size:clamp(2.9rem,4.35vw,4.55rem);line-height:.98}.seasonal-hero__copy p{max-width:620px;font-size:clamp(1rem,1.08vw,1.18rem);line-height:1.36}.seasonal-hero__temperature{gap:10px;margin-top:2px;padding-top:2px}.seasonal-hero__temperature strong{font-size:clamp(2.55rem,3.5vw,3.8rem)}.seasonal-hero__temperature span{font-size:clamp(.92rem,1vw,1.05rem)}.hero-actions{gap:12px;margin-top:4px}.hero-actions .button{min-height:54px;padding-inline:28px}.season-timeline{width:min(91%,1420px);margin-bottom:14px;padding-top:12px;padding-bottom:14px}.season-timeline__track{top:78px}.season-node{min-height:104px;grid-template-rows:34px 46px 22px;gap:4px}.season-node:before{top:63px}.season-node__thumb{width:40px;height:40px}.season-node.is-active .season-node__thumb{width:48px;height:48px}}.page-section{content-visibility:auto;contain-intrinsic-size:900px;display:grid;gap:clamp(22px,3.4vw,42px);padding:clamp(56px,6.8vw,92px) clamp(18px,5vw,72px);background:transparent}.page-section--muted{background:transparent}.section__heading{display:grid;width:min(var(--content-width),100%);margin:0 auto;gap:14px}.section__heading[id]{scroll-margin-top:92px}.section__kicker{display:inline-flex;width:fit-content;align-items:center;gap:9px;border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);padding:9px 14px;font-size:.9rem;font-weight:800;box-shadow:0 1px #ffffff6b inset}.section__heading h2{margin:0;color:var(--md-sys-color-on-surface);max-width:1120px;font-size:clamp(2.25rem,4.2vw,4.45rem);font-weight:800;letter-spacing:0;line-height:.98;text-wrap:balance}.section-lead{width:min(var(--content-width),100%);margin:-28px auto 4px;color:var(--md-sys-color-on-surface-variant);font-size:clamp(1.18rem,1.45vw,1.55rem);line-height:1.56;text-wrap:pretty}.section-lead{padding-right:min(520px,34vw)}[data-section=vue-ensemble] .section__heading,[data-section=vue-ensemble] .section-lead,[data-section=vue-ensemble] .overview-shell,[data-section=vue-ensemble] .overview-faq{width:min(var(--content-width),100%);max-width:none}[data-section=vue-ensemble] .section-lead{padding-right:min(520px,34vw)}[data-section=disponibilites]{content-visibility:visible;contain-intrinsic-size:auto}.overview-shell,.booking-shell,.gallery-shell,.reviews-shell{width:min(var(--content-width),100%);margin:0 auto}.overview-shell,.booking-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.78fr);align-items:stretch;gap:clamp(26px,3.4vw,44px)}[data-section=vue-ensemble] .overview-shell{grid-template-columns:minmax(0,1.55fr) minmax(460px,.9fr)}.media-slot,.copy-slot,.calendar-slot,.booking-form,.photo-slot,.review-slot{border-radius:var(--md-sys-shape-corner-extra-large);background:#ffffff8f;box-shadow:0 0 0 1px #00000014,0 18px 48px #39251b14}.media-slot{display:grid;min-height:clamp(320px,48vw,560px);place-items:center;color:var(--md-sys-color-primary);background:linear-gradient(135deg,rgb(124 45 18 / 12%),transparent 54%),var(--md-sys-color-surface-container-high);transition:box-shadow .26s var(--md-sys-motion-emphasized),transform .26s var(--md-sys-motion-emphasized)}.media-slot:hover{transform:translateY(-3px);box-shadow:0 0 0 1px #00000014,0 24px 64px #39251b1f}.video-panel,.overview-copy,.content-panel,.amenity-card,.availability-panel,.review-card{border-radius:var(--md-sys-shape-corner-extra-large);background:#fff9;box-shadow:0 0 0 1px #00000014,0 18px 48px #39251b14}.video-panel{position:relative;display:grid;min-height:clamp(440px,48vw,600px);overflow:hidden;background:var(--md-sys-color-surface-container-high)}.overview-video,.media-hint,.video-panel__shade{grid-area:1 / 1}.overview-video{width:100%;height:100%;min-height:inherit;object-fit:cover}.video-panel__shade{z-index:1;align-self:end;height:42%;background:linear-gradient(180deg,transparent,rgb(31 24 21 / 34%) 58%,rgb(31 24 21 / 46%));pointer-events:none}.video-panel--ready .media-hint{opacity:0;pointer-events:none}.media-hint{z-index:3;display:grid;place-items:center;align-content:center;gap:14px;color:var(--md-sys-color-primary);padding:32px;text-align:center;transition:opacity .26s var(--md-sys-motion-emphasized),transform .26s var(--md-sys-motion-emphasized)}.media-hint span{max-width:300px;color:var(--md-sys-color-on-surface-variant);font-size:.95rem;font-weight:800;line-height:1.35}.overview-copy,.content-panel,.amenity-card,.review-card{padding:clamp(24px,3vw,36px)}.overview-copy{display:grid;align-self:stretch;align-content:start;gap:clamp(26px,3vw,38px);padding:clamp(34px,4vw,48px)}.overview-label{width:fit-content;border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);padding:9px 14px;font-size:.86rem;font-weight:900}.overview-copy h3,.content-panel h3,.amenity-card h3,.booking-form h3,.review-card h3{margin:0;color:var(--md-sys-color-on-surface);font-size:clamp(1.25rem,1.8vw,1.75rem);line-height:1.12;text-wrap:balance}.overview-copy h3{display:flex;align-items:center;gap:12px;color:#a55f3f;font-size:clamp(1rem,1.35vw,1.18rem);font-weight:900;letter-spacing:.18em;line-height:1.2;text-transform:uppercase}.overview-copy h3 svg{flex:0 0 auto;stroke-width:2.3}.overview-copy p,.content-panel p,.booking-form p,.review-card p,.section-intro p{margin:0;color:var(--md-sys-color-on-surface-variant);font-size:clamp(1rem,1.25vw,1.13rem);line-height:1.62;text-wrap:pretty}.fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,18px)}.fact-card{display:grid;grid-template-rows:24px auto 2.7em;min-height:clamp(144px,15vw,166px);align-content:center;align-items:center;justify-items:center;gap:8px;border-radius:24px;background:#ffdbcdc7;color:var(--md-sys-color-on-primary-container);padding:20px 14px;box-shadow:none}.fact-card svg{color:#8a442a;stroke-width:2.25}.fact-card strong{color:var(--md-sys-color-on-surface);font-size:clamp(2.5rem,4.5vw,3.5rem);font-weight:900;line-height:1;font-variant-numeric:tabular-nums}.fact-card span{max-width:86px;color:#4b2c20;font-size:clamp(.86rem,1vw,1rem);font-weight:900;line-height:1.32;text-align:center;align-self:start}.comfort-list{display:grid;gap:14px;margin:8px 0 0;padding:0;list-style:none}.comfort-list li{display:flex;min-height:54px;align-items:center;gap:16px;border-radius:20px;background:#f5ebe6c2;color:#201714;padding:0 22px;font-size:clamp(1rem,1.35vw,1.18rem);font-weight:800}.comfort-list svg{flex:0 0 auto;color:#201714;stroke-width:2.25}.overview-proof{display:flex;align-items:center;gap:12px;border-radius:var(--md-sys-shape-corner-full);background:#7c2d1214;color:var(--md-sys-color-on-surface);padding:14px 16px;font-weight:900}.overview-proof svg{color:var(--md-sys-color-primary);flex:0 0 auto}.feature-list,.content-panel ul,.amenity-card ul{display:grid;gap:10px;margin:0;padding-left:1.1rem;color:var(--md-sys-color-on-surface-variant);line-height:1.48}.feature-list--compact{display:flex;flex-wrap:wrap;gap:10px;padding:0;list-style:none}.feature-list--compact li{border-radius:var(--md-sys-shape-corner-full);background:#7c2d1214;color:var(--md-sys-color-on-surface);padding:10px 13px;font-size:.92rem;font-weight:800}.details-grid,.amenities-grid{display:grid;width:min(1120px,100%);margin:0 auto;gap:clamp(16px,2vw,24px)}.overview-faq{display:grid;margin:0 auto;grid-template-columns:minmax(280px,.42fr) minmax(0,.58fr);gap:clamp(28px,4vw,64px);border-radius:var(--md-sys-shape-corner-extra-large);background:linear-gradient(135deg,#ffffffdb,#fff8f5b8),var(--md-sys-color-surface);padding:clamp(30px,4.8vw,58px);box-shadow:0 0 0 1px #7c2d121a,0 24px 70px #39251b1a}.overview-faq__intro{display:grid;align-content:start;gap:18px;padding-top:6px}.overview-faq__intro h3{margin:0;color:var(--md-sys-color-on-surface);font-size:clamp(1.85rem,3vw,3.15rem);font-weight:900;line-height:.98;text-wrap:balance}.faq-list{display:grid;gap:14px}.faq-list details{border-radius:24px;background:#ffffffc7;box-shadow:0 0 0 1px #7c2d1214,0 10px 26px #39251b0d;overflow:hidden;transition:background-color .26s var(--md-sys-motion-emphasized),box-shadow .26s var(--md-sys-motion-emphasized),transform .26s var(--md-sys-motion-emphasized)}.faq-list details:hover,.faq-list details[open]{background:#fffffff0;box-shadow:0 0 0 1px #7c2d1224,0 18px 42px #39251b17}.faq-list details[open]{transform:translateY(-1px)}.faq-list summary{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;gap:18px;cursor:pointer;color:var(--md-sys-color-on-surface);font-size:clamp(1rem,1.15vw,1.14rem);font-weight:900;list-style:none;padding:21px 24px;transition:color .22s var(--md-sys-motion-emphasized)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"";width:10px;height:10px;justify-self:center;border-right:2px solid currentColor;border-bottom:2px solid currentColor;color:var(--md-sys-color-primary);transform:rotate(45deg) translateY(-2px);transition:transform .26s var(--md-sys-motion-emphasized)}.faq-list details[open] summary:after{transform:rotate(225deg) translate(-2px,-2px)}.faq-list p{margin:0;color:var(--md-sys-color-on-surface-variant);font-size:clamp(.98rem,1.05vw,1.08rem);line-height:1.45;padding:0 72px 22px 24px;text-wrap:pretty}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.amenities-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.content-panel,.amenity-card,.review-card{display:grid;align-content:start;gap:16px}.content-panel--feature{grid-template-columns:auto minmax(0,1fr);gap:14px 18px}.content-panel--feature>svg{grid-row:span 2;color:var(--md-sys-color-primary)}.content-panel--feature h3,.content-panel--feature p,.content-panel--feature ul{min-width:0}.amenity-card svg,.review-card svg{color:var(--md-sys-color-primary)}.reveal-on-scroll{opacity:0;transform:translateY(28px);filter:blur(6px);transition:opacity .56s var(--md-sys-motion-emphasized),transform .56s var(--md-sys-motion-emphasized),filter .56s var(--md-sys-motion-emphasized);transition-delay:var(--reveal-delay, 0ms)}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0);filter:blur(0)}.copy-slot{display:grid;align-content:center;gap:18px;padding:clamp(28px,4vw,48px)}.copy-slot span,.review-slot span{display:block;height:14px;border-radius:var(--md-sys-shape-corner-full);background:#5b463d26}.copy-slot span:nth-child(1){width:82%}.copy-slot span:nth-child(2){width:94%}.copy-slot span:nth-child(3){width:76%}.copy-slot span:nth-child(4){width:58%}.section-intro{display:grid;width:min(var(--content-width),100%);margin:0 auto;gap:10px}.section-intro p{max-width:760px;margin:0}.section-intro span{color:var(--md-sys-color-primary);font-size:.95rem;font-weight:800}.gallery-bento{position:relative;display:grid;width:min(var(--content-width),100%);margin:0 auto;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(5,minmax(132px,13vw));gap:clamp(12px,1.5vw,18px)}.gallery-card{position:relative;display:block;overflow:hidden;border:0;border-radius:32px;background:#211a1714;color:#fff;padding:0;text-align:left;animation:galleryCardIn .56s var(--md-sys-motion-emphasized) both;transition:box-shadow .26s var(--md-sys-motion-emphasized),transform .26s var(--md-sys-motion-emphasized)}.gallery-card:nth-child(2){animation-delay:80ms}.gallery-card:nth-child(3){animation-delay:.13s}.gallery-card:nth-child(4){animation-delay:.18s}.gallery-card:nth-child(5){animation-delay:.23s}.gallery-card:nth-child(6){animation-delay:.28s}.gallery-card:nth-child(7){animation-delay:.33s}.gallery-card:nth-child(8){animation-delay:.38s}.gallery-card:nth-child(9){animation-delay:.43s}.gallery-card:nth-child(10){animation-delay:.48s}.gallery-card:before{position:absolute;inset:0;z-index:1;background:transparent;content:"";pointer-events:none}.gallery-card img{width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform .52s var(--md-sys-motion-emphasized)}.gallery-card__label{position:absolute;right:24px;bottom:22px;left:24px;z-index:2;color:#fff;font-size:clamp(1rem,1.15vw,1.18rem);font-weight:850;letter-spacing:0;line-height:1.1;text-shadow:0 1px 18px rgb(0 0 0 / 36%)}.gallery-card:hover{transform:translateY(-4px);box-shadow:0 26px 64px #39251b24}.gallery-card:hover img{transform:scale(1.055)}.gallery-card--pool{grid-column:1 / span 4;grid-row:1 / span 2}.gallery-card--living{grid-column:5 / span 2;grid-row:1}.gallery-card--kitchen{grid-column:5 / span 2;grid-row:2}.gallery-card--terrace{grid-column:1 / span 2;grid-row:3}.gallery-card--view{grid-column:3 / span 2;grid-row:3}.gallery-card--outside{grid-column:1 / span 2;grid-row:4}.gallery-card--dining{grid-column:3 / span 2;grid-row:4}.gallery-card--bedroom{grid-column:5 / span 2;grid-row:3 / span 2}.gallery-card--pavilion{grid-column:1 / span 3;grid-row:5}.gallery-card--bathroom{grid-column:4 / span 3;grid-row:5}.gallery-open-all{position:absolute;right:clamp(18px,2vw,28px);bottom:clamp(18px,2vw,28px);z-index:4;display:inline-flex;min-height:54px;align-items:center;justify-content:center;gap:10px;border:0;border-radius:var(--md-sys-shape-corner-full);background:#fffaf3f0;color:var(--md-sys-color-on-surface);padding:0 22px;font-weight:850;box-shadow:0 18px 44px #211a172e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:background-color .24s var(--md-sys-motion-emphasized),transform .24s var(--md-sys-motion-emphasized),box-shadow .24s var(--md-sys-motion-emphasized)}.gallery-open-all:hover{transform:translateY(-2px);background:#fff;box-shadow:0 22px 54px #211a1733}.gallery-lightbox{position:fixed;inset:0;z-index:80;display:block;overflow:hidden;background:#130f0d;animation:galleryFadeIn .24s var(--md-sys-motion-emphasized) both}.gallery-lightbox__backdrop{position:fixed;inset:0;border:0;background:transparent}.gallery-lightbox__panel{position:fixed;inset:0;z-index:1;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:100svh;padding:clamp(16px,2vw,28px);animation:galleryPanelIn .32s var(--md-sys-motion-emphasized) both}.gallery-lightbox__panel:before{position:absolute;inset:-32px;z-index:-1;background:linear-gradient(180deg,#0000008a,#00000029 34%,#0000007f),var(--active-gallery-image) center / cover;content:"";filter:blur(28px) saturate(.95);transform:scale(1.04)}.gallery-lightbox__topbar{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff}.gallery-lightbox__topbar div{display:grid;gap:3px}.gallery-lightbox__topbar strong{font-size:clamp(1.1rem,1.8vw,1.6rem);font-weight:850}.gallery-lightbox__topbar span{color:#ffffffad;font-size:.92rem;font-weight:750}.gallery-lightbox__topbar button,.gallery-lightbox__nav{display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;border:0;border-radius:var(--md-sys-shape-corner-full);background:#fffaf324;color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:background-color .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized)}.gallery-lightbox__topbar button:hover,.gallery-lightbox__nav:hover{background:#fffaf33d;transform:scale(1.04)}.gallery-lightbox__figure{position:relative;display:grid;place-items:center;margin:0;min-height:0;overflow:hidden;border-radius:0;background:var(--active-gallery-image) center / contain no-repeat}.gallery-lightbox__figure img{width:100%;height:100%;min-height:0;object-fit:contain;object-position:center;animation:galleryImageIn .28s var(--md-sys-motion-emphasized) both}.gallery-lightbox__figure figcaption{position:absolute;bottom:clamp(18px,2vw,28px);left:clamp(18px,2vw,28px);border-radius:var(--md-sys-shape-corner-full);background:#130f0d57;color:#fff;padding:10px 16px;font-size:.92rem;font-weight:800;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.gallery-lightbox__nav{position:absolute;top:50%;z-index:2;transform:translateY(-50%)}.gallery-lightbox__nav:hover{transform:translateY(-50%) scale(1.04)}.gallery-lightbox__nav--prev{left:18px}.gallery-lightbox__nav--next{right:18px}.gallery-lightbox__thumbs{position:relative;z-index:3;display:flex;justify-content:center;gap:10px;overflow-x:auto;padding:14px 2px 2px;scrollbar-width:thin}.gallery-lightbox__thumbs button{flex:0 0 92px;width:92px;height:66px;overflow:hidden;border:0;border-radius:18px;background:#fffaf31f;padding:0;opacity:.62;transition:opacity .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized),box-shadow .22s var(--md-sys-motion-emphasized)}.gallery-lightbox__thumbs button.is-active{opacity:1;box-shadow:0 0 0 3px #e29b6fe0,0 12px 34px #00000047}.gallery-lightbox__thumbs button:hover{opacity:.9;transform:translateY(-2px)}.gallery-lightbox__thumbs img{width:100%;height:100%;object-fit:cover}@keyframes galleryFadeIn{0%{opacity:0}to{opacity:1}}@keyframes galleryCardIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes galleryPanelIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes galleryImageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.calendar-slot{min-height:520px;background:linear-gradient(var(--md-sys-color-outline-variant) 1px,transparent 1px),linear-gradient(90deg,var(--md-sys-color-outline-variant) 1px,transparent 1px),#fff9;background-size:100% 74px,calc(100% / 7) 100%}.availability-panel{display:grid;overflow:hidden}.availability-panel .calendar-slot{border-radius:0;box-shadow:none}.booking-form{display:grid;align-content:start;gap:18px;padding:clamp(24px,4vw,36px)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.booking-form label{display:grid;gap:9px;color:var(--md-sys-color-on-surface-variant);font-size:.94rem;font-weight:800}.booking-form input,.booking-form textarea{width:100%;border:1px solid var(--md-sys-color-outline-variant);border-radius:18px;background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font:inherit;min-height:56px;padding:16px 18px;outline:none;transition:border-color .22s var(--md-sys-motion-emphasized),box-shadow .22s var(--md-sys-motion-emphasized)}.site-footer a{color:var(--md-sys-color-primary);font-weight:900}.booking-form input:focus,.booking-form textarea:focus{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 4px #7c2d121f}.booking-shell--planner{grid-template-columns:minmax(0,1.48fr) minmax(390px,.82fr);align-items:start;gap:0;border-radius:30px;background:#ffffffc2;box-shadow:0 0 0 1px #5b463d17,0 18px 42px #39251b0f;overflow:clip}.booking-calendar-panel,.booking-summary-card,.booking-form--expanded{background:transparent;box-shadow:none}.booking-calendar-panel{display:grid;min-height:720px;gap:clamp(24px,2.8vw,42px);padding:clamp(26px,3vw,42px)}.booking-calendar-panel__top,.booking-total,.guest-row{display:flex;align-items:center;justify-content:space-between;gap:18px}.booking-calendar-panel__top{min-height:48px}.booking-calendar-actions{display:inline-flex;align-items:center;gap:10px}.booking-calendar-actions button{display:inline-flex;min-width:48px;min-height:48px;align-items:center;justify-content:center;border:1px solid rgb(91 70 61 / 14%);border-radius:12px;background:#ffffffb8;color:var(--md-sys-color-on-surface);padding:0 18px;font-weight:850;transition:background-color .22s var(--md-sys-motion-emphasized),border-color .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized)}.booking-calendar-actions button:not(:disabled):hover{border-color:#7c2d123d;background:#fffaf3;transform:translateY(-1px)}.booking-calendar-actions button:disabled{color:#5b463d52;cursor:not-allowed;opacity:.52}.availability-legend{display:flex;flex-wrap:wrap;gap:clamp(16px,2vw,28px)}.availability-legend span{display:inline-flex;min-height:32px;align-items:center;gap:10px;color:var(--md-sys-color-on-surface);font-size:.92rem;font-weight:760}.legend-dot{width:10px;height:10px;border-radius:var(--md-sys-shape-corner-full)}.legend-dot--available{background:#2f7d5f}.legend-dot--selected{background:#be5d43}.legend-dot--unavailable{background:#d6d2cf}.booking-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,4.5vw,62px);align-self:start}.booking-month{display:grid;align-content:start;gap:clamp(18px,2vw,26px);min-width:0}.booking-month h4{margin:0;color:var(--md-sys-color-on-surface);font-size:clamp(1.12rem,1.25vw,1.38rem);font-weight:900;text-align:center}.booking-weekdays,.booking-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.booking-weekdays{margin-bottom:8px}.booking-weekdays span{color:#211a17ad;font-size:.78rem;font-weight:800;text-align:center}.booking-days{row-gap:18px}.booking-day{position:relative;display:grid;min-width:0;min-height:72px;align-content:center;justify-items:center;gap:8px;border:0;border-radius:0;background:transparent;color:var(--md-sys-color-on-surface);padding:6px 1px;box-shadow:none;transition:background-color .24s var(--md-sys-motion-emphasized),color .24s var(--md-sys-motion-emphasized),transform .24s var(--md-sys-motion-emphasized)}.booking-day span{display:grid;width:42px;height:42px;place-items:center;border-radius:var(--md-sys-shape-corner-full);font-size:1.02rem;font-weight:850;line-height:1;transition:background-color .24s var(--md-sys-motion-emphasized),color .24s var(--md-sys-motion-emphasized),box-shadow .24s var(--md-sys-motion-emphasized)}.booking-day small{color:#1f7356;font-size:.68rem;font-weight:850;line-height:1}.booking-day:not(.booking-day--empty,.is-unavailable):hover span{background:#ffdbcd8f}.booking-day--empty{pointer-events:none;opacity:0}.booking-day.is-unavailable{color:#5b463d8c;cursor:not-allowed}.booking-day.is-unavailable span{background:#5b463d14;color:#5b463d99}.booking-day.is-unavailable small{display:none}.booking-day.is-previewed,.booking-day.is-selected{background:#ffdbcd94;color:#8f3d29}.booking-day.is-previewed:not(.is-start,.is-end) span,.booking-day.is-selected:not(.is-start,.is-end) span{color:#9d4632}.booking-day.is-previewed small,.booking-day.is-selected small{color:#5b463dc7}.booking-day.is-start{border-radius:var(--md-sys-shape-corner-full) 0 0 var(--md-sys-shape-corner-full)}.booking-day.is-end{border-radius:0 var(--md-sys-shape-corner-full) var(--md-sys-shape-corner-full) 0}.booking-day.is-start.is-end,.booking-day.is-pending-start{border-radius:var(--md-sys-shape-corner-full)}.booking-day.is-pending-start{background:transparent}.booking-day.is-start span,.booking-day.is-end span{background:linear-gradient(145deg,#c95d3f,#9f3f2a);color:#fff;box-shadow:0 8px 18px #be5d433d}.booking-day.is-start small,.booking-day.is-end small{color:#1f7356}.booking-calendar-note{display:inline-flex;width:fit-content;max-width:100%;align-items:center;gap:10px;align-self:end;margin:0;border:1px solid rgb(91 70 61 / 13%);border-radius:12px;background:#ffffff8a;color:var(--md-sys-color-on-surface-variant);padding:12px 14px;font-size:.86rem;font-weight:760}.booking-calendar-note:before{display:grid;width:20px;height:20px;flex:0 0 auto;place-items:center;border:1px solid currentColor;border-radius:var(--md-sys-shape-corner-full);content:"i";font-size:.78rem;font-weight:900}.booking-summary-panel{display:grid;min-height:100%}.booking-summary-card{position:sticky;top:96px;display:grid;gap:18px;min-height:720px;border-left:1px solid rgb(91 70 61 / 9%);background:linear-gradient(145deg,#ffffffdb,#fffaf3b8),#fffaf3;padding:clamp(28px,3vw,42px)}.booking-summary-card__header{display:grid;gap:24px}.booking-summary-card__header h3{margin:0;color:var(--md-sys-color-on-surface);font-size:clamp(1.36rem,1.6vw,1.7rem);font-weight:950;line-height:1.1}.booking-stay-lines{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:18px}.booking-stay-lines div{display:grid;grid-template-columns:50px minmax(0,1fr);grid-template-rows:auto auto;align-items:start;column-gap:12px;row-gap:6px}.booking-stay-lines div+div{border-left:1px solid rgb(91 70 61 / 13%);padding-left:18px}.booking-stay-icon{display:grid;width:44px;height:44px;grid-column:1;grid-row:span 2;align-self:center;place-items:center;border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-primary-container);color:var(--md-sys-color-primary)}.booking-stay-lines span:not(.booking-stay-icon){grid-column:2;grid-row:1;align-self:end;color:var(--md-sys-color-on-surface-variant);font-size:.8rem;font-weight:760;line-height:1.15}.booking-stay-lines strong{grid-column:2;grid-row:2;align-self:start;overflow:hidden;color:var(--md-sys-color-on-surface);font-size:.88rem;font-weight:900;line-height:1.3;text-overflow:ellipsis}.guest-controls,.price-breakdown{display:grid;gap:0;border:1px solid rgb(91 70 61 / 13%);border-radius:16px;background:#ffffff7f;overflow:hidden}.guest-row{min-height:62px;padding:12px 16px}.guest-row+.guest-row,.price-line+.price-line{border-top:1px solid rgb(91 70 61 / 10%)}.guest-row__label{display:inline-flex;min-width:0;align-items:center;gap:14px}.guest-row__label svg{flex:0 0 auto;color:var(--md-sys-color-on-surface)}.guest-row strong{color:var(--md-sys-color-on-surface);font-size:.98rem;font-weight:860}.guest-row span{margin-left:6px;color:var(--md-sys-color-on-surface-variant);font-size:.82rem;font-weight:720}.stepper{display:inline-flex;align-items:center;gap:10px}.stepper button{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid rgb(190 93 67 / 22%);border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-primary-container);color:var(--md-sys-color-primary)}.stepper>strong{min-width:24px;text-align:center}.price-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:14px 16px}.price-line>div{display:flex;min-width:0;flex-wrap:wrap;gap:4px 6px;align-items:baseline}.price-line>div strong,.booking-total span{color:var(--md-sys-color-on-surface);font-size:.92rem;font-weight:860;line-height:1.25}.price-line span{color:#5b463dad;font-size:.82rem;font-weight:720;line-height:1.25}.price-line>strong{color:var(--md-sys-color-on-surface);font-variant-numeric:tabular-nums;font-size:.98rem;font-weight:900;line-height:1.2;text-align:right;white-space:nowrap}.booking-total{margin-top:-18px;padding:10px 16px 0}.booking-total strong{color:var(--md-sys-color-primary);font-variant-numeric:tabular-nums;font-size:clamp(2rem,2.9vw,2.58rem);font-weight:850;letter-spacing:0;line-height:1;white-space:nowrap}.booking-notice,.booking-status{margin:0;border-radius:14px;background:#ffdbcd7a;color:var(--md-sys-color-on-primary-container);padding:10px 12px;font-size:.85rem;font-weight:760;line-height:1.35}.booking-form--expanded{display:grid;gap:10px;padding:0;animation:galleryPanelIn .32s var(--md-sys-motion-emphasized) both}.booking-form--expanded h3{margin:0 0 2px;font-size:.98rem;font-weight:900}.booking-form--expanded label{position:relative;gap:0}.booking-form--expanded .form-trap{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap;pointer-events:none}.booking-form--expanded .form-grid{gap:10px}.booking-form--expanded input,.booking-form--expanded textarea{min-height:46px;border-color:#5b463d29;border-radius:11px;background:#ffffff9e;padding:11px 13px;font-size:.9rem}.booking-form--expanded textarea{min-height:86px;resize:vertical}.booking-form--expanded .button--form{min-height:58px;margin-top:14px;border-radius:var(--md-sys-shape-corner-full);background:linear-gradient(135deg,#d05f3b,#aa442d);color:#fff;box-shadow:0 14px 28px #be5d432e}.booking-form--expanded .button--form:disabled{cursor:progress;opacity:.68;transform:none}.reviews-shell{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(var(--content-width),100%);margin:0 auto;gap:clamp(18px,2vw,28px)}.reviews-lead{width:min(var(--content-width),100%);margin:-28px auto 0;color:var(--md-sys-color-on-surface-variant);font-size:clamp(1.08rem,1.25vw,1.32rem);line-height:1.55;text-wrap:pretty}.review-card{position:relative;display:grid;min-height:270px;align-content:space-between;gap:clamp(28px,3vw,42px);border-radius:28px;background:linear-gradient(145deg,#ffffffe0,#fff8f5b8),var(--md-sys-color-surface);padding:clamp(28px,3.2vw,42px);box-shadow:0 0 0 1px #7c2d1214,0 18px 46px #39251b12;overflow:hidden;transition:box-shadow .26s var(--md-sys-motion-emphasized),transform .26s var(--md-sys-motion-emphasized)}.review-card:hover{transform:translateY(-3px);box-shadow:0 0 0 1px #7c2d121f,0 24px 62px #39251b1a}.review-card:before{content:"“";position:absolute;top:18px;right:28px;color:#7c2d121a;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.8rem,4.6vw,5.2rem);font-weight:700;line-height:1;pointer-events:none}.review-card p{position:relative;z-index:1;color:var(--md-sys-color-on-surface);font-size:clamp(.98rem,.96vw,1.05rem);font-weight:650;line-height:1.62}.review-card footer{position:relative;z-index:1;display:grid;gap:5px}.review-card footer strong{color:var(--md-sys-color-on-surface);font-size:1rem;font-weight:900}.review-card footer span{color:var(--md-sys-color-on-surface-variant);font-size:.92rem;font-weight:800}.review-slot{display:grid;gap:16px;min-height:220px;align-content:start;color:var(--md-sys-color-primary);padding:28px;transition:box-shadow .26s var(--md-sys-motion-emphasized),transform .26s var(--md-sys-motion-emphasized)}.review-slot span:nth-child(2){width:76%}.review-slot span:nth-child(3){width:92%}.review-slot span:nth-child(4){width:64%}.review-form-trigger{display:flex;justify-content:center;width:min(var(--content-width),100%);margin:clamp(32px,4vw,52px) auto 0}.review-form-open-btn{display:inline-flex;align-items:center;gap:10px;min-height:58px;padding:0 32px;border-radius:var(--md-sys-shape-corner-full);background:linear-gradient(135deg,#d05f3b,#aa442d);color:#fff;font-size:clamp(1rem,1.1vw,1.1rem);font-weight:750;box-shadow:0 1px #ffffff38 inset,0 14px 32px #aa442d38;transition:transform .25s var(--md-sys-motion-emphasized),box-shadow .25s var(--md-sys-motion-emphasized),background-color .25s var(--md-sys-motion-emphasized)}.review-form-open-btn:hover{transform:translateY(-2px);box-shadow:0 1px #ffffff38 inset,0 20px 42px #aa442d47}.review-form-open-btn:active{transform:scale(.97)}.review-form-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:clamp(16px,4vw,48px);background:#211a1785;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:reviewOverlayIn .22s var(--md-sys-motion-emphasized) both}@keyframes reviewOverlayIn{0%{opacity:0}to{opacity:1}}.review-form-dialog{position:relative;display:flex;flex-direction:column;width:min(680px,100%);margin:0;max-height:calc(100dvh - (clamp(16px,4vw,48px)*2));gap:clamp(18px,2vw,24px);overflow-y:auto;border-radius:28px;background:linear-gradient(145deg,#fffffff5,#fff8f5eb),var(--md-sys-color-surface);padding:clamp(24px,4vw,42px);box-shadow:0 0 0 1px #7c2d1214,0 28px 72px #321f1747;animation:galleryPanelIn .28s var(--md-sys-motion-emphasized) both}.review-form-dialog:focus,.review-form-dialog:focus-visible{outline:none}.review-form-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.review-form-dialog__header h3{margin:0 0 4px;color:var(--md-sys-color-on-surface);font-size:clamp(1.28rem,1.6vw,1.5rem);font-weight:850;line-height:1.2}.review-form-dialog__header p{margin:0;color:var(--md-sys-color-on-surface-variant);font-size:.92rem;line-height:1.4}.review-form-close{display:inline-flex;flex-shrink:0;width:44px;height:44px;align-items:center;justify-content:center;border:0;border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface-variant);cursor:pointer;font:inherit;transition:background-color .2s var(--md-sys-motion-emphasized),transform .2s var(--md-sys-motion-emphasized)}.review-form-close:hover{background:var(--md-sys-color-surface-container-high);transform:scale(1.06)}.review-form-close:active{transform:scale(.94)}.review-form-status{margin:0;border-radius:14px;padding:14px 18px;font-size:.92rem;font-weight:760;line-height:1.45}.review-form-status--success{background:#228a221a;color:#1a6b1a;border:1px solid rgb(34 138 34 / 18%)}.review-form-status--error{background:#7c2d1214;color:var(--md-sys-color-primary);border:1px solid rgb(124 45 18 / 14%)}.review-form,.review-form__row{display:grid;gap:clamp(14px,1.8vw,20px)}.review-form__field{display:grid;gap:6px}.review-form__field label:not(.review-form__consent-label),.review-form__field-label{color:var(--md-sys-color-on-surface);font-size:.9rem;font-weight:800;line-height:1.2}.review-form__field input:not([type=checkbox]),.review-form__field select,.review-form__field textarea{width:100%;min-height:48px;border:1px solid rgb(91 70 61 / 18%);border-radius:12px;background:#ffffffb8;color:var(--md-sys-color-on-surface);padding:11px 14px;font:inherit;font-size:.95rem;line-height:1.4;transition:border-color .2s var(--md-sys-motion-emphasized),box-shadow .2s var(--md-sys-motion-emphasized)}.review-form__field select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%237c2d12' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'></polyline></svg>");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:36px}.review-form__field input:not([type=checkbox]):focus,.review-form__field select:focus,.review-form__field textarea:focus{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 3px #7c2d121f;outline:none}.review-form__field input[aria-invalid=true],.review-form__field select[aria-invalid=true],.review-form__field textarea[aria-invalid=true]{border-color:#c0392b;box-shadow:0 0 0 2px #c0392b1a}.review-form__select-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.review-form__select-wrapper{position:relative}.review-form__field textarea{min-height:120px;resize:vertical}.review-form__field-note{color:var(--md-sys-color-on-surface-variant);font-size:.8rem;font-weight:680;line-height:1.4}.review-form__error{display:flex;align-items:center;gap:4px;color:#c0392b;font-size:.82rem;font-weight:760;line-height:1.3}.review-form__error:before{content:"⚠";font-size:.75rem;flex-shrink:0}.review-form__counter{color:var(--md-sys-color-on-surface-variant);font-size:.78rem;font-weight:680;text-align:right}.review-form__counter--over{color:#c0392b;font-weight:800}.review-form__field--checkbox{gap:8px}.review-form__consent-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.review-form__consent-label input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:var(--md-sys-color-primary);cursor:pointer}.review-form__consent-label span{color:var(--md-sys-color-on-surface);font-size:.88rem;font-weight:680;line-height:1.45}.review-form__submit{justify-self:start;gap:10px;min-height:54px;padding:0 28px;border-radius:var(--md-sys-shape-corner-full);background:linear-gradient(135deg,#d05f3b,#aa442d);color:#fff;font-size:1rem;font-weight:760;box-shadow:0 1px #ffffff2e inset,0 12px 28px #aa442d33}.review-form__submit:disabled{cursor:progress;opacity:.68;transform:none;box-shadow:none}.review-form__spinner{animation:reviewSpinnerRotate .9s linear infinite}@keyframes reviewSpinnerRotate{to{transform:rotate(360deg)}}.review-form__honeypot{position:absolute;overflow:hidden;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);white-space:nowrap;pointer-events:none}.site-footer{position:relative;display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,auto) auto;align-items:center;gap:clamp(24px,4vw,56px);overflow:hidden;background:radial-gradient(circle at 18% 0%,rgb(226 155 111 / 24%),transparent 34%),linear-gradient(135deg,#251b17,#17110f 72%);color:#fff;padding:clamp(40px,5.5vw,72px) clamp(18px,5vw,72px);box-shadow:0 -1px #ffffff17 inset}.site-footer:before{position:absolute;inset:0;background:linear-gradient(90deg,rgb(255 255 255 / 7%) 1px,transparent 1px),linear-gradient(180deg,rgb(255 255 255 / 5%) 1px,transparent 1px);background-size:120px 120px;content:"";-webkit-mask-image:linear-gradient(90deg,black,transparent 72%);mask-image:linear-gradient(90deg,black,transparent 72%);opacity:.34;pointer-events:none}.site-footer>*{position:relative;z-index:1}.site-footer__brand{display:grid;gap:8px;max-width:520px}.site-footer strong{color:#fff;font-size:clamp(1.42rem,2.4vw,2.3rem);font-weight:850;line-height:1}.site-footer span{color:#ffdbcdd1;font-size:.92rem;font-weight:800;text-transform:uppercase}.site-footer p{max-width:420px;margin:4px 0 0;color:#ffffffad;font-size:clamp(.98rem,1.1vw,1.08rem);line-height:1.5}.site-footer a{color:#ffffffb8;font-size:.94rem}.site-footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.site-footer nav a{border-radius:var(--md-sys-shape-corner-full);background:#ffffff12;padding:10px 14px;font-weight:800;transition:background-color .22s var(--md-sys-motion-emphasized),color .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized)}.site-footer a:hover{color:#fff}.site-footer nav a:hover{background:#ffffff21;transform:translateY(-1px)}.site-footer__contact{display:inline-flex;min-height:54px;align-items:center;justify-content:center;gap:10px;border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)!important;padding:0 20px;font-weight:900;white-space:nowrap;box-shadow:0 18px 44px #00000038;transition:background-color .22s var(--md-sys-motion-emphasized),transform .22s var(--md-sys-motion-emphasized),box-shadow .22s var(--md-sys-motion-emphasized)}.site-footer__listing{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:0 4px;white-space:nowrap}.site-footer__marketplaces{display:grid;gap:2px}.site-footer__listing:hover{transform:translateY(-1px)}.site-footer__contact:hover{background:#ffd5c7;transform:translateY(-2px);box-shadow:0 24px 54px #00000042}.site-footer__actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.language-action--footer{padding:0 12px;background:#ffffff12;color:#ffffffc7!important}.language-action--footer:hover,.language-action--footer:focus-visible{background:#ffffff21;color:#fff!important}.language-action--footer span{color:inherit;font-size:inherit;text-transform:none}@media(max-width:980px){.site-nav{top:14px;width:min(780px,calc(100% - 28px));grid-template-columns:1fr auto;gap:10px 16px;padding:0}.site-nav:after{content:none;position:absolute;right:0;bottom:0;width:38px;height:56px;border-radius:0 24px 24px 0;background:linear-gradient(90deg,transparent,rgb(128 63 37 / 28%));pointer-events:none}.site-nav__links{grid-column:1 / -1;grid-row:2;justify-content:flex-start;justify-self:start;gap:18px;overflow-x:auto;padding:0;scrollbar-width:none}.site-nav__links::-webkit-scrollbar{display:none}.site-nav__links a{min-height:42px;padding:0;font-size:1rem}.site-nav__brand{font-size:clamp(1.8rem,5vw,2.45rem)}.site-nav__cta{min-height:50px;padding:0 18px}.hero__content{grid-template-rows:auto auto;padding:0}.seasonal-hero{min-height:100svh;border-radius:0}.seasonal-hero__copy{width:min(620px,72%);padding:144px 40px 300px}.season-timeline{width:min(94%,980px);padding:20px 24px 22px}.season-timeline__track{top:96px;right:64px;left:64px}.season-timeline__items{gap:14px}.season-node{min-height:126px;grid-template-columns:minmax(0,1fr);grid-template-rows:42px 54px 28px;gap:8px;text-align:center}.season-node__thumb{width:48px;height:48px}.season-node.is-active .season-node__thumb{width:54px;height:54px}.season-node__temperature{grid-column:auto;justify-self:center}.overview-shell,.booking-shell,.details-grid,.amenities-grid,.overview-faq{grid-template-columns:1fr}.reviews-shell{grid-template-columns:repeat(2,minmax(0,1fr))}[data-section=vue-ensemble] .overview-shell{grid-template-columns:1fr}[data-section=vue-ensemble] .section-lead{padding-right:0}.gallery-bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}.gallery-card{min-height:clamp(240px,38vw,380px)}.gallery-card--pool,.gallery-card--living,.gallery-card--kitchen,.gallery-card--terrace,.gallery-card--view,.gallery-card--outside,.gallery-card--dining,.gallery-card--bedroom,.gallery-card--pavilion,.gallery-card--bathroom{grid-column:auto;grid-row:auto}.gallery-card--pool,.gallery-card--bedroom,.gallery-card--pavilion{grid-column:span 2;min-height:clamp(320px,48vw,460px)}.site-footer{grid-template-columns:1fr;align-items:start;gap:22px}.site-footer nav{justify-content:flex-start}.site-footer__contact{width:fit-content}.site-footer__actions{justify-content:flex-start}.booking-shell--planner{grid-template-columns:1fr}.booking-summary-card{position:static}}.admin-page{position:relative;z-index:1;min-height:100vh;padding:clamp(32px,5vw,72px) 20px;color:var(--md-sys-color-on-surface)}.admin-shell,.admin-login{width:min(1180px,100%);margin:0 auto;border:1px solid rgb(124 45 18 / 10%);border-radius:32px;background:#fffaf3db;box-shadow:0 18px 60px #3d1f141a;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.admin-shell{padding:clamp(22px,3vw,38px)}.admin-shell--narrow,.admin-login{width:min(480px,100%)}.admin-login{display:grid;gap:18px;padding:clamp(26px,4vw,44px)}.admin-login h1,.admin-topbar h1{margin:0;color:var(--md-sys-color-on-surface);font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:0}.admin-login p,.admin-topbar p,.admin-muted{margin:0;color:var(--md-sys-color-on-surface-variant);line-height:1.55}.admin-login label,.admin-panel label{display:grid;gap:8px;color:var(--md-sys-color-on-surface-variant);font-size:.92rem;font-weight:800}.admin-login input,.admin-season-card input,.admin-panel input{width:100%;min-height:52px;border:1px solid rgb(124 45 18 / 16%);border-radius:16px;padding:0 14px;background:#ffffffc7;color:var(--md-sys-color-on-surface);font:inherit;font-weight:700}.admin-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:28px}.admin-topbar>div:first-child{display:grid;gap:14px;max-width:720px}.admin-topbar__actions{position:relative;display:flex;align-items:center;gap:12px}.admin-topbar__actions .button{min-height:50px;padding:0 22px;font-size:.96rem}.admin-topbar__actions .button--outlined{border:1px solid rgb(124 45 18 / 16%);background:#ffffff85;color:var(--md-sys-color-on-surface);box-shadow:none}.admin-topbar__actions .button:disabled{cursor:wait;opacity:.62;transform:none}.admin-account-menu{position:relative}.admin-menu-button{display:inline-grid;place-items:center;width:50px;height:50px;border:1px solid rgb(124 45 18 / 12%);border-radius:999px;background:#ffffff94;color:var(--md-sys-color-on-surface);cursor:pointer;transition:background-color .18s var(--md-sys-motion-emphasized),border-color .18s var(--md-sys-motion-emphasized),transform .18s var(--md-sys-motion-emphasized)}.admin-menu-button:hover{border-color:#7c2d1233;background:#fffaf3eb;transform:translateY(-1px)}.admin-menu-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:5;min-width:180px;border:1px solid rgb(124 45 18 / 10%);border-radius:18px;padding:8px;background:#fffaf3f5;box-shadow:0 18px 42px #3d1f1424}.admin-menu-popover button{width:100%;min-height:42px;border:0;border-radius:12px;padding:0 12px;background:transparent;color:var(--md-sys-color-on-surface);font:inherit;font-weight:800;text-align:left;cursor:pointer}.admin-menu-popover button:hover{background:#7c2d1212}.admin-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:20px;align-items:start}.admin-panel{display:grid;gap:18px;border:1px solid rgb(124 45 18 / 9%);border-radius:26px;padding:20px;background:#ffffffa8}.admin-panel--summary{position:sticky;top:20px}.admin-panel__header{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-panel h2,.admin-coverage h3{margin:0;color:var(--md-sys-color-on-surface);letter-spacing:0}.admin-panel h2{font-size:1.25rem}.admin-add-button,.admin-icon-button,.admin-month-toggle{border:0;font:inherit;cursor:pointer}.admin-add-button:disabled,.admin-icon-button:disabled,.admin-month-toggle:disabled,.admin-season-card input:disabled,.admin-panel input:disabled{cursor:wait;opacity:.64}.admin-add-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;border-radius:999px;padding:0 16px;background:#ffdbcdc2;color:var(--md-sys-color-on-primary-container);font-weight:800}.admin-season-list{display:grid;gap:14px}.admin-season-card{display:grid;gap:18px;border:1px solid rgb(124 45 18 / 10%);border-radius:22px;padding:18px;background:#fffaf3b8}.admin-season-card__fields{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,190px) 44px;gap:14px;align-items:end}.admin-price-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;color:var(--md-sys-color-on-surface);font-weight:900}.admin-icon-button{width:44px;height:44px;border-radius:999px;background:#7c2d1214;color:var(--md-sys-color-primary)}.admin-month-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.admin-month-toggle{min-height:42px;border:1px solid rgb(124 45 18 / 10%);border-radius:999px;background:#ffffffbd;color:var(--md-sys-color-on-surface-variant);font-size:.9rem;font-weight:850;transition:transform .18s var(--md-sys-motion-emphasized),background-color .18s var(--md-sys-motion-emphasized),color .18s var(--md-sys-motion-emphasized)}.admin-month-toggle:hover{transform:translateY(-1px);background:#ffdbcd7f}.admin-month-toggle.is-active{border-color:transparent;background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.admin-month-toggle.is-duplicated{background:#b3261e;color:#fff}.admin-coverage{display:grid;gap:8px;border-radius:20px;padding:16px;background:#f5ebe6b8}.admin-updated-at{display:grid;gap:4px;border-top:1px solid rgb(124 45 18 / 10%);padding-top:14px}.admin-updated-at span{color:var(--md-sys-color-on-surface-variant);font-size:.82rem;font-weight:800}.admin-updated-at strong{color:var(--md-sys-color-on-surface);font-size:.95rem}.admin-coverage p,.admin-save-state,.admin-status,.admin-error,.admin-warning{margin:0;line-height:1.45}.admin-save-state,.admin-status,.admin-error{border-radius:18px;padding:14px 16px;font-weight:800}.admin-save-state{background:#f5ebe6d6;color:var(--md-sys-color-on-surface)}.admin-status{background:#e2f6ecd6;color:#0b5d43}.admin-error,.admin-warning{color:#8f1d18}.admin-error{background:#ffdad6bd}@media(min-width:640px){.review-form__row{grid-template-columns:1fr 1fr}}@media(max-width:639px){.review-form-overlay{align-items:stretch;justify-content:flex-start;padding:12px}.review-form-dialog{width:100%;max-height:calc(100dvh - 24px);border-radius:20px;padding:20px}.review-form__row{grid-template-columns:1fr}}@media(max-width:420px){.review-form-overlay{padding:10px}.review-form-dialog{max-height:calc(100dvh - 20px);border-radius:16px}.review-form-open-btn{width:100%;justify-content:center}}@media(max-width:920px){.admin-topbar{display:grid}.admin-layout{grid-template-columns:1fr}.admin-panel--summary{position:static}}@media(max-width:620px){.admin-page{padding:16px}.admin-shell,.admin-login{border-radius:24px}.admin-topbar__actions,.admin-panel__header{align-items:stretch}.admin-topbar__actions{display:grid;grid-template-columns:minmax(0,1fr) 50px}.admin-panel__header{display:grid;grid-template-columns:1fr}.admin-topbar__actions .button,.admin-add-button{width:100%}.admin-season-card__fields{grid-template-columns:1fr}.admin-icon-button{justify-self:end}.admin-month-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.booking-months{grid-template-columns:minmax(0,1fr)}.booking-months .booking-month:nth-child(n+2){display:none}}@media(max-width:560px){.site-nav{top:10px;left:12px;width:auto;min-height:54px;right:12px;width:calc(100% - 24px);grid-template-columns:minmax(0,1fr) auto;gap:6px;background:transparent;padding:0;transform:none}.site-nav--hidden{transform:translateY(-130%)}.site-nav__brand{width:100%;min-width:0;max-width:100%;overflow:hidden;font-size:clamp(1.1rem,5vw,1.25rem);text-overflow:ellipsis}.site-nav__links,.site-nav:after{display:none}.site-nav__cta{min-height:46px;gap:7px;border-radius:var(--md-sys-shape-corner-full);padding:0 13px;font-size:.84rem}.language-action--header{min-width:44px;padding:0 8px}.site-nav__actions{gap:4px}.hero__content{padding:0}.seasonal-hero{min-height:100svh;border-radius:0}.seasonal-hero__copy{width:100%;justify-items:center;gap:12px;padding:clamp(136px,18svh,168px) 20px clamp(206px,25svh,236px);text-align:center}.seasonal-hero__copy h1{max-width:9.6em;font-size:clamp(2.25rem,10.2vw,3.08rem);line-height:1}.seasonal-hero__copy p{max-width:31ch;font-size:clamp(.94rem,3.65vw,1.02rem);line-height:1.42}.seasonal-hero__temperature{gap:9px;justify-content:center;margin-top:2px;padding-top:2px}.seasonal-hero__temperature svg{width:20px;height:20px}.seasonal-hero__temperature strong{font-size:clamp(2.45rem,11vw,3.55rem)}.seasonal-hero__temperature span{font-size:clamp(.9rem,3.5vw,1rem)}.season-timeline{width:calc(100% - 16px);overflow-x:auto;border-radius:22px;padding:12px 10px 14px;margin-bottom:10px;scroll-padding-inline:10px;scrollbar-width:none;touch-action:pan-x pan-y}.season-timeline::-webkit-scrollbar{display:none}.season-timeline__track{display:none}.season-timeline__items{display:flex;width:max-content;min-width:100%;scroll-snap-type:x mandatory}.season-node{width:126px;min-height:108px;grid-template-columns:1fr;grid-template-rows:34px 46px 24px;gap:4px;justify-items:center;text-align:center;flex:0 0 126px;scroll-snap-align:center}.season-node:before{top:58px;left:50%;transform:translate(-50%,-50%) scale(.65);transform-origin:center}.season-node.is-active:before{transform:translate(-50%,-50%) scale(1)}.season-node__thumb,.season-node.is-active .season-node__thumb{width:42px;height:42px}.season-node.is-active .season-node__thumb{width:46px;height:46px}.season-node__copy span{font-size:.72rem}.season-node__copy small{font-size:.68rem}.season-node__temperature strong{font-size:.96rem}.season-node__temperature{grid-column:auto;justify-self:center}.season-node.is-active{transform:none}.season-timeline__hint,.section-rail{display:none}.hero-actions{display:grid;width:min(100%,350px);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:2px}.hero-actions .button{width:100%;min-height:52px;padding:0 12px;font-size:.9rem;line-height:1.1}.page-section{gap:24px;padding:46px 14px}.section__heading[id]{scroll-margin-top:118px}.section__heading{gap:16px}.section__heading h2{font-size:clamp(1.95rem,9.4vw,2.75rem);line-height:1.02}.section-lead,[data-section=vue-ensemble] .section-lead{margin:0 auto 6px;padding-right:0;font-size:clamp(1rem,4.1vw,1.12rem);line-height:1.52}.section-intro{gap:16px}.section-intro p{font-size:clamp(.98rem,3.9vw,1.06rem);line-height:1.52}.gallery-bento{display:flex;width:calc(100% + 28px);margin-inline:-14px;gap:12px;overflow-x:auto;padding:0 14px 8px;scroll-padding-inline:14px;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery-bento::-webkit-scrollbar{display:none}.gallery-card,.gallery-card--living,.gallery-card--kitchen,.gallery-card--terrace,.gallery-card--view,.gallery-card--outside,.gallery-card--dining,.gallery-card--bathroom,.gallery-card--pool,.gallery-card--bedroom,.gallery-card--pavilion{flex:0 0 min(78vw,320px);grid-column:auto;grid-row:auto;min-height:0;height:clamp(250px,72vw,330px);border-radius:24px;scroll-snap-align:center}.gallery-card--pool,.gallery-card--bedroom{flex-basis:min(86vw,340px)}.gallery-card__label{right:18px;bottom:18px;left:18px;font-size:1rem}.gallery-open-all{position:static;flex:0 0 min(78vw,320px);width:auto;min-height:clamp(250px,72vw,330px);align-self:stretch;margin-top:0;border-radius:24px;background:var(--md-sys-color-primary-container);box-shadow:none;scroll-snap-align:center}.reviews-shell,.fact-grid,.form-grid{grid-template-columns:1fr}.fact-card{min-height:116px}.booking-shell--planner{gap:14px;border-radius:24px;background:transparent;box-shadow:none;overflow:visible}.booking-calendar-panel{min-height:0;gap:22px;border-radius:24px;background:#ffffffb8;padding:18px 14px 20px;box-shadow:0 0 0 1px #5b463d17}.booking-calendar-panel__top{align-items:flex-start;flex-direction:column-reverse;gap:14px}.booking-calendar-actions{justify-content:space-between;width:100%;gap:8px}.booking-calendar-actions button{min-width:44px;min-height:44px;padding:0 12px;font-size:.82rem}.availability-legend{width:100%;justify-content:space-between;gap:10px}.availability-legend span{min-height:auto;padding:0;font-size:.8rem}.booking-months{grid-template-columns:1fr;gap:0}.booking-month{gap:16px}.booking-days{row-gap:10px}.booking-day{min-height:58px;padding:4px 0}.booking-day span{width:36px;height:36px;font-size:.88rem}.booking-day small{font-size:.58rem}.booking-summary-card{position:static;min-height:0;gap:16px;border:0;border-radius:24px;background:#ffffffc2;padding:20px 16px;box-shadow:0 0 0 1px #5b463d17}.booking-summary-card__header{gap:16px}.booking-stay-lines{grid-template-columns:1fr;gap:10px}.booking-stay-lines div+div{border-left:0;border-top:1px solid rgb(91 70 61 / 10%);padding-top:10px;padding-left:0}.booking-stay-lines div{grid-template-columns:44px minmax(0,1fr)}.booking-stay-icon{width:40px;height:40px}.guest-row{min-height:58px;gap:10px;padding:10px 12px}.guest-row__label{gap:10px}.guest-row span{display:block;margin-left:0}.stepper button{width:40px;height:40px}.booking-total{margin-top:-14px;padding-top:16px}.price-line{gap:12px;padding:12px}.price-line span{font-size:.76rem}.booking-form--expanded{padding:0}.overview-faq{padding:18px}.gallery-lightbox{width:100dvw;height:100dvh;padding:0;background:radial-gradient(circle at 50% 38%,rgb(190 93 67 / 16%),transparent 42%),linear-gradient(180deg,#211a17,#130f0d)}.gallery-lightbox__panel{width:100dvw;height:100dvh;min-height:100dvh;grid-template-rows:minmax(0,1fr);overflow:hidden;padding:0;background:radial-gradient(circle at 50% 42%,rgb(226 155 111 / 12%),transparent 44%),linear-gradient(180deg,#211a17,#130f0d)}.gallery-lightbox__panel:before{display:none}.gallery-lightbox__topbar{position:absolute;top:max(12px,env(safe-area-inset-top));right:12px;left:12px;z-index:5;pointer-events:none}.gallery-lightbox__topbar div{min-width:0;max-width:calc(100% - 76px);border-radius:18px;background:#130f0d75;padding:9px 12px}.gallery-lightbox__topbar strong{overflow:hidden;font-size:1rem;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.gallery-lightbox__topbar span{font-size:.78rem}.gallery-lightbox__topbar button{width:58px;height:58px;background:#130f0d9e;pointer-events:auto;box-shadow:0 10px 28px #0003}.gallery-lightbox__nav{top:50%;bottom:auto;z-index:6;width:68px;height:78px;border-radius:26px;background:#130f0d94;box-shadow:0 12px 34px #00000038;transform:translateY(-50%)}.gallery-lightbox__nav:hover{transform:translateY(-50%) scale(1.04)}.gallery-lightbox__nav--prev{left:max(12px,env(safe-area-inset-left))}.gallery-lightbox__nav--next{right:max(12px,env(safe-area-inset-right))}.gallery-lightbox__figure{width:100%;height:100dvh;padding:0;border-radius:0;background:radial-gradient(circle at 50% 48%,rgb(255 219 205 / 8%),transparent 52%),linear-gradient(90deg,#130f0d75,#130f0d1f 42%,#130f0d75),linear-gradient(180deg,#211a17,#130f0d);touch-action:pan-y}.gallery-lightbox__figure img{display:block;width:100%;height:100%;object-fit:contain;object-position:center center}.gallery-lightbox__figure figcaption{right:86px;bottom:max(78px,calc(env(safe-area-inset-bottom) + 68px));left:86px;width:fit-content;max-width:calc(100% - 172px);margin:0 auto;overflow:hidden;padding:8px 12px;font-size:.82rem;text-align:center;text-overflow:ellipsis;white-space:nowrap}.gallery-lightbox__thumbs{position:absolute;right:0;bottom:env(safe-area-inset-bottom);left:0;z-index:5;justify-content:flex-start;gap:7px;padding:10px 12px max(12px,env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,rgb(19 15 13 / 34%) 30%,rgb(19 15 13 / 58%));scrollbar-width:none}.gallery-lightbox__thumbs::-webkit-scrollbar{display:none}.gallery-lightbox__thumbs button{flex-basis:64px;width:64px;height:48px;border-radius:14px;opacity:.72}.gallery-lightbox__thumbs button.is-active{box-shadow:0 0 0 2px #e29b6feb,0 10px 26px #00000042}.calendar-slot{min-height:420px}.button--form{width:100%}.site-footer{padding:38px 18px}.site-footer nav{display:grid;width:100%;grid-template-columns:1fr}.site-footer nav a,.site-footer__actions,.language-action--footer,.site-footer__listing,.site-footer__contact{width:100%}.site-footer__actions{display:grid;grid-template-columns:1fr;justify-content:stretch}.site-footer__marketplaces{width:100%}.consent-banner{right:10px;bottom:10px;width:calc(100% - 20px);grid-template-columns:1fr;gap:12px;border-radius:20px;padding:16px}.consent-banner__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:360px){.site-nav__cta{width:46px;padding:0;font-size:0}}.seasonal-hero__copy h1{max-width:44rem;color:#fff6f0eb;font-size:clamp(.98rem,1.05vw,1.16rem);font-weight:800;line-height:1.15;text-transform:uppercase}.seasonal-hero__story-title{display:block;max-width:880px;color:#fff;font-size:clamp(3.15rem,4.75vw,5.35rem);font-weight:700;line-height:.96;text-wrap:balance}@media(min-width:1500px)and (min-height:920px){.seasonal-hero__story-title{max-width:920px;font-size:clamp(4.35rem,4.35vw,5.95rem)}}@media(max-width:560px){.seasonal-hero__copy h1{max-width:26ch;font-size:clamp(.78rem,3.1vw,.92rem);line-height:1.2}.seasonal-hero__story-title{max-width:9.6em;font-size:clamp(2.25rem,10.2vw,3.08rem);line-height:1}}@media(max-width:370px){.hero-actions{grid-template-columns:1fr}.seasonal-hero__copy{padding-top:clamp(122px,16svh,148px);padding-bottom:clamp(250px,31svh,282px)}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal-on-scroll{opacity:1;transform:none;filter:none}}.admin-dashboard{--dash-bg: #fcfbf9;--dash-surface: #ffffff;--dash-border: #f0ebe4;--dash-text: #1c1917;--dash-text-muted: #78716c;--dash-primary: #8b3d1f;--dash-primary-light: #fcefe9;--dash-primary-hover: #753319;--dash-success: #16a34a;--dash-warning: #d97706;--dot-green: #22c55e;--dot-yellow: #facc15;--dot-red: #ef4444;position:relative;z-index:10;display:flex;min-height:100vh;background-color:var(--dash-bg);color:var(--dash-text);font-family:Inter,system-ui,sans-serif;text-align:left}.admin-dashboard *{box-sizing:border-box}.admin-sidebar{width:260px;background-color:var(--dash-surface);border-right:1px solid var(--dash-border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.admin-sidebar__logo{padding:32px 32px 24px}.admin-sidebar__logo h2{margin:0;font-size:1.1rem;font-weight:700;color:var(--dash-text)}.admin-sidebar__nav{padding:0 16px;flex-grow:1;display:flex;flex-direction:column;gap:4px}.admin-sidebar__nav a{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;color:var(--dash-text-muted);text-decoration:none;font-weight:600;font-size:.9rem;transition:all .2s}.admin-sidebar__nav a:hover{background-color:#f7f5f2}.admin-sidebar__nav a.is-active{background-color:var(--dash-primary-light);color:var(--dash-primary)}.admin-sidebar__footer{padding:24px}.admin-logout-button{width:100%;padding:10px;background:transparent;border:1px solid var(--dash-border);color:var(--dash-text);border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.admin-logout-button:hover{background-color:#f7f5f2}.admin-main{flex-grow:1;display:flex;flex-direction:column;overflow-x:hidden}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;padding:48px 48px 24px}.admin-header__title h1{margin:0 0 8px;font-size:1.8rem;font-weight:700;color:var(--dash-text)}.admin-header__title p{margin:0;color:var(--dash-text-muted);font-size:.95rem}.admin-header__actions{display:flex;align-items:center;gap:16px}.admin-header__actions .button--filled{background-color:var(--dash-primary);color:#fff;border:none;padding:12px 20px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:background-color .2s;display:flex;align-items:center;gap:8px}.admin-header__actions .button--filled:hover{background-color:var(--dash-primary-hover)}.admin-header__actions .button--filled:disabled{opacity:.6;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-icon{animation:spin 1s linear infinite}.admin-status-toast{color:var(--dash-success);background-color:#dcfce7;padding:8px 14px;border-radius:6px;font-weight:500;font-size:.85rem}.admin-error-toast{color:var(--dot-red);background-color:#fee2e2;padding:8px 14px;border-radius:6px;font-weight:500;font-size:.85rem}.admin-content{padding:0 48px 64px;max-width:1200px;margin:0;width:100%}.admin-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-bottom:40px}.admin-widget{background-color:var(--dash-surface);border:1px solid var(--dash-border);border-radius:12px;padding:24px;display:flex;align-items:center;gap:20px;box-shadow:0 2px 8px #00000003}.admin-widget__icon{width:48px;height:48px;background-color:var(--dash-primary-light);color:var(--dash-primary);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-widget__content{flex-grow:1}.admin-widget h3{margin:0 0 4px;font-size:.8rem;color:var(--dash-text-muted);font-weight:500}.admin-widget__value{font-size:1.4rem;font-weight:700;color:var(--dash-text);line-height:1.2;display:flex;align-items:center;justify-content:space-between}.icon-success{color:var(--dash-success)}.admin-widget__input{display:flex;align-items:center;gap:4px;padding:4px 8px;margin-left:-8px;border-radius:6px;transition:background-color .2s;cursor:text}.admin-widget__input:hover,.admin-widget__input:focus-within{background-color:#f7f5f2}.admin-widget__input input{background:transparent;border:none;color:var(--dash-text);font-size:1.4rem;font-weight:700;width:60px;padding:0;outline:none}.admin-widget__input span{color:var(--dash-text);font-size:1.4rem;font-weight:700}.admin-text-danger{color:var(--dot-red);margin:6px 0 0;font-size:.75rem;font-weight:500}.admin-text-warning{color:var(--dash-warning);margin:6px 0 0;font-size:.75rem;font-weight:500}.admin-text-muted{color:var(--dash-text-muted);font-weight:400;font-size:.75rem}.admin-seasons-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-seasons-header h2{margin:0;font-size:1.3rem;font-weight:700;color:var(--dash-text);display:flex;align-items:center;gap:12px}.admin-seasons-count{background-color:var(--dash-primary-light);color:var(--dash-primary);font-size:.85rem;padding:2px 10px;border-radius:999px;font-weight:600}.admin-seasons-header .button--outlined{background-color:transparent;border:1px solid var(--dash-primary);color:var(--dash-primary);padding:8px 16px;border-radius:8px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s;font-weight:600;font-size:.85rem}.admin-seasons-header .button--outlined:hover{background-color:var(--dash-primary-light)}.admin-seasons-list{background-color:var(--dash-surface);border:1px solid var(--dash-border);border-radius:12px;display:flex;flex-direction:column;box-shadow:0 2px 8px #00000003;margin-bottom:24px}.admin-season-row{display:flex;align-items:center;padding:16px 24px;border-bottom:1px solid var(--dash-border);gap:16px}.admin-season-row:last-child{border-bottom:none}.admin-season-row__name{display:flex;align-items:center;gap:12px;width:200px;flex-shrink:0}.admin-season-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dot-green{background-color:var(--dot-green)}.dot-yellow{background-color:var(--dot-yellow)}.dot-red{background-color:var(--dot-red)}.dot-blue{background-color:#3b82f6}.dot-purple{background-color:#a855f7}.admin-season-row__name input{background:transparent;border:none;font-size:.95rem;font-weight:600;color:var(--dash-text);outline:none;width:100%}.admin-season-row__months{display:flex;flex-wrap:nowrap;gap:6px;flex-grow:1;overflow-x:auto;padding-bottom:4px}.admin-season-row__months::-webkit-scrollbar{display:none}.admin-season-row__months{-ms-overflow-style:none;scrollbar-width:none}.admin-month-pill{background-color:transparent;border:1px solid var(--dash-border);color:var(--dash-text-muted);padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.admin-month-pill:hover{background-color:#f7f5f2}.admin-month-pill.is-active{background-color:var(--dash-primary);border-color:var(--dash-primary);color:#fff}.admin-month-pill.is-duplicated{background-color:var(--dot-red);border-color:var(--dot-red);color:#fff}.admin-season-row__price{display:flex;align-items:center;gap:4px;font-size:.9rem;font-weight:600;color:var(--dash-text);width:120px;justify-content:flex-end}.admin-season-row__price input{background:transparent;border:none;font-size:.9rem;font-weight:700;color:var(--dash-text);outline:none;width:50px;text-align:right}.admin-season-row__price span{color:var(--dash-text-muted);font-weight:400}.admin-season-row__actions{display:flex;align-items:center}.admin-season-delete{background:transparent;border:1px solid var(--dash-border);color:var(--dash-text-muted);width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.admin-season-delete:hover{background-color:#fee2e2;color:var(--dot-red);border-color:#fca5a5}.admin-footer-info{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.admin-info-box{display:flex;align-items:center;gap:8px;background-color:#f0f9ff;color:#0284c7;padding:12px 16px;border-radius:8px;font-size:.85rem;font-weight:500}.admin-last-modified{display:flex;align-items:center;gap:6px;color:#a8a29e;font-size:.85rem}@media(max-width:1100px){.admin-season-row{flex-wrap:wrap}.admin-season-row__name{width:100%;margin-bottom:8px}.admin-season-row__price{flex-grow:1;justify-content:flex-start}}@media(max-width:900px){.admin-dashboard{flex-direction:column}.admin-sidebar{width:100%;height:auto;position:static;flex-direction:row;align-items:center;justify-content:space-between;padding:16px;border-right:none;border-bottom:1px solid var(--dash-border)}.admin-sidebar__logo{padding:0}.admin-sidebar__nav{flex-direction:row}.admin-logout-button{width:auto}.admin-header{flex-direction:column;gap:16px;padding:24px;align-items:stretch}.admin-content{padding:0 24px 24px}.admin-footer-info{flex-direction:column;align-items:flex-start;gap:16px}}
