*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--c-cream: #f6f1f4;--c-warm: #ece1e8;--c-blush: #c9a6c0;--c-rose: #a9749e;--c-deep: #6d3d63;--c-dark: #3a2140;--c-text: #3d2b3a;--c-text-light: #7a6675;--c-white: #fefcfe;--c-accent: #9b5f8f;--f-serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;--f-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 6rem;--space-2xl: 8rem;--radius: 12px;--radius-lg: 24px}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--f-sans);font-weight:300;color:var(--c-text);background:var(--c-cream);line-height:1.7;font-size:16px;overflow-x:hidden}a{color:var(--c-deep);text-decoration:none;transition:color .2s}a:hover{color:var(--c-accent)}img{max-width:100%;display:block}.container{max-width:1160px;margin:0 auto;padding:0 var(--space-md)}.fade-in{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.fade-in.visible{opacity:1;transform:translateY(0)}.service-card:nth-child(2).fade-in{transition-delay:.08s}.service-card:nth-child(3).fade-in{transition-delay:.16s}.service-card:nth-child(4).fade-in{transition-delay:.24s}.review-card:nth-child(2).fade-in{transition-delay:.1s}.review-card:nth-child(3).fade-in{transition-delay:.2s}.btn{display:inline-block;font-family:var(--f-sans);font-weight:400;font-size:.9rem;letter-spacing:.03em;padding:.85rem 2rem;border-radius:100px;transition:all .3s cubic-bezier(.22,1,.36,1);cursor:pointer;border:none;text-align:center;-webkit-tap-highlight-color:transparent}.btn-primary{background:var(--c-dark);color:var(--c-cream)}.btn-primary:hover{background:var(--c-deep);color:var(--c-white);transform:translateY(-2px);box-shadow:0 8px 30px #3a214033}.btn-outline{background:transparent;color:var(--c-dark);border:1.5px solid var(--c-dark)}.btn-outline:hover{background:var(--c-dark);color:var(--c-cream);transform:translateY(-2px)}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.2rem 0;transition:all .35s ease}.nav.scrolled{background:#f6f1f4eb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:.8rem 0;box-shadow:0 1px 20px #3a21400f}.nav-inner{max-width:1160px;margin:0 auto;padding:0 var(--space-md);display:flex;align-items:center;justify-content:space-between}.nav-logo{font-family:var(--f-serif);font-size:1.5rem;font-weight:600;color:var(--c-cream);letter-spacing:-.01em;white-space:nowrap;transition:color .35s ease}.nav-logo:hover{color:var(--c-cream)}.nav.scrolled .nav-logo,.nav.scrolled .nav-logo:hover{color:var(--c-dark)}.nav-links{display:flex;list-style:none;gap:2rem;align-items:center}.nav-links a{font-size:.88rem;font-weight:400;color:#f6f1f4d9;letter-spacing:.02em;position:relative;transition:color .35s ease}.nav.scrolled .nav-links a{color:var(--c-text)}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1.5px;background:var(--c-accent);transition:width .3s ease}.nav-links a:hover:after{width:100%}.nav-cta{background:#f6f1f433;color:var(--c-cream)!important;padding:.6rem 1.4rem;border-radius:100px;font-size:.85rem!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(246,241,244,.25);transition:all .3s ease}.nav-cta:after{display:none!important}.nav-cta:hover{background:var(--c-cream);color:var(--c-dark)!important}.nav.scrolled .nav-cta{background:var(--c-dark);color:var(--c-cream)!important;border-color:var(--c-dark);backdrop-filter:none}.nav.scrolled .nav-cta:hover{background:var(--c-deep);color:var(--c-white)!important}.nav-lang{display:flex;align-items:center}.lang-switch{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem;font-weight:500;letter-spacing:.04em;color:#f6f1f499}.lang-switch:after{display:none!important}.lang-switch .active{color:var(--c-cream)}.lang-switch .sep{opacity:.4}.lang-switch:hover{color:var(--c-cream)}.nav.scrolled .lang-switch{color:var(--c-text-light)}.nav.scrolled .lang-switch .active,.nav.scrolled .lang-switch:hover{color:var(--c-dark)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;width:28px;height:20px;position:relative;z-index:101}.nav-toggle span{display:block;width:100%;height:1.5px;background:var(--c-cream);position:absolute;left:0;transition:all .3s ease}.nav.scrolled .nav-toggle span{background:var(--c-dark)}.nav-toggle span:first-child{top:4px}.nav-toggle span:last-child{bottom:4px}.nav-toggle.active span:first-child{top:50%;transform:translateY(-50%) rotate(45deg)}.nav-toggle.active span:last-child{bottom:50%;transform:translateY(50%) rotate(-45deg)}.hero{min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:var(--space-xl) var(--space-md)}.hero-bg{position:absolute;inset:0;z-index:0}.hero-img{position:absolute;top:50%;left:50%;width:100%;height:100%;transform:translate(-50%,-50%);object-fit:cover;animation:heroZoom 20s ease-in-out infinite alternate}@keyframes heroZoom{0%{transform:translate(-50%,-50%) scale(1)}to{transform:translate(-50%,-50%) scale(1.08)}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#1e162447,#1e16242e,#1e16246b)}.hero-content{position:relative;z-index:1;text-align:center;max-width:720px}.hero-tagline{font-family:var(--f-sans);font-size:.82rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--c-blush);margin-bottom:var(--space-sm)}.hero-title{font-family:var(--f-serif);font-size:clamp(3rem,8vw,5.5rem);font-weight:400;line-height:1.08;color:var(--c-cream);margin-bottom:var(--space-md);letter-spacing:-.02em;text-shadow:0 2px 24px rgba(0,0,0,.4)}.hero-title em{font-style:italic;color:var(--c-blush)}.hero-sub{font-size:1.1rem;color:#f6f1f4d9;max-width:480px;margin:0 auto var(--space-md);line-height:1.8}.hero-actions{display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap;margin-bottom:var(--space-lg)}.hero .btn-primary{background:var(--c-cream);color:var(--c-dark)}.hero .btn-primary:hover{background:#fff;color:var(--c-dark);box-shadow:0 8px 30px #0003}.hero .btn-outline{color:var(--c-cream);border-color:#f6f1f480}.hero .btn-outline:hover{background:var(--c-cream);color:var(--c-dark);border-color:var(--c-cream)}.hero-rating{display:flex;align-items:center;gap:.6rem;justify-content:center;font-size:.82rem;color:#f6f1f4b3}.stars{display:flex;gap:2px;color:var(--c-blush)}.hero-scroll{position:absolute;bottom:var(--space-md);left:50%;transform:translate(-50%);color:#f6f1f480;animation:bounce 2.5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(8px)}}.marquee{padding:var(--space-sm) 0;overflow:hidden;border-top:1px solid rgba(58,33,64,.08);border-bottom:1px solid rgba(58,33,64,.08);background:var(--c-white)}.marquee-track{display:flex;white-space:nowrap;animation:scroll 25s linear infinite}.marquee-track span{font-family:var(--f-serif);font-size:1.1rem;color:var(--c-text-light);letter-spacing:.08em;padding-right:2rem;flex-shrink:0}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(calc(-100% / 3))}}.section-header{text-align:center;margin-bottom:var(--space-lg)}.section-label{display:inline-block;font-size:.78rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--c-accent);margin-bottom:var(--space-xs)}.section-title{font-family:var(--f-serif);font-size:clamp(2rem,5vw,3rem);font-weight:400;color:var(--c-dark);line-height:1.15;letter-spacing:-.01em}.section-desc{font-size:1rem;color:var(--c-text-light);max-width:520px;margin:var(--space-sm) auto 0}.services{padding:var(--space-2xl) 0}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.service-card{background:var(--c-white);border-radius:var(--radius-lg);padding:var(--space-md) calc(var(--space-md) + .5rem);border:1px solid rgba(58,33,64,.06);transition:box-shadow .3s ease,transform .3s ease}.service-card:hover{box-shadow:0 12px 40px #3a214014;transform:translateY(-4px)}.service-card-title{font-family:var(--f-serif);font-size:1.5rem;font-weight:400;color:var(--c-dark);margin-bottom:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px solid rgba(58,33,64,.08)}.service-list{list-style:none}.service-item{padding:.6rem 0}.service-item+.service-item{border-top:1px solid rgba(58,33,64,.04)}.service-item-top{display:flex;align-items:baseline;gap:.5rem}.service-name{font-weight:400;font-size:.92rem}.service-dots{flex:1;border-bottom:1px dotted rgba(58,33,64,.2);min-width:20px;margin-bottom:4px}.service-price{font-weight:500;font-size:.95rem;color:var(--c-deep);white-space:nowrap}.service-duration{font-size:.78rem;color:var(--c-text-light)}.services-note{text-align:center;margin-top:var(--space-md);font-size:.85rem;color:var(--c-text-light)}.about{padding:var(--space-2xl) 0;background:var(--c-white)}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-xl);align-items:center}.about-visual{display:flex;justify-content:center}.about-image{width:100%;max-width:400px;border-radius:var(--radius-lg);object-fit:cover}.about-text p{color:var(--c-text-light);margin-bottom:var(--space-sm);font-size:.98rem}.about-features{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:var(--space-md)}.about-feature{display:flex;align-items:center;gap:.6rem;font-size:.88rem;font-weight:400;color:var(--c-text)}.feature-dot{width:8px;height:8px;background:var(--c-blush);border-radius:50%;flex-shrink:0}.reviews{padding:var(--space-2xl) 0}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.review-card{background:var(--c-white);border-radius:var(--radius-lg);padding:var(--space-md);border:1px solid rgba(58,33,64,.06);transition:box-shadow .3s ease,transform .3s ease}.review-card:hover{box-shadow:0 12px 40px #3a214014;transform:translateY(-4px)}.review-stars{color:var(--c-accent);display:flex;gap:2px;margin-bottom:var(--space-sm)}.review-text{font-family:var(--f-serif);font-size:1.15rem;font-style:italic;line-height:1.6;color:var(--c-dark);margin-bottom:var(--space-sm)}.review-author{font-size:.82rem;color:var(--c-text-light);font-weight:400}.reviews-cta{text-align:center;margin-top:var(--space-md)}.reviews-cta a{font-size:.9rem;font-weight:400;color:var(--c-accent);border-bottom:1px solid transparent;transition:border-color .2s}.reviews-cta a:hover{border-bottom-color:var(--c-accent);color:var(--c-accent)}.booking{padding:var(--space-2xl) 0;background:var(--c-white)}.booking-frame-wrapper{max-width:680px;margin:0 auto;background:#fff;border-radius:var(--radius-lg);box-shadow:0 4px 40px #3a214014;overflow:hidden}.booking-iframe{width:1px;min-width:100%;height:760px;border:none;border-radius:var(--radius-lg);display:block}.contact{padding:var(--space-2xl) 0;background:var(--c-dark);color:var(--c-cream)}.contact .section-label{color:var(--c-blush)}.contact .section-title{color:var(--c-cream);margin-bottom:var(--space-md)}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-xl);align-items:start}.contact-detail{margin-bottom:var(--space-md)}.contact-detail h4{font-family:var(--f-sans);font-size:.78rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--c-blush);margin-bottom:.4rem}.contact-detail p{font-size:.95rem;color:#f6f1f4cc;line-height:1.7}.contact-detail a{color:var(--c-cream);border-bottom:1px solid rgba(246,241,244,.3);transition:border-color .2s}.contact-detail a:hover{border-bottom-color:var(--c-cream);color:var(--c-cream)}.contact-btn{margin-top:var(--space-sm);background:var(--c-blush);color:var(--c-dark)}.contact-btn:hover{background:var(--c-cream);color:var(--c-dark)}.contact-hours h3{font-family:var(--f-serif);font-size:1.5rem;font-weight:400;margin-bottom:var(--space-sm)}.hours-table{width:100%;border-collapse:collapse}.hours-table tr{border-bottom:1px solid rgba(246,241,244,.08)}.hours-table td{padding:.7rem 0;font-size:.92rem;color:#f6f1f4bf}.hours-table td:last-child{text-align:right;font-weight:400;font-variant-numeric:tabular-nums}.hours-table .closed td{color:#f6f1f459}.footer{padding:var(--space-md) 0;background:var(--c-dark);border-top:1px solid rgba(246,241,244,.06)}.footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm)}.footer-logo{font-family:var(--f-serif);font-size:1.2rem;font-weight:600;color:var(--c-cream)}.footer-brand p{font-size:.78rem;color:#f6f1f466}.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap}.footer-links a{font-size:.82rem;color:#f6f1f480}.footer-links a:hover{color:var(--c-cream)}.footer-copy p{font-size:.78rem;color:#f6f1f44d}@media(max-width:900px){:root{--space-2xl: 5rem;--space-xl: 4rem}.services-grid{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr;gap:var(--space-lg)}.about-visual{order:2}.about-text{order:1;text-align:center}.about-features{justify-items:center}.reviews-grid{grid-template-columns:1fr;max-width:500px;margin:0 auto}.contact-grid{grid-template-columns:1fr;gap:var(--space-lg)}}@media(max-width:680px){:root{--space-2xl: 3.5rem;--space-xl: 2.5rem;--space-lg: 2rem;--space-md: 1.25rem}.container{padding:0 var(--space-sm)}.nav-toggle{display:block}.nav-logo{font-size:1.2rem}.nav-links{position:fixed;top:0;right:-100%;width:min(320px,85vw);height:100vh;height:100svh;background:var(--c-cream);flex-direction:column;justify-content:center;align-items:center;gap:2rem;transition:right .4s cubic-bezier(.22,1,.36,1);box-shadow:-10px 0 40px #00000014}.nav-links.open{right:0}.nav-links a{font-size:1.1rem;color:var(--c-text)}.nav-links a:after{display:none}.nav-cta{background:var(--c-dark)!important;color:var(--c-cream)!important;border-color:var(--c-dark)!important;backdrop-filter:none!important}.lang-switch{color:var(--c-text-light);font-size:1rem}.lang-switch .active{color:var(--c-dark)}.hero{min-height:100svh;padding:var(--space-xl) var(--space-sm)}.hero-title{font-size:clamp(2.2rem,10vw,3.5rem)}.hero-sub{font-size:.95rem}.hero-actions{flex-direction:column;align-items:center;gap:.75rem}.hero-actions .btn{width:100%;max-width:280px}.service-card{padding:var(--space-sm) calc(var(--space-sm) + .25rem)}.service-card-title{font-size:1.25rem}.service-name{font-size:.88rem}.about-features{grid-template-columns:1fr;gap:.6rem}.review-text{font-size:1rem}.booking-frame-wrapper{margin-left:calc(-1 * var(--space-sm));margin-right:calc(-1 * var(--space-sm));max-width:none;border-radius:0}.booking-iframe{border-radius:0}.contact-hours h3{font-size:1.3rem}.hours-table td{font-size:.85rem;padding:.55rem 0}.footer-inner{flex-direction:column;text-align:center}.footer-links{justify-content:center;flex-wrap:wrap;gap:1rem}}@media(max-width:380px){.hero-title{font-size:2rem}.hero-tagline{font-size:.72rem}.section-title{font-size:1.7rem}}
