@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Noto+Serif:ital,wght@0,400;0,700;1,400&family=Playfair+Display:ital,wght@0,400;0,700;1,400&display=swap";@import"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap";:root{--gold: #b8942e;--gold-light: #d4ad3a;--gold-warm: #f5e6b8;--gold-dim: #a07f26;--line: #ded9cd;--hover-shadow: 0 3px 10px rgba(26, 26, 46, .13);--primary: var(--gold);--primary-container: var(--gold-light);--on-primary: #ffffff;--on-primary-container: #4e3000;--primary-fixed-dim: var(--gold-warm);--secondary: #54634b;--secondary-container: #d5e5c7;--on-secondary: #ffffff;--tertiary: #5f5e5e;--tertiary-container: #a09f9f;--surface: #fbf9f6;--surface-container-low: #f5f3f0;--surface-container: #efeeeb;--surface-container-high: #eae8e5;--surface-container-highest: #e4e2df;--surface-container-lowest: #ffffff;--surface-bright: #fbf9f6;--on-surface: #1b1c1a;--on-surface-variant: #4f453a;--outline: #817568;--outline-variant: #d3c4b5;--font-headline: "Noto Serif", "Playfair Display", Georgia, serif;--font-body: "Inter", -apple-system, sans-serif;--font-label: "Inter", -apple-system, sans-serif;--editorial-shadow: 0 20px 40px 0 rgba(27, 28, 26, .04);--ambient-shadow: 0 8px 24px rgba(27, 28, 26, .06)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);background:var(--surface);color:var(--on-surface);line-height:1.6;overflow-x:hidden}::-moz-selection{background:#c5975b4d;color:var(--on-primary-container)}::selection{background:#c5975b4d;color:var(--on-primary-container)}.material-symbols-outlined{font-family:Material Symbols Outlined;font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24}.app{min-height:100dvh}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;gap:1.5rem}.spinner{width:32px;height:32px;border:2px solid var(--outline-variant);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.nav-desktop{position:fixed;top:0;width:100%;z-index:50;background:#fbf9f6cc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:background .5s}.nav-desktop-inner{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem;max-width:1920px;margin:0 auto}.nav-brand{font-family:var(--font-headline);font-size:1.5rem;letter-spacing:.2em;color:var(--primary);text-decoration:none;font-weight:400}.nav-links{display:none;align-items:center;gap:2rem;font-family:var(--font-headline);text-transform:uppercase;font-size:.75rem;letter-spacing:.1em}.nav-links a{color:var(--secondary);text-decoration:none;transition:color .5s;padding-bottom:2px}.nav-links a:hover,.nav-links a.active{color:var(--primary);border-bottom:1px solid rgba(125,87,33,.3)}.nav-book-btn{background:var(--primary);color:var(--on-primary);padding:.75rem 2rem;border:none;cursor:pointer;font-family:var(--font-label);text-transform:uppercase;font-size:.65rem;letter-spacing:.2em;transition:background .5s}.nav-book-btn:hover{background:var(--secondary)}.nav-mobile{position:fixed;top:0;width:100%;z-index:50;height:4rem;background:#fbf9f6cc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;box-shadow:var(--editorial-shadow)}.nav-mobile-brand{font-family:var(--font-headline);font-style:italic;font-size:1.15rem;color:var(--primary);letter-spacing:.05em}.nav-mobile-logo{width:36px;height:auto;-o-object-fit:contain;object-fit:contain}.landing-hero{position:relative;height:100vh;min-height:600px;display:flex;align-items:center;overflow:hidden;padding-top:0}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero-bg img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:grayscale(20%) brightness(95%)}.hero-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,rgba(251,249,246,.45) 0%,transparent 100%)}.hero-content{position:relative;z-index:10;padding:0 3rem;max-width:64rem}.hero-overline{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.3em;color:var(--primary);margin-bottom:1.5rem;font-size:.8rem}.hero-title{font-family:var(--font-headline);font-size:clamp(2.5rem,7vw,5rem);color:var(--on-surface);line-height:1.1;margin-bottom:2.5rem;max-width:48rem;font-weight:400}.hero-title em{font-style:italic;font-weight:400}.hero-cta-row{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.btn-hero-primary{background:var(--primary);color:var(--on-primary);padding:1.25rem 2.5rem;border:none;cursor:pointer;font-family:var(--font-label);text-transform:uppercase;font-size:.75rem;letter-spacing:.2em;transition:all .5s;box-shadow:var(--editorial-shadow)}.btn-hero-primary:hover{background:var(--secondary)}.btn-hero-text{display:flex;align-items:center;gap:.75rem;font-family:var(--font-label);text-transform:uppercase;font-size:.65rem;letter-spacing:.2em;color:var(--on-surface);text-decoration:none;background:none;border:none;cursor:pointer}.btn-hero-text .material-symbols-outlined{color:var(--primary);transition:transform .3s}.btn-hero-text:hover .material-symbols-outlined{transform:translate(4px)}.hero-hours-badge{margin-top:2rem;display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-label);font-size:.75rem;letter-spacing:.1em;color:var(--on-surface-variant);background:#fbf9f6b3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:.5rem 1rem;border-radius:2rem}@media (max-width: 768px){.landing-hero{min-height:100dvh;align-items:flex-end;padding-bottom:0}.hero-gradient{background:linear-gradient(to top,var(--surface) 0%,rgba(251,249,246,.4) 40%,transparent 100%)}.hero-content{padding:0 2rem 4rem;width:100%}.hero-title{font-size:2.5rem;max-width:280px}.hero-cta-row{flex-direction:column;gap:1rem;width:100%}.btn-hero-primary{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;font-size:.8rem}.btn-hero-text{display:none}.hero-overline{font-size:.6rem}}.section-editorial{padding:5rem 3rem}.section-editorial.alt-bg{background:var(--surface-container-low)}.section-editorial .section-inner{max-width:1920px;margin:0 auto}.section-overline{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.2em;color:var(--primary);font-size:.7rem;margin-bottom:1rem}.section-title-serif{font-family:var(--font-headline);font-size:clamp(1.75rem,4vw,3rem);color:var(--on-surface);line-height:1.2;margin-bottom:1rem;font-weight:400}.section-title-serif em{font-style:italic}.section-desc{color:var(--on-surface-variant);font-size:1rem;line-height:1.8;max-width:32rem;font-weight:300}@media (max-width: 768px){.section-editorial{padding:3rem 2rem}}@media (min-width: 769px){.section-editorial{padding:8rem 6rem}}.mood-section{padding:5rem 2rem}.mood-section.alt-bg{background:var(--surface-container-low)}.mood-grid-desktop{display:none}.mood-grid-mobile{display:grid;grid-template-columns:1fr;gap:1.25rem}.mood-card{background:var(--surface-container-low);padding:2rem;border:1px solid transparent;cursor:pointer;transition:all .5s}.mood-card:hover{background:var(--surface-container-lowest);border-color:#d3c4b526}.mood-card-top{display:flex;align-items:flex-start;justify-content:space-between}.mood-card-left{display:flex;flex-direction:column;gap:1rem}.mood-icon{width:3rem;height:3rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.mood-icon.calm{background:var(--secondary-container);color:var(--secondary)}.mood-icon.rejuvenate{background:#c5975b33;color:var(--primary)}.mood-icon.energize{background:var(--secondary-container);color:var(--secondary)}.mood-card-info h4{font-family:var(--font-headline);font-size:1.15rem;color:var(--on-surface);font-weight:400}.mood-card-info p{font-family:var(--font-label);font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:var(--on-surface-variant);margin-top:.25rem}.mood-arrow{opacity:0;transition:opacity .3s;color:var(--primary)}.mood-card:hover .mood-arrow{opacity:1}.mood-tags{display:flex;gap:.5rem;margin-top:1.25rem;flex-wrap:wrap}.mood-tag{padding:.25rem .75rem;background:var(--surface-container);font-family:var(--font-label);font-size:.55rem;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-variant);border-radius:2rem}@media (min-width: 769px){.mood-section{padding:8rem 6rem}.mood-grid-mobile{display:none}.mood-grid-desktop{display:flex;gap:4rem;justify-content:center;flex-wrap:wrap}.mood-circle{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem;cursor:pointer}.mood-circle-icon{width:10rem;height:10rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-container-lowest);border:1px solid rgba(211,196,181,.1);transition:all .7s;box-shadow:var(--editorial-shadow);position:relative}.mood-circle:hover .mood-circle-icon{background:var(--secondary-container)}.mood-circle-icon .material-symbols-outlined{font-size:2rem}.mood-circle-icon.calm .material-symbols-outlined{color:var(--secondary)}.mood-circle-icon.rejuvenate .material-symbols-outlined{color:var(--primary)}.mood-circle-icon.energize .material-symbols-outlined{color:var(--tertiary)}.mood-circle-label h4{font-family:var(--font-headline);font-size:1.35rem;color:var(--on-surface);font-weight:400;margin-bottom:.5rem}.mood-circle-label p{font-family:var(--font-label);font-size:.6rem;text-transform:uppercase;letter-spacing:.2em;color:var(--on-surface-variant)}.mood-header{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:end;margin-bottom:4rem}}@media (max-width: 768px){.mood-header{margin-bottom:2rem}}.about-editorial{padding:5rem 2rem;background:var(--surface-container-low)}.about-inner{display:flex;flex-direction:column;gap:2rem;max-width:1920px;margin:0 auto}.about-text-block{flex:1}.about-text-block h3{font-family:var(--font-headline);font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.3;margin-bottom:1.5rem;font-weight:400}.about-quote{font-family:var(--font-body);font-style:italic;font-weight:300;color:var(--on-surface-variant);line-height:1.8;font-size:1rem;margin-bottom:1.5rem}.about-philosophy-link{display:inline-block;font-family:var(--font-label);font-size:.6rem;text-transform:uppercase;letter-spacing:.2em;color:var(--primary);border-bottom:1px solid rgba(125,87,33,.2);padding-bottom:.5rem;text-decoration:none;transition:border-color .3s;background:none;border-top:none;border-left:none;border-right:none;cursor:pointer}.about-philosophy-link:hover{border-bottom-color:var(--primary)}.about-image-wrap{flex:1}.about-image-wrap img{width:100%;aspect-ratio:4/5;-o-object-fit:cover;object-fit:cover;box-shadow:0 20px 60px #1b1c1a14}@media (min-width: 769px){.about-editorial{padding:8rem 6rem}.about-inner{flex-direction:row;gap:5rem;align-items:flex-start}.about-text-block{padding-top:2rem}}.service-toggle{display:flex;gap:0;margin-bottom:2rem;border-bottom:1px solid rgba(211,196,181,.3)}.toggle-btn{padding:.75rem 1.5rem;background:none;border:none;cursor:pointer;font-family:var(--font-label);font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:var(--on-surface-variant);transition:all .3s;border-bottom:2px solid transparent;margin-bottom:-1px}.toggle-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.toggle-btn:hover{color:var(--primary)}.service-grid-landing{display:grid;grid-template-columns:1fr;gap:1.5rem}.service-card-landing{background:var(--surface-container-lowest);padding:2rem;position:relative;transition:all .5s;border:1px solid transparent;box-shadow:var(--editorial-shadow)}.service-card-landing:hover{border-color:#d3c4b526}.service-badge{position:absolute;top:1rem;right:1rem;font-family:var(--font-label);font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;padding:.25rem .75rem;border-radius:2rem;background:var(--secondary-container);color:var(--secondary)}.service-badge.bestseller{background:var(--primary-container);color:var(--on-primary-container)}.service-badge.vip{background:linear-gradient(135deg,#c5975b,#e8b96a,#c5975b);background-size:200%;color:#fff;font-weight:700;letter-spacing:.15em;animation:vip-badge-shimmer 3s ease-in-out infinite,vip-badge-pulse 2.5s ease-in-out infinite;box-shadow:0 0 10px #c5975b99,0 0 22px #c5975b4d;text-shadow:0 0 6px rgba(255,255,255,.4)}.service-badge.most-requested{background:#c5975b1f;color:var(--primary);border:1px solid rgba(197,151,91,.4);font-weight:600;animation:most-req-pulse 3s ease-in-out infinite}.service-card-landing.is-vip{border:1px solid rgba(197,151,91,.35)!important;box-shadow:var(--editorial-shadow),0 0 20px #c5975b1f,0 0 40px #c5975b0f!important;animation:vip-card-glow 3s ease-in-out infinite;position:relative;overflow:hidden}.service-card-landing.is-vip:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#c5975b0f,#c5975b00 60%);pointer-events:none}.service-card.is-vip{border:1px solid var(--primary);background:var(--gold-warm)}.service-card.is-vip .service-name{color:var(--gold-dim)}@keyframes vip-badge-shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes vip-badge-pulse{0%,to{box-shadow:0 0 8px #c5975b99,0 0 18px #c5975b40}50%{box-shadow:0 0 16px #c5975be6,0 0 34px #c5975b73}}@keyframes most-req-pulse{0%,to{border-color:#c5975b40;box-shadow:none}50%{border-color:#c5975ba6;box-shadow:0 0 8px #c5975b33}}@keyframes vip-card-glow{0%,to{box-shadow:var(--editorial-shadow),0 0 16px #c5975b1a,0 0 32px #c5975b0a}50%{box-shadow:var(--editorial-shadow),0 0 28px #c5975b38,0 0 56px #c5975b1a}}.service-card-name{font-family:var(--font-headline);font-size:1.25rem;color:var(--on-surface);margin-bottom:.5rem;font-weight:400}.service-card-desc{font-family:var(--font-body);font-size:.85rem;color:var(--on-surface-variant);line-height:1.7;font-weight:300;font-style:italic;margin-bottom:1rem}.service-card-meta{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.25rem}.service-card-duration{font-family:var(--font-label);font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:var(--on-surface-variant);display:flex;align-items:center;gap:.25rem}.service-card-price{font-family:var(--font-headline);font-size:1.1rem;color:var(--primary);font-weight:700}.btn-book-service{font-family:var(--font-label);font-size:.6rem;text-transform:uppercase;letter-spacing:.15em;color:var(--primary);background:none;border:1px solid rgba(211,196,181,.3);padding:.75rem 1.5rem;cursor:pointer;transition:all .5s}.btn-book-service:hover{background:var(--primary);color:var(--on-primary)}.service-icon-landing{display:none}@media (min-width: 769px){.service-grid-landing{grid-template-columns:repeat(2,1fr);gap:2rem}}@media (min-width: 1024px){.service-grid-landing{grid-template-columns:repeat(3,1fr)}}.reviews-rating{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}.stars{color:var(--primary-container);font-size:1.1rem;letter-spacing:2px}.rating-text{font-family:var(--font-label);font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:var(--on-surface-variant)}.reviews-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.review-card{background:var(--surface-container-lowest);padding:2rem;box-shadow:var(--editorial-shadow);transition:all .3s}.review-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.review-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--surface-container-high);color:var(--primary);display:flex;align-items:center;justify-content:center;font-family:var(--font-headline);font-weight:700;font-size:1rem}.review-name{font-family:var(--font-headline);font-size:.9rem;color:var(--on-surface)}.review-source{font-family:var(--font-label);font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;color:var(--on-surface-variant)}.review-stars{margin-left:auto;color:var(--primary-container);font-size:.85rem;letter-spacing:2px}.review-text{font-family:var(--font-body);font-style:italic;font-weight:300;color:var(--on-surface-variant);line-height:1.8;font-size:.9rem}@media (min-width: 769px){.reviews-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.contact-card{padding:1.5rem;background:var(--surface-container-lowest);box-shadow:var(--editorial-shadow);transition:all .3s}.contact-card h3{font-family:var(--font-headline);font-size:1rem;color:var(--on-surface);margin-bottom:.5rem;font-weight:400}.contact-card p{font-size:.85rem;color:var(--on-surface-variant);line-height:1.6;font-weight:300}.contact-icon{font-size:1.25rem;margin-bottom:.75rem;color:var(--primary)}.contact-link{display:inline-block;margin-top:.5rem;font-family:var(--font-label);font-size:.6rem;text-transform:uppercase;letter-spacing:.15em;color:var(--primary);text-decoration:none;border-bottom:1px solid rgba(125,87,33,.2);padding-bottom:2px;transition:border-color .3s}.contact-link:hover{border-bottom-color:var(--primary)}.map-container{border-radius:0;overflow:hidden;margin-top:2rem}.map-container iframe{border-radius:0}@media (min-width: 769px){.contact-grid{grid-template-columns:repeat(4,1fr)}}.cta-banner{background:var(--primary);padding:5rem 2rem;text-align:center}.cta-banner h2{font-family:var(--font-headline);font-size:1.75rem;color:var(--on-primary);margin-bottom:.75rem;font-weight:400}.cta-banner p{color:#fffc;margin-bottom:2rem;font-weight:300}.cta-banner .btn-hero-primary{background:var(--on-primary);color:var(--primary)}.cta-banner .btn-hero-primary:hover{background:var(--primary-fixed-dim);color:var(--on-primary-container)}.footer{background:var(--surface-container-low);padding:0;border:none}.footer-inner{display:grid;grid-template-columns:1fr;gap:2.5rem;padding:4rem 2rem;max-width:1920px;margin:0 auto}.footer-brand{display:flex;flex-direction:column;gap:1rem}.footer-brand-name{font-family:var(--font-headline);font-size:1.25rem;color:var(--primary);letter-spacing:.15em}.footer-tagline{font-family:var(--font-headline);font-style:italic;font-size:.95rem;color:var(--secondary);line-height:1.6}.footer-nav h4{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.2em;font-size:.6rem;color:var(--primary);margin-bottom:1rem}.footer-nav a{display:block;font-family:var(--font-headline);font-style:italic;font-size:.95rem;color:var(--secondary);text-decoration:none;margin-bottom:.75rem;transition:opacity .3s}.footer-nav a:hover{opacity:.7}.footer-copy{font-family:var(--font-label);font-size:.55rem;text-transform:uppercase;letter-spacing:.2em;color:var(--secondary);opacity:.6;padding-top:1rem}.footer-social{display:flex;gap:1rem}.footer-social a{color:var(--primary);text-decoration:none;transition:opacity .3s}.footer-social a:hover{opacity:.7}@media (min-width: 769px){.footer-inner{grid-template-columns:1.5fr 1fr 1.5fr;gap:4rem;padding:6rem}}.floating-concierge{position:fixed;bottom:2.5rem;right:2.5rem;z-index:50;background:var(--primary-container);color:var(--on-primary-container);padding:1.5rem;border-radius:50%;border:1px solid rgba(255,255,255,.2);box-shadow:0 12px 40px #7d572140;cursor:pointer;transition:all .5s;display:flex;align-items:center;gap:0;overflow:hidden}.floating-concierge:hover{transform:scale(1.05);border-radius:2rem;padding:1.25rem 1.75rem;gap:.75rem}.floating-concierge .fab-label{font-family:var(--font-label);font-size:.6rem;text-transform:uppercase;letter-spacing:.15em;max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .5s}.floating-concierge:hover .fab-label{max-width:8rem}@media (max-width: 768px){.floating-concierge{display:none}}.mobile-bottom-nav{position:fixed;bottom:0;left:0;width:100%;z-index:50;background:#fbf9f6e6;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;justify-content:space-around;align-items:center;height:5rem;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid rgba(211,196,181,.15)}.mobile-bottom-nav a,.mobile-bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--outline);font-family:var(--font-label);font-size:.55rem;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;background:none;border:none;cursor:pointer;transition:color .3s}.mobile-bottom-nav a.active,.mobile-bottom-nav button.active{color:var(--primary);font-weight:600}.mobile-bottom-nav .material-symbols-outlined{font-size:1.25rem;margin-bottom:.25rem}@media (min-width: 769px){.mobile-bottom-nav{display:none}}.mobile-sticky-cta{display:none}.booking-header{position:fixed;top:0;width:100%;z-index:50;height:4rem;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem}.btn-back{font-family:var(--font-label);font-size:.85rem;letter-spacing:.02em;color:var(--primary);background:none;border:none;cursor:pointer;padding:.6rem .5rem;min-height:44px;display:flex;align-items:center;transition:opacity .2s}.btn-back:hover{opacity:.7}.booking-brand{display:flex;align-items:center;gap:.5rem}.booking-brand span{font-family:var(--font-headline)!important;font-style:italic;font-size:.95rem!important;color:var(--primary)}.booking-brand img{width:36px;height:auto}.steps-wrapper{padding:5rem 1.5rem 1rem;background:var(--surface)}.steps{display:flex;align-items:center;justify-content:center;gap:0}.step-item{display:flex;flex-direction:column;align-items:center;gap:.4rem}.step-dot{width:2.25rem;height:2.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-label);font-size:.75rem;font-weight:600;transition:all .2s}.step-dot.pending{background:var(--surface-container-high);color:var(--on-surface-variant)}.step-dot.active{background:var(--primary);color:var(--on-primary)}.step-dot.done{background:var(--gold-dim);color:var(--on-primary)}.step-item span{font-family:var(--font-label);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--on-surface-variant)}.step-line{width:3rem;height:2px;background:var(--surface-container-high);margin:0 .5rem}.step-line.done{background:var(--gold-dim)}.content{padding:2rem 1.5rem 8rem;max-width:720px;margin:0 auto}.content .section-overline{margin-bottom:.5rem}.content .section-title,.content .section-title-serif{font-family:var(--font-body);font-size:1.75rem;color:var(--on-surface);margin-bottom:.5rem;font-weight:600}.content .section-title em,.content .section-title-serif em{font-style:italic;color:var(--primary);font-weight:700}.section-subtitle{color:var(--on-surface-variant);font-size:1rem;line-height:1.6;font-weight:400;margin-bottom:1.5rem}.service-grid{display:grid;grid-template-columns:1fr;gap:.85rem}.service-card{display:flex;align-items:center;gap:.75rem;padding:1.25rem;background:var(--surface-container-lowest);cursor:pointer;transition:border-color .2s,box-shadow .2s;border:1px solid var(--line)}.service-card:hover{border-color:var(--primary);box-shadow:var(--hover-shadow)}.service-card:active{box-shadow:none;transform:translateY(1px)}.service-card.selected{background:var(--gold-warm);border-color:var(--primary)}.service-icon{display:none}.service-info{flex:1;min-width:0}.service-name{font-family:var(--font-body);font-size:1rem;color:var(--on-surface);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-weight:600}.badge-inline{font-family:var(--font-label);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;padding:.2rem .55rem;border:1px solid var(--line);background:var(--surface-container-high);color:var(--on-surface-variant)}.badge-inline.bestseller{background:var(--gold-warm);color:var(--gold-dim);border-color:var(--primary)}.badge-inline.vip{background:var(--primary);color:#fff;font-weight:700;border-color:var(--primary)}.badge-inline.most-requested{background:var(--surface);color:var(--primary);border:1px solid var(--primary);font-weight:600}.service-desc-inline{font-size:.9rem;color:var(--on-surface-variant);font-weight:400;font-style:italic;margin-top:.25rem;line-height:1.5}.service-duration{font-family:var(--font-label);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--on-surface-variant);margin-top:.3rem}.service-price{font-family:var(--font-body);font-variant-numeric:tabular-nums;font-size:1.15rem;color:var(--primary);font-weight:700;white-space:nowrap}.service-check{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;color:var(--primary);font-weight:700;font-size:1rem}.selected-pill{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;background:var(--surface-container-low);border:1px solid var(--line);padding:.85rem 1rem;margin-bottom:1.5rem;font-size:.95rem}.selected-pill .sep{color:var(--outline-variant)}.selected-pill .dur{font-family:var(--font-label);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-variant)}.selected-pill .price{font-family:var(--font-body);font-variant-numeric:tabular-nums;color:var(--primary);font-weight:700}.calendar{background:var(--surface-container-lowest);border:1px solid var(--line);padding:1.5rem;margin-bottom:2rem}.cal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.cal-header h3{font-family:var(--font-body);font-size:1.15rem;color:var(--primary);font-weight:600}.cal-nav{display:flex;gap:.5rem}.cal-nav button{width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--line);cursor:pointer;color:var(--on-surface-variant);font-size:1.1rem;transition:border-color .2s,color .2s}.cal-nav button:hover:not(:disabled){color:var(--primary);border-color:var(--primary)}.cal-nav button:disabled{opacity:.3;cursor:not-allowed}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.5rem}.cal-weekday{text-align:center;font-family:var(--font-label);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--on-surface-variant);padding:.5rem 0}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.95rem;background:none;border:1px solid transparent;cursor:pointer;color:var(--on-surface);transition:background .15s,border-color .15s;font-weight:500}.cal-day.empty{visibility:hidden}.cal-day:disabled{opacity:.25;cursor:not-allowed}.cal-day.today{font-weight:700;color:var(--primary);border-color:var(--line)}.cal-day.selected{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.cal-day:not(:disabled):not(.empty):not(.selected):hover{background:var(--gold-warm);border-color:var(--primary)}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.time-slot{padding:.9rem .5rem;text-align:center;background:var(--surface-container-lowest);border:1px solid var(--line);cursor:pointer;font-family:var(--font-body);font-size:.95rem;color:var(--on-surface);min-height:44px;transition:border-color .2s,box-shadow .2s}.time-slot:hover:not(:disabled){border-color:var(--primary);box-shadow:var(--hover-shadow)}.time-slot.selected{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.time-slot.full{opacity:.3;text-decoration:line-through;cursor:not-allowed}.time-slot:disabled{opacity:.3;cursor:not-allowed}@media (min-width: 480px){.time-grid{grid-template-columns:repeat(4,1fr)}}.summary-card{background:var(--surface-container-low);border:1px solid var(--line);padding:1.5rem;margin-bottom:2rem}.summary-row{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.95rem}.summary-row+.summary-row{border-top:1px solid var(--line)}.summary-label{color:var(--on-surface-variant);font-weight:400}.summary-value{font-weight:600}.summary-price{font-family:var(--font-body);font-variant-numeric:tabular-nums;color:var(--primary);font-weight:700;font-size:1.1rem}.form-group{margin-bottom:1.5rem}.form-label{display:block;font-family:var(--font-label);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--on-surface-variant);margin-bottom:.5rem}.form-label-opt{opacity:.6;font-style:italic;text-transform:none;letter-spacing:0}.form-input{width:100%;padding:.85rem 1rem;font-size:1rem;background:var(--surface);border:1px solid var(--line);color:var(--on-surface);font-family:var(--font-body);outline:none;transition:border-color .2s}.form-input:focus{border-color:var(--primary)}.form-input::-moz-placeholder{color:var(--outline-variant);font-style:italic}.form-input::placeholder{color:var(--outline-variant);font-style:italic}textarea.form-input{resize:vertical;min-height:5.5rem}select.form-input{cursor:pointer;background:var(--surface)}select.form-input option{color:var(--on-surface);background:var(--surface)}.form-hint{margin-top:.4rem;font-size:.8rem;font-style:italic;color:var(--on-surface-variant);line-height:1.4}.pref-pills{display:flex;gap:.5rem;flex-wrap:wrap}.pref-pill{flex:1 1 auto;min-width:5.5rem;min-height:44px;padding:.65rem .9rem;font-family:var(--font-body);font-size:.95rem;color:var(--on-surface-variant);background:var(--surface-container-low);border:1px solid var(--line);cursor:pointer;transition:border-color .2s,color .2s}.pref-pill:hover{border-color:var(--primary);color:var(--on-surface)}.pref-pill-active{background:var(--primary);border-color:var(--primary);color:var(--on-primary);font-weight:600}.cbx{position:relative}.cbx-list{position:absolute;top:100%;left:0;right:0;z-index:20;margin:.25rem 0 0;max-height:14rem;overflow-y:auto;list-style:none;padding:.25rem;background:var(--surface-container-lowest);border:1px solid var(--on-surface)}.cbx-option{padding:.65rem .75rem;font-family:var(--font-body);font-size:.95rem;color:var(--on-surface);cursor:pointer}.cbx-option:hover,.cbx-option[aria-selected=true]{background:var(--gold-warm);color:var(--gold-dim)}.phone-wrap{display:flex;align-items:center;gap:.5rem;border:1px solid var(--line);padding:0 1rem;background:var(--surface);transition:border-color .2s}.phone-wrap:focus-within{border-color:var(--primary)}.phone-prefix{font-family:var(--font-label);font-size:1rem;color:var(--on-surface-variant);padding:.85rem 0}.phone-input{flex:1;padding:.85rem 0;font-size:1rem;background:transparent;border:none;color:var(--on-surface);font-family:var(--font-body);outline:none}.phone-input::-moz-placeholder{color:var(--outline-variant);font-style:italic}.phone-input::placeholder{color:var(--outline-variant);font-style:italic}.error-msg{background:#ba1a1a0f;border:1px solid rgba(186,26,26,.25);color:#ba1a1a;padding:1rem;font-size:.95rem;margin-top:1rem}.flow-callout{margin-top:.5rem;padding:.75rem 1rem;background:var(--gold-warm);border:1px solid var(--primary);display:flex;align-items:center;gap:.5rem}.success-screen{text-align:center;padding:3rem 0}.success-check{width:4.5rem;height:4.5rem;border-radius:50%;background:var(--secondary);color:var(--on-secondary);display:flex;align-items:center;justify-content:center;font-size:1.75rem;margin:0 auto 1.5rem;font-weight:700}.success-screen h2{font-family:var(--font-body);font-size:1.75rem;margin-bottom:.5rem;font-weight:700}.order-number{font-family:var(--font-label);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--primary);margin-bottom:2rem}.success-details{background:var(--surface-container-low);border:1px solid var(--line);padding:1.5rem;margin-bottom:2rem;text-align:left}.success-detail-row{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.95rem}.success-detail-row+.success-detail-row{border-top:1px solid var(--line)}.btn-primary{width:100%;min-height:52px;padding:1rem;background:var(--primary);color:var(--on-primary);border:none;cursor:pointer;font-family:var(--font-label);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;transition:background .2s,box-shadow .2s}.btn-primary:hover:not(:disabled){background:var(--gold-dim);box-shadow:var(--hover-shadow)}.btn-primary:active:not(:disabled){box-shadow:none;transform:translateY(1px)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{width:100%;min-height:52px;padding:1rem;background:none;color:var(--primary);border:1px solid var(--line);cursor:pointer;font-family:var(--font-label);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;transition:background .2s,box-shadow .2s}.btn-secondary:hover{background:var(--surface-container-low);box-shadow:var(--hover-shadow)}.btn-secondary:active{box-shadow:none;transform:translateY(1px)}.sticky-bar{position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--surface);border-top:1px solid var(--line);padding:1rem 1.5rem}.sticky-inner{max-width:720px;margin:0 auto}.sticky-summary{font-family:var(--font-label);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--on-surface-variant);margin-bottom:.75rem;text-align:center}.fade-in{animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (min-width: 769px){.nav-links{display:flex}.nav-mobile{display:none}}@media (max-width: 768px){.nav-desktop{display:none}.content{padding-bottom:10rem}}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.about-text{color:var(--on-surface-variant);font-weight:300;line-height:1.8;margin-bottom:1rem;font-size:.95rem}.about-tagline{font-family:var(--font-headline);font-style:italic;color:var(--secondary);font-size:1rem}.hero{padding:0;margin:0;background:none}.blog-reading-progress{position:fixed;top:0;left:0;height:3px;z-index:9999;background:linear-gradient(90deg,var(--primary),#D4A853);transition:width .15s ease-out;border-radius:0 2px 2px 0}.blog-detail{max-width:720px!important;margin:0 auto!important;padding:6rem 1.5rem 4rem!important}.blog-content h2{font-family:var(--font-headline);font-size:1.65rem;font-weight:700;color:var(--on-surface);margin:3.5rem 0 1.25rem;line-height:1.25;letter-spacing:-.02em;position:relative;padding-top:1.5rem}.blog-content h2:before{content:"";position:absolute;top:0;left:0;width:40px;height:2px;background:linear-gradient(90deg,var(--primary),transparent);border-radius:2px}.blog-content h3{font-family:var(--font-headline);font-size:1.25rem;font-weight:600;color:var(--on-surface);margin:2.5rem 0 1rem;line-height:1.3;letter-spacing:-.01em}.blog-content p{margin-bottom:1.65rem;color:var(--on-surface);font-weight:300;font-size:1.08rem;line-height:1.85;letter-spacing:.005em;word-spacing:.02em}.blog-content>nav+p:first-letter,.blog-content>p:first-of-type:first-letter{float:left;font-family:var(--font-headline);font-size:3.8rem;font-weight:700;line-height:.85;padding:.08em .12em 0 0;color:var(--primary);margin-top:.05em}.blog-content ul,.blog-content ol{margin:1.25rem 0 2rem 1.75rem;color:var(--on-surface);padding-left:.25rem}.blog-content li{margin-bottom:.75rem;line-height:1.75;font-weight:300;font-size:1.05rem;padding-left:.25rem}.blog-content li::marker{color:var(--primary);font-weight:600}.blog-content blockquote{border-left:3px solid var(--primary);padding:1.5rem 2rem;margin:2.5rem 0;background:#c5975b0a;font-style:italic;color:var(--on-surface);font-size:1.15rem;line-height:1.7;letter-spacing:.01em;border-radius:0 12px 12px 0;position:relative}.blog-content blockquote:before{content:'"';position:absolute;top:-.15rem;left:.5rem;font-family:var(--font-headline);font-size:3.5rem;color:var(--primary);opacity:.3;line-height:1}.blog-content a{color:var(--primary);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#c5975b59;text-decoration-thickness:1.5px;transition:all .25s ease;font-weight:400}.blog-content a:hover{text-decoration-color:var(--primary);opacity:.85}.blog-content img{max-width:100%;border-radius:16px;margin:2rem 0;box-shadow:0 4px 24px #0000001f}.blog-content .faq-item{padding:1.5rem 0;border-bottom:1px solid rgba(197,151,91,.1)}.blog-content .faq-item:last-child{border-bottom:none}.blog-content .faq-item h3{font-size:1.1rem;font-weight:600;margin:0 0 .75rem;color:var(--on-surface);padding-top:0}.blog-content .faq-item h3:before{display:none}.blog-content .faq-item p{font-size:1rem;margin-bottom:0;color:var(--on-surface-variant);line-height:1.75}.blog-content details{background:#c5975b08;border:1px solid rgba(197,151,91,.1);border-radius:14px;padding:1.25rem 1.5rem;margin-bottom:1rem;transition:all .3s ease}.blog-content details[open]{background:#c5975b0f}.blog-content details summary{font-weight:600;cursor:pointer;color:var(--on-surface);font-size:1.02rem;line-height:1.5;list-style:none;display:flex;align-items:center;gap:.5rem}.blog-content details summary:before{content:"▸";color:var(--primary);font-size:.9rem;transition:transform .2s}.blog-content details[open] summary:before{transform:rotate(90deg)}.blog-content details p{margin-top:1rem;margin-bottom:0;font-size:1rem}.blog-content .breadcrumb,.blog-content nav.breadcrumb,.blog-content nav[aria-label=Breadcrumb]{font-size:.78rem;color:var(--on-surface-variant);margin-bottom:2rem;letter-spacing:.02em}.blog-content .breadcrumb ol,.blog-content nav.breadcrumb ol,.blog-content nav[aria-label=Breadcrumb] ol{list-style:none;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin:0;padding:0}.blog-content .breadcrumb li,.blog-content nav.breadcrumb li,.blog-content nav[aria-label=Breadcrumb] li{display:flex;align-items:center;gap:.4rem;margin:0;padding:0;font-size:.78rem;line-height:1}.blog-content .breadcrumb li+li:before,.blog-content nav.breadcrumb li+li:before,.blog-content nav[aria-label=Breadcrumb] li+li:before{content:"›";color:var(--on-surface-variant);opacity:.5;font-size:.85rem}.blog-content .breadcrumb a,.blog-content nav.breadcrumb a,.blog-content nav[aria-label=Breadcrumb] a{color:var(--primary);text-decoration:none;font-weight:500}.blog-content .breadcrumb a:hover,.blog-content nav.breadcrumb a:hover,.blog-content nav[aria-label=Breadcrumb] a:hover{text-decoration:underline}.blog-content .author-box{display:flex;align-items:flex-start;gap:1.25rem;padding:1.75rem;background:linear-gradient(135deg,#c5975b0f,#c5975b05);border:1px solid rgba(197,151,91,.12);border-radius:16px;margin:3rem 0 2rem}.blog-content .author-box .author-info{display:flex;flex-direction:column;gap:.35rem}.blog-content .author-box strong{font-size:1rem;font-weight:600;color:var(--on-surface)}.blog-content .author-box span[itemprop=jobTitle]{font-size:.8rem;color:var(--primary);font-weight:500;letter-spacing:.03em}.blog-content .author-box p{font-size:.88rem;line-height:1.6;color:var(--on-surface-variant);margin:.5rem 0 0;font-weight:300}.blog-content .related-articles{margin:3rem 0 2rem;padding-top:2rem;border-top:1px solid rgba(197,151,91,.12)}.blog-content .related-articles h3{font-size:1.1rem;margin-bottom:1rem;padding-top:0}.blog-content .related-articles h3:before{display:none}.blog-content .related-articles ul{list-style:none;margin:0;padding:0}.blog-content .related-articles li{margin-bottom:.75rem;padding-left:1.5rem;position:relative}.blog-content .related-articles li:before{content:"→";position:absolute;left:0;color:var(--primary);font-weight:600}.blog-content .related-articles a{text-decoration:none;font-weight:400;font-size:.98rem}.blog-content .related-articles a:hover{text-decoration:underline}.blog-content .article-cta,.blog-content .cta-box{background:linear-gradient(135deg,#c5975b1a,#c5975b08);border:1px solid rgba(197,151,91,.2);border-radius:20px;padding:2rem 2.5rem;text-align:center;margin:3rem 0 2rem}.blog-content .article-cta p,.blog-content .cta-box p{font-size:1rem;line-height:1.7;margin-bottom:0}.blog-content .article-cta a,.blog-content .cta-box a{color:var(--primary);font-weight:500}.blog-content h2+ul{background:#c5975b0a;border:1px solid rgba(197,151,91,.1);border-radius:14px;padding:1.5rem 1.5rem 1.5rem 2.5rem;margin:1.25rem 0 2.5rem}.blog-content h2+ul li{font-weight:400;color:var(--on-surface)}@media (max-width: 768px){.blog-detail{padding:4.5rem 1.25rem 3rem!important}.blog-content h2{font-size:1.4rem;margin:2.5rem 0 1rem;padding-top:1rem}.blog-content h3{font-size:1.15rem;margin:2rem 0 .75rem}.blog-content p{font-size:1.02rem;line-height:1.8;margin-bottom:1.4rem}.blog-content>nav+p:first-letter,.blog-content>p:first-of-type:first-letter{font-size:3rem}.blog-content blockquote{padding:1.25rem 1.5rem;margin:2rem 0;font-size:1.05rem}.blog-content .author-box{flex-direction:column;padding:1.25rem}}@keyframes lbFadeIn{0%{opacity:0}to{opacity:1}}@keyframes lbSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.home-gallery-grid{grid-template-columns:repeat(4,1fr)}.home-gallery-item{transition:transform .35s ease,box-shadow .35s ease}.home-gallery-item:hover{transform:scale(1.02);box-shadow:0 16px 48px #0000002e;z-index:1}.home-gallery-item:hover .home-gallery-img{transform:scale(1.06)}.home-gallery-overlay{opacity:0}.home-gallery-item:hover .home-gallery-overlay{opacity:1}.home-gallery-item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (max-width: 1024px){.home-gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.home-gallery-grid{grid-template-columns:repeat(2,1fr);gap:.45rem}.home-gallery-item{grid-column:span 1!important;grid-row:span 1!important;min-height:140px!important;aspect-ratio:1!important}}.blog-featured-card{grid-column:span 1}@media (min-width: 768px){.blog-featured-card{grid-column:span 2}}
