:root{color:#332832;background:#fffafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 8% 10%,rgba(255,153,204,.18),transparent 28rem),linear-gradient(180deg,#fffafc,#fff8f1 45%,#fff)}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}img{max-width:100%;display:block}::selection{color:#fff;background:#df4f9b}#root{min-height:100vh}.site-shell{min-height:100vh;overflow-x:hidden}.container{width:min(1120px,calc(100% - 32px));margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:20;background:#fffafce6;border-bottom:1px solid rgba(255,153,204,.18);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:inline-flex;align-items:center;gap:12px;padding:0;color:#4d3848;background:transparent;border:0;text-align:left}.brand-mark{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:50%;color:#fff;font-family:Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:700;background:radial-gradient(circle at 28% 20%,rgba(255,255,255,.9),transparent 18%),linear-gradient(135deg,#f9c,#db4e9b);box-shadow:0 12px 30px #db4e9b42}.brand strong{display:block;font-family:Georgia,Times New Roman,serif;font-size:1.22rem;line-height:1.08}.brand small{display:block;margin-top:4px;color:#9b7b8c;font-size:.68rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.menu-toggle{width:44px;height:44px;display:grid;place-content:center;gap:5px;border:1px solid rgba(255,153,204,.35);border-radius:14px;background:#fff;box-shadow:0 10px 24px #73465c14}.menu-toggle span:not(.sr-only){width:18px;height:2px;border-radius:99px;background:#db4e9b}.nav-links{position:absolute;top:74px;left:16px;right:16px;display:grid;gap:6px;padding:12px;border:1px solid rgba(255,153,204,.22);border-radius:22px;background:#fffffff5;box-shadow:0 24px 60px #5c405224;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .18s ease,transform .18s ease}.nav-links.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-link{min-height:44px;padding:10px 14px;color:#4b3545;background:transparent;border:0;border-radius:14px;text-align:left;transition:background .18s ease,color .18s ease}.nav-link:hover,.nav-link.is-active{color:#c63d8a;background:#ff99cc24}.hero{position:relative;min-height:calc(100vh - 74px);display:grid;align-items:end;isolation:isolate;background:#fff7f9}.hero-image,.hero-overlay{position:absolute;inset:0;z-index:-2}.hero-image{background-image:url(/images/bubble-spa-hero.png);background-position:64% center;background-size:cover}.hero-overlay{z-index:-1;background:linear-gradient(90deg,#fffafcfa,#fffafcdb 42%,#fffafc47),linear-gradient(0deg,#fffafce6,#fffafc14 42%)}.hero-content{padding:78px 0 56px}.hero-copy{max-width:650px}.eyebrow{margin:0 0 12px;color:#cf4b92;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:#352635}.hero h1,.section-header h1,.about-page h1{margin-bottom:14px;font-family:Georgia,Times New Roman,serif;line-height:1.04}.hero h1{font-size:clamp(3.6rem,18vw,6.6rem)}.tagline{margin-bottom:18px;color:#4d3848;font-size:clamp(1.35rem,6vw,2.15rem);font-weight:700;line-height:1.18}.intro,.section-copy,.section-header p,.about-page p,.contact-panel p,.site-footer p{color:#6f5969}.intro{max-width:570px;margin-bottom:28px;font-size:1.06rem}.hero-actions,.footer-links{display:flex;flex-wrap:wrap;gap:12px}.cta-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;color:#fff;font-weight:800;border:1px solid transparent;border-radius:999px;background:linear-gradient(135deg,#f9c,#d74794);box-shadow:0 16px 34px #d7479447;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.cta-button:hover{transform:translateY(-2px);box-shadow:0 20px 42px #d7479457}.cta-button:focus-visible,.nav-link:focus-visible,.brand:focus-visible,.menu-toggle:focus-visible,.date-card:focus-visible,.slot-button:focus-visible,.footer-links button:focus-visible{outline:3px solid rgba(255,153,204,.42);outline-offset:3px}.cta-button.secondary{color:#b7387e;background:#ffffffdb;border-color:#ff99cc70;box-shadow:0 12px 28px #5b3e501a}.cta-button.ghost{width:100%;color:#c63d8a;background:#fff7fb;border-color:#f9c6;box-shadow:none}.section,.page-section{padding:70px 0}.page-section{min-height:68vh}.soft-band{position:relative;background:radial-gradient(circle at 85% 20%,rgba(255,153,204,.24),transparent 17rem),linear-gradient(135deg,#fff1f7,#fffaf4)}.section-header{max-width:720px;margin-bottom:28px}.section-header h1,.about-page h1{font-size:clamp(2.15rem,8vw,4rem)}.section-header p{font-size:1.03rem}.benefit-grid,.service-grid{display:grid;gap:18px}.feature-card,.service-card,.booking-card,.contact-form,.contact-panel,.about-panel{border:1px solid rgba(255,153,204,.2);border-radius:24px;background:#ffffffd1;box-shadow:0 18px 50px #643e541a}.feature-card,.service-card,.booking-card,.contact-form,.contact-panel,.about-panel{padding:22px}.feature-card h3,.service-card h2,.booking-card h2,.site-footer h2{margin-bottom:10px;font-size:1.15rem}.feature-card p,.service-card p{margin-bottom:0;color:#735d6d}.bubble-icon,.service-symbol{position:relative;width:52px;height:52px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#ffffff 0 18%,transparent 19%),linear-gradient(135deg,#ff99ccb3,#fff2f8eb);box-shadow:inset 0 0 0 1px #ff99cc3d}.bubble-icon{margin-bottom:18px}.bubble-icon:after,.service-symbol:after{content:"";position:absolute;right:-6px;top:6px;width:15px;height:15px;border:1px solid rgba(255,153,204,.62);border-radius:50%;background:#ffffffb3}.split-layout,.booking-layout,.contact-layout{display:grid;gap:28px}.section-copy{max-width:560px;margin-bottom:0}.steps{display:grid;gap:14px;margin:0;padding:0;list-style:none;counter-reset:steps}.steps li{display:flex;align-items:center;gap:14px;min-height:64px;padding:14px 16px;color:#4d3848;font-weight:750;border-radius:20px;background:#ffffffc7;box-shadow:0 14px 34px #74496017;counter-increment:steps}.steps span{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;color:#fff;border-radius:50%;background:#f9c}.steps span:before{content:counter(steps);font-weight:900}.about-panel{display:grid;gap:14px;background:radial-gradient(circle at 90% 10%,rgba(167,203,186,.24),transparent 14rem),#ffffffd6}.about-panel div{padding:18px;border-radius:18px;background:#fff7fbc7}.about-panel strong,.contact-panel strong{display:block;margin-bottom:5px;color:#3f2a39}.about-panel span,.contact-panel span,.contact-panel a{color:#6f5969}.service-grid{grid-template-columns:1fr}.service-card{display:flex;flex-direction:column;gap:14px;min-height:100%}.service-card-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.service-card-top span,.request-summary span{color:#9b4279;font-size:.88rem;font-weight:800;border-radius:999px;background:#fff1f8}.service-card-top span{padding:7px 10px}.service-card p{flex:1}.booking-layout{align-items:start}.booking-card h2{margin-top:0}.booking-v2-shell{position:relative;margin-top:8px;padding:3px;border-radius:28px;background:linear-gradient(#fffafc,#fffafc) padding-box,linear-gradient(135deg,#ff99ccbd,#a7cbba6b) border-box;border:1px solid transparent;box-shadow:0 24px 70px #643e5421}.booking-v2-shell:before{content:"";position:absolute;inset:18px auto auto 22px;width:72px;height:72px;border-radius:50%;background:radial-gradient(circle at 32% 26%,rgba(255,255,255,.9),transparent 20%),#f9c3;pointer-events:none}.booking-v2-card{position:relative;min-height:680px;overflow:hidden;border-radius:24px;background:radial-gradient(circle at 90% 8%,rgba(255,153,204,.16),transparent 14rem),linear-gradient(180deg,#fffafd,#fff8f1)}.simplybook-widget-container{position:relative;min-height:680px}.simplybook-widget-container iframe{width:100%!important;min-height:680px!important;border:0!important;background:transparent}.date-grid,.slot-grid{display:grid;gap:10px;margin-bottom:26px}.date-grid,.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.date-card,.slot-button{border:1px solid rgba(255,153,204,.26);border-radius:18px;background:#fffafd;transition:border .18s ease,background .18s ease,transform .18s ease}.date-card{min-height:86px;padding:14px 10px}.date-card span,.date-card strong{display:block}.date-card span{color:#8c7382;font-size:.82rem;font-weight:800}.date-card strong{margin-top:6px;color:#3f2a39;font-size:1rem}.slot-button{min-height:52px;color:#4d3848;font-weight:800}.date-card:hover,.slot-button:hover,.date-card.is-selected,.slot-button.is-selected{border-color:#f9c;background:#fff0f7;transform:translateY(-1px)}.form-card,.contact-form{display:grid;gap:16px}.form-field{display:grid;gap:7px;color:#4d3848;font-weight:750}.form-field input,.form-field textarea{width:100%;border:1px solid rgba(137,94,118,.2);border-radius:16px;padding:13px 14px;color:#352635;background:#fffafd;transition:border .18s ease,box-shadow .18s ease}.form-field textarea{resize:vertical;min-height:132px}.form-field input:focus,.form-field textarea:focus{outline:0;border-color:#f9c;box-shadow:0 0 0 4px #ff99cc2e}.request-summary{display:flex;flex-wrap:wrap;gap:8px}.request-summary span{padding:8px 12px}.contact-layout{align-items:start}.contact-panel{display:grid;gap:18px}.contact-panel p{margin:0}.site-footer{padding:44px 0 24px;border-top:1px solid rgba(255,153,204,.2);background:#fffafd}.footer-grid{display:grid;gap:26px}.footer-brand{margin-bottom:8px;color:#c63d8a;font-family:Georgia,Times New Roman,serif;font-size:1.75rem;font-weight:800}.site-footer h2{font-size:1rem}.footer-links{flex-direction:column;align-items:flex-start;gap:8px}.footer-links button{padding:0;color:#6f5969;background:transparent;border:0}.footer-links button:hover,.site-footer a:hover{color:#c63d8a}.copyright{margin-top:28px;color:#927687;font-size:.9rem}.reveal{animation:rise-in .6s ease both}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(min-width:640px){.container{width:min(1120px,calc(100% - 48px))}.benefit-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.date-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.footer-grid{grid-template-columns:1.4fr .9fr 1fr}}@media(min-width:900px){.menu-toggle{display:none}.nav-links{position:static;display:flex;align-items:center;justify-content:flex-end;padding:0;border:0;background:transparent;box-shadow:none;opacity:1;pointer-events:auto;transform:none}.nav-link{text-align:center}.hero{align-items:center;min-height:720px}.hero-overlay{background:linear-gradient(90deg,#fffafcfa,#fffafcc2 36%,#fffafc1a 76%),linear-gradient(0deg,rgba(255,250,252,.35),transparent 46%)}.hero-content,.section,.page-section{padding:96px 0}.benefit-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.split-layout,.booking-layout,.contact-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:52px}.booking-layout{grid-template-columns:minmax(0,.86fr) minmax(420px,1fr)}}
