@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap";:root{--bg-primary:#f7f5f0;--bg-secondary:#efece6;--bg-tertiary:#e6e2d8;--bg-card:#fff;--bg-backdrop:#1e222266;--text-primary:#1e2222;--text-secondary:#5a6262;--text-light:#9ea5a5;--text-on-dark:#f7f5f0;--accent:#b89c72;--accent-hover:#9a7e56;--accent-light:#f2ece1;--border-color:#e2dbd2;--border-focus:#b89c72;--font-serif:"Cormorant Garamond", serif;--font-sans:"Open Sans", sans-serif;--header-height:120px;--max-width:1300px;--transition-smooth:all .5s cubic-bezier(.25, 1, .5, 1);--transition-fast:all .25s ease;scroll-behavior:smooth}[data-theme=dark]{--bg-primary:#121515;--bg-secondary:#1c2020;--bg-tertiary:#272c2c;--bg-card:#1c2020;--bg-backdrop:#000000b3;--text-primary:#f7f5f0;--text-secondary:#b2b9b9;--text-light:#7e8585;--accent:#d4ba92;--accent-hover:#f2ece1;--accent-light:#272c2c;--border-color:#2f3636}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.6;transition:background-color .3s,color .3s;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--text-primary);font-weight:300}p{color:var(--text-secondary);font-size:1rem;font-weight:300}a{color:inherit;transition:var(--transition-fast);text-decoration:none}.app-container{flex-direction:column;min-height:100vh;display:flex;position:relative}.header-wrapper{z-index:1000;background-color:var(--bg-primary);border-bottom:1px solid var(--border-color);width:100%;transition:var(--transition-smooth);position:fixed;top:0;left:0}.header-top{justify-content:space-between;align-items:center;height:70px;padding:1.25rem 4rem;display:flex}.header-top-left{align-items:center;gap:1.5rem;display:flex}.menu-toggle-btn{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:.5rem;display:flex}.menu-line{background-color:var(--text-primary);width:20px;height:1px;transition:var(--transition-fast)}.search-btn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;align-items:center;font-size:1.1rem;display:flex}.header-logo{font-family:var(--font-serif);letter-spacing:.25em;text-transform:uppercase;cursor:pointer;text-align:center;margin-left:2rem;font-size:2.2rem;font-weight:300}.header-top-right{align-items:center;gap:2rem;display:flex}.lang-selector{font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);cursor:pointer;background:0 0;border:none;font-size:.75rem}.btn-reserve-top{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:#f7f5f0;cursor:pointer;transition:var(--transition-fast);white-space:nowrap;background-color:#1e2222;border:1px solid #1e2222;padding:.75rem 2rem;font-size:.75rem;font-weight:500}.btn-reserve-top:hover{color:#1e2222;background-color:#0000}[data-theme=dark] .btn-reserve-top{color:#121515;background-color:#f7f5f0;border-color:#f7f5f0}[data-theme=dark] .btn-reserve-top:hover{color:#f7f5f0;background-color:#0000}.header-subnav{border-top:1px solid var(--border-color);justify-content:center;align-items:center;height:50px;padding:0 4rem;display:flex}.subnav-links{align-items:center;gap:2rem;list-style:none;display:flex}.subnav-link-item{align-items:center;display:flex}.subnav-link{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);padding:.5rem 0;font-size:.75rem;position:relative}.subnav-link.brand{font-family:var(--font-serif);color:var(--text-primary);letter-spacing:.05em;font-size:.85rem;font-weight:400}.subnav-link:after{content:"";background-color:var(--accent);width:0;height:1px;transition:var(--transition-fast);position:absolute;bottom:0;left:0}.subnav-link:hover:after,.subnav-link.active:after{width:100%}.subnav-link:hover{color:var(--text-primary)}.subnav-separator{color:var(--text-light);margin-left:.5rem;font-size:.7rem}.section-header{text-align:center;max-width:800px;margin:0 auto 4rem;padding:0 2rem}.section-label{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem;font-size:.75rem;font-weight:500;display:block}.section-title{font-size:3rem;font-weight:300;font-family:var(--font-serif);color:var(--text-primary);margin-bottom:1.5rem}.section-desc{color:var(--text-secondary);font-size:1.05rem;line-height:1.8}.hero-section{height:calc(100vh - 120px);margin-top:120px;position:relative;overflow:hidden}.hero-bg{object-fit:cover;object-position:center bottom;width:100%;height:100%;transition:transform 1.5s}.hero-overlay{z-index:1;background:#0003;width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{text-align:center;color:#fff;z-index:2;width:100%;max-width:800px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-title{font-family:var(--font-serif);letter-spacing:.15em;text-transform:uppercase;color:#fff;margin-top:.5rem;font-size:5rem;font-weight:300}.hero-subtitle{font-family:var(--font-sans);letter-spacing:.4em;text-transform:uppercase;color:#ffffffd9;font-size:.8rem;font-weight:500}.carousel-section{width:100%;margin:4rem 0 0;padding:0;position:relative;overflow:hidden}.carousel-container{width:100%;padding:3.5rem 0;position:relative;overflow:hidden}.carousel-track{will-change:transform;display:flex}.carousel-slide{cursor:pointer;transition:transform .85s cubic-bezier(.25,1,.3,1),opacity .85s cubic-bezier(.25,1,.3,1);position:relative;overflow:hidden;box-shadow:0 12px 30px #00000014}.carousel-slide-img{object-fit:cover;width:100%;height:100%}.carousel-nav-btn{-webkit-backdrop-filter:blur(8px);color:#121515;cursor:pointer;z-index:10;background-color:#ffffffd9;border:1px solid #00000014;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .25s,background-color .25s,color .25s,border-color .25s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 15px #00000014}[data-theme=dark] .carousel-nav-btn{color:#f7f5f0;background-color:#1e2222d9;border-color:#ffffff14}.carousel-nav-btn:hover{color:#f7f5f0;background-color:#121515;border-color:#121515;transform:translateY(-50%)scale(1.08)}[data-theme=dark] .carousel-nav-btn:hover{color:#121515;background-color:#f7f5f0;border-color:#f7f5f0}.carousel-nav-btn.prev{left:4rem}.carousel-nav-btn.next{right:4rem}.accommodation-showcase{max-width:var(--max-width);grid-template-columns:1fr 1fr;gap:3rem;margin:0 auto 4rem;display:grid}.accommodation-col{cursor:pointer;text-align:center;flex-direction:column;gap:1.5rem;display:flex}.accommodation-img-wrapper{width:100%;height:420px;overflow:hidden}.accommodation-img-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s cubic-bezier(.25,1,.5,1)}.accommodation-col:hover .accommodation-img-wrapper img{transform:scale(1.03)}.accommodation-label{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--text-light);font-size:.7rem;font-weight:500}.accommodation-title{color:var(--text-primary);font-size:1.8rem;font-weight:300}.accommodation-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.7}.view-all-link-wrapper{text-align:center;margin:2rem 0 4rem}.view-all-link{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:var(--text-primary);border-bottom:1px solid var(--text-primary);cursor:pointer;padding-bottom:4px;font-size:.8rem;font-weight:500}.view-all-link:hover{color:var(--accent);border-bottom-color:var(--accent)}.expandable-rooms-container{max-height:0;transition:max-height 1s cubic-bezier(.25,1,.5,1);overflow:hidden}.expandable-rooms-container.expanded{max-height:5000px}.getting-here-section{background-color:var(--bg-secondary);text-align:center;padding:6rem 4rem}.getting-here-desc{max-width:750px;color:var(--text-secondary);margin:0 auto 3rem;font-size:1.05rem;line-height:1.8}.map-container{width:100%;max-width:var(--max-width);border:1px solid var(--border-color);background-color:var(--bg-card);height:480px;margin:0 auto;position:relative;overflow:hidden}.map-overlay-style{pointer-events:none;mix-blend-mode:color;opacity:.5;z-index:5;background-color:#eae5df;width:100%;height:100%;position:absolute;top:0;left:0}[data-theme=dark] .map-overlay-style{opacity:.8;mix-blend-mode:difference;background-color:#121515}.leaflet-container{font-family:var(--font-sans)!important}.leaflet-popup-content-wrapper{background-color:var(--bg-card)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;border-radius:0!important;box-shadow:0 10px 30px #0000000d!important}.leaflet-popup-tip{background-color:var(--bg-card)!important}.gallery-filters{max-width:var(--max-width);justify-content:center;align-items:center;gap:2.5rem;margin:0 auto 3rem;padding:0;list-style:none;display:flex}.gallery-filter-btn{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;padding:.5rem 0;font-size:.8rem;font-weight:500;position:relative}.gallery-filter-btn:after{content:"";background-color:var(--accent);width:0;height:1px;transition:var(--transition-fast);position:absolute;bottom:0;left:0}.gallery-filter-btn:hover{color:var(--text-primary)}.gallery-filter-btn:hover:after,.gallery-filter-btn.active:after{width:100%}.gallery-filter-btn.active{color:var(--text-primary);font-weight:600}.gallery-grid{max-width:var(--max-width);grid-template-columns:repeat(12,1fr);gap:1.5rem;margin:0 auto 3rem;padding:0 4rem;display:grid}.gallery-item{background-color:var(--bg-secondary);cursor:pointer;height:220px;transition:var(--transition-fast);position:relative;overflow:hidden}.gallery-item.col-4{grid-column:span 4}.gallery-item.col-6{grid-column:span 6}.gallery-item.col-8{grid-column:span 8}.gallery-item.col-3{grid-column:span 3}.gallery-item-img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.25,1,.5,1)}.gallery-item:hover .gallery-item-img{transform:scale(1.03)}.gallery-item-overlay{opacity:0;width:100%;height:100%;transition:var(--transition-fast);background:#0006;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}.gallery-item:hover .gallery-item-overlay{opacity:1}.gallery-item-title{color:#fff;font-family:var(--font-serif);letter-spacing:.05em;transition:var(--transition-fast);font-size:1.2rem;font-weight:300;transform:translateY(10px)}.gallery-item:hover .gallery-item-title{transform:translateY(0)}.explore-header{flex-direction:column;align-items:center;margin-bottom:3rem;display:flex}.explore-toggle{align-items:center;gap:1.5rem;margin-top:1.5rem;display:flex}.btn-toggle-view{cursor:pointer;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--text-light);transition:var(--transition-fast);background:0 0;border:none;align-items:center;gap:.5rem;font-size:.75rem;display:flex}.btn-toggle-view.active{color:var(--text-primary);font-weight:500}.toggle-icon{font-size:1.1rem}.single-view-container{flex-direction:column;justify-content:center;align-items:center;max-width:700px;height:450px;margin:0 auto;display:flex;position:relative;overflow:hidden}.single-view-img{object-fit:cover;width:100%;height:380px;transition:var(--transition-smooth)}.single-view-caption{font-family:var(--font-serif);text-align:center;color:var(--text-primary);margin-top:1.5rem;font-size:1.4rem}.contact-section{max-width:var(--max-width);grid-template-columns:1.2fr 1.8fr;gap:6rem;margin:0 auto;padding:8rem 4rem;display:grid}.contact-info-col{flex-direction:column;gap:2.5rem;display:flex}.contact-info-title{margin-bottom:.5rem;font-size:2.5rem;font-weight:300}.contact-item-row{flex-direction:column;gap:.25rem;display:flex}.contact-item-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-size:.75rem;font-weight:500}.contact-item-value{font-family:var(--font-serif);color:var(--text-primary);font-size:1.3rem}.contact-form-col{background-color:var(--bg-secondary);border:1px solid var(--border-color);padding:4rem}.contact-form-title{margin-bottom:2rem;font-size:1.8rem;font-weight:300}@media (width<=1024px){.header-top{padding:1rem 2rem}.header-subnav{padding:0 2rem}.subnav-links{gap:1.25rem}.subnav-link{font-size:.7rem}.accommodation-showcase{grid-template-columns:1fr;gap:4rem;padding:0 2rem}.contact-section{grid-template-columns:1fr;gap:4rem;padding:4rem 2rem}.carousel-section{padding:0 2rem}}@media (width<=768px){.header-subnav{display:none}.header-top{padding:.75rem 1rem}.header-logo{margin-left:0;font-size:1.6rem}.btn-reserve-top{padding:.5rem 1.25rem;font-size:.7rem}.carousel-slide{flex:0 0 300px;height:200px}.map-container{height:350px}.single-view-container{height:400px}.single-view-img{height:320px}.contact-form-col{padding:2rem}}.subpage-container{background-color:var(--bg-primary);min-height:calc(100vh - 120px);padding-top:120px}@media (width<=768px){.subpage-container{min-height:calc(100vh - 70px);padding-top:70px}}.accommodation-page-header{text-align:center;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:5rem 2rem 3rem}.rooms-list-container{flex-direction:column;gap:8rem;max-width:1100px;margin:6rem auto;padding:0 2rem;display:flex}.room-row-item{align-items:center;gap:5rem;display:flex}.room-row-item:nth-child(2n){flex-direction:row-reverse}.room-row-img-wrapper{border-radius:2px;flex:0 0 52%;height:380px;overflow:hidden;box-shadow:0 15px 40px #0000000d}.room-row-img{object-fit:cover;width:100%;height:100%;transition:var(--transition-smooth)}.room-row-img-wrapper:hover .room-row-img{transform:scale(1.03)}.room-row-info{flex-direction:column;flex:0 0 48%;gap:1.25rem;display:flex}.room-row-tag{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--accent);font-size:.75rem;font-weight:600}.room-row-name{font-size:2.2rem;font-weight:300;font-family:var(--font-serif);color:var(--text-primary)}.room-row-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.75}.room-row-specs-grid{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);grid-template-columns:1fr 1fr;gap:1rem 1.5rem;margin:.5rem 0;padding:1.5rem 0;display:grid}.room-row-spec-item{flex-direction:column;gap:.25rem;display:flex}.room-row-spec-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--text-light);font-size:.7rem}.room-row-spec-value{color:var(--text-primary);font-size:.95rem;font-weight:400}.btn-book-row{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:#f7f5f0;cursor:pointer;transition:var(--transition-fast);text-align:center;background-color:#1e2222;border:1px solid #1e2222;align-self:flex-start;width:100%;max-width:260px;margin-top:.5rem;padding:.9rem 2rem;font-size:.8rem;font-weight:500}.btn-book-row:hover{color:#1e2222;background-color:#0000}[data-theme=dark] .btn-book-row{color:#121515;background-color:#f7f5f0;border-color:#f7f5f0}[data-theme=dark] .btn-book-row:hover{color:#f7f5f0;background-color:#0000}@media (width<=992px){.room-row-item,.room-row-item:nth-child(2n){flex-direction:column;gap:2.5rem}.room-row-img-wrapper,.room-row-info{flex:0 0 100%;width:100%}.room-row-img-wrapper{height:320px}.rooms-list-container{gap:6rem;margin:4rem auto}.btn-book-row{max-width:100%}}.booking-form{flex-direction:column;gap:1.75rem;margin-top:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;width:100%;display:flex}.form-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);text-align:left;font-size:.75rem;font-weight:500}.form-input{width:100%;font-family:var(--font-sans);background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:2px;outline:none;padding:1rem 1.25rem;font-size:.95rem;transition:border-color .25s,box-shadow .25s}.form-input::placeholder{color:var(--text-light);opacity:.8}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #b89c721a}.form-textarea{resize:vertical;min-height:120px;line-height:1.6}.btn-submit-order{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:#f7f5f0;cursor:pointer;text-align:center;background-color:#1e2222;border:1px solid #1e2222;border-radius:2px;width:100%;margin-top:.5rem;padding:1.1rem 2rem;font-size:.8rem;font-weight:600;transition:all .25s}.btn-submit-order:hover{color:#1e2222;background-color:#0000}.btn-submit-order:disabled{background-color:var(--text-light);border-color:var(--text-light);color:var(--bg-primary);cursor:not-allowed}[data-theme=dark] .btn-submit-order{color:#121515;background-color:#f7f5f0;border-color:#f7f5f0}[data-theme=dark] .btn-submit-order:hover{color:#f7f5f0;background-color:#0000}.contact-section{max-width:var(--max-width);grid-template-columns:1.2fr 1.3fr;align-items:start;gap:6rem;margin:0 auto;padding:8rem 4rem;display:grid}.contact-info-col{text-align:left;flex-direction:column;gap:3.5rem;display:flex}.contact-info-title{font-size:3rem;font-weight:300;font-family:var(--font-serif);color:var(--text-primary);margin-bottom:1.5rem}.contact-info-desc{color:var(--text-secondary);font-size:1.05rem;line-height:1.8}.contact-list{flex-direction:column;gap:2rem;display:flex}.contact-item-row{border-bottom:1px solid var(--border-color);text-align:left;flex-direction:column;gap:.5rem;padding-bottom:1.25rem;display:flex}.contact-item-row:last-child{border-bottom:none}.contact-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:var(--accent);font-size:.75rem;font-weight:600}.contact-item-value{font-family:var(--font-serif);color:var(--text-primary);font-size:1.35rem;font-weight:400}.contact-form-col{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;padding:4.5rem 4rem;box-shadow:0 15px 40px #00000008}.contact-form-title{font-size:2rem;font-family:var(--font-serif);color:var(--text-primary);text-align:center;margin-bottom:2rem;font-weight:300}@media (width<=1024px){.contact-section{grid-template-columns:1fr;gap:4rem;padding:6rem 2rem}.contact-form-col{padding:3rem 2rem}}.footer{color:#f7f5f0;background-color:#1e2222;border-top:1px solid #ffffff0d;padding:6rem 4rem 3rem}.footer-grid{max-width:var(--max-width);grid-template-columns:2fr 1fr 1.5fr;gap:6rem;margin:0 auto 5rem;display:grid}.footer-brand{text-align:left}.footer-brand h2{font-family:var(--font-serif);letter-spacing:.15em;text-transform:uppercase;color:#f7f5f0;margin-bottom:1.5rem;font-size:2.5rem;font-weight:300}.footer-brand p{color:#b2b9b9;max-width:420px;font-size:.95rem;line-height:1.8}.footer-title{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:var(--accent);text-align:left;margin-bottom:2rem;font-size:.75rem;font-weight:600}.footer-links{text-align:left;flex-direction:column;gap:1rem;padding:0;list-style:none;display:flex}.footer-link{color:#b2b9b9;transition:var(--transition-fast);font-size:.95rem;display:inline-block}.footer-link:hover{color:#f7f5f0;transform:translate(4px)}.footer-contact{text-align:left;flex-direction:column;gap:1.5rem;display:flex}.footer-contact .contact-item{flex-direction:column;gap:.35rem;display:flex}.footer-contact .contact-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-size:.7rem}.footer-contact span:not(.contact-label){color:#b2b9b9;font-size:.95rem}.footer-bottom{max-width:var(--max-width);color:#7e8585;border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin:0 auto;padding-top:2.5rem;font-size:.85rem;display:flex}.footer-bottom p{color:#7e8585;font-size:.85rem}.footer-bottom span{cursor:pointer;transition:var(--transition-fast)}.footer-bottom span:hover{color:#f7f5f0}@media (width<=992px){.footer{padding:5rem 2rem 2.5rem}.footer-grid{grid-template-columns:1fr;gap:4rem;margin-bottom:4rem}.footer-brand p{max-width:100%}.footer-bottom{flex-direction:column;align-items:flex-start;gap:1rem}}.booking-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1500;background-color:#00000080;width:100vw;height:100vh;position:fixed;top:0;left:0}.booking-slideover{background-color:var(--bg-primary);z-index:1600;flex-direction:column;width:500px;max-width:100%;height:100vh;transition:right .5s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;top:0;right:-100%;box-shadow:-10px 0 40px #0000001a}.booking-slideover.open{right:0}.booking-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:2.5rem 3rem 1.5rem;display:flex}.booking-title{font-size:1.8rem;font-family:var(--font-serif);color:var(--text-primary);font-weight:300}.btn-booking-close{color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;font-size:2.5rem;line-height:.5}.btn-booking-close:hover{color:var(--accent)}.booking-body{flex:1;padding:2rem 3rem 3rem;overflow-y:auto}.booking-summary-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;margin-bottom:2rem;padding:1.5rem}.booking-summary-room-name{font-family:var(--font-serif);color:var(--text-primary);text-align:left;margin-bottom:.25rem;font-size:1.4rem;font-weight:300}.booking-summary-dates{color:var(--text-secondary);text-align:left;margin-bottom:1.25rem;font-size:.85rem}.booking-pricing-breakdown{border-top:1px dashed var(--border-color);flex-direction:column;gap:.75rem;padding-top:1rem;display:flex}.price-row{color:var(--text-secondary);justify-content:space-between;font-size:.95rem;display:flex}.price-row.total{border-top:1px solid var(--border-color);color:var(--text-primary);padding-top:.75rem;font-size:1.05rem;font-weight:500}.booking-success-container{text-align:center;flex-direction:column;align-items:center;padding:2rem 0;display:flex}.success-icon-wrapper{background-color:var(--accent-light);width:64px;height:64px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.5rem;display:flex}.success-title{font-size:1.8rem;font-family:var(--font-serif);color:var(--text-primary);margin-bottom:.75rem;font-weight:300}.success-desc{color:var(--text-secondary);margin-bottom:2.5rem;font-size:.95rem;line-height:1.6}.success-details{background-color:var(--bg-secondary);border:1px solid var(--border-color);text-align:left;border-radius:4px;flex-direction:column;gap:1rem;width:100%;margin-bottom:2rem;padding:1.5rem;display:flex}.success-detail-row{border-bottom:1px dashed var(--border-color);justify-content:space-between;padding-bottom:.75rem;font-size:.95rem;display:flex}.success-detail-row:last-child{border-bottom:none;padding-bottom:0}.success-detail-label{color:var(--text-secondary)}.success-detail-value{color:var(--text-primary);font-weight:500}.btn-success-close{width:100%;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:#f7f5f0;cursor:pointer;background-color:#1e2222;border:1px solid #1e2222;padding:1rem 2rem;font-size:.8rem;font-weight:600;transition:all .25s}.btn-success-close:hover{color:#1e2222;background-color:#0000}[data-theme=dark] .btn-success-close{color:#121515;background-color:#f7f5f0;border-color:#f7f5f0}[data-theme=dark] .btn-success-close:hover{color:#f7f5f0;background-color:#0000}@media (width<=600px){.booking-slideover{width:100%}.booking-header{padding:1.5rem 2rem 1rem}.booking-body{padding:1.5rem 2rem 2rem}}.booking-flow-container{max-width:var(--max-width);background-color:var(--bg-primary);min-height:calc(100vh - 120px);margin:0 auto;padding:4rem 2rem}.booking-flow-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:3rem;padding-bottom:2rem;display:flex}.btn-back{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;font-size:.75rem;font-weight:500}.btn-back:hover{color:var(--accent)}.booking-steps-nav{align-items:center;gap:1rem;display:flex}.step-nav-item{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.12em;color:var(--text-light);cursor:default;transition:var(--transition-fast);padding:.25rem 0;font-size:.8rem;position:relative}.step-nav-item.active{color:var(--text-primary);font-weight:500}.step-nav-item.completed{color:var(--accent);cursor:pointer}.step-nav-item.completed:hover{color:var(--accent-hover)}.step-arrow{color:var(--text-light);font-size:.75rem}.booking-flow-layout{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:3.5rem;display:grid}.booking-flow-main{flex-direction:column;gap:2rem;display:flex}.booking-flow-sidebar{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:2px;padding:2rem;position:sticky;top:150px;box-shadow:0 10px 30px #00000005}.sidebar-summary-title{font-size:1.15rem;font-family:var(--font-serif);border-bottom:1px solid var(--border-color);text-align:left;margin-bottom:1.5rem;padding-bottom:1rem}.sidebar-summary-content{flex-direction:column;gap:1.25rem;display:flex}.summary-date-block{text-align:left;grid-template-columns:1fr 1fr;gap:1rem;display:grid}.date-item{flex-direction:column;gap:.25rem;display:flex}.date-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-light);font-size:.7rem}.date-val{color:var(--text-primary);font-size:.9rem}.summary-meta-rows{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);text-align:left;flex-direction:column;gap:.75rem;padding:1rem 0;display:flex}.summary-meta-row{color:var(--text-secondary);justify-content:space-between;font-size:.85rem;display:flex}.summary-meta-row strong{color:var(--text-primary);font-weight:500}.price-row-item{color:var(--text-secondary);justify-content:space-between;margin-bottom:.5rem;font-size:.85rem;display:flex}.price-row-item.total-final{margin-bottom:0}.btn-sidebar-next-step{background-color:var(--text-primary);width:100%;color:var(--bg-primary);border:1px solid var(--text-primary);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;cursor:pointer;transition:var(--transition-fast);margin-top:2rem;padding:1rem;font-size:.75rem;font-weight:600}.btn-sidebar-next-step:hover{color:var(--text-primary);background-color:#0000}.btn-sidebar-next-step:disabled{background-color:var(--bg-tertiary);border-color:var(--bg-tertiary);color:var(--text-light);cursor:not-allowed}.calendar-main-title{font-size:1.8rem;font-family:var(--font-serif);text-align:left;margin:0}.calendar-header-row{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.calendar-nav-btn{border:1px solid var(--border-color);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--text-primary);cursor:pointer;background:0 0;border-radius:2px;padding:.4rem 1rem;font-size:.75rem;transition:all .3s}.calendar-nav-btn:hover:not(:disabled){background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.calendar-nav-btn:disabled{opacity:.25;cursor:not-allowed}.aman-calendar-grid{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:2px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding:1.5rem;display:grid}.calendar-month-title{font-size:1.15rem;font-family:var(--font-serif);text-align:center;margin-bottom:1rem}.calendar-days-header{text-align:center;color:var(--text-light);text-transform:uppercase;grid-template-columns:repeat(7,1fr);margin-bottom:.75rem;font-size:.7rem;font-weight:500;display:grid}.calendar-days-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.day-cell{aspect-ratio:1.1;font-family:var(--font-sans);color:var(--text-primary);cursor:default;transition:var(--transition-fast);background:0 0;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;padding:2px 0;font-size:.85rem;display:flex;position:relative}.day-cell.empty{visibility:hidden}.day-cell.disabled{color:var(--text-light);opacity:.3}.day-cell.selectable{cursor:pointer;background-color:var(--bg-primary);border-color:var(--bg-secondary)}.day-cell.selectable:hover{background-color:var(--bg-tertiary);border-color:var(--accent)}.day-cell.selected{background-color:var(--text-primary)!important;color:var(--bg-primary)!important;border-color:var(--text-primary)!important}.day-cell.selected .day-price{color:var(--accent)!important}.day-cell.in-range{background-color:var(--bg-secondary);border-color:var(--border-color)}.day-cell .day-num{font-weight:500}.day-cell .day-price{color:var(--text-secondary);margin-top:1px;font-size:.6rem}.calendar-legend{color:var(--text-secondary);gap:2rem;margin-top:1.5rem;font-size:.85rem;display:flex}.legend-item{align-items:center;gap:.5rem;display:flex}.legend-box{border-radius:2px;width:14px;height:14px;display:inline-block}.legend-box.selected{background-color:var(--text-primary)}.legend-box.range{background-color:var(--bg-secondary);border:1px solid var(--border-color)}.panel-title-serif{font-size:2.2rem;font-family:var(--font-serif);text-align:left;margin-bottom:2rem}.booking-rooms-selection-list{flex-direction:column;gap:2rem;display:flex}.room-selection-row{border:1px solid var(--border-color);background-color:var(--bg-card);border-radius:2px;grid-template-columns:280px 1fr 200px;transition:transform .4s;display:grid;overflow:hidden;box-shadow:0 10px 30px #00000005}.room-selection-row:hover{transform:translateY(-4px)}.room-selection-img-col{width:100%;height:200px;overflow:hidden}.room-selection-img-col img{object-fit:cover;width:100%;height:100%}.room-selection-info-col{text-align:left;flex-direction:column;gap:.5rem;padding:1.5rem 2rem;display:flex}.room-selection-name{font-family:var(--font-serif);font-size:1.5rem;font-weight:300}.room-selection-desc{color:var(--text-secondary);font-size:.88rem;line-height:1.5}.room-selection-icons-row{flex-wrap:wrap;gap:1.25rem;margin-top:1rem;display:flex}.icon-item-spec{color:var(--text-secondary);align-items:center;gap:.35rem;font-size:.82rem;display:flex}.room-selection-action-col{border-left:1px solid var(--border-color);background-color:var(--bg-secondary);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.room-selection-price-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-light);font-size:.7rem}.room-selection-price-value{font-family:var(--font-sans);color:var(--text-primary);margin-bottom:1.5rem;font-size:1.15rem;font-weight:600}.btn-select-room-act{background-color:var(--text-primary);color:var(--bg-primary);border:1px solid var(--text-primary);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:var(--transition-fast);width:100%;padding:.75rem 1.5rem;font-size:.75rem;font-weight:600}.btn-select-room-act:hover{color:var(--text-primary);background-color:#0000}.upgrade-suggestion-container{border:1px solid var(--border-color);background-color:var(--bg-card);border-radius:2px;overflow:hidden;box-shadow:0 15px 40px #00000008}.upgrade-header-banner{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);text-align:left;padding:2rem 3rem}.upgrade-label{font-family:var(--font-sans);letter-spacing:.2em;color:var(--accent);margin-bottom:.5rem;font-size:.7rem;font-weight:600;display:block}.upgrade-title{font-family:var(--font-serif);margin-bottom:.75rem;font-size:1.8rem;font-weight:300}.upgrade-desc{color:var(--text-secondary);max-width:700px;font-size:.95rem;line-height:1.6}.upgrade-compare-grid{grid-template-columns:1.2fr 1.8fr;gap:3rem;padding:3rem;display:grid}.compare-image-box{border-radius:2px;width:100%;height:240px;overflow:hidden}.compare-image-box img{object-fit:cover;width:100%;height:100%}.compare-details-box{text-align:left;flex-direction:column;gap:1.5rem;display:flex}.compare-details-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:baseline;padding-bottom:.75rem;display:flex}.compare-details-header h5{font-family:var(--font-serif);font-size:1.4rem;font-weight:400}.upgrade-premium-cost{color:var(--accent);font-size:1.05rem;font-weight:600}.upgrade-highlights-list{color:var(--text-secondary);flex-direction:column;gap:.5rem;padding:0;font-size:.9rem;list-style:none;display:flex}.upgrade-actions-row{gap:1rem;margin-top:1rem;display:flex}.btn-upgrade-apply{background-color:var(--accent);border:1px solid var(--accent);color:#fff;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:var(--transition-fast);padding:.85rem 2rem;font-size:.75rem;font-weight:600}.btn-upgrade-apply:hover{background-color:var(--accent-hover);border-color:var(--accent-hover)}.btn-upgrade-apply.active{background-color:#10b981;border-color:#10b981}.btn-upgrade-cancel{border:1px solid var(--border-color);color:var(--text-secondary);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:var(--transition-fast);background:0 0;padding:.85rem 1.5rem;font-size:.75rem}.btn-upgrade-cancel:hover{background-color:var(--bg-secondary)}.form-section-block{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:2px;padding:2.5rem 3rem}.form-section-title{font-family:var(--font-serif);border-bottom:1px solid var(--border-color);text-align:left;margin-bottom:1.5rem;padding-bottom:.75rem;font-size:1.4rem;font-weight:400}.booking-flow-success{background-color:var(--bg-card);border:1px solid var(--border-color);text-align:center;border-radius:2px;flex-direction:column;align-items:center;max-width:600px;margin:4rem auto;padding:4rem 3rem;display:flex;box-shadow:0 20px 50px #0000000a}.success-flow-title{font-family:var(--font-serif);margin-top:1rem;margin-bottom:.75rem;font-size:2.2rem;font-weight:300}.success-flow-desc{color:var(--text-secondary);margin-bottom:2.5rem;font-size:.95rem;line-height:1.6}.success-flow-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:2px;flex-direction:column;gap:1rem;width:100%;padding:1.75rem 2rem;display:flex}.success-flow-row{border-bottom:1px dashed var(--border-color);justify-content:space-between;padding-bottom:.75rem;font-size:.9rem;display:flex}.success-flow-row:last-child{border-bottom:none;padding-bottom:0}.success-flow-row span{color:var(--text-secondary)}@media (width<=1024px){.booking-flow-layout{grid-template-columns:1fr;gap:3rem}.booking-flow-sidebar{width:100%;position:static}}@media (width<=768px){.booking-flow-header{flex-direction:column;align-items:flex-start;gap:1.5rem}.aman-calendar-grid{grid-template-columns:1fr;gap:2rem;padding:.75rem}.day-cell .day-price{display:none}.day-cell{aspect-ratio:1;border-radius:4px}.room-selection-row{grid-template-columns:1fr}.room-selection-action-col{border-left:none;border-top:1px solid var(--border-color)}.upgrade-compare-grid{grid-template-columns:1fr;padding:1.5rem}.form-section-block{padding:1.5rem 2rem}}.room-detail-grid{grid-template-columns:1.7fr 1.3fr;align-items:start;gap:4rem;display:grid}.room-detail-left{min-width:0}.room-detail-right{background-color:var(--bg-card);border:1px solid var(--border-color);text-align:left;border-radius:4px;padding:2.5rem;position:sticky;top:140px;box-shadow:0 4px 20px #00000005}.room-detail-highlights{background-color:var(--bg-secondary);border-radius:4px;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:3rem;padding:1.5rem 2rem;display:grid}.room-detail-amenities{grid-template-columns:1fr 1fr;gap:2rem;display:grid}@media (width<=992px){.room-detail-grid{grid-template-columns:1fr;gap:3rem}.room-detail-right{padding:2rem;position:static}}@media (width<=768px){.room-detail-highlights{grid-template-columns:1fr;padding:1.25rem 1.5rem}.room-detail-amenities{grid-template-columns:1fr;gap:1.5rem}}.mobile-menu-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background-color:#1e222266;justify-content:flex-start;width:100vw;height:100vh;animation:.3s fadeIn;display:flex;position:fixed;top:0;left:0}.mobile-menu-drawer{background-color:var(--bg-primary);border-right:1px solid var(--border-color);flex-direction:column;justify-content:space-between;width:80%;max-width:320px;height:100%;padding:2.5rem 2rem;animation:.3s cubic-bezier(.16,1,.3,1) slideInLeft;display:flex;box-shadow:4px 0 24px #0000000d}.mobile-menu-header{border-bottom:1px dashed var(--border-color);justify-content:space-between;align-items:center;padding-bottom:1.25rem;display:flex}.mobile-menu-title{font-family:var(--font-serif);letter-spacing:.15em;color:var(--text-primary);font-size:1.5rem}.mobile-menu-close-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;font-size:2rem;line-height:1}.mobile-menu-nav{flex-grow:1;margin:3rem 0}.mobile-menu-links{flex-direction:column;gap:2rem;padding:0;list-style:none;display:flex}.mobile-menu-link{font-family:var(--font-serif);color:var(--text-secondary);font-size:1.4rem;text-decoration:none;transition:color .25s;display:block}.mobile-menu-link:hover,.mobile-menu-link.active{color:var(--accent)}.mobile-menu-footer{border-top:1px dashed var(--border-color);text-align:center;padding-top:2rem}.btn-reserve-mobile{background-color:var(--accent);color:#fff;width:100%;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;cursor:pointer;border:none;padding:1rem;font-size:.85rem;font-weight:500;transition:background-color .25s}.btn-reserve-mobile:hover{background-color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (width<=768px){.social-links-header{display:none!important}.header-top-right,.header-top-left{gap:.75rem!important}.accommodation-page-header h1,.room-detail-left h1,.explore-header h2,.getting-here-section h2,.contact-info-title{font-size:2.2rem!important}#home h2{font-size:1.8rem!important}.booking-flow-container{padding:2.5rem 1.25rem!important}.booking-flow-header{margin-bottom:2rem!important;padding-bottom:1.25rem!important}.booking-steps-nav{flex-wrap:wrap!important;justify-content:flex-start!important;gap:.5rem!important;width:100%!important}.step-nav-item{letter-spacing:.05em!important;font-size:.72rem!important}.step-arrow{font-size:.65rem!important}.getting-here-section{padding:4rem 1.5rem!important}.map-container{height:320px!important}.gallery-filters{flex-wrap:wrap!important;justify-content:center!important;gap:1.25rem!important;padding:0 1rem!important}.gallery-grid{grid-template-columns:repeat(2,1fr)!important;gap:1rem!important;padding:0 1.5rem!important}.gallery-item.col-4,.gallery-item.col-3{grid-column:span 1!important}.gallery-item.col-6,.gallery-item.col-8{grid-column:span 2!important}}@media (width<=480px){.booking-steps-nav{gap:.4rem!important}.step-arrow{opacity:.5!important;margin:0!important}.step-nav-item{font-size:.68rem!important}.gallery-grid{grid-template-columns:1fr!important;padding:0 1rem!important}.gallery-item.col-4,.gallery-item.col-6,.gallery-item.col-8,.gallery-item.col-3{grid-column:span 1!important;height:180px!important}}.aman-policy-list{text-align:left;flex-direction:column;display:flex}.policy-row-item{border-bottom:1px solid var(--border-color);grid-template-columns:280px 1fr;gap:2rem;padding:1.75rem 0;display:grid}.policy-row-item:first-child{padding-top:.5rem}.policy-row-item:last-child{border-bottom:none}.policy-row-title{font-family:var(--font-serif);color:var(--accent);margin:0;font-size:1.25rem;font-weight:600}.policy-row-desc{color:var(--text-primary);margin:0;font-size:.98rem;font-weight:500;line-height:1.75}@media (width<=768px){.policy-row-item{grid-template-columns:1fr;gap:.5rem;padding:1.25rem 0}.policy-row-title{font-size:1.15rem}.policy-row-desc{font-size:.92rem}}.booking-form-grid-3{grid-template-columns:110px 1fr 1fr;gap:1rem;margin-bottom:1.25rem;display:grid}.booking-form-grid-2{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem;display:grid}@media (width<=600px){.booking-form-grid-3,.booking-form-grid-2{grid-template-columns:1fr;gap:.75rem}}
