@font-face{font-family:swiper-icons;src:url(data:application/font-woff;charset=utf-8;base64,\ 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);font-weight:400;font-style:normal}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}:root{--bg: #080808;--surface: #111111;--text: #ffffff;--text-muted: rgba(255, 255, 255, .45);--accent: #c9a96e;--border: rgba(255, 255, 255, .07);--nav-h: 70px;--gap: 3px;--ease: cubic-bezier(.25, .46, .45, .94)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;width:100%}a{text-decoration:none;color:inherit}ul{list-style:none}button{cursor:pointer;font-family:inherit}.serif{font-family:Cormorant Garamond,Georgia,serif}.site-nav{position:fixed;inset:0 0 auto;z-index:900;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;transition:background .35s,backdrop-filter .35s,border-color .35s;border-bottom:1px solid transparent}.site-nav.scrolled{background:#080808e6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom-color:var(--border)}.nav-logo{display:flex;flex-direction:column;line-height:1;flex-shrink:0}.logo-name{font-family:Cormorant Garamond,Georgia,serif;font-size:1.75rem;font-weight:500;letter-spacing:-.5px;white-space:nowrap}.logo-sub{font-size:.55rem;letter-spacing:3.5px;text-transform:uppercase;color:var(--text-muted);margin-top:3px}.nav-links{display:flex;align-items:center}.nav-links a{display:block;padding:.4rem .8rem;font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);transition:color .2s;white-space:nowrap}.nav-links a:hover{color:var(--text)}.nav-right{display:flex;align-items:center;gap:1.5rem;flex-shrink:0}.nav-socials{display:flex;gap:1.2rem}.nav-socials a{font-size:.85rem;color:var(--text-muted);transition:color .2s}.nav-socials a:hover{color:var(--text)}.acuity-embed-button{display:inline-block;text-decoration:none;font-family:Inter,system-ui,sans-serif;font-size:.58rem!important;letter-spacing:2.5px;text-transform:uppercase;color:var(--bg)!important;background:var(--accent)!important;border:none!important;border-radius:0!important;box-shadow:none!important;-webkit-box-shadow:none!important;padding:.65rem 1.4rem!important;transition:background .25s,color .25s;white-space:nowrap}.acuity-embed-button:hover{background:var(--text)!important;color:var(--bg)!important}.footer-booking{display:flex;flex-direction:column;align-items:center;gap:1.25rem;text-align:center}.footer-booking-label{font-family:Cormorant Garamond,Georgia,serif;font-size:1.6rem;font-weight:300;letter-spacing:.5px;color:var(--text)}.footer-book-btn{font-size:.6rem!important;padding:.8rem 2.5rem!important}.nav-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:6px;z-index:950}.nav-burger span{display:block;width:22px;height:1.5px;background:var(--text);transition:transform .35s var(--ease),opacity .25s;transform-origin:center}.nav-burger.active span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-burger.active span:nth-child(2){opacity:0}.nav-burger.active span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;z-index:850;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4rem;transform:translate(-100%);transition:transform .45s cubic-bezier(.77,0,.175,1)}.mobile-menu.open{transform:translate(0)}.mobile-menu-link{background:none;border:none;font-family:Cormorant Garamond,Georgia,serif;font-size:1.9rem;font-weight:300;letter-spacing:1.5px;color:var(--text);transition:color .2s;padding:0}.mobile-menu-link:hover{color:var(--accent)}.mobile-book-btn{margin-top:.5rem;font-size:.6rem!important;padding:.85rem 2.5rem!important;letter-spacing:3px}.mobile-menu-socials{display:flex;gap:2rem;margin-top:1.5rem}.mobile-menu-socials a{font-size:1rem;color:var(--text-muted);transition:color .2s}.mobile-menu-socials a:hover{color:var(--text)}.hero{position:relative;height:100vh;height:100svh;min-height:600px}.hero-swiper{width:100%;height:100%}.hero-swiper .swiper-slide{overflow:hidden}.hero-swiper .swiper-slide img{width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:brightness(.7);transform:scale(1.05);transition:transform 6s ease}.hero-swiper .swiper-slide-active img{transform:scale(1)}.hero-overlay{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:12vh;text-align:center;pointer-events:none;background:linear-gradient(to top,rgba(8,8,8,.92) 0%,rgba(8,8,8,.15) 40%,transparent 70%)}.hero-title{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(3.5rem,9vw,8rem);font-weight:300;letter-spacing:-2px;line-height:.88;margin-bottom:1.5rem}.hero-sub{font-size:.6rem;letter-spacing:6px;text-transform:uppercase;color:var(--text-muted)}.swiper-pagination{bottom:3rem!important}.swiper-pagination-bullet{width:24px;height:2px;border-radius:1px;background:#ffffff4d;opacity:1;transition:background .3s,width .3s;margin:0 3px!important}.swiper-pagination-bullet-active{background:var(--text);width:44px}.filter-bar{position:sticky;top:var(--nav-h);z-index:200;background:var(--bg);border-bottom:1px solid var(--border);display:flex;align-items:stretch;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.filter-bar::-webkit-scrollbar{display:none}.filter-btn{flex-shrink:0;padding:1.1rem 1.4rem;background:none;border:none;font-size:.58rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--text-muted);position:relative;transition:color .2s;white-space:nowrap}.filter-btn:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1.5px;background:var(--accent);transform:scaleX(0);transition:transform .3s var(--ease)}.filter-btn:hover{color:#ffffffbf}.filter-btn.active{color:var(--text)}.filter-btn.active:after{transform:scaleX(1)}.gallery-section{padding:var(--gap);min-height:60vh}.gallery-grid{columns:4;column-gap:var(--gap)}.gallery-empty{text-align:center;padding:6rem 2rem;font-size:.7rem;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted)}.gallery-item{break-inside:avoid;margin-bottom:var(--gap);position:relative;overflow:hidden;background:var(--surface);transform:translateZ(0);opacity:0;animation:tileIn .45s var(--ease) forwards}@keyframes tileIn{to{opacity:1}}.gallery-item:hover .gallery-item-overlay{opacity:1}.gallery-item:hover .lazy-img{transform:scale(1.04)}.gallery-item-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 60%);opacity:0;transition:opacity .3s;display:flex;align-items:flex-end;padding:.85rem;pointer-events:none}.gallery-item-label{font-size:.5rem;letter-spacing:2.5px;text-transform:uppercase;color:#fffc}.lazy-wrap{position:relative;width:100%;background:var(--surface);min-height:80px}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.lazy-placeholder{position:absolute;inset:0;background:linear-gradient(90deg,#111,#1a1a1a,#111 80%);background-size:600px 100%;animation:shimmer 1.6s infinite linear;transition:opacity .3s}.lazy-wrap.is-loaded .lazy-placeholder{opacity:0;pointer-events:none}.lazy-img{position:relative;display:block;width:100%;height:auto;opacity:0;transition:opacity .35s ease,transform .45s var(--ease)}.lazy-wrap.is-loaded .lazy-img{opacity:1}.lightbox{position:fixed;inset:0;z-index:9999;background:#040404f7;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .28s}.lightbox.open{opacity:1;pointer-events:all}.lightbox-img{max-width:92vw;max-height:90vh;width:auto;height:auto;object-fit:contain;opacity:0;transition:opacity .25s;user-select:none;-webkit-user-drag:none}.lightbox-img.ready{opacity:1}.lightbox-loader{position:absolute;width:32px;height:32px;border:2px solid rgba(255,255,255,.1);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.lightbox-close{position:absolute;top:1.25rem;right:1.5rem;background:none;border:none;color:var(--text);font-size:2.2rem;line-height:1;opacity:.5;transition:opacity .2s,transform .2s;font-weight:300}.lightbox-close:hover{opacity:1;transform:rotate(90deg)}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text);font-size:1.8rem;padding:1.5rem;opacity:.35;transition:opacity .2s;line-height:1}.lightbox-prev{left:.5rem}.lightbox-next{right:.5rem}.lightbox-prev:hover,.lightbox-next:hover{opacity:1}.lightbox-counter{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);font-size:.55rem;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);user-select:none}.site-footer{border-top:1px solid var(--border);padding:5rem 2rem 4rem;display:flex;flex-direction:column;align-items:center;gap:2.5rem;text-align:center}.footer-logo{font-family:Cormorant Garamond,Georgia,serif;font-size:3rem;font-weight:300;letter-spacing:-1px}.footer-tagline{font-size:.6rem;letter-spacing:4px;text-transform:uppercase;color:var(--text-muted);margin-top:-1.5rem}.footer-divider{width:40px;height:1px;background:var(--border)}.footer-socials{display:flex;gap:2rem}.footer-socials a{font-size:1rem;color:var(--text-muted);transition:color .2s,transform .2s}.footer-socials a:hover{color:var(--text);transform:translateY(-2px)}.footer-copy{font-size:.55rem;letter-spacing:2px;text-transform:uppercase;color:#ffffff2e}@media (min-width: 1600px){.gallery-grid{columns:5}}@media (max-width: 1200px){.gallery-grid{columns:3}.nav-links a{padding:.4rem .55rem;font-size:.52rem}}@media (max-width: 900px){.nav-links,.nav-right{display:none}.nav-burger{display:flex}.gallery-grid{columns:2}:root{--nav-h: 62px}}@media (max-width: 480px){.gallery-grid{columns:2}:root{--gap: 2px}.site-nav{padding:0 1.25rem}.filter-btn{padding:.9rem 1rem;font-size:.52rem;letter-spacing:1.5px}.lightbox-prev{left:0;padding:1rem}.lightbox-next{right:0;padding:1rem}.hero-title{letter-spacing:-1px}}.nav-text-link{font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);transition:color .2s;white-space:nowrap;padding:.4rem .6rem}.nav-text-link:hover{color:var(--text)}.nav-book-btn{display:inline-block;font-size:.56rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--bg);background:var(--accent);border:none;padding:.62rem 1.4rem;transition:background .25s,color .25s;white-space:nowrap;cursor:pointer;font-family:inherit;text-decoration:none}.nav-book-btn:hover{background:var(--text);color:var(--bg)}.footer-book-btn{display:inline-block;font-size:.58rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--bg);background:var(--accent);padding:.85rem 2.5rem;transition:background .25s;text-decoration:none}.footer-book-btn:hover{background:var(--text)}.mobile-menu-page-btn{background:none;border:none;font-family:Cormorant Garamond,Georgia,serif;font-size:1.9rem;font-weight:300;letter-spacing:1.5px;color:var(--text);transition:color .2s;padding:0;text-decoration:none;display:block;text-align:center}.mobile-menu-page-btn:hover{color:var(--accent)}.about-page{padding-top:var(--nav-h);background:var(--bg);min-height:100vh}.about-hero{position:relative;height:70vh;min-height:480px;overflow:hidden}.about-hero-img{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:brightness(.55)}.about-hero-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:10vh;text-align:center;background:linear-gradient(to top,rgba(8,8,8,.88) 0%,transparent 60%)}.about-hero-sub{font-size:.58rem;letter-spacing:5px;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem}.about-hero-title{font-size:clamp(3rem,7vw,6.5rem);font-weight:300;letter-spacing:-1.5px;line-height:1}.about-content{max-width:960px;margin:0 auto;padding:5rem 2rem 6rem;display:flex;flex-direction:column;gap:4rem}.about-badge{display:inline-flex;align-items:center;gap:.75rem;background:#c9a96e14;border:1px solid rgba(201,169,110,.25);padding:.75rem 1.5rem;align-self:flex-start;font-size:.7rem;letter-spacing:1.5px;color:var(--accent)}.about-badge i{font-size:1rem}.about-body{display:grid;grid-template-columns:1fr 280px;gap:4rem;align-items:start}.about-text{display:flex;flex-direction:column;gap:1.25rem}.about-intro{font-size:1.45rem;font-weight:300;line-height:1.45;color:var(--text)}.about-text p{font-size:.95rem;line-height:1.85;color:#ffffffb8}.about-tagline{font-size:1.3rem!important;font-weight:300!important;color:var(--accent)!important;margin-top:.5rem}.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:1.5px;background:var(--border)}.about-stat{background:var(--surface);padding:1.5rem 1.25rem;display:flex;flex-direction:column;gap:.5rem}.about-stat-number{font-size:2rem;font-weight:300;color:var(--accent)}.about-stat-label{font-size:.6rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}.about-section-title{font-size:2rem;font-weight:300;margin-bottom:2rem;letter-spacing:-.5px}.about-specialty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5px;background:var(--border)}.about-specialty-card{background:var(--surface);padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:flex-start;gap:1rem;transition:background .2s}.about-specialty-card:hover{background:#c9a96e0d}.about-specialty-card i{font-size:1.2rem;color:var(--accent)}.about-specialty-card span{font-size:.65rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--text-muted)}.about-cta{text-align:center;border-top:1px solid var(--border);padding-top:4rem;display:flex;flex-direction:column;align-items:center;gap:2rem}.about-cta p{font-family:Cormorant Garamond,Georgia,serif;font-size:1.8rem;font-weight:300;color:var(--text-muted)}.about-cta-btn{display:inline-block;font-size:.6rem;letter-spacing:3px;text-transform:uppercase;color:var(--bg);background:var(--accent);padding:1rem 3rem;text-decoration:none;transition:background .25s}.about-cta-btn:hover{background:var(--text)}@media (max-width: 768px){.about-body{grid-template-columns:1fr;gap:2.5rem}.about-hero{height:55vh}.about-specialty-grid{grid-template-columns:repeat(2,1fr)}.about-content{padding:3rem 1.5rem 5rem;gap:3rem}}.accent{color:var(--accent)}.bk-page{padding-top:var(--nav-h);min-height:100vh;background:var(--bg)}.bk-header{text-align:center;padding:4.5rem 2rem 3.5rem;border-bottom:1px solid var(--border);color:var(--text)}.bk-header-eyebrow{font-size:.6rem;letter-spacing:4px;color:var(--accent);text-transform:uppercase;margin-bottom:1rem}.bk-header-title{font-size:clamp(2.8rem,6vw,4.5rem);font-weight:300;letter-spacing:-1px;margin:0;color:var(--text)}.bk-header-sub{font-size:.75rem;letter-spacing:2px;color:var(--text-muted);margin-top:.5rem}.bk-header-desc{max-width:600px;margin:1.25rem auto 0;font-size:1rem;color:var(--text-muted);line-height:1.8}.bk-header-retainer{display:inline-flex;align-items:center;gap:.6rem;margin-top:1.25rem;background:#c9a96e14;border:1px solid rgba(201,169,110,.25);color:var(--accent);font-size:.62rem;letter-spacing:1.5px;text-transform:uppercase;padding:.65rem 1.25rem}.bk-retainer-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.bk-header-locations{display:flex;justify-content:center;gap:2.5rem;flex-wrap:wrap;margin-top:1.75rem;margin-bottom:.25rem}.bk-loc-info{display:flex;align-items:flex-start;gap:.65rem;text-align:left}.bk-loc-info-icon{font-size:1.1rem;line-height:1.4;flex-shrink:0}.bk-loc-info>div{display:flex;flex-direction:column;gap:.15rem}.bk-loc-info-label{font-size:.55rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--accent)}.bk-loc-info-val{font-size:.88rem;color:var(--text);line-height:1.4}.bk-container{max-width:860px;margin:0 auto;padding:0 2rem 6rem}.bk-stepbar{display:flex;align-items:center;padding:2.5rem 0 2rem;border-bottom:1px solid var(--border);margin-bottom:2.5rem;overflow-x:auto;gap:0}.bk-step{display:flex;align-items:center;gap:.55rem;flex-shrink:0}.bk-step-icon{width:30px;height:30px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0;transition:border-color .25s,background .25s,color .25s}.bk-step.active .bk-step-icon{border-color:var(--accent);background:var(--accent);color:var(--bg)}.bk-step.done .bk-step-icon{border-color:var(--accent);color:var(--accent);background:transparent}.bk-step-label{font-size:.5rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.bk-step.active .bk-step-label{color:var(--accent)}.bk-step.done .bk-step-label{color:#c9a96e8c}.bk-step-line{flex:1;min-width:18px;height:1px;background:var(--border);margin:0 6px;flex-shrink:1}.bk-step-line.done{background:#c9a96e59}.bk-pkg-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--surface);border:1px solid var(--border);padding:1.25rem 1.5rem;margin-bottom:2rem}.bk-pkg-banner-info{display:flex;flex-direction:column;gap:.3rem}.bk-pkg-banner-name{font-size:1.1rem;font-weight:300}.bk-pkg-banner-meta{font-size:.62rem;letter-spacing:1.5px;color:var(--text-muted)}.bk-pkg-banner-right{display:flex;align-items:center;gap:1.25rem}.bk-pkg-banner-price{font-size:1.4rem;font-weight:300;color:var(--accent)}.bk-pkg-banner-edit{background:none;border:1px solid var(--border);color:var(--text-muted);padding:.4rem .85rem;font-size:.55rem;letter-spacing:2px;text-transform:uppercase;font-family:inherit;cursor:pointer;transition:border-color .2s,color .2s}.bk-pkg-banner-edit:hover{border-color:var(--text-muted);color:var(--text)}.bk-panel{min-height:320px}.bk-panel-h{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:300;letter-spacing:-.5px;margin:0 0 .5rem;color:var(--text)}.bk-panel-sub{font-size:.88rem;color:var(--text-muted);margin:0 0 2rem;line-height:1.6}.bk-section{margin-bottom:3.5rem}.bk-section-hd{display:flex;align-items:center;gap:.85rem;margin-bottom:.75rem}.bk-section-emoji{font-size:1.6rem;line-height:1;flex-shrink:0}.bk-section-title{font-size:clamp(1.4rem,2.5vw,1.9rem);font-weight:300;color:var(--text);margin:0;letter-spacing:-.3px}.bk-section-divider{height:1px;background:var(--border);margin-bottom:1.5rem}.bk-section-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5px;background:var(--border)}.bk-pkg-card{background:var(--surface);padding:2rem 1.75rem 1.5rem;color:var(--text);border:2px solid transparent;text-align:left;display:flex;flex-direction:column;gap:.7rem;transition:background .18s,border-color .18s}.bk-pkg-card:hover{background:#c9a96e0a;border-color:#c9a96e59}.bk-pkg-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap}.bk-pkg-card-name{font-size:1.15rem;font-weight:400;color:var(--text)}.bk-pkg-card-price{font-size:1.5rem;font-weight:300;color:var(--accent);white-space:nowrap}.bk-pkg-card-desc{font-size:.82rem;color:var(--text-muted);line-height:1.65;flex:1}.bk-pkg-card-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--border);flex-wrap:wrap}.bk-pkg-card-dur{font-size:.6rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}.bk-pkg-select-btn{background:var(--accent);border:none;color:var(--bg);padding:.55rem 1.1rem;font-size:.58rem;letter-spacing:2px;text-transform:uppercase;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .18s}.bk-pkg-select-btn:hover{background:var(--text)}.bk-cat-from{font-size:.62rem;letter-spacing:1.5px;text-transform:uppercase;margin-top:.35rem}.mini-cal{background:var(--surface);border:1px solid var(--border);padding:1.5rem;max-width:340px}.mini-cal-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.mini-cal-nav{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.35rem;display:flex;align-items:center;transition:color .15s}.mini-cal-nav:hover{color:var(--text)}.mini-cal-month{font-size:1rem;font-weight:300}.mini-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.mini-cal-dow{text-align:center;font-size:.52rem;letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);padding:.2rem 0 .5rem}.mini-cal-day{background:none;border:1px solid transparent;color:var(--text-muted);width:100%;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;font-size:.75rem;cursor:default;transition:color .12s,background .12s,border-color .12s;font-family:inherit}.mini-cal-day.avail{color:var(--text);cursor:pointer}.mini-cal-day.avail:hover{background:#c9a96e1a;border-color:#c9a96e40;color:var(--accent)}.mini-cal-day.tod{border-color:#c9a96e66}.mini-cal-day.sel{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:500}.mini-cal-day.dis{opacity:.18;cursor:not-allowed}.bk-slots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:.5rem}.bk-slot{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);padding:.75rem .5rem;font-size:.8rem;font-family:inherit;cursor:pointer;text-align:center;transition:border-color .15s,color .15s,background .15s}.bk-slot:hover{border-color:#c9a96e66;color:var(--text)}.bk-slot.sel{border-color:var(--accent);background:#c9a96e14;color:var(--text)}.bk-slots-load{display:flex;align-items:center;gap:.75rem;color:var(--text-muted);font-size:.75rem;letter-spacing:1.5px;padding:2rem 0}.bk-no-slots{color:var(--text-muted);font-size:.82rem;padding:2rem 0;line-height:1.6}.bk-txt-link{background:none;border:none;color:var(--accent);font-family:inherit;font-size:inherit;cursor:pointer;text-decoration:underline;padding:0}.bk-details-layout{display:grid;grid-template-columns:1fr 300px;gap:2rem;align-items:start}.bk-form{display:flex;flex-direction:column;gap:1.25rem}.bk-field{display:flex;flex-direction:column;gap:.5rem}.bk-field label{font-size:.55rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}.bk-field input{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:.85rem 1rem;font-size:.9rem;font-family:inherit;outline:none;width:100%;transition:border-color .2s}.bk-field input:focus{border-color:var(--accent)}.bk-field input.err{border-color:#ef5350}.bk-field textarea{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:.85rem 1rem;font-size:.9rem;font-family:inherit;outline:none;width:100%;resize:vertical;min-height:100px;transition:border-color .2s;line-height:1.6}.bk-field textarea:focus{border-color:var(--accent)}.bk-field select{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:.85rem 1rem;font-size:.9rem;font-family:inherit;outline:none;width:100%;cursor:pointer;transition:border-color .2s;-webkit-appearance:none;appearance:none}.bk-field select:focus{border-color:var(--accent)}.bk-ferr{font-size:.68rem;color:#ef5350}.bk-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.bk-loc-group{display:flex;flex-wrap:wrap;gap:.65rem}.bk-loc-opt{display:flex;align-items:center;gap:.55rem;background:var(--surface);border:1px solid var(--border);padding:.7rem 1.1rem;font-size:.78rem;cursor:pointer;transition:border-color .15s,background .15s;user-select:none}.bk-loc-opt input[type=radio]{display:none}.bk-loc-opt:hover{border-color:#c9a96e66}.bk-loc-opt.sel{border-color:var(--accent);background:#c9a96e0f;color:var(--accent)}.bk-summary{background:var(--surface);border:1px solid var(--border);padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.bk-summary-title{font-size:1rem;font-weight:300;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.bk-sum-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.82rem;gap:.5rem}.bk-sum-row.muted{color:var(--text-muted)}.bk-sum-row.sm{font-size:.72rem}.bk-sum-div{height:1px;background:var(--border);margin:.5rem 0}.bk-sum-note{font-size:.65rem;color:var(--text-muted);line-height:1.6;margin-top:.25rem;padding-top:.5rem;border-top:1px solid var(--border)}.bk-pay-toggle-label{font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin:.75rem 0 .5rem}.bk-pay-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:.75rem}.bk-pay-opt{background:#ffffff08;border:1px solid var(--border);border-radius:3px;padding:12px 10px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:3px;transition:border-color .15s,background .15s;color:var(--text)}.bk-pay-opt:hover{border-color:#c9a96e59}.bk-pay-opt.active{border-color:var(--accent);background:#c9a96e12}.bk-pay-opt-tag{font-size:.6rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted)}.bk-pay-opt.active .bk-pay-opt-tag{color:var(--accent)}.bk-pay-opt-amt{font-size:1.3rem;font-weight:500;color:var(--text);line-height:1.1}.bk-pay-opt.active .bk-pay-opt-amt{color:var(--accent)}.bk-pay-opt-sub{font-size:.6rem;color:var(--text-muted);line-height:1.4}.bk-deposit-banner{display:flex;justify-content:space-between;align-items:baseline;background:var(--surface);border:1px solid var(--border);padding:1.25rem 1.5rem;margin-bottom:1.75rem;font-size:.78rem;color:var(--text-muted)}.bk-deposit-amt{font-size:1.75rem;font-weight:300}.stripe-form{display:flex;flex-direction:column;gap:1.25rem}.stripe-err{color:#ef5350;font-size:.78rem}.bk-pay-btn{background:var(--accent);border:none;color:var(--bg);padding:1rem 2rem;font-size:.62rem;letter-spacing:2.5px;text-transform:uppercase;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background .2s;width:100%}.bk-pay-btn:hover{background:var(--text)}.bk-pay-btn:disabled{opacity:.45;cursor:not-allowed}.stripe-note{display:flex;align-items:center;gap:.5rem;font-size:.62rem;color:var(--text-muted);letter-spacing:.5px}.bk-actions{display:flex;align-items:center;gap:1rem;margin-top:1.75rem}.bk-back-row{margin-top:1.75rem}.bk-back-btn{background:none;border:1px solid var(--border);color:var(--text-muted);padding:.75rem 1.5rem;font-size:.55rem;letter-spacing:2px;text-transform:uppercase;font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:.4rem;flex-shrink:0;transition:border-color .2s,color .2s}.bk-back-btn:hover{border-color:var(--text-muted);color:var(--text)}.bk-next-btn{flex:1;background:var(--accent);border:none;color:var(--bg);padding:.85rem 2rem;font-size:.6rem;letter-spacing:2.5px;text-transform:uppercase;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background .2s}.bk-next-btn:hover{background:var(--text)}.bk-next-btn:disabled{opacity:.45;cursor:not-allowed}.bk-intent-err{color:#ef5350;font-size:.78rem;margin-top:1rem}.bk-init-load{display:flex;align-items:center;justify-content:center;min-height:60vh}.bk-spin{width:18px;height:18px;border:1.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;display:inline-block;flex-shrink:0}.bk-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:5rem 2rem;max-width:560px;margin:0 auto;gap:1.25rem}.bk-success-icon{color:var(--accent)}.bk-success-h2{font-size:2.2rem;font-weight:300;margin:0}.bk-success-sub{color:var(--text-muted);font-size:.88rem;line-height:1.7;margin:0}.bk-success-table{width:100%;background:var(--surface);border:1px solid var(--border);margin:.5rem 0;overflow:hidden}.bk-success-row{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1.5rem;font-size:.82rem;border-bottom:1px solid var(--border)}.bk-success-row:last-child{border-bottom:none}.bk-success-row span:first-child{color:var(--text-muted)}.bk-success-row.muted span:last-child{color:var(--text-muted)}.bk-success-row.accent-val span:last-child{color:var(--accent);font-size:.95rem}.bk-home-btn{display:inline-block;background:var(--accent);color:var(--bg);padding:.85rem 2.5rem;font-size:.58rem;letter-spacing:2.5px;text-transform:uppercase;text-decoration:none;margin-top:.5rem;transition:background .2s}.bk-home-btn:hover{background:var(--text)}@media (max-width: 900px){.bk-section-grid{grid-template-columns:1fr 1fr}}@media (max-width: 720px){.bk-details-layout{grid-template-columns:1fr}.bk-summary{order:-1}.bk-section-grid{grid-template-columns:1fr 1fr}}@media (max-width: 560px){.bk-stepbar{gap:0}.bk-step-label{display:none}.bk-step-line{min-width:10px;margin:0 3px}.bk-slots-grid{grid-template-columns:repeat(2,1fr)}.bk-section-grid{grid-template-columns:1fr}.mini-cal{max-width:100%}.bk-pkg-banner-edit{display:none}.bk-form-row{grid-template-columns:1fr}.bk-loc-group{flex-direction:column}.bk-pkg-card-footer{flex-direction:column;align-items:flex-start}.bk-pkg-select-btn{width:100%;text-align:center}}.booking-page{padding-top:var(--nav-h);min-height:100vh;background:var(--bg)}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:2rem}.admin-login-box{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);padding:3rem 2.5rem;display:flex;flex-direction:column;gap:.5rem}.admin-login-logo{font-size:2rem;font-weight:300;text-align:center;margin-bottom:0}.admin-login-sub{text-align:center;font-size:.58rem;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);margin-bottom:2rem}.admin-login-form{display:flex;flex-direction:column;gap:1.25rem}.admin-login-form label{display:flex;flex-direction:column;gap:.5rem;font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}.admin-login-form input{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:.75rem 1rem;font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s}.admin-login-form input:focus{border-color:var(--accent)}.admin-login-btn{background:var(--accent);border:none;color:var(--bg);padding:.85rem;font-size:.6rem;letter-spacing:2.5px;text-transform:uppercase;font-family:inherit;cursor:pointer;margin-top:.5rem;transition:background .25s}.admin-login-btn:hover{background:var(--text)}.admin-login-err{font-size:.75rem;color:#ef5350;text-align:center}.admin-shell{display:flex;min-height:100vh;background:var(--bg)}.admin-sidebar{width:220px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:2rem 0;position:sticky;top:0;height:100vh;overflow-y:auto}.admin-sidebar-logo{font-size:1.4rem;font-weight:300;padding:0 1.5rem;margin-bottom:.25rem}.admin-sidebar-sub{font-size:.52rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--text-muted);padding:0 1.5rem;margin-bottom:2rem}.admin-nav{display:flex;flex-direction:column;flex:1}.admin-nav-item{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.5rem;background:none;border:none;color:var(--text-muted);font-size:.7rem;letter-spacing:1.5px;text-transform:uppercase;font-family:inherit;cursor:pointer;text-align:left;transition:color .2s,background .2s;border-left:2px solid transparent}.admin-nav-item:hover{color:var(--text);background:#ffffff08}.admin-nav-item.active{color:var(--accent);border-left-color:var(--accent);background:#c9a96e0a}.admin-nav-item i{width:16px;text-align:center}.admin-logout{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.5rem;background:none;border:none;border-top:1px solid var(--border);color:var(--text-muted);font-size:.65rem;letter-spacing:1.5px;text-transform:uppercase;font-family:inherit;cursor:pointer;transition:color .2s;margin-top:auto}.admin-logout:hover{color:#ef5350}.admin-main{flex:1;overflow-y:auto;padding:2.5rem}.admin-tab{display:flex;flex-direction:column;gap:2rem}.admin-tab-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-tab h2{font-size:1.8rem;font-weight:300;letter-spacing:-.5px}.admin-tab h3{font-size:1rem;font-weight:400;color:var(--text-muted);letter-spacing:1px}.admin-add-btn{display:flex;align-items:center;gap:.5rem;background:var(--accent);border:none;color:var(--bg);padding:.65rem 1.25rem;font-size:.58rem;letter-spacing:2px;text-transform:uppercase;font-family:inherit;cursor:pointer;transition:background .2s;white-space:nowrap}.admin-add-btn:hover{background:var(--text)}.admin-add-btn:disabled{opacity:.4;cursor:not-allowed}.admin-empty{text-align:center;padding:4rem 2rem;color:var(--text-muted);font-size:.75rem;letter-spacing:2px;text-transform:uppercase}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th{text-align:left;padding:.65rem 1rem;font-size:.55rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border)}.admin-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text)}.admin-table tr:last-child td{border-bottom:none}.admin-table td small{color:var(--text-muted);font-size:.78rem;display:block;margin-top:.25rem}.admin-actions{display:flex;gap:.5rem;justify-content:flex-end}.admin-actions button{background:none;border:1px solid var(--border);color:var(--text-muted);width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:.7rem;cursor:pointer;transition:border-color .2s,color .2s}.admin-actions button:hover{border-color:var(--accent);color:var(--accent)}.status-pill{display:inline-block;padding:.25rem .75rem;font-size:.55rem;letter-spacing:2px;text-transform:uppercase;border-radius:0}.status-pill.active{background:#4caf501f;color:#4caf50}.status-pill.inactive{background:#ffffff0d;color:var(--text-muted)}.admin-modal-overlay{position:fixed;inset:0;background:#000000bf;z-index:9000;display:flex;align-items:center;justify-content:center;padding:1rem}.admin-modal{background:var(--surface);border:1px solid var(--border);padding:2.5rem;width:100%;max-width:500px;display:flex;flex-direction:column;gap:1.25rem;max-height:90vh;overflow-y:auto}.admin-modal h3{font-size:1.4rem;font-weight:300}.admin-modal label{display:flex;flex-direction:column;gap:.5rem;font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}.admin-modal input,.admin-modal textarea,.admin-modal select{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:.75rem 1rem;font-size:.9rem;font-family:inherit;outline:none;width:100%;transition:border-color .2s;resize:vertical}.admin-modal input:focus,.admin-modal textarea:focus,.admin-modal select:focus{border-color:var(--accent)}.admin-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-toggle{display:flex!important;flex-direction:row!important;align-items:center;gap:.75rem!important;cursor:pointer}.admin-toggle input[type=checkbox]{width:auto;accent-color:var(--accent)}.admin-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.admin-cancel-btn{background:none;border:1px solid var(--border);color:var(--text-muted);padding:.65rem 1.5rem;font-size:.6rem;letter-spacing:2px;text-transform:uppercase;font-family:inherit;cursor:pointer;transition:border-color .2s}.admin-cancel-btn:hover{border-color:var(--text-muted)}.admin-save-btn{background:var(--accent);border:none;color:var(--bg);padding:.65rem 1.75rem;font-size:.6rem;letter-spacing:2px;text-transform:uppercase;font-family:inherit;cursor:pointer;transition:background .2s}.admin-save-btn:hover{background:var(--text)}.avail-section{display:flex;flex-direction:column;gap:1rem}.avail-hint{font-size:.78rem;color:var(--text-muted)}.avail-block-form{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.avail-block-form input{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:.65rem 1rem;font-size:.85rem;font-family:inherit;outline:none;transition:border-color .2s}.avail-block-form input:focus{border-color:var(--accent)}.avail-block-form input[type=text]{flex:1;min-width:160px}.blocked-dates-list{display:flex;flex-direction:column;gap:6px}.blocked-date-item{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--border);padding:.65rem 1rem;font-size:.82rem}.blocked-date-item i{color:#ef5350;margin-right:.5rem}.blocked-date-item button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem;transition:color .2s}.blocked-date-item button:hover{color:#ef5350}.bookings-filter{display:flex;gap:6px;flex-wrap:wrap}.filter-pill{padding:.4rem 1rem;background:none;border:1px solid var(--border);color:var(--text-muted);font-size:.55rem;letter-spacing:2px;text-transform:uppercase;font-family:inherit;cursor:pointer;transition:border-color .2s,color .2s}.filter-pill:hover{border-color:var(--text-muted);color:var(--text)}.filter-pill.active{border-color:var(--accent);color:var(--accent)}.bookings-list{display:flex;flex-direction:column;gap:12px}.booking-card-admin{background:var(--surface);border:1px solid var(--border);padding:1.5rem;display:flex;flex-direction:column;gap:.85rem}.bca-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.bca-header strong{font-family:Cormorant Garamond,Georgia,serif;font-size:1.2rem;font-weight:400;display:block}.bca-pkg{font-size:.65rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted)}.bca-meta{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.8rem;color:var(--text-muted)}.bca-meta i{color:var(--accent);margin-right:.35rem}.bca-notes{font-size:.82rem;color:var(--text-muted);font-style:italic}.bca-notes i{margin-right:.35rem}.bca-actions{display:flex;gap:8px;flex-wrap:wrap}.bca-status-btn{background:none;border:1px solid var(--border);color:var(--text-muted);padding:.4rem .9rem;font-size:.55rem;letter-spacing:1.5px;text-transform:uppercase;font-family:inherit;cursor:pointer;transition:border-color .2s,color .2s}.bca-status-btn:hover{border-color:var(--accent);color:var(--accent)}@media (max-width: 768px){.admin-shell{flex-direction:column}.admin-sidebar{width:100%;height:auto;position:static;flex-direction:row;flex-wrap:wrap;padding:1rem;gap:.5rem}.admin-sidebar-logo,.admin-sidebar-sub{display:none}.admin-nav{flex-direction:row;flex:none}.admin-nav-item{padding:.6rem .85rem;font-size:.55rem;border-left:none;border-bottom:2px solid transparent}.admin-nav-item.active{border-bottom-color:var(--accent);border-left-color:transparent}.admin-logout{border-top:none;border-left:1px solid var(--border);margin-top:0}.admin-main{padding:1.5rem}.admin-modal-row{grid-template-columns:1fr}}
