@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Lato:wght@300;400;700&display=swap";@custom-variant dark (&:is(.dark *));@theme inline{ --color-background: var(--background); --color-foreground: var(--foreground); --font-sans: var(--font-sans); --font-mono: var(--font-geist-mono); --font-heading: var(--font-sans); --color-sidebar-ring: var(--sidebar-ring); --color-sidebar-border: var(--sidebar-border); --color-sidebar-accent-foreground: var(--sidebar-accent-foreground); --color-sidebar-accent: var(--sidebar-accent); --color-sidebar-primary-foreground: var(--sidebar-primary-foreground); --color-sidebar-primary: var(--sidebar-primary); --color-sidebar-foreground: var(--sidebar-foreground); --color-sidebar: var(--sidebar); --color-chart-5: var(--chart-5); --color-chart-4: var(--chart-4); --color-chart-3: var(--chart-3); --color-chart-2: var(--chart-2); --color-chart-1: var(--chart-1); --color-ring: var(--ring); --color-input: var(--input); --color-border: var(--border); --color-destructive: var(--destructive); --color-accent-foreground: var(--accent-foreground); --color-accent: var(--accent); --color-muted-foreground: var(--muted-foreground); --color-muted: var(--muted); --color-secondary-foreground: var(--secondary-foreground); --color-secondary: var(--secondary); --color-primary-foreground: var(--primary-foreground); --color-primary: var(--primary); --color-popover-foreground: var(--popover-foreground); --color-popover: var(--popover); --color-card-foreground: var(--card-foreground); --color-card: var(--card); --radius-sm: calc(var(--radius) * .6); --radius-md: calc(var(--radius) * .8); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) * 1.4); --radius-2xl: calc(var(--radius) * 1.8); --radius-3xl: calc(var(--radius) * 2.2); --radius-4xl: calc(var(--radius) * 2.6); }:root{--background: oklch(1 0 0);--foreground: oklch(.145 0 0);--card: oklch(1 0 0);--card-foreground: oklch(.145 0 0);--popover: oklch(1 0 0);--popover-foreground: oklch(.145 0 0);--primary: oklch(.205 0 0);--primary-foreground: oklch(.985 0 0);--secondary: oklch(.97 0 0);--secondary-foreground: oklch(.205 0 0);--muted: oklch(.97 0 0);--muted-foreground: oklch(.556 0 0);--accent: oklch(.97 0 0);--accent-foreground: oklch(.205 0 0);--destructive: oklch(.577 .245 27.325);--border: oklch(.922 0 0);--input: oklch(.922 0 0);--ring: oklch(.708 0 0);--chart-1: oklch(.87 0 0);--chart-2: oklch(.556 0 0);--chart-3: oklch(.439 0 0);--chart-4: oklch(.371 0 0);--chart-5: oklch(.269 0 0);--radius: .625rem;--sidebar: oklch(.985 0 0);--sidebar-foreground: oklch(.145 0 0);--sidebar-primary: oklch(.205 0 0);--sidebar-primary-foreground: oklch(.985 0 0);--sidebar-accent: oklch(.97 0 0);--sidebar-accent-foreground: oklch(.205 0 0);--sidebar-border: oklch(.922 0 0);--sidebar-ring: oklch(.708 0 0)}.dark{--background: oklch(.145 0 0);--foreground: oklch(.985 0 0);--card: oklch(.205 0 0);--card-foreground: oklch(.985 0 0);--popover: oklch(.205 0 0);--popover-foreground: oklch(.985 0 0);--primary: oklch(.922 0 0);--primary-foreground: oklch(.205 0 0);--secondary: oklch(.269 0 0);--secondary-foreground: oklch(.985 0 0);--muted: oklch(.269 0 0);--muted-foreground: oklch(.708 0 0);--accent: oklch(.269 0 0);--accent-foreground: oklch(.985 0 0);--destructive: oklch(.704 .191 22.216);--border: oklch(1 0 0 / 10%);--input: oklch(1 0 0 / 15%);--ring: oklch(.556 0 0);--chart-1: oklch(.87 0 0);--chart-2: oklch(.556 0 0);--chart-3: oklch(.439 0 0);--chart-4: oklch(.371 0 0);--chart-5: oklch(.269 0 0);--sidebar: oklch(.205 0 0);--sidebar-foreground: oklch(.985 0 0);--sidebar-primary: oklch(.488 .243 264.376);--sidebar-primary-foreground: oklch(.985 0 0);--sidebar-accent: oklch(.269 0 0);--sidebar-accent-foreground: oklch(.985 0 0);--sidebar-border: oklch(1 0 0 / 10%);--sidebar-ring: oklch(.556 0 0)}@layer base{*{@apply border-border outline-ring/50;}body{@apply bg-background text-foreground;}html{@apply font-sans;}}:root{--spa-gold: #c9a84c;--spa-gold-light: #e4d5a7;--spa-cream: #faf7f2;--spa-white: #ffffff;--spa-charcoal: #2c2c2c;--spa-sage: #9bae9a;--spa-rose: #d4a9a9;--spa-dark: #1a1a1a;--shadow-elegant: 0 4px 30px rgba(0, 0, 0, .06);--shadow-lift: 0 12px 40px rgba(0, 0, 0, .1);--transition-smooth: all .35s cubic-bezier(.25, .46, .45, .94)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Lato,sans-serif;background-color:var(--spa-cream);color:var(--spa-charcoal);line-height:1.7;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5{font-family:Playfair Display,serif;font-weight:600;color:var(--spa-dark)}.spa-app{overflow-x:hidden}.section-header{text-align:center;padding:80px 20px 40px;max-width:700px;margin:0 auto}.section-header h2{font-size:2.8rem;font-weight:600;color:var(--spa-dark);margin-bottom:16px;letter-spacing:-.5px;position:relative;display:inline-block}.section-header h2:after{content:"";display:block;width:60px;height:2px;background:var(--spa-gold);margin:16px auto 0}.section-subtitle{font-size:1.15rem;color:#6b6b6b;font-weight:300;line-height:1.8}.services-section{background:var(--spa-white);padding-bottom:80px}.memberships-section{background:linear-gradient(180deg,var(--spa-cream) 0%,var(--spa-white) 100%);padding-bottom:80px}.reviews-section{background:var(--spa-dark);padding-bottom:80px;color:var(--spa-white)}.reviews-section .section-header h2{color:var(--spa-white)}.reviews-section .section-header h2:after{background:var(--spa-gold)}.reviews-section .section-subtitle{color:#b0b0b0}.contact-section{background:var(--spa-cream);padding-bottom:80px}.spa-footer{background:var(--spa-dark);color:#b0b0b0;padding:60px 40px 30px}.footer-content{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;max-width:1100px;margin:0 auto;gap:40px}.footer-brand h3{font-family:Playfair Display,serif;font-size:1.6rem;color:var(--spa-gold);margin-bottom:6px}.footer-brand p{font-style:italic;color:#888}.footer-links{display:flex;gap:28px}.footer-links a{color:#b0b0b0;text-decoration:none;font-weight:300;transition:var(--transition-smooth);font-size:.95rem;letter-spacing:.5px;text-transform:uppercase}.footer-links a:hover{color:var(--spa-gold)}.footer-contact p{margin-bottom:6px;font-weight:300;font-size:.95rem}.footer-bottom{text-align:center;margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:.85rem;color:#666}@media (max-width: 768px){.section-header h2{font-size:2rem}.section-subtitle{font-size:1rem}.footer-content{flex-direction:column;text-align:center;align-items:center}.footer-links{flex-wrap:wrap;justify-content:center}}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.section-header{animation:fadeUp .8s ease-out}::selection{background:var(--spa-gold-light);color:var(--spa-dark)}
