:root{--sky:#3ec8e0;--sky-deep:#4a6ad8;--sky-soft:#c8f4f8;--foam:#eefbfd;--mint:#17ead9;--mint-deep:#2bb8c8;--pearl:#f7fcfd;--ink:#1a2a4a;--ink-soft:#4a5b76;--bubble-white:#ffffff8c;--shadow-soft:0 12px 40px #4a6ad81f;--radius:1.25rem;--radius-sm:.75rem;--font-display:"Fredoka", system-ui, sans-serif;--font-body:"Nunito", system-ui, sans-serif;--nav-h:4.5rem;--brand-gradient:linear-gradient(135deg, #17ead9 0%, #3ec8e0 45%, #6078ea 100%)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-body);color:var(--ink);background:var(--pearl);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}:focus-visible{outline:2px solid var(--sky-deep);outline-offset:3px}.bubbles{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.bubble{opacity:.7;background:radial-gradient(circle at 30% 30%,#ffffffbf,#5ec8e840 45%,#7edcc826 100%);border:1px solid #ffffff73;border-radius:50%;animation:linear infinite rise;position:absolute}@keyframes rise{0%{opacity:0;transform:translateY(0)scale(1)}10%{opacity:.7}90%{opacity:.45}to{opacity:0;transform:translateY(-110vh)scale(1.15)}}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.fade-up{animation:.7s both fade-up}.fade-up-delay-1{animation-delay:.12s}.fade-up-delay-2{animation-delay:.24s}.fade-up-delay-3{animation-delay:.36s}.app-shell{flex-direction:column;flex:1;display:flex}.nav{z-index:50;height:var(--nav-h);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7fcfdd1;border-bottom:1px solid #5ec8e833;justify-content:space-between;align-items:center;gap:.75rem;padding:0 1.5rem;display:flex;position:sticky;top:0}.nav__brand{min-width:0;font-family:var(--font-display);color:var(--sky-deep);letter-spacing:-.02em;align-items:center;gap:.55rem;font-size:1.2rem;font-weight:600;display:flex}.nav__logo{object-fit:contain;flex-shrink:0;width:4.75rem;height:4.75rem;margin:-.85rem -.35rem -.85rem -.65rem}.nav__brand-text{white-space:nowrap;line-height:1.15}.nav__links{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.nav__link{color:var(--ink-soft);border-radius:999px;padding:.45rem .9rem;font-size:.95rem;font-weight:600;transition:color .2s,background .2s}.nav__link:hover{color:var(--sky-deep)}.nav__link--active{color:var(--sky-deep);background:var(--sky-soft)}.nav__cta{color:#fff;white-space:nowrap;background:var(--brand-gradient);border-radius:999px;margin-left:.35rem;padding:.55rem 1.15rem;font-size:.95rem;font-weight:700;transition:transform .2s,box-shadow .2s;box-shadow:0 6px 20px #4a6ad84d}.nav__cta:hover{transform:translateY(-1px);box-shadow:0 8px 24px #4a6ad866}@media (width<=560px){.nav{--nav-h:3.75rem;height:var(--nav-h);gap:.4rem;padding:0 .85rem}.nav__logo{width:3.4rem;height:3.4rem;margin:-.55rem -.25rem -.55rem -.4rem}.nav__brand-text{font-size:.95rem}.nav__links{gap:.25rem}.nav__link{padding:.4rem .65rem;font-size:.85rem}.nav__cta{margin-left:0;padding:.45rem .8rem;font-size:.85rem}}@media (width<=380px){.nav__brand-text{display:none}}.btn{font-family:var(--font-display);border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.85rem 1.6rem;font-size:1.05rem;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.btn--primary{color:#fff;background:var(--brand-gradient);box-shadow:0 8px 28px #4a6ad859}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px #4a6ad873}.btn--primary:disabled{opacity:.7;cursor:wait;transform:none}.btn--ghost{color:var(--sky-deep);background:#ffffff8c;border:2px solid #5ec8e873}.btn--ghost:hover{background:#fff;transform:translateY(-2px)}.btn--block{width:100%}.hero{min-height:calc(100vh - var(--nav-h));background:radial-gradient(80% 60% at 70% 20%,#7edcc859,#0000 55%),radial-gradient(70% 50% at 15% 80%,#5ec8e866,#0000 50%),linear-gradient(165deg,#dff6fb 0%,#eefaf8 45%,#f7fcfd 100%);justify-content:center;align-items:center;padding:3rem 1.5rem 4rem;display:flex;position:relative;overflow:hidden}.hero__content{z-index:1;text-align:center;width:100%;max-width:46rem;position:relative}.hero__logo{filter:drop-shadow(0 16px 36px #4a6ad838);width:min(820px,100%);max-width:100%;height:auto;margin:-4rem auto -3.5rem;display:block}@media (width>=700px){.hero__logo{width:min(820px,115%);margin:-6.5rem auto -5.5rem}}@media (width<=600px){.hero{min-height:auto;padding:1.25rem 1rem 2.5rem}.hero__logo{width:100%;margin:-1.75rem auto -1.25rem;transform:scale(1.12)}.hero__headline{padding:0 .25rem;font-size:1.2rem}.hero__sub{margin-bottom:1.35rem;padding:0 .15rem;font-size:.98rem}.hero__actions{flex-direction:column;align-items:stretch}.hero__actions .btn{width:100%}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero__headline{font-family:var(--font-display);color:var(--ink);margin-bottom:.65rem;font-size:clamp(1.25rem,3.5vw,1.65rem);font-weight:500}.hero__sub{color:var(--ink-soft);max-width:28rem;margin:0 auto 1.75rem;font-size:1.1rem}.hero__actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.hero__shine{z-index:0;background:radial-gradient(circle at 35% 30%,#ffffffb3,#0000 40%),radial-gradient(circle,#5ec8e840,#0000 65%);border-radius:50%;width:min(520px,90vw);height:min(520px,90vw);animation:1.2s both soft-pop;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%)}.section{padding:4.5rem 1.5rem;position:relative}.section--foam{background:linear-gradient(180deg, var(--pearl) 0%, #e5f7f4 100%)}.section--sky{background:radial-gradient(ellipse at top, #5ec8e82e, transparent 55%), var(--pearl)}.section--reviews{background:radial-gradient(ellipse 70% 50% at 50% 0%, #7edcc838, transparent 60%), linear-gradient(180deg, #f4fcfb 0%, var(--pearl) 100%)}.section__inner{max-width:68rem;margin:0 auto}.section__title{font-family:var(--font-display);color:var(--sky-deep);text-align:center;margin-bottom:.5rem;font-size:clamp(1.75rem,4vw,2.35rem);font-weight:600}.section__lead{text-align:center;color:var(--ink-soft);max-width:34rem;margin:0 auto 2.5rem;font-size:1.05rem}.eco-banner{text-align:center;max-width:36rem;font-family:var(--font-display);color:var(--mint-deep);border-radius:var(--radius-sm);background:#7edcc838;border:1px solid #3bb89a47;margin:-1.25rem auto 2.25rem;padding:.85rem 1.1rem;font-size:1.05rem;font-weight:600;line-height:1.4}.we-clean{text-align:center;margin-top:3rem}.we-clean__title{font-family:var(--font-display);color:var(--sky-deep);margin-bottom:1rem;font-size:clamp(1.35rem,3vw,1.75rem);font-weight:600}.we-clean__list{flex-wrap:wrap;justify-content:center;gap:.65rem;max-width:48rem;margin:0 auto;list-style:none;display:flex}.we-clean__list li{color:var(--sky-deep);background:#ffffffbf;border:1px solid #5ec8e859;border-radius:999px;padding:.55rem .95rem;font-size:.92rem;font-weight:700}.reviews-list{gap:1.75rem;max-width:44rem;margin:0 auto;display:grid}.review{border-bottom:1px solid #5ec8e847;margin:0;padding:0 .25rem 1.75rem}.review:last-child{border-bottom:none;padding-bottom:0}.review__quote{font-family:var(--font-display);color:var(--ink);margin-bottom:.85rem;font-size:clamp(1.15rem,2.8vw,1.4rem);font-weight:500;line-height:1.45}.review__by{color:var(--sky-deep);font-size:.95rem;font-style:normal;font-weight:700}.review__by cite{font-style:normal}.review__by span{color:var(--ink-soft);font-weight:600}.reviews-links{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:2.25rem;display:flex}@media (width<=600px){.reviews-list{gap:1.35rem}.review{padding-bottom:1.35rem}.reviews-links{flex-direction:column;align-items:stretch}.reviews-links .btn{width:100%}}.services-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}@media (width<=700px){.services-grid{grid-template-columns:1fr}}.service-tease{border-radius:var(--radius);background:#ffffffa6;border:1px solid #5ec8e840;padding:1.75rem 1.5rem}.service-tease h3{font-family:var(--font-display);color:var(--ink);margin-bottom:.85rem;font-size:1.35rem}.service-tease h4,.service-option__group-title{font-family:var(--font-display);color:var(--sky-deep);margin:.85rem 0 .4rem;font-size:.98rem;font-weight:600}.service-tease__intro,.service-option__intro{color:var(--ink-soft);margin-bottom:.5rem;font-size:.92rem}.service-tease__group+.service-tease__group{margin-top:.35rem}.service-tease ul,.service-tease__list{flex-direction:column;gap:.3rem;list-style:none;display:flex}.service-tease li{color:var(--ink-soft);padding-left:1rem;font-size:.92rem;line-height:1.4;position:relative}.service-tease li:before{content:"";background:var(--sky);border-radius:50%;width:.35rem;height:.35rem;position:absolute;top:.45rem;left:0}.service-option__group{margin-top:.35rem}.service-tease__intro strong,.service-option__intro strong{color:var(--ink);font-weight:800}.service-option__note{color:var(--mint-deep);margin-top:.85rem;font-size:.88rem;font-weight:700;line-height:1.4}.service-options__eco{color:var(--mint-deep);margin:0 0 .85rem;font-size:.9rem;font-weight:700;line-height:1.4}.about-block{text-align:center;max-width:36rem;margin:0 auto}.about-block p{color:var(--ink-soft);font-size:1.08rem}.about-block__meta{margin-top:1rem;font-weight:700;color:var(--sky-deep)!important}.about-block__meta a{color:var(--sky-deep);text-underline-offset:3px;text-decoration:underline}.form-error{color:#c04545;text-align:center;font-size:.95rem;font-weight:700}.privacy-note{color:var(--ink-soft);text-align:center;margin:-.25rem 0 0;font-size:.88rem;line-height:1.45}.contact-pref{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}@media (width<=560px){.contact-pref{grid-template-columns:1fr}}.contact-pref__option{border-radius:var(--radius-sm);background:var(--foam);cursor:pointer;border:2px solid #5ec8e859;justify-content:center;align-items:center;gap:.45rem;padding:.75rem .85rem;font-size:.92rem;font-weight:700;transition:border-color .2s,background .2s,transform .2s;display:flex}.contact-pref__option input{opacity:0;pointer-events:none;position:absolute}.contact-pref__option:hover{border-color:var(--sky);transform:translateY(-1px)}.contact-pref__option--selected{border-color:var(--mint-deep);color:var(--sky-deep);background:linear-gradient(160deg,#e8faf8 0%,#dff4fb 100%);box-shadow:0 6px 18px #3bb89a26}.footer__meta{margin-top:.35rem}.cta-band{text-align:center;color:#fff;background:linear-gradient(135deg,#4a6ad8 0%,#3ec8e0 55%,#17ead9 100%);padding:4rem 1.5rem;position:relative;overflow:hidden}.cta-band h2{font-family:var(--font-display);z-index:1;margin-bottom:.5rem;font-size:clamp(1.75rem,4vw,2.4rem);position:relative}.cta-band p{opacity:.9;z-index:1;margin-bottom:1.5rem;position:relative}.cta-band .btn--primary{color:var(--sky-deep);z-index:1;background:#fff;position:relative;box-shadow:0 8px 28px #00000026}.schedule-page{background:radial-gradient(ellipse 60% 40% at 100% 0%, #7edcc847, transparent), radial-gradient(ellipse 50% 35% at 0% 100%, #5ec8e847, transparent), var(--pearl);flex:1;padding:2.5rem 1.5rem 4rem;position:relative;overflow:hidden}.schedule-page__inner{z-index:1;max-width:40rem;margin:0 auto;position:relative}.schedule-page__title{font-family:var(--font-display);color:var(--sky-deep);text-align:center;margin-bottom:.4rem;font-size:clamp(1.85rem,5vw,2.5rem);font-weight:600}.schedule-page__lead{text-align:center;color:var(--ink-soft);margin-bottom:2rem}@media (width<=600px){.section,.cta-band{padding:3rem 1rem}.schedule-page{padding:1.5rem .85rem 3rem}.schedule-page__lead{margin-bottom:1.35rem;padding:0 .15rem;font-size:.95rem}.booking-form{border-radius:var(--radius);gap:1.1rem;padding:1.15rem}.contact-pref{grid-template-columns:1fr}.footer{padding:1.5rem 1rem}.footer__meta{word-break:break-word;overflow-wrap:anywhere}}.booking-form{border-radius:calc(var(--radius) + .25rem);box-shadow:var(--shadow-soft);background:#ffffffc7;border:1px solid #5ec8e847;flex-direction:column;gap:1.35rem;padding:1.75rem;animation:.55s both soft-pop;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=560px){.form-row{grid-template-columns:1fr}}.field{flex-direction:column;gap:.4rem;display:flex}.field label{color:var(--ink);font-size:.92rem;font-weight:700}.field .hint{color:var(--ink-soft);font-size:.82rem;font-weight:500}.field input,.field textarea,.field select{border-radius:var(--radius-sm);background:var(--foam);border:2px solid #5ec8e859;width:100%;padding:.75rem .95rem;transition:border-color .2s,box-shadow .2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--sky);outline:none;box-shadow:0 0 0 4px #5ec8e833}.field textarea{resize:vertical;min-height:6rem}.dirt-slider{padding:.85rem 0 .25rem}.dirt-slider__track{margin:.5rem 0 .75rem;position:relative}.dirt-slider input[type=range]{appearance:none;cursor:pointer;background:linear-gradient(90deg,#b8f0e0 0%,#7edcc8 30%,#5ec8e8 55%,#f0c070 80%,#e8887a 100%);border-radius:999px;outline:none;width:100%;height:.65rem}.dirt-slider input[type=range]::-webkit-slider-thumb{appearance:none;border:3px solid var(--sky-deep);cursor:grab;background:#fff;border-radius:50%;width:1.55rem;height:1.55rem;box-shadow:0 2px 10px #2a9fc459}.dirt-slider input[type=range]::-moz-range-thumb{border:3px solid var(--sky-deep);cursor:grab;background:#fff;border-radius:50%;width:1.55rem;height:1.55rem;box-shadow:0 2px 10px #2a9fc459}.dirt-slider__meta{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.dirt-slider__value{font-family:var(--font-display);color:var(--sky-deep);font-size:1.5rem;font-weight:600}.dirt-slider__label{color:var(--ink);text-align:right;font-size:.95rem;font-weight:700}.dirt-slider__ends{color:var(--ink-soft);justify-content:space-between;margin-top:.25rem;font-size:.78rem;display:flex}.service-options{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}@media (width<=560px){.service-options{grid-template-columns:1fr}}.service-option{text-align:left;border-radius:var(--radius);background:var(--foam);cursor:pointer;border:2px solid #5ec8e84d;padding:1.15rem 1rem 1.15rem 1.15rem;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;position:relative}.service-option:hover{border-color:var(--sky);transform:translateY(-2px)}.service-option--selected{border-color:var(--mint-deep);background:linear-gradient(160deg,#e8faf8 0%,#dff4fb 100%);box-shadow:0 8px 24px #3bb89a2e}.service-option__radio{opacity:0;pointer-events:none;position:absolute}.service-option__title{font-family:var(--font-display);color:var(--ink);align-items:center;gap:.45rem;margin-bottom:.65rem;font-size:1.15rem;font-weight:600;display:flex}.service-option__dot{border:2px solid var(--sky);border-radius:50%;flex-shrink:0;width:1rem;height:1rem;position:relative}.service-option--selected .service-option__dot{border-color:var(--mint-deep);background:var(--mint-deep);box-shadow:inset 0 0 0 3px #fff}.service-option ul{flex-direction:column;gap:.35rem;list-style:none;display:flex}.service-option li{color:var(--ink-soft);padding-left:1.1rem;font-size:.86rem;line-height:1.4;position:relative}.service-option li:before{content:"";background:var(--sky);border-radius:50%;width:.4rem;height:.4rem;position:absolute;top:.45rem;left:0}.service-option--selected li:before{background:var(--mint-deep)}.form-success{text-align:center;border-radius:var(--radius);box-shadow:var(--shadow-soft);background:#ffffffd9;border:1px solid #7edcc873;padding:2.5rem 1.5rem;animation:.5s both soft-pop}.form-success h2{font-family:var(--font-display);color:var(--mint-deep);margin-bottom:.5rem;font-size:1.75rem}.form-success p{color:var(--ink-soft);margin-bottom:1.5rem}.footer{text-align:center;color:#ffffffbf;background:#1a2a4a;padding:1.75rem 1.5rem;font-size:.9rem}.footer strong{font-family:var(--font-display);color:#fff;font-weight:600}.footer a{color:var(--sky-soft);font-weight:600}.footer a:hover{text-decoration:underline}.footer__privacy{color:#ffffff8c;margin-top:.75rem;font-size:.82rem}
