.marquee-container{white-space:nowrap;border-top:1px solid #ffffff14;border-bottom:1px solid #ffffff14;padding:20px 0;overflow:hidden}.marquee-track{animation:30s linear infinite marquee;display:inline-flex}.marquee-item{font-family:var(--font-outfit), "Outfit", serif;color:#ffffff40;white-space:nowrap;padding:0 48px;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:300}.marquee-dot{color:var(--color-warm);padding:0 16px}.image-reveal{position:relative;overflow:hidden}.image-reveal img,.image-reveal>div{transition:transform 1.2s var(--ease-out-expo)}.image-reveal:hover img,.image-reveal:hover>div{transform:scale(1.05)}.gallery-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:20px;padding:0 24px;display:flex;overflow-x:auto}.gallery-scroll::-webkit-scrollbar{display:none}.gallery-scroll-item{scroll-snap-align:start;flex:none;width:85vw;max-width:600px}@media (min-width:768px){.gallery-scroll-item{width:45vw;max-width:500px}}@media (min-width:1024px){.gallery-scroll-item{width:33vw;max-width:450px}}@media (max-width:767px){.hero-section{align-items:center!important;height:100svh!important;min-height:560px!important;padding-bottom:0!important;overflow:hidden!important}.hero-bg-wrapper{inset:0!important;transform:none!important}.hero-bg-wrapper img{object-fit:cover!important;object-position:center!important;width:100%!important;height:100%!important}.hero-content{flex-direction:column;justify-content:center;height:100%;display:flex;padding-top:calc(var(--nav-height,80px) + 8px)!important}.hero-heading{margin:8px 0!important;font-size:clamp(1.8rem,8vw,2.3rem)!important;line-height:1.15!important}.hero-subtitle{margin-bottom:16px!important;font-size:.85rem!important;line-height:1.5!important}}.booking-bar{z-index:20;margin-top:-48px;padding:0 24px;position:relative}@media (min-width:768px){.booking-bar{padding:0 48px}}.booking-bar-inner{max-width:var(--container-max);border-radius:var(--radius-xl);background:#fff;flex-wrap:wrap;align-items:flex-end;gap:16px;margin:0 auto;padding:24px 28px;display:flex;box-shadow:0 8px 40px #0000001a,0 2px 8px #0000000a}@media (min-width:768px){.booking-bar-inner{flex-wrap:nowrap;gap:20px;padding:28px 36px}}.booking-bar-field{flex:1;min-width:140px}.booking-bar-field label{color:var(--color-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;font-size:.65rem;font-weight:600;display:block}.booking-bar-field input,.booking-bar-field select{border-radius:var(--radius-md);width:100%;color:var(--color-charcoal);appearance:none;background:#fafaf7;border:1px solid #e8e8e4;padding:12px 16px;font-family:inherit;font-size:.9rem;transition:border-color .3s,box-shadow .3s}.booking-bar-field{position:relative}.booking-bar-input-wrap{width:100%;position:relative}.booking-bar-input-icon{color:var(--color-brand-blue,#009ee3);opacity:.7;pointer-events:none;transition:opacity .3s;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.booking-bar-input-wrap:hover .booking-bar-input-icon{opacity:1}.booking-bar-input-wrap input{padding-left:42px!important}.booking-bar-field .guest-stepper{background:#fafaf7;border:1px solid #e8e8e4;height:46px}@media (max-width:767px){.booking-bar-field .guest-stepper{height:44px}}.booking-bar-calendar-dropdown{z-index:100;border-radius:var(--radius-lg);border:1px solid var(--color-sand,#e8e2d9);transform-origin:top;background:#fff;width:290px;margin-top:12px;padding:12px;animation:.25s cubic-bezier(.16,1,.3,1) bookingDropdownFadeIn;position:absolute;top:100%;left:50%;transform:translate(-50%);box-shadow:0 20px 50px #00000026,0 4px 20px #0000000d}.booking-bar-calendar-dropdown .sdcal-wrapper{background:0 0;border:none;padding:0}.booking-bar-calendar-dropdown .sdcal-legend{display:none}.booking-bar-calendar-header{border-bottom:1px solid var(--color-sand,#e8e2d9);justify-content:space-between;align-items:center;margin-bottom:10px;padding:4px 8px 10px;display:flex}.booking-bar-calendar-header span{color:var(--color-charcoal,#1a1a1a);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:700}.booking-bar-calendar-close{color:var(--color-muted,#888);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:background-color .2s,color .2s;display:flex}.booking-bar-calendar-close:hover{color:var(--color-charcoal,#1a1a1a);background-color:#0000000d}@keyframes bookingDropdownFadeIn{0%{opacity:0;transform:translate(-50%)translateY(-8px)scale(.98)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@media (max-width:767px){.booking-bar-inner{border-radius:var(--radius-lg);grid-template-rows:auto;grid-template-columns:1fr 1fr;align-items:end;gap:10px;padding:16px;display:grid}.booking-bar-field:first-child{grid-area:1/1/auto/-1}.booking-bar-field:nth-child(2){grid-area:2/1/auto/-1}.booking-bar-field:nth-child(3){grid-area:3/1}.booking-bar-field:nth-child(4){grid-area:3/2}.booking-bar-inner>button,.booking-bar-inner>.btn-accent{grid-area:4/1/auto/-1;justify-content:center;width:100%;margin-top:4px}.booking-bar-field{min-width:auto}.booking-bar-field input,.booking-bar-field select{height:44px;padding:10px 12px;font-size:15px;line-height:1.4}.booking-bar-field label{margin-bottom:4px}.booking-bar-calendar-dropdown{z-index:1000;transform-origin:50%;width:92%;max-width:360px;margin-top:0;animation:.3s cubic-bezier(.16,1,.3,1) bookingDropdownFadeInMobile;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes bookingDropdownFadeInMobile{0%{opacity:0;transform:translate(-50%,-46%)scale(.96)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.booking-bar-calendar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;background:#00000073;animation:.25s bookingBackdropFadeIn;position:fixed;inset:0}@keyframes bookingBackdropFadeIn{0%{opacity:0}to{opacity:1}}}.booking-bar-field input:focus,.booking-bar-field select:focus{border-color:var(--color-brand-blue);outline:none;box-shadow:0 0 0 3px #009ee31a}.booking-bar .btn-accent{white-space:nowrap;flex-shrink:0;padding:14px 28px}.rooms-carousel-section{background:#fff;padding:60px 0 80px;overflow:hidden}@media (min-width:768px){.rooms-carousel-section{padding:100px 0 120px}}.rooms-carousel-header{max-width:var(--container-max);justify-content:space-between;align-items:flex-end;margin:0 auto 48px;padding:0 24px;display:flex}@media (min-width:768px){.rooms-carousel-header{padding:0 48px}}.rooms-carousel-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab;-webkit-user-select:none;user-select:none;gap:24px;padding:0 24px 16px;display:flex;overflow-x:auto}@media (min-width:768px){.rooms-carousel-track{gap:28px;padding:0 48px 16px}}.rooms-carousel-track::-webkit-scrollbar{display:none}.rooms-carousel-track:active{cursor:grabbing}.carousel-nav{gap:12px;display:flex}.carousel-nav-btn{border-radius:var(--radius-btn,4px);border:1px solid var(--color-brand-blue);cursor:pointer;width:48px;height:48px;transition:all .3s var(--ease-out-expo);color:var(--color-brand-blue);background:#fff;justify-content:center;align-items:center;display:flex}.carousel-nav-btn:hover{background:var(--color-brand-blue);border-color:var(--color-brand-blue);color:var(--color-white);box-shadow:0 4px 16px #00000014}.room-carousel-card{scroll-snap-align:center;width:80vw;max-width:420px;box-shadow:none;transition:transform .4s var(--ease-out-expo);background:0 0;flex:none;position:relative;overflow:hidden}@media (min-width:768px){.room-carousel-card{scroll-snap-align:start;width:38vw;max-width:400px}}@media (min-width:1200px){.room-carousel-card{width:28vw;max-width:380px}}.room-carousel-card-img{aspect-ratio:3/4;border-radius:var(--card-img-radius);isolation:isolate;width:100%;position:relative;overflow:hidden;transform:translate(0,0)}@media (min-width:640px) and (max-width:959px){.room-carousel-card-img{aspect-ratio:4/5}}@media (min-width:960px){.room-carousel-card-img{aspect-ratio:auto;height:360px}}.room-carousel-card-img img{border-radius:var(--card-img-radius);transition:transform 1s var(--ease-out-expo)!important}.room-carousel-card:hover .room-carousel-card-img img{transform:scale(1.04)!important}.room-carousel-card-body{padding:20px 0 0}.room-carousel-card-body h3{letter-spacing:.12em;text-transform:uppercase;color:var(--color-charcoal);margin-bottom:8px;font-size:.95rem;font-weight:500;transition:color .3s}.room-carousel-card:hover h3{color:var(--color-brand-blue)}.room-carousel-card-body p{color:var(--color-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:16px;font-size:.85rem;font-weight:300;line-height:1.6;display:-webkit-box;overflow:hidden}.room-carousel-card-footer{border-top:none;justify-content:space-between;align-items:center;padding-top:8px;display:flex}.room-carousel-price{color:var(--color-charcoal);font-size:1.15rem;font-weight:300}.room-carousel-price span{color:var(--color-muted);font-size:.72rem;font-weight:400}.room-carousel-link{letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-blue);transition:gap .3s var(--ease-out-expo), color .3s;align-items:center;gap:6px;font-size:.72rem;font-weight:600;display:flex}.room-carousel-card:hover .room-carousel-link,.room-grid-card:hover .room-carousel-link{color:var(--color-brand-blue-deep);gap:10px}.feature-section-outer{background-color:var(--color-white);padding:60px 0;overflow:hidden}@media (min-width:768px){.feature-section-outer{padding:100px 0}}.container-wide{width:100%;max-width:1440px;margin:0 auto;padding:0 24px}@media (min-width:768px){.container-wide{padding:0 60px}}.feature-section{grid-template-columns:1fr;align-items:center;gap:32px;display:grid}@media (min-width:768px){.feature-section{grid-template-columns:.93fr 1.07fr;gap:80px}.feature-section--reverse{grid-template-columns:1.07fr .93fr}.feature-section--reverse .feature-img-wrap{order:1}}@media (min-width:1200px){.feature-section{gap:120px}}.feature-img-wrap{width:100%;aspect-ratio:var(--ratio-portrait);border-radius:var(--radius-xl);align-self:center;position:relative;overflow:hidden}@media (min-width:768px){.feature-img-wrap{aspect-ratio:var(--ratio-portrait)}}.feature-img-wrap img{transition:transform 1.2s var(--ease-out-expo)!important}.feature-section-outer:hover .feature-img-wrap img{transform:scale(1.03)!important}.feature-content{background:0 0;flex-direction:column;justify-content:center;padding:0;display:flex}.feature-label{font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-brand-blue);margin-bottom:var(--space-sm)}.feature-title{font-family:var(--font-montserrat), "Montserrat", sans-serif;color:var(--color-charcoal);letter-spacing:-.015em;margin-bottom:16px;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:700;line-height:1.2}.feature-divider{background:var(--color-warm);width:48px;height:1px;margin-bottom:var(--space-lg)}.feature-text{color:#000000a6;max-width:480px;margin-bottom:32px;font-size:.95rem;font-weight:300;line-height:1.9}.feature-cta{letter-spacing:.2em;text-transform:uppercase;color:var(--color-brand-blue);border-bottom:1px solid var(--color-brand-blue);align-self:flex-start;align-items:center;gap:4px;padding-bottom:4px;font-size:.72rem;font-weight:500;transition:all .3s;display:inline-flex}.feature-cta:hover{color:var(--color-brand-blue-deep);border-bottom-color:var(--color-brand-blue-deep);gap:8px}.section-divider-thin{background:var(--border-divider,#f0f0ec);height:1px;margin:0}.home-cta-banner{justify-content:center;align-items:center;height:65vh;min-height:320px;display:flex;position:relative;overflow:hidden}@media (min-width:768px){.home-cta-banner{min-height:450px}}.home-cta-banner-overlay{z-index:1;background:linear-gradient(#00000040 0%,#0000008c 100%);position:absolute;inset:0}.home-cta-banner-content{z-index:10;text-align:center;width:100%;max-width:680px;padding:0 24px;position:relative}.room-tag{z-index:2;background:var(--color-warm);color:var(--color-charcoal);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.08em;padding:5px 14px;font-size:.6rem;font-weight:700;position:absolute;top:16px;left:16px}:root{--vt-duration-exit:.15s;--vt-duration-enter:.25s;--vt-duration-morph:.4s;--vt-slide-offset:50px;--vt-ease-out:cubic-bezier(.16, 1, .3, 1);--vt-ease-in:cubic-bezier(.4, 0, 1, 1)}@keyframes vt-fade{0%{filter:blur(2px);opacity:0}to{filter:blur();opacity:1}}@keyframes vt-slide-from-right{0%{translate:var(--vt-slide-offset)}to{translate:0}}@keyframes vt-slide-from-left{0%{translate:calc(var(--vt-slide-offset) * -1)}to{translate:0}}@keyframes vt-slide-up{0%{translate:0 16px}to{translate:0}}@keyframes vt-scale-in{0%{opacity:0;scale:.97}to{opacity:1;scale:1}}::view-transition-group(site-header){z-index:200;animation:none}::view-transition-old(site-header){display:none}::view-transition-new(site-header){animation:none}::view-transition-group(site-footer){animation-duration:var(--vt-duration-morph);animation-timing-function:var(--vt-ease-out)}::view-transition-old(site-footer){animation:var(--vt-duration-exit) var(--vt-ease-in) both vt-fade reverse}::view-transition-new(site-footer){animation:var(--vt-duration-enter) var(--vt-ease-out) var(--vt-duration-exit) both vt-fade}::view-transition-group(mobile-overlay){animation:none}::view-transition-old(mobile-overlay){display:none}::view-transition-new(mobile-overlay){animation:none}.pg-overlay{z-index:99999;pointer-events:none;position:fixed;inset:0}.pg-overlay__svg{will-change:contents;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){::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}.pg-overlay{display:none!important}}
