@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@theme inline{--animation-delay-0: 0s; --animation-delay-75: 75ms; --animation-delay-100: .1s; --animation-delay-150: .15s; --animation-delay-200: .2s; --animation-delay-300: .3s; --animation-delay-500: .5s; --animation-delay-700: .7s; --animation-delay-1000: 1s; --animation-repeat-0: 0; --animation-repeat-1: 1; --animation-repeat-infinite: infinite; --animation-direction-normal: normal; --animation-direction-reverse: reverse; --animation-direction-alternate: alternate; --animation-direction-alternate-reverse: alternate-reverse; --animation-fill-mode-none: none; --animation-fill-mode-forwards: forwards; --animation-fill-mode-backwards: backwards; --animation-fill-mode-both: both; --percentage-0: 0; --percentage-5: .05; --percentage-10: .1; --percentage-15: .15; --percentage-20: .2; --percentage-25: .25; --percentage-30: .3; --percentage-35: .35; --percentage-40: .4; --percentage-45: .45; --percentage-50: .5; --percentage-55: .55; --percentage-60: .6; --percentage-65: .65; --percentage-70: .7; --percentage-75: .75; --percentage-80: .8; --percentage-85: .85; --percentage-90: .9; --percentage-95: .95; --percentage-100: 1; --percentage-translate-full: 1; --animate-in: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-out: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes enter { from { opacity: var(--tw-enter-opacity,1); transform: translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0)); filter: blur(var(--tw-enter-blur,0)); }}@keyframes exit { to { opacity: var(--tw-exit-opacity,1); transform: translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0)); filter: blur(var(--tw-exit-blur,0)); }}--animate-accordion-down: accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-accordion-up: accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-down: collapsible-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-up: collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes accordion-down { from { height: 0; }to { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }}@keyframes accordion-up { from { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }to { height: 0; }}@keyframes collapsible-down { from { height: 0; }to { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }}@keyframes collapsible-up { from { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }to { height: 0; }}--animate-caret-blink: caret-blink 1.25s ease-out infinite; @keyframes caret-blink { 0%,70%,100% { opacity: 1; }20%,50% { opacity: 0; }}}@utility animation-duration-*{--tw-animation-duration: calc(--value(number)*1ms) ; --tw-animation-duration: --value(--animation-duration-*,[duration],"initial",[*]); animation-duration: calc(--value(number)*1ms) ; animation-duration: --value(--animation-duration-*,[duration],"initial",[*]);}@utility delay-*{animation-delay: calc(--value(number)*1ms) ; animation-delay: --value(--animation-delay-*,[duration],"initial",[*]); --tw-animation-delay: calc(--value(number)*1ms) ; --tw-animation-delay: --value(--animation-delay-*,[duration],"initial",[*]);}@utility repeat-*{animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]); --tw-animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]);}@utility direction-*{animation-direction: --value(--animation-direction-*,"initial",[*]); --tw-animation-direction: --value(--animation-direction-*,"initial",[*]);}@utility fill-mode-*{animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]); --tw-animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]);}@utility running{animation-play-state: running;}@utility paused{animation-play-state: paused;}@utility play-state-*{animation-play-state: --value("initial",[*]);}@utility blur-in{--tw-enter-blur: 20px;}@utility blur-in-*{--tw-enter-blur: calc(--value(number)*1px) ; --tw-enter-blur: --value(--blur-*,[*]);}@utility blur-out{--tw-exit-blur: 20px;}@utility blur-out-*{--tw-exit-blur: calc(--value(number)*1px) ; --tw-exit-blur: --value(--blur-*,[*]);}@utility fade-in{--tw-enter-opacity: 0;}@utility fade-in-*{--tw-enter-opacity: calc(--value(number)*.01) ; --tw-enter-opacity: --value(--percentage-*,[*]);}@utility fade-out{--tw-exit-opacity: 0;}@utility fade-out-*{--tw-exit-opacity: calc(--value(number)*.01) ; --tw-exit-opacity: --value(--percentage-*,[*]);}@utility zoom-in{--tw-enter-scale: 0;}@utility zoom-in-*{--tw-enter-scale: calc(--value(number)*1%) ; --tw-enter-scale: --value(ratio) ; --tw-enter-scale: --value(--percentage-*,[*]);}@utility -zoom-in-*{--tw-enter-scale: calc(--value(number)*-1%) ; --tw-enter-scale: calc(--value(ratio)*-1) ; --tw-enter-scale: --value(--percentage-*,[*]);}@utility zoom-out{--tw-exit-scale: 0;}@utility zoom-out-*{--tw-exit-scale: calc(--value(number)*1%) ; --tw-exit-scale: --value(ratio) ; --tw-exit-scale: --value(--percentage-*,[*]);}@utility -zoom-out-*{--tw-exit-scale: calc(--value(number)*-1%) ; --tw-exit-scale: calc(--value(ratio)*-1) ; --tw-exit-scale: --value(--percentage-*,[*]);}@utility spin-in{--tw-enter-rotate: 30deg;}@utility spin-in-*{--tw-enter-rotate: calc(--value(number)*1deg) ; --tw-enter-rotate: calc(--value(ratio)*360deg) ; --tw-enter-rotate: --value(--rotate-*,[*]);}@utility -spin-in{--tw-enter-rotate: -30deg;}@utility -spin-in-*{--tw-enter-rotate: calc(--value(number)*-1deg) ; --tw-enter-rotate: calc(--value(ratio)*-360deg) ; --tw-enter-rotate: --value(--rotate-*,[*]);}@utility spin-out{--tw-exit-rotate: 30deg;}@utility spin-out-*{--tw-exit-rotate: calc(--value(number)*1deg) ; --tw-exit-rotate: calc(--value(ratio)*360deg) ; --tw-exit-rotate: --value(--rotate-*,[*]);}@utility -spin-out{--tw-exit-rotate: -30deg;}@utility -spin-out-*{--tw-exit-rotate: calc(--value(number)*-1deg) ; --tw-exit-rotate: calc(--value(ratio)*-360deg) ; --tw-exit-rotate: --value(--rotate-*,[*]);}@utility slide-in-from-top{--tw-enter-translate-y: -100%;}@utility slide-in-from-top-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-y: calc(--value(ratio)*-100%) ; --tw-enter-translate-y: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-in-from-bottom{--tw-enter-translate-y: 100%;}@utility slide-in-from-bottom-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-y: calc(--value(ratio)*100%) ; --tw-enter-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-left{--tw-enter-translate-x: -100%;}@utility slide-in-from-left-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-in-from-right{--tw-enter-translate-x: 100%;}@utility slide-in-from-right-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-start{&:dir(ltr){ --tw-enter-translate-x: -100%; }&:dir(rtl){ --tw-enter-translate-x: 100%; }}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-in-from-end{&:dir(ltr){ --tw-enter-translate-x: 100%; }&:dir(rtl){ --tw-enter-translate-x: -100%; }}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }}@utility slide-out-to-top{--tw-exit-translate-y: -100%;}@utility slide-out-to-top-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-y: calc(--value(ratio)*-100%) ; --tw-exit-translate-y: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-out-to-bottom{--tw-exit-translate-y: 100%;}@utility slide-out-to-bottom-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-y: calc(--value(ratio)*100%) ; --tw-exit-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-left{--tw-exit-translate-x: -100%;}@utility slide-out-to-left-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-out-to-right{--tw-exit-translate-x: 100%;}@utility slide-out-to-right-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-start{&:dir(ltr){ --tw-exit-translate-x: -100%; }&:dir(rtl){ --tw-exit-translate-x: 100%; }}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-out-to-end{&:dir(ltr){ --tw-exit-translate-x: 100%; }&:dir(rtl){ --tw-exit-translate-x: -100%; }}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }}@custom-variant dark (&:is(.dark *));@theme inline{ --radius-sm: calc(var(--radius) - 4px); --radius-md: calc(var(--radius) - 2px); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) + 4px); --color-background: var(--background); --color-foreground: var(--foreground); --color-card: var(--card); --color-card-foreground: var(--card-foreground); --color-popover: var(--popover); --color-popover-foreground: var(--popover-foreground); --color-primary: var(--primary); --color-primary-foreground: var(--primary-foreground); --color-secondary: var(--secondary); --color-secondary-foreground: var(--secondary-foreground); --color-muted: var(--muted); --color-muted-foreground: var(--muted-foreground); --color-accent: var(--accent); --color-accent-foreground: var(--accent-foreground); --color-destructive: var(--destructive); --color-destructive-foreground: var(--destructive-foreground); --color-border: var(--border); --color-input: var(--input); --color-ring: var(--ring); }:root{--primary: #B88A45;--primary-foreground: #090807;--radius: .25rem;--background: #F5EFE6;--foreground: #181514;--card: #ffffff;--card-foreground: #181514;--popover: #ffffff;--popover-foreground: #181514;--secondary: #ebe4dd;--secondary-foreground: #302521;--muted: #e9e1da;--muted-foreground: #706460;--accent: #B88A45;--accent-foreground: #090807;--destructive: #a23d35;--destructive-foreground: #ffffff;--border: rgba(24, 18, 14, .16);--input: rgba(24, 18, 14, .16);--ring: #B88A45;--onyx: #090807;--graphite: #1B1713;--copper: #B88A45;--gold: #F0D39A;--ivory: #F5EFE6;--ink-soft: #554a45;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1)}*{box-sizing:border-box;border-color:var(--border)}html{scroll-behavior:smooth;background:var(--ivory)}body{margin:0;min-width:320px;background:var(--ivory);color:var(--foreground);font-family:DM Sans,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body,button,a{cursor:default}a,button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{border:0;font:inherit}img{display:block;max-width:100%}::selection{color:var(--ivory);background:var(--copper)}.site-shell{overflow:hidden;background:var(--ivory)}.page-width{width:min(100% - 48px,1240px);margin-inline:auto}.section-pad{padding-block:clamp(5rem,10vw,9rem)}.section-pad--dark{color:var(--ivory);background:var(--onyx)}.eyebrow{margin:0;color:var(--copper);font-size:.68rem;font-weight:600;letter-spacing:.24em;line-height:1.4;text-transform:uppercase}.eyebrow span,.eyebrow--light{color:var(--gold)}.section-heading h2,.about-copy h2,.wellness-copy h2,.location-copy h2,.contact-grid h2,.booking-copy h2,.pricing-intro h2,.feature-copy h2,.intro-copy h2{max-width:720px;margin:1.15rem 0 0;color:inherit;font-family:Cormorant Garamond,serif;font-size:clamp(3rem,6.4vw,6rem);font-weight:500;letter-spacing:-.045em;line-height:.88}.section-heading h2 em,.about-copy h2 em,.wellness-copy h2 em,.location-copy h2 em,.contact-grid h2 em,.booking-copy h2 em,.pricing-intro h2 em,.feature-copy h2 em,.intro-copy h2 em{color:var(--copper);font-style:italic;font-weight:400}.section-heading__text{max-width:430px;margin:1.65rem 0 0;color:var(--ink-soft);font-size:1rem;line-height:1.7}.section-heading--light .section-heading__text{color:#f4efeaa8}.site-header{position:absolute;z-index:20;top:0;right:0;left:0;color:var(--ivory)}.header-inner{display:flex;align-items:center;justify-content:space-between;width:min(100% - 48px,1240px);height:112px;margin-inline:auto;border-bottom:1px solid rgba(244,239,234,.22)}.brand-lockup{display:inline-flex;width:146px;overflow:hidden;background:var(--onyx)}.brand-lockup img{width:100%;height:auto;mix-blend-mode:screen;object-fit:contain}.brand-lockup--compact{width:106px;height:80px;align-items:center}.brand-lockup--compact img{width:100%;height:100%;object-fit:contain}.main-nav{display:flex;align-items:center;gap:clamp(1rem,2.4vw,2.25rem);margin-left:auto;margin-right:clamp(1.5rem,4vw,4rem)}.main-nav a,.header-booking,.ghost-link,.text-link,.instagram-link,.footer-links a,.footer-cta a{transition:color .18s var(--ease-out),opacity .18s var(--ease-out),border-color .18s var(--ease-out),transform .18s var(--ease-out)}.main-nav a{color:#f4efead1;font-size:.7rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase}.main-nav a:hover,.footer-links a:hover{color:var(--gold)}.mobile-nav-cta{display:none}.header-booking{display:inline-flex;align-items:center;gap:.8rem;padding:.75rem 0;border-bottom:1px solid var(--copper);color:var(--ivory);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.header-booking:hover,.footer-cta a:hover{color:var(--gold);border-color:var(--gold);transform:translate(4px)}.menu-button{display:none;align-items:center;justify-content:center;width:42px;height:42px;background:transparent;color:var(--ivory)}.hero-section{position:relative;min-height:min(860px,100svh);overflow:hidden;color:var(--ivory);background:var(--onyx)}.hero-section__image,.hero-section__shade{position:absolute;inset:0}.hero-section__image img{width:100%;height:100%;object-fit:cover;object-position:64% center;opacity:.94}.hero-section__shade{background:linear-gradient(90deg,#0b0b0bf2,#0b0b0bc2 35%,#0b0b0b1f 76%,#0b0b0b2e),linear-gradient(0deg,rgba(11,11,11,.68),transparent 45%)}.hero-section__content{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;min-height:min(860px,100svh);padding-top:160px;padding-bottom:88px}.hero-copy{max-width:800px}.hero-copy h1{max-width:800px;margin:1.3rem 0 0;font-family:Cormorant Garamond,serif;font-size:clamp(4.25rem,9.5vw,9.2rem);font-weight:500;letter-spacing:-.06em;line-height:.79}.hero-copy h1 em{color:var(--gold);font-style:italic;font-weight:400}.hero-copy__intro{margin:2.2rem 0 0;color:#f4efeabd;font-size:clamp(.98rem,1.3vw,1.12rem);line-height:1.65}.hero-copy__actions,.booking-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.3rem;margin-top:2.2rem}.app-button{display:inline-flex;align-items:center;justify-content:space-between;gap:2.5rem;min-width:210px;padding:1rem 1.15rem 1rem 1.35rem;border:1px solid transparent;color:var(--onyx);font-size:.7rem;font-weight:600;letter-spacing:.14em;line-height:1;text-transform:uppercase;transition:transform .16s var(--ease-out),background .18s var(--ease-out),color .18s var(--ease-out),border-color .18s var(--ease-out)}.app-button:active,.price-cta:active,.circle-link:active,.floating-whatsapp:active{transform:scale(.97)}.app-button--rose{background:var(--copper)}.app-button--rose:hover{background:var(--gold)}.app-button--outline{border-color:#f4efea80;color:var(--ivory);background:transparent}.app-button--outline:hover{border-color:var(--gold);color:var(--gold)}.app-button--light{background:var(--ivory)}.ghost-link,.text-link{display:inline-flex;align-items:center;gap:.6rem;color:var(--ivory);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.ghost-link:hover,.text-link:hover,.instagram-link:hover{color:var(--copper);transform:translate(4px)}.hero-note{display:flex;align-items:center;gap:1rem;margin-bottom:.4rem;color:#f4efeaad;font-size:.68rem;letter-spacing:.12em;line-height:1.6;text-transform:uppercase}.hero-note__line,.intro-aside__line{display:block;width:46px;height:1px;background:var(--copper)}.hero-scroll{position:absolute;z-index:3;right:24px;bottom:32px;display:inline-flex;align-items:center;gap:.75rem;color:#f4efea8c;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;transform:rotate(-90deg) translate(100%);transform-origin:bottom right}.intro-section{position:relative;background:var(--ivory)}.intro-grid{display:grid;grid-template-columns:1.1fr 2fr 1fr;gap:3rem;align-items:start}.intro-mark{color:#b88a4557;font-family:Cormorant Garamond,serif;font-size:clamp(8rem,18vw,17rem);font-weight:500;letter-spacing:-.12em;line-height:.64}.intro-copy{padding-top:1rem}.intro-copy h2{max-width:580px;font-size:clamp(3.4rem,6vw,6.1rem)}.intro-copy>p:not(.eyebrow){max-width:510px;margin:2rem 0 0;color:var(--ink-soft);font-size:1.1rem;line-height:1.8}.intro-copy .text-link,.about-copy .text-link,.location-copy .text-link{margin-top:2rem;color:var(--foreground);border-bottom:1px solid rgba(184,138,69,.55);padding-bottom:.7rem}.intro-aside{display:flex;align-items:flex-start;gap:1rem;padding-top:6.2rem;color:var(--ink-soft);font-size:.78rem;letter-spacing:.12em;line-height:1.7;text-transform:uppercase}.services-section{position:relative}.service-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.1rem;margin-top:4.5rem}.service-card{min-width:0}.service-card__image-wrap{position:relative;aspect-ratio:.76;overflow:hidden;background:var(--graphite)}.service-card__image{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.02);transition:transform .5s var(--ease-out),filter .5s var(--ease-out)}.service-card:hover .service-card__image{filter:saturate(1) contrast(1.04);transform:scale(1.04)}.service-card__number{position:absolute;top:1rem;right:1rem;color:var(--gold);font-family:Cormorant Garamond,serif;font-size:1.2rem}.service-card__body{padding:1.25rem .2rem 0}.service-card__body h3{margin:0;color:var(--ivory);font-family:Cormorant Garamond,serif;font-size:1.8rem;font-weight:500;letter-spacing:-.02em}.service-card__body p{min-height:48px;margin:.65rem 0 0;color:#f4efea8c;font-size:.86rem;line-height:1.6}.service-card .text-link,.text-link--light{margin-top:1.1rem;color:var(--gold);font-size:.66rem}.service-list-band{display:grid;grid-template-columns:1.1fr 3fr auto;gap:2rem;align-items:center;margin-top:5.4rem;padding-top:1.6rem;border-top:1px solid rgba(244,239,234,.2)}.service-list{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem}.service-list span{color:#f4efeac2;font-family:Cormorant Garamond,serif;font-size:1.3rem}.circle-link{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid var(--copper);border-radius:50%;color:var(--gold);transition:transform .16s var(--ease-out),background .18s var(--ease-out),color .18s var(--ease-out)}.circle-link:hover{color:var(--onyx);background:var(--gold);transform:rotate(45deg)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,9vw,10rem);align-items:center}.about-visual{padding-right:clamp(0rem,4vw,4rem)}.about-visual__frame{position:relative;width:min(100%,480px);aspect-ratio:.8;margin-left:auto;overflow:hidden;background:var(--graphite)}.about-visual__frame:before{position:absolute;z-index:1;top:15px;left:15px;width:calc(100% - 30px);height:calc(100% - 30px);border:1px solid rgba(244,239,234,.55);content:"";pointer-events:none}.about-visual__frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.88)}.about-visual__caption{display:flex;justify-content:space-between;width:min(100%,480px);margin:.9rem 0 0 auto;color:var(--ink-soft);font-size:.61rem;letter-spacing:.16em;text-transform:uppercase}.about-copy h2{font-size:clamp(3.1rem,5.7vw,5.6rem)}.about-copy>p:not(.eyebrow){max-width:480px;margin:1.8rem 0 0;color:var(--ink-soft);font-size:1rem;line-height:1.8}.about-points{display:grid;gap:.8rem;margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(24,18,14,.17)}.about-points div{display:flex;align-items:center;gap:.7rem;color:var(--foreground);font-size:.78rem;letter-spacing:.04em}.about-points svg{color:var(--copper)}.about-copy .app-button{margin-top:2.3rem}.feature-section{background:var(--graphite)}.feature-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,9rem);align-items:center}.feature-copy h2{font-size:clamp(3.8rem,7vw,7.2rem)}.feature-copy>p:not(.eyebrow){max-width:400px;margin:2rem 0 0;color:#f4efeaa8;font-size:1rem;line-height:1.8}.feature-copy .text-link{margin-top:2rem}.feature-image{position:relative;aspect-ratio:1.1;max-height:620px;overflow:hidden}.feature-image img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.82)}.feature-image:after{position:absolute;inset:1rem;border:1px solid rgba(244,239,234,.46);content:""}.feature-image__stamp{position:absolute;z-index:1;right:2rem;bottom:2rem;color:var(--gold);font-size:.68rem;font-weight:600;letter-spacing:.24em;line-height:1.5;text-align:right}.feature-image__stamp span{color:var(--ivory);font-family:Cormorant Garamond,serif;font-size:1.45rem;font-weight:500;letter-spacing:.1em}.beauty-section{background:var(--ivory)}.beauty-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(3rem,9vw,10rem);align-items:end}.beauty-services{border-top:1px solid rgba(24,18,14,.22)}.beauty-service{display:grid;grid-template-columns:48px 1fr auto;gap:1.15rem;align-items:center;padding:1.35rem 0;border-bottom:1px solid rgba(24,18,14,.22);color:var(--foreground);transition:padding .18s var(--ease-out),color .18s var(--ease-out)}.beauty-service:hover{padding-left:.75rem;color:var(--copper)}.beauty-service__icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--copper);border-radius:50%;color:var(--copper)}.beauty-service h3{margin:0;font-family:Cormorant Garamond,serif;font-size:1.6rem;font-weight:500}.beauty-service p{margin:.28rem 0 0;color:var(--ink-soft);font-size:.83rem}.beauty-service>svg{color:var(--copper)}.wellness-section{background:#e8dfd7}.wellness-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(3rem,9vw,10rem);align-items:center}.wellness-card{position:relative;aspect-ratio:1.07;overflow:hidden;background:var(--graphite)}.wellness-card img{width:100%;height:100%;object-fit:cover;opacity:.92}.wellness-card__overlay{position:absolute;right:1.2rem;bottom:1.2rem;left:1.2rem;display:flex;justify-content:space-between;padding:.75rem 0;border-top:1px solid rgba(244,239,234,.54);color:var(--ivory);font-size:.64rem;font-weight:600;letter-spacing:.2em}.wellness-copy h2,.location-copy h2{font-size:clamp(3.2rem,5.8vw,5.8rem)}.wellness-copy>p:not(.eyebrow),.location-copy>p:not(.eyebrow){max-width:420px;margin:2rem 0 0;color:var(--ink-soft);font-size:1rem;line-height:1.8}.wellness-types{display:grid;gap:.55rem;margin:1.8rem 0 0;padding-top:1.3rem;border-top:1px solid rgba(24,18,14,.18)}.wellness-types span{color:var(--foreground);font-family:Cormorant Garamond,serif;font-size:1.3rem}.wellness-copy .app-button{margin-top:2rem}.pricing-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(3rem,10vw,12rem);align-items:start}.pricing-intro h2{font-size:clamp(3.2rem,5.8vw,5.8rem)}.pricing-intro>p:not(.eyebrow){max-width:390px;margin:2rem 0 0;color:#f4efea9e;line-height:1.8}.promo-note{display:inline-flex;align-items:center;gap:.65rem;margin-top:2.4rem;color:var(--gold);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase}.promo-note__dot{width:7px;height:7px;border-radius:50%;background:var(--copper);box-shadow:0 0 0 5px #b88a451f}.price-table{border-top:1px solid rgba(244,239,234,.28)}.price-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.15rem 0;border-bottom:1px solid rgba(244,239,234,.18)}.price-row__name{display:flex;align-items:center;gap:.8rem;color:#f4efead6;font-family:Cormorant Garamond,serif;font-size:1.55rem}.price-row__name small{padding:.25rem .42rem;color:var(--onyx);background:var(--gold);font-family:DM Sans,sans-serif;font-size:.55rem;font-weight:600;letter-spacing:.12em;line-height:1;text-transform:uppercase}.price-row__value{display:flex;align-items:center;gap:.6rem;white-space:nowrap}.price-row__value del{color:#f4efea5c;font-size:.76rem}.price-row__value strong{color:var(--gold);font-size:1.05rem;font-weight:500}.price-cta{display:inline-flex;align-items:center;gap:1.5rem;margin-top:2rem;padding-bottom:.75rem;border-bottom:1px solid var(--copper);color:var(--gold);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;transition:transform .16s var(--ease-out),color .18s var(--ease-out)}.price-cta:hover{color:var(--ivory);transform:translate(4px)}.special-offer-section{background:var(--ivory);color:var(--foreground);border-top:1px solid rgba(184,138,69,.32);border-bottom:1px solid rgba(24,18,14,.12)}.special-offer-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(3rem,8vw,8rem);align-items:center}.special-offer-visual{position:relative;max-width:430px;margin-inline:auto;padding:1rem;background:#d8c4aa;box-shadow:18px 20px #1b171314}.special-offer-visual:before,.special-offer-visual:after{position:absolute;content:"";pointer-events:none}.special-offer-visual:before{inset:.6rem;border:1px solid rgba(240,211,154,.8);z-index:1}.special-offer-visual:after{width:5rem;height:5rem;right:-1.2rem;bottom:-1.2rem;border-right:1px solid var(--copper);border-bottom:1px solid var(--copper)}.special-offer-visual img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;filter:saturate(.8) contrast(1.04)}.special-offer-stamp{position:absolute;right:1.7rem;bottom:1.6rem;z-index:2;display:grid;place-items:center;width:4.7rem;height:4.7rem;border:1px solid var(--gold);border-radius:50%;color:var(--gold);background:#090807d1;font-family:Cormorant Garamond,serif;font-size:1.45rem;line-height:.62}.special-offer-stamp span{font-family:DM Sans,sans-serif;font-size:.47rem;letter-spacing:.16em;text-transform:uppercase}.special-offer-copy{max-width:570px}.special-offer-copy h2{margin:1rem 0 1.4rem;font-family:Cormorant Garamond,serif;font-size:clamp(3.2rem,6vw,6.4rem);font-weight:400;letter-spacing:-.055em;line-height:.82}.special-offer-copy h2 em{color:var(--copper);font-style:italic}.special-offer-lead{max-width:390px;color:var(--ink-soft);font-size:1rem;line-height:1.7}.special-offer-prices{display:grid;gap:.75rem;margin:2rem 0;padding:1.2rem 0;border-top:1px solid rgba(24,18,14,.18);border-bottom:1px solid rgba(24,18,14,.18)}.voucher-choice{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:1rem;align-items:center;width:100%;padding:.85rem 0;border:0;border-bottom:1px solid rgba(24,18,14,.12);color:var(--ink-soft);background:transparent;font:inherit;font-size:.8rem;letter-spacing:.04em;text-align:left;transition:color .18s var(--ease-out),padding .18s var(--ease-out),background .18s var(--ease-out)}.voucher-choice:first-child{padding-top:0}.voucher-choice:last-child{border-bottom:0;padding-bottom:0}.voucher-choice:hover,.voucher-choice.is-selected{color:var(--foreground)}.voucher-choice.is-selected{padding-left:.8rem;background:#b88a4514}.voucher-choice span{display:grid;gap:.2rem}.voucher-choice i{color:var(--copper);font-size:.57rem;font-style:normal;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.voucher-choice strong{color:var(--foreground);font-weight:600;white-space:nowrap}.voucher-choice svg{color:transparent;transition:color .18s var(--ease-out)}.voucher-choice.is-selected svg{color:var(--copper)}.special-offer-prices strong{color:var(--foreground);font-weight:600}.special-offer-cta{display:inline-flex;align-items:center;gap:1.2rem;padding:1rem 1.25rem;color:var(--ivory);background:var(--onyx);font-size:.7rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;border:0;font:inherit;cursor:pointer;transition:transform .18s var(--ease-out),background .18s var(--ease-out),opacity .18s var(--ease-out)}.special-offer-cta:disabled{cursor:not-allowed;opacity:.72}.special-offer-cta:hover:not(:disabled){background:var(--copper);transform:translateY(-2px)}.special-offer-note{display:block;max-width:390px;margin-top:1rem;color:var(--ink-soft);font-size:.68rem;line-height:1.5}.gallery-section{background:var(--ivory)}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem}.gallery-heading .section-heading__text{max-width:470px}.instagram-link{display:inline-flex;align-items:center;gap:.65rem;padding-bottom:.75rem;border-bottom:1px solid var(--copper);color:var(--foreground);font-size:.7rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.instagram-link svg:first-child{color:var(--copper)}.gallery-filters{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:3.5rem;border-bottom:1px solid rgba(24,18,14,.19)}.gallery-filters button{position:relative;padding:0 0 .9rem;color:var(--ink-soft);background:transparent;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}.gallery-filters button:after{position:absolute;right:0;bottom:-1px;left:0;height:1px;background:var(--copper);content:"";transform:scaleX(0);transform-origin:left;transition:transform .18s var(--ease-out)}.gallery-filters button.is-active,.gallery-filters button:hover{color:var(--foreground)}.gallery-filters button.is-active:after,.gallery-filters button:hover:after{transform:scaleX(1)}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:100px;gap:.8rem;margin-top:1rem}.gallery-item{position:relative;min-width:0;overflow:hidden;background:var(--graphite);text-align:left}.gallery-item--large{grid-column:span 5;grid-row:span 5}.gallery-item--small{grid-column:span 3;grid-row:span 3}.gallery-item--tall{grid-column:span 4;grid-row:span 5}.gallery-item--wide{grid-column:span 5;grid-row:span 3}.gallery-item img{width:100%;height:100%;object-fit:cover;opacity:.9;transition:transform .5s var(--ease-out),opacity .3s var(--ease-out)}.gallery-item:hover img{opacity:.66;transform:scale(1.045)}.gallery-item__meta{position:absolute;right:1rem;bottom:1rem;left:1rem;display:grid;gap:.25rem;color:var(--ivory);opacity:0;transform:translateY(8px);transition:opacity .22s var(--ease-out),transform .22s var(--ease-out)}.gallery-item:hover .gallery-item__meta,.gallery-item:focus-visible .gallery-item__meta{opacity:1;transform:translateY(0)}.gallery-item__meta small{color:var(--gold);font-size:.58rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.gallery-item__meta strong{font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:500}.booking-section{position:relative;background:var(--onyx)}.booking-inner{display:grid;grid-template-columns:1fr 2fr 1.1fr;gap:2rem;align-items:end}.booking-kicker{display:flex;flex-direction:column;gap:1.6rem;color:var(--gold);font-size:.66rem;font-weight:600;letter-spacing:.18em}.booking-kicker .brand-lockup{width:148px;background:var(--onyx)}.booking-kicker .brand-lockup img{mix-blend-mode:screen}.booking-kicker span:first-child{color:var(--copper);font-family:Cormorant Garamond,serif;font-size:5rem;font-weight:500;letter-spacing:-.1em;line-height:.6}.booking-copy h2{font-size:clamp(3.6rem,7vw,7.2rem)}.booking-copy p{margin:1.8rem 0 0;color:#f4efeaa1;font-size:1rem;line-height:1.7}.booking-actions{display:grid;justify-items:start;align-items:start;margin-top:0}.booking-actions small{max-width:250px;color:#f4efea61;font-size:.68rem;line-height:1.5}.location-section{background:var(--ivory)}.special-offer-grid{gap:3rem}.special-offer-grid{grid-template-columns:1fr;gap:2.8rem}.special-offer-visual{width:min(100%,330px);box-shadow:10px 12px #1b171314}.special-offer-copy h2{font-size:clamp(3rem,14vw,4.4rem)}.special-offer-cta{width:100%;justify-content:space-between}.location-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);align-items:center}.location-copy h2{font-size:clamp(3.2rem,5.9vw,6rem)}.location-copy>p:not(.eyebrow){color:var(--foreground);font-family:Cormorant Garamond,serif;font-size:1.55rem;line-height:1.2}.location-note{display:flex;align-items:flex-start;gap:.7rem;max-width:340px;margin-top:1.6rem;color:var(--ink-soft);font-size:.78rem;line-height:1.55}.location-note svg{flex:none;color:var(--copper)}.map-frame{position:relative;min-height:430px;overflow:hidden;background:#ded6ce;filter:saturate(.7) sepia(.14)}.map-frame>div:first-child{height:430px!important}.map-fallback{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;color:var(--foreground);background:#e3d9d0}.map-fallback__grid{position:absolute;inset:-20%;background-image:linear-gradient(22deg,transparent 47%,rgba(184,138,69,.22) 48%,transparent 49%),linear-gradient(104deg,transparent 47%,rgba(24,18,14,.09) 48%,transparent 49%),linear-gradient(rgba(24,18,14,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(24,18,14,.08) 1px,transparent 1px);background-size:190px 140px,240px 180px,34px 34px,34px 34px;opacity:.75;transform:rotate(-7deg)}.map-fallback__pin{position:relative;z-index:1;display:grid;place-items:center;gap:.45rem;width:96px;height:96px;border:1px solid var(--copper);border-radius:50%;color:var(--copper);background:#f4efeac2}.map-fallback__pin span{color:var(--foreground);font-size:.61rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.map-fallback p{position:relative;z-index:1;max-width:220px;margin:1.4rem 0 0;color:var(--ink-soft);font-size:.72rem;line-height:1.55;text-align:center}.map-label{position:absolute;right:1rem;bottom:1rem;display:inline-flex;align-items:center;gap:.5rem;padding:.65rem .85rem;color:var(--ivory);background:#0b0b0be6;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}.map-label svg{color:var(--gold)}.contact-section{background:var(--graphite)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end}.contact-grid h2{font-size:clamp(3.8rem,7vw,7rem)}.contact-intro{max-width:330px;margin:2rem 0 0;color:#f4efea9c;line-height:1.75}.contact-links{border-top:1px solid rgba(244,239,234,.25)}.contact-links a{display:grid;grid-template-columns:44px 1fr auto;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid rgba(244,239,234,.17);color:var(--ivory);transition:color .18s var(--ease-out),padding .18s var(--ease-out)}.contact-links a:hover{padding-left:.55rem;color:var(--gold)}.contact-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--copper);border-radius:50%;color:var(--gold)}.contact-links small,.contact-links strong{display:block}.contact-links small{color:var(--gold);font-size:.6rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.contact-links strong{margin-top:.25rem;font-family:Cormorant Garamond,serif;font-size:1.45rem;font-weight:500}.site-footer{color:var(--ivory);background:var(--onyx)}.footer-top{display:grid;grid-template-columns:1.2fr 1.4fr 1fr;gap:3rem;padding-top:4.5rem;padding-bottom:4.5rem}.footer-brand .brand-lockup{width:174px}.footer-brand p{margin:1.1rem 0 0;color:var(--gold);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase}.footer-brand p span{color:var(--copper)}.footer-links{display:grid;grid-template-columns:repeat(2,max-content);grid-auto-flow:column;gap:.6rem 2.2rem;align-content:start}.footer-links a{color:#f4efea9c;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.footer-cta{justify-self:end;max-width:220px}.footer-cta span{display:block;color:#f4efea8c;font-family:Cormorant Garamond,serif;font-size:1.55rem;line-height:1.05}.footer-cta a{display:inline-flex;align-items:center;gap:.75rem;margin-top:1.5rem;padding-bottom:.6rem;border-bottom:1px solid var(--copper);color:var(--gold);font-size:.67rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding-top:1.1rem;padding-bottom:1.1rem;border-top:1px solid rgba(244,239,234,.18);color:#f4efea61;font-size:.61rem;letter-spacing:.09em;text-transform:uppercase}.floating-whatsapp{position:fixed;z-index:30;right:24px;bottom:22px;display:inline-flex;align-items:center;gap:.6rem;padding:.8rem 1rem;border:1px solid rgba(244,239,234,.2);color:var(--ivory);background:#0b0b0beb;box-shadow:0 12px 30px #0b0b0b33;font-size:.66rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .16s var(--ease-out),color .18s var(--ease-out),border-color .18s var(--ease-out)}.floating-whatsapp svg{color:var(--gold)}.floating-whatsapp:hover{border-color:var(--copper);color:var(--gold);transform:translateY(-3px)}.lightbox{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:2rem;background:#0b0b0bf5;animation:lightbox-in .18s var(--ease-out) both}.lightbox__close{position:absolute;top:1.4rem;right:1.4rem;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--ivory);background:transparent}.lightbox__image-wrap{width:min(92vw,820px)}.lightbox__image-wrap img{width:100%;max-height:76vh;object-fit:contain}.lightbox__image-wrap div{display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;color:var(--ivory)}.lightbox__image-wrap small{color:var(--gold);font-size:.62rem;letter-spacing:.17em;text-transform:uppercase}.lightbox__image-wrap strong{font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:500}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}:focus-visible{outline:2px solid var(--gold);outline-offset:4px}@media (max-width: 1120px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 960px){.page-width,.header-inner{width:min(100% - 40px,760px)}.main-nav{gap:1rem;margin-right:1.5rem}.main-nav a{font-size:.62rem}.intro-grid,.booking-inner{grid-template-columns:.6fr 1.4fr}.intro-aside,.booking-kicker{display:none}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:3rem}.service-card__image-wrap{aspect-ratio:.95}.service-list-band{grid-template-columns:1fr auto}.service-list-band>.eyebrow{grid-column:1 / -1}.about-grid,.feature-grid,.beauty-grid,.wellness-grid,.pricing-grid,.location-grid,.contact-grid,.footer-top{gap:3rem}.footer-top{grid-template-columns:1fr 1fr}.footer-cta{grid-column:1 / -1;justify-self:start}}@media (max-width: 700px){.page-width,.header-inner{width:min(100% - 32px,560px)}.section-pad{padding-block:5.2rem}.site-header{position:absolute}.header-inner{height:90px}.brand-lockup--compact{width:84px;height:68px}.header-booking{display:none}.menu-button{display:inline-flex}.main-nav{position:absolute;top:90px;right:16px;left:16px;display:grid;gap:0;margin:0;padding:.5rem 1.2rem 1rem;border:1px solid rgba(244,239,234,.2);background:#0b0b0bf7;opacity:0;pointer-events:none;transform:translateY(-10px);transition:opacity .18s var(--ease-out),transform .18s var(--ease-out)}.main-nav--open{opacity:1;pointer-events:auto;transform:translateY(0)}.main-nav a{display:flex;align-items:center;justify-content:space-between;padding:.9rem 0;border-bottom:1px solid rgba(244,239,234,.12);font-size:.69rem}.mobile-nav-cta{display:flex!important;color:var(--gold)!important}.hero-section,.hero-section__content{min-height:760px}.hero-section__image img{object-position:66% center}.hero-section__shade{background:linear-gradient(90deg,#0b0b0beb,#0b0b0b5c),linear-gradient(0deg,rgba(11,11,11,.74),transparent 54%)}.hero-section__content{align-items:flex-start;padding-top:190px;padding-bottom:76px}.hero-copy h1{font-size:clamp(4rem,18vw,6.5rem)}.hero-copy__actions{display:grid;justify-items:start;gap:1.2rem}.hero-note,.hero-scroll{display:none}.intro-grid,.about-grid,.feature-grid,.beauty-grid,.wellness-grid,.pricing-grid,.location-grid,.contact-grid,.footer-top{grid-template-columns:1fr}.intro-mark{font-size:8rem}.intro-copy{padding-top:0}.intro-copy h2,.about-copy h2,.feature-copy h2,.wellness-copy h2,.pricing-intro h2,.location-copy h2,.contact-grid h2,.booking-copy h2,.section-heading h2{font-size:clamp(3.2rem,15vw,5.1rem)}.service-grid{grid-template-columns:1fr 1fr;gap:2.1rem .8rem}.service-card__body h3{font-size:1.55rem}.service-card__body p{min-height:66px;font-size:.78rem}.service-list-band{display:block}.service-list,.circle-link{margin-top:1.5rem}.about-visual{padding-right:1.5rem}.about-visual__caption{font-size:.54rem}.feature-image{aspect-ratio:.92}.beauty-grid .section-heading__text{margin-top:1.3rem}.beauty-service{grid-template-columns:42px 1fr auto;gap:.7rem}.beauty-service h3{font-size:1.35rem}.beauty-service p{font-size:.73rem;line-height:1.45}.gallery-heading{display:block}.instagram-link{margin-top:2rem}.gallery-filters{gap:.75rem 1rem;margin-top:2.8rem}.gallery-filters button{font-size:.59rem}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:120px}.gallery-item--large,.gallery-item--tall,.gallery-item--wide{grid-column:span 2;grid-row:span 3}.gallery-item--small{grid-column:span 1;grid-row:span 2}.gallery-item__meta{opacity:1;transform:none}.booking-inner{align-items:start}.booking-actions{justify-items:stretch}.booking-actions .app-button{width:100%}.map-frame,.map-frame>div:first-child{min-height:340px;height:340px!important}.contact-links strong{font-size:1.25rem}.booking-kicker .brand-lockup{width:128px}.footer-brand .brand-lockup{width:160px}.footer-top{padding-top:4rem;padding-bottom:3.5rem}.footer-links{grid-auto-flow:row;grid-template-columns:repeat(2,max-content)}.footer-bottom{display:grid;gap:.45rem;padding-bottom:5.5rem;font-size:.55rem}.floating-whatsapp{right:16px;bottom:15px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.main-nav .header-offer-link{color:var(--gold);border-bottom:1px solid rgba(240,211,154,.68)}.main-nav .header-offer-link:hover{color:var(--ivory)}html{scroll-behavior:smooth}.main-nav a{position:relative;transition:color .18s var(--ease-out),opacity .18s var(--ease-out),transform .18s var(--ease-out)}.main-nav a:after{position:absolute;right:0;bottom:-.55rem;left:0;height:1px;content:"";background:var(--gold);transform:scaleX(0);transform-origin:right center;transition:transform .24s var(--ease-out)}.main-nav a:hover,.main-nav a.is-active{color:var(--ivory)}.main-nav a:hover:after,.main-nav a.is-active:after{transform:scaleX(1);transform-origin:left center}.main-nav .header-offer-link,.main-nav .header-offer-link.is-active{color:var(--gold)}.main-nav .header-offer-link:after{background:var(--gold)}.special-offer-cta,.voucher-choice,.header-booking,.app-button,.price-cta,.text-link,.instagram-link{-webkit-tap-highlight-color:transparent}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.main-nav a,.main-nav a:after{transition:none}}.brand-type{display:grid;gap:.08rem;color:var(--ivory);font-family:Cormorant Garamond,serif;line-height:.78;text-align:center}.brand-type strong{color:var(--gold);font-size:1.02rem;font-weight:500;letter-spacing:.2em}.brand-type em{color:var(--ivory);font-size:1.03rem;font-style:normal;font-weight:500;letter-spacing:.21em}.brand-type small{margin-top:.22rem;color:var(--gold);font-family:DM Sans,sans-serif;font-size:.38rem;font-weight:600;letter-spacing:.36em;text-transform:uppercase}.brand-lockup--compact .brand-type strong,.brand-lockup--compact .brand-type em{font-size:.79rem}.brand-lockup--compact .brand-type small{font-size:.31rem}.special-offer-kicker{display:inline-flex;align-items:center;gap:.8rem;margin-bottom:.8rem;color:var(--ink-soft);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase}.special-offer-kicker:before{width:2.4rem;height:1px;content:"";background:var(--gold)}.special-offer-kicker strong{color:var(--copper);font-weight:600}@media (max-width: 640px){.special-offer-kicker{flex-wrap:wrap;gap:.55rem;line-height:1.4}}
