.search-modal-backdrop{z-index:2000;-webkit-backdrop-filter:blur(10px);-webkit-overflow-scrolling:touch;background:#0a0a0cb3;justify-content:center;align-items:flex-start;padding:4.5rem 1.25rem 2rem;animation:.22s cubic-bezier(.16,1,.3,1) forwards searchBackdropFade;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes searchBackdropFade{0%{opacity:0}to{opacity:1}}.search-modal-container{background:#fff;border:1px solid #b8965a40;flex-direction:column;width:100%;max-width:640px;margin-bottom:auto;animation:.28s cubic-bezier(.16,1,.3,1) forwards searchModalSlideDown;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 64px #0003}@keyframes searchModalSlideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}.search-modal-header{border-bottom:1px solid var(--color-border-light,#eee8e0);background:#fff;padding:1.5rem 1.75rem 1.25rem}.search-input-wrapper{border-bottom:1px solid var(--color-border,#e0d8cc);background:0 0;align-items:center;gap:.85rem;padding:.5rem .25rem;transition:border-color .25s;display:flex;position:relative}.search-input-wrapper:focus-within{border-bottom-color:var(--color-gold,#b8965a)}.search-icon{width:20px;height:20px;color:var(--color-gold,#b8965a);flex-shrink:0}.search-icon--spinning{animation:1s ease-in-out infinite alternate searchIconPulse}@keyframes searchIconPulse{0%{opacity:.7;transform:scale(.92)}to{opacity:1;transform:scale(1.08)}}.search-input{font-family:var(--font-sans);color:var(--color-text,#111217);letter-spacing:.2px;background:0 0;border:none;outline:none;flex:1;font-size:1.05rem}.search-input::placeholder{color:var(--color-text-light,#99948a);font-size:.95rem;font-weight:300}.search-spinner{border:2px solid #b8965a40;border-top-color:var(--color-gold,#b8965a);border-radius:50%;width:16px;height:16px;animation:.6s linear infinite searchSpin}@keyframes searchSpin{to{transform:rotate(360deg)}}.search-clear-btn{width:24px;height:24px;color:var(--color-text-secondary,#66615b);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:.85rem;transition:color .2s;display:flex}.search-clear-btn:hover{color:var(--color-text,#111217)}.search-close-btn{cursor:pointer;width:28px;height:28px;color:var(--color-text-secondary,#66615b);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .2s,transform .2s;display:flex}.search-close-btn:hover{color:var(--color-gold,#b8965a);transform:scale(1.05)}.search-modal-body{scrollbar-width:thin;scrollbar-color:#b8965a4d transparent;max-height:min(60vh,480px);padding:1.25rem 1.75rem 1.5rem;overflow-y:auto}.search-modal-body::-webkit-scrollbar{width:4px}.search-modal-body::-webkit-scrollbar-thumb{background:#b8965a4d}.search-results-meta{border-bottom:1px solid var(--color-border-light,#eee8e0);justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.search-results-count{font-family:var(--font-sans);color:var(--color-text-secondary,#66615b);letter-spacing:1px;text-transform:uppercase;font-size:.72rem;font-weight:600}.search-view-all-link{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:1px;color:var(--color-gold,#b8965a);cursor:pointer;background:0 0;border:none;padding:0;font-size:.72rem;font-weight:600;transition:color .2s}.search-view-all-link:hover{color:var(--color-gold-dark,#9c7b40);text-decoration:underline}.search-results-list{flex-direction:column;display:flex}.search-item-row{border-bottom:1px solid var(--color-border-light,#eee8e0);color:inherit;background:0 0;align-items:center;gap:1rem;padding:.75rem .5rem;text-decoration:none;transition:background-color .2s,border-color .2s;display:flex}.search-item-row:last-child{border-bottom:none}.search-item-row:hover,.search-item-row--selected{background:var(--color-bg-alt,#faf8f5);border-bottom-color:var(--color-gold-light,#e0d1b4)}.search-item-thumb{background:var(--color-bg-alt,#faf8f5);border:1px solid var(--color-border-light,#eee8e0);flex-shrink:0;width:50px;height:50px;position:relative;overflow:hidden}.search-item-img{object-fit:cover;transition:transform .4s}.search-item-row:hover .search-item-img{transform:scale(1.06)}.search-item-info{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.search-item-name{font-family:var(--font-serif);color:var(--color-text,#111217);white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:400;line-height:1.25;overflow:hidden}.search-item-meta-text{font-family:var(--font-sans);color:var(--color-text-secondary,#66615b);letter-spacing:.4px;font-size:.72rem}.search-item-end{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.search-item-price{font-family:var(--font-sans);color:var(--color-gold,#b8965a);white-space:nowrap;font-size:.82rem;font-weight:500}.search-item-arrow{color:var(--color-text-light,#99948a);font-size:1rem;transition:transform .2s,color .2s}.search-item-row:hover .search-item-arrow{color:var(--color-gold,#b8965a);transform:translate(3px)}.search-zero-state{flex-direction:column;gap:.85rem;padding:.5rem 0;display:flex}.search-section-label{font-family:var(--font-sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--color-text-secondary,#66615b);font-size:.7rem;font-weight:600}.search-suggestion-chips{flex-wrap:wrap;gap:.45rem;display:flex}.search-chip{font-family:var(--font-sans);color:var(--color-text,#111217);background:var(--color-bg-alt,#faf8f5);border:1px solid var(--color-border-light,#eee8e0);cursor:pointer;padding:.4rem .8rem;font-size:.78rem;font-weight:400;transition:all .2s}.search-chip:hover{border-color:var(--color-gold,#b8965a);color:var(--color-gold,#b8965a);background:#fff}.search-empty-state{text-align:center;justify-content:center;align-items:center;padding:2.5rem 1rem;display:flex}.search-empty-text{font-family:var(--font-sans);color:var(--color-text-secondary,#66615b);font-size:.9rem;line-height:1.5}@media (max-width:640px){.search-modal-backdrop{padding:1.25rem .75rem}.search-modal-header{padding:1.25rem 1.25rem 1rem}.search-modal-body{max-height:70dvh;padding:1rem 1.25rem}.search-item-thumb{width:44px;height:44px}.search-item-name{font-size:.92rem}.search-item-price{font-size:.75rem}}
.nav-wrapper{z-index:1000;background:#fff;border-bottom:1px solid #b8965a26;width:100%;transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .4s;position:fixed;top:0;left:0}.nav-wrapper--scrolled{box-shadow:0 1px 24px #0000000f}.nav-wrapper{opacity:0;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1),box-shadow .4s;transform:translateY(-100%)}.nav-wrapper--mounted{opacity:1;transform:translateY(0)}.nav-utility{background:#fafaf9;border-bottom:1px solid #b8965a1a;justify-content:space-between;align-items:center;height:36px;padding:0 2.5rem;transition:height .45s cubic-bezier(.16,1,.3,1),opacity .35s;display:flex;overflow:hidden}.nav-wrapper--scrolled .nav-utility{opacity:0;pointer-events:none;border-bottom:none;height:0}.nav-utility__left,.nav-utility__right{align-items:center;gap:1.5rem;display:flex}.nav-utility__item{font-family:var(--font-sans);letter-spacing:1.2px;color:var(--color-text-secondary);text-transform:uppercase;white-space:nowrap;align-items:center;gap:.35rem;font-size:.68rem;font-weight:400;text-decoration:none;transition:color .2s;display:flex}.nav-utility__item:hover{color:var(--color-gold)}.nav-utility__divider{background:#b8965a33;width:1px;height:12px}.nav-brand{grid-template-columns:1fr auto 1fr;align-items:center;height:74px;padding:0 2.5rem;transition:height .45s cubic-bezier(.16,1,.3,1);display:grid}.nav-wrapper--scrolled .nav-brand{height:58px}.nav-brand__left,.nav-brand__right{align-items:center;gap:1.1rem;display:flex}.nav-brand__right{justify-content:flex-end}.nav__logo{flex-direction:column;justify-content:center;align-items:center;gap:0;text-decoration:none;display:flex}.nav__logo-img{justify-content:center;align-items:center;width:130px;height:54px;transition:all .45s cubic-bezier(.16,1,.3,1);display:flex}.nav-wrapper--scrolled .nav__logo-img{width:100px;height:42px}.nav__logo-est{font-family:var(--font-sans);letter-spacing:3px;text-transform:uppercase;color:var(--color-gold);opacity:.85;white-space:nowrap;margin-top:-8px;font-size:.5rem;font-weight:500;line-height:1;transition:all .45s}.nav-wrapper--scrolled .nav__logo-est{opacity:0;height:0;overflow:hidden}.nav__icon-btn{cursor:pointer;color:var(--color-text);background:0 0;border:none;justify-content:center;align-items:center;padding:.4rem;text-decoration:none;transition:color .25s;display:flex;position:relative}.nav__icon-btn:hover{color:var(--color-gold)}.nav__wishlist-badge{background:var(--color-gold);color:#fff;font-family:var(--font-sans);border:1.5px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:14px;height:14px;font-size:.5rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-2px;right:-3px}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;padding:.35rem;display:none}.hamburger__line{background:var(--color-text);transform-origin:50%;width:22px;height:1px;transition:all .4s cubic-bezier(.16,1,.3,1);display:block}.hamburger--active .hamburger__line:first-child{transform:translateY(6px)rotate(45deg)}.hamburger--active .hamburger__line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger--active .hamburger__line:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.nav-links{z-index:100;border-top:1px solid #b8965a1a;justify-content:center;align-items:center;gap:0;height:42px;transition:height .45s cubic-bezier(.16,1,.3,1),opacity .35s;display:flex;position:relative;overflow:visible}.nav-wrapper--scrolled .nav-links{opacity:0;pointer-events:none;border-top:none;height:0;overflow:hidden}.nav__link{font-family:var(--font-sans);letter-spacing:2.5px;text-transform:uppercase;color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;height:100%;padding:0 1.5rem;font-size:.7rem;font-weight:500;text-decoration:none;transition:color .25s;display:inline-flex;position:relative}.nav__link:after{content:"";background:var(--color-gold);transform-origin:50%;height:1px;transition:transform .3s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:1.5rem;right:1.5rem;transform:scaleX(0)}.nav__link:hover,.nav__link--active,.nav__dropdown:hover .nav__link{color:var(--color-text)}.nav__link:hover:after,.nav__link--active:after,.nav__dropdown:hover .nav__link:after{transform:scaleX(1)}.nav__chevron{opacity:.5;flex-shrink:0;transition:transform .3s}.nav__dropdown:hover .nav__chevron,.nav__chevron--open{transform:rotate(180deg)}.nav__dropdown{align-items:center;height:100%;display:inline-flex;position:relative}.nav__dropdown-menu{border:1px solid #b8965a26;border-top:2px solid var(--color-gold);opacity:0;visibility:hidden;pointer-events:none;z-index:1000;background:#fff;transition:opacity .25s,transform .25s cubic-bezier(.16,1,.3,1),visibility .25s;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(8px);box-shadow:0 8px 40px #00000012}.nav__dropdown-menu:before{content:"";height:10px;position:absolute;top:-10px;left:0;right:0}.nav__dropdown:hover .nav__dropdown-menu,.nav__dropdown-menu--open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}.nav__dropdown-menu-inner{min-width:180px;padding:1rem 0}.nav__dropdown-item{font-family:var(--font-sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--color-text-secondary);white-space:nowrap;padding:.55rem 1.5rem;font-size:.72rem;font-weight:400;text-decoration:none;transition:color .2s,padding-left .2s;display:block}.nav__dropdown-item:hover{color:var(--color-gold);padding-left:1.85rem}:root{--nav-height:152px;--nav-height-scrolled:58px}@media (max-width:1024px){.hamburger{display:flex}.nav-links,.nav-brand__left .nav-brand__desktop-only,.nav-utility{display:none}.nav-brand{height:62px;padding:0 1.25rem}.nav-wrapper--scrolled .nav-brand{height:56px}:root{--nav-height:62px}}.mobile-menu{z-index:999;pointer-events:none;position:fixed;inset:0}.mobile-menu__backdrop{opacity:0;background:#00000059;transition:opacity .5s;position:absolute;inset:0}.mobile-menu--open .mobile-menu__backdrop{opacity:1;pointer-events:auto}.mobile-menu__content{z-index:1;-webkit-overflow-scrolling:touch;pointer-events:auto;background:#fff;border-right:1px solid #b8965a26;flex-direction:column;justify-content:flex-start;width:86%;max-width:360px;height:100%;padding:1.25rem 1.5rem 2rem;transition:transform .55s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:20px 0 60px #0000001a}.mobile-menu--open .mobile-menu__content{transform:translate(0)}.mobile-menu__header{justify-content:flex-end;align-items:center;width:100%;padding-bottom:.25rem;display:flex}.mobile-menu__close{width:36px;height:36px;color:var(--color-text);cursor:pointer;background:0 0;border:1px solid #b8965a40;border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex}.mobile-menu__close:hover{background:var(--color-gold);border-color:var(--color-gold);color:#fff;transform:rotate(90deg)}.mobile-menu__nav{flex-direction:column;flex:1;margin:.5rem 0 1.5rem;display:flex}.mobile-menu__item{border-bottom:1px solid #b8965a1a;flex-direction:column;display:flex}.mobile-menu__link{font-family:var(--font-serif);color:var(--color-text);cursor:pointer;opacity:0;width:100%;transition:color .25s,opacity .45s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i,0) * 40ms);background:0 0;border:none;justify-content:space-between;align-items:center;padding:.9rem .25rem;font-size:1.2rem;font-weight:400;text-decoration:none;display:flex;transform:translate(-15px)}.mobile-menu--open .mobile-menu__link{opacity:1;transition-delay:calc(var(--i,0) * 40ms + .2s);transform:translate(0)}.mobile-menu__link:hover,.mobile-menu__link--active{color:var(--color-gold)}.mobile-menu__toggle-icon{font-family:var(--font-sans);color:var(--color-gold);padding:0 .25rem;font-size:1.1rem;font-weight:300;line-height:1;transition:transform .3s}.mobile-menu__subnav{opacity:0;flex-direction:column;gap:.3rem;max-height:0;padding:0;transition:all .35s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.mobile-menu__subnav--open{opacity:1;max-height:420px;padding:.1rem 0 .85rem .5rem}.mobile-menu__sublink{font-family:var(--font-sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--color-text-secondary);padding:.45rem .25rem;font-size:.72rem;font-weight:500;text-decoration:none;transition:color .2s,padding-left .2s}.mobile-menu__sublink:hover{color:var(--color-gold);padding-left:.5rem}.mobile-menu__concierge{margin-bottom:1.5rem;padding:0 .25rem}.mobile-menu__booking-btn{width:100%;color:var(--color-text);font-family:var(--font-sans);letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #b8965a59;justify-content:center;align-items:center;padding:.85rem 1.5rem;font-size:.72rem;font-weight:500;text-decoration:none;transition:all .3s;display:flex}.mobile-menu__booking-btn:hover{background:var(--color-gold);border-color:var(--color-gold);color:#fff}.mobile-menu__footer{border-top:1px solid #b8965a1a;padding-top:1.25rem}.mobile-menu__location{font-family:var(--font-sans);letter-spacing:1.8px;text-transform:uppercase;color:var(--color-gold);opacity:.85;margin-bottom:.3rem;font-size:.625rem;font-weight:500;display:block}.mobile-menu__address{font-family:var(--font-sans);color:var(--color-text-secondary);opacity:.7;letter-spacing:.3px;font-size:.65rem;line-height:1.6;display:block}@media (min-width:1025px){.hamburger,.nav__mobile-left,.nav__mobile-right,.mobile-menu{display:none!important}}
.footer{background:var(--color-bg-alt);border-top:1px solid var(--color-border)}.footer__newsletter{background:var(--color-text);padding:1.75rem 0}.footer__newsletter-inner{justify-content:space-between;align-items:center;gap:2rem;display:flex}.footer__newsletter-title{color:#fff;margin-bottom:.2rem;font-size:1.35rem}.footer__newsletter-desc{color:#fff9;font-size:.875rem}.footer__newsletter-form{flex-shrink:0;gap:.75rem;display:flex}.footer__newsletter-input{width:260px;color:#fff!important;background:#ffffff14!important;border-color:#ffffff26!important}.footer__newsletter-input::placeholder{color:#fff6!important}.footer__newsletter-input:focus{border-color:var(--color-gold)!important;box-shadow:0 0 0 3px #b8965a33!important}.footer__newsletter-form .btn{background:var(--color-gold);border-color:var(--color-gold);white-space:nowrap}.footer__newsletter-form .btn:hover{background:var(--color-gold-dark);border-color:var(--color-gold-dark)}.footer__grid{grid-template-columns:1.8fr 1fr 1fr 1fr 1fr;align-items:start;gap:2.5rem;padding:2.75rem 0 2.25rem;display:grid}.footer__brand{max-width:280px;margin-top:-.4rem;padding-left:1.25rem}.footer__logo-link{line-height:1;display:inline-block}.footer__tagline{color:var(--color-text-secondary);margin-top:.65rem;font-size:.875rem;line-height:1.6}.footer__heading{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;color:var(--color-text);margin-bottom:.875rem;font-size:.75rem;font-weight:600}.footer__nav{flex-direction:column;gap:.55rem;display:flex}.footer__nav a{color:var(--color-text-secondary);transition:color var(--duration-fast) ease;font-size:.875rem}.footer__nav a:hover{color:var(--color-gold)}.footer__bottom{border-top:1px solid var(--color-border);padding:1rem 0}.footer__bottom-inner{text-align:center}.footer__bottom p{color:var(--color-text-light);font-size:.8125rem}@media (max-width:900px){.footer__newsletter-inner{text-align:center;flex-direction:column}.footer__newsletter-form{width:100%;max-width:400px}.footer__newsletter-input{flex:1;width:auto}.footer__grid{grid-template-columns:1fr 1fr;gap:2rem;padding:2.25rem 0}.footer__brand{grid-column:span 2;max-width:none;margin-top:0;padding-left:0}}@media (max-width:768px){.footer__grid{text-align:center;grid-template-columns:1fr;gap:1.75rem;padding:2rem 0}.footer__brand{flex-direction:column;grid-column:span 1;align-items:center;margin:0 auto;padding-left:0;display:flex}.footer__nav{align-items:center}.footer__newsletter{padding:1.75rem 0}.footer__newsletter-title{font-size:1.25rem}.footer__newsletter-form{flex-direction:column;width:100%}.footer__newsletter-input,.footer__newsletter-form .btn{width:100%}.footer__heading{margin-bottom:.75rem}}
.whatsapp-widget{z-index:9999;cursor:pointer;background-color:#25d366;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);animation:.5s cubic-bezier(.175,.885,.32,1.275) forwards widget-enter;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 8px 24px #25d36666}@keyframes widget-enter{0%{opacity:0;transform:translateY(20px)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}.whatsapp-widget:hover{transform:scale(1.1)translateY(-4px)}.whatsapp-widget__icon{color:#fff;z-index:2;width:32px;height:32px}.whatsapp-widget__pulse{z-index:1;background-color:#25d36680;border-radius:50%;width:100%;height:100%;animation:2s cubic-bezier(.2,.8,.2,1) infinite whatsapp-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes whatsapp-pulse{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1.6)}}@media (max-width:768px){.whatsapp-widget{width:52px;height:52px;bottom:1.25rem;right:1.25rem;box-shadow:0 6px 16px #25d36666}.whatsapp-widget__icon{width:26px;height:26px}}
.scroll-to-top{background-color:var(--color-surface);border:1px solid var(--color-gold);width:48px;height:48px;color:var(--color-gold);box-shadow:var(--shadow-md);z-index:9998;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .3s var(--ease-out), transform .3s var(--ease-out), visibility .3s, background-color .3s, color .3s;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:7.25rem;right:2.5rem;transform:translateY(20px)}.scroll-to-top--visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top:hover{background-color:var(--color-gold);color:var(--color-bg);box-shadow:var(--shadow-lg);transform:translateY(-3px)}.scroll-to-top:active{transform:translateY(-1px)}@media (max-width:768px){.scroll-to-top{width:40px;height:40px;box-shadow:var(--shadow-sm);bottom:5.5rem;right:1.625rem}.scroll-to-top svg{width:18px;height:18px}}
