@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Lato:wght@300;400;500;600&display=swap";*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth !important}body{font-family:"Lato",sans-serif;background-color:hsl(30,30%,98%);color:hsl(20,20%,20%);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",serif}.site-nav__list li+li::before{content:"|";margin:0 12px;opacity:.4}.bold{font-weight:bold}.underline{text-decoration:underline}.site-header{position:relative;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background:rgba(0,0,0,0);background-color:hsl(124,41%,92%)}.bg-image{max-width:150px;height:auto;transition:max-width .25s ease;display:block}.site-nav__list{display:flex;align-items:center}.site-nav__list>li+li::before{content:"|";margin:0 12px;opacity:.4}.nav-toggle{display:none;background:rgba(0,0,0,0);border:0;padding:.5rem;border-radius:999px;cursor:pointer;line-height:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}.nav-toggle:focus-visible{outline:2px solid currentColor;outline-offset:2px}.nav-toggle__icon{width:24px;height:24px;display:inline-block;position:relative;color:#000}.nav-toggle__icon::before,.nav-toggle__icon::after,.nav-toggle__icon span{content:"";position:absolute;left:0;right:0;height:2px;background:currentColor;border-radius:2px;transition:transform .25s ease,opacity .2s ease,top .25s ease}.nav-toggle__icon::before{top:6px}.nav-toggle__icon span{top:12px}.nav-toggle__icon::after{top:18px}.nav-backdrop{display:none}@media(max-width: 900px){.site-header{position:relative;display:flex;align-items:center;justify-content:center;padding:1rem 1.25rem}.brand{display:inline-flex;align-items:center;justify-content:center}.bg-image{position:absolute}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;position:absolute;right:1.25rem;top:50%;transform:translateY(-50%);z-index:60}.site-nav__list>li+li::before{content:"";margin:0}.site-nav{position:absolute;top:calc(100% + 10px);left:1.25rem;right:1.25rem;transform:translateY(-10px);opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease;z-index:50}.site-nav.is-open{transform:translateY(0);opacity:1;pointer-events:auto}.site-nav__list{flex-direction:column;align-items:stretch;gap:0rem}.site-nav__link{display:block;padding:.8rem 1rem;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.site-nav__link::before{content:"-   "}.site-nav__link:hover{background:rgba(0,0,0,.04)}.nav-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:40}.nav-backdrop.is-open{background-color:#000;opacity:20%;pointer-events:auto}.nav-toggle__icon{z-index:10000;cursor:pointer}.nav-toggle.is-open .nav-toggle__icon::before{top:12px;transform:rotate(45deg)}.nav-toggle.is-open .nav-toggle__icon span{opacity:0}.nav-toggle.is-open .nav-toggle__icon::after{top:12px;transform:rotate(-45deg)}}@media(prefers-reduced-motion: reduce){.bg-image,.site-nav,.nav-backdrop,.nav-toggle__icon::before,.nav-toggle__icon::after,.nav-toggle__icon span{transition:none !important}}@media(max-width: 560px){.site-nav{position:fixed !important;inset:0 !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;transform:none !important;opacity:0;pointer-events:none;z-index:70 !important;background:rgba(240,248,242,.96);padding:5rem 1.5rem 2rem}.site-nav.is-open{opacity:1;pointer-events:auto}.site-nav__list{gap:.5rem !important}.site-nav__link{font-size:1.05rem;padding:.9rem .75rem}.nav-toggle{position:fixed !important;top:1rem !important;right:1rem !important;z-index:80 !important}.nav-backdrop{display:none !important}.bg-image{width:92px !important}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:float 3s ease-in-out infinite}body.modal-open{overflow:hidden}@keyframes bounce-vertical{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}.u-bounce-vertical{animation:bounce-vertical 1.5s ease-in-out infinite}nav ul{font-family:"Playfair Display",serif;padding-top:5px;padding-right:15px;display:flex;justify-self:flex-end;position:absolute;gap:15px;list-style-type:none;z-index:10;font-size:20px}nav a{display:inline-block;text-decoration:none;color:#000;cursor:pointer}nav a:hover{color:#000;transform:translateY(-2px);text-shadow:hsla(112,86%,19%,.615) 1px 0 10px;text-decoration:underline;text-underline-offset:2px}.btn-booking{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg, hsla(112, 86%, 19%, 0.615) 0%, hsl(196, 26%, 42%) 100%);border:none;border-radius:50px;cursor:pointer;box-shadow:0 10px 30px -10px rgba(200,100,100,.4);transition:all .3s ease;text-decoration:none}.btn-booking:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 15px 40px -10px rgba(200,100,100,.5)}.btn-booking:active{transform:scale(0.98)}.btn-booking svg{margin-right:.5rem}.service-book-btn{all:unset;background-color:#d3d3d3;margin-top:14px;font-size:12px;font-family:"Playfair Display",serif;font-weight:650;width:50%;padding:10px;border:none;border-radius:10px;cursor:pointer}.service-book-btn:hover{color:#fff;background-color:hsla(112,86%,19%,.615)}.booking-modal{position:fixed;inset:0;background:rgba(0,0,0,.75);display:none;align-items:center;justify-content:center;z-index:9999;padding:1.25rem}.booking-modal.active{display:flex}.booking-modal-content{position:relative;width:100%;max-width:640px;background:#fff;border-radius:1.5rem;border:1px solid hsl(30,20%,88%);padding:2.25rem 2rem;box-shadow:0 25px 70px -30px rgba(0,0,0,.35)}.booking-modal-close{position:absolute;top:14px;right:16px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:28px;line-height:1;background:hsl(124,41%,92%);border:1px solid hsl(30,20%,88%);cursor:pointer;color:hsl(20,20%,20%);transition:transform .2s ease,box-shadow .2s ease}.booking-modal-close:hover{transform:translateY(-2px);box-shadow:0 10px 25px -18px rgba(0,0,0,.25)}.booking-modal-title{font-family:"Playfair Display",serif;font-size:2rem;font-weight:700;line-height:1.15;margin-bottom:.75rem}.booking-modal-text{color:hsl(20,10%,45%);font-size:1.05rem;margin-bottom:1.25rem}.booking-modal-list{list-style:none;padding:0;margin:0 0 1.75rem;display:grid;gap:.65rem}.booking-modal-list li{background:hsl(124,41%,92%);border:1px solid hsl(30,20%,88%);border-radius:1rem;padding:.85rem 1rem;color:hsl(20,20%,20%);font-size:.98rem}.booking-modal-actions{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap}.booking-continue-btn{display:inline-flex;align-items:center;justify-content:center;padding:.95rem 1.6rem;font-size:1.05rem;font-weight:700;color:#fff;background:linear-gradient(135deg, hsla(112, 86%, 19%, 0.615) 0%, hsl(196, 26%, 42%) 100%);border:none;border-radius:999px;cursor:pointer;text-decoration:none;box-shadow:0 10px 30px -10px rgba(200,100,100,.4);transition:transform .3s ease,box-shadow .3s ease}.booking-continue-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 15px 40px -10px rgba(200,100,100,.5)}.booking-continue-btn:active{transform:scale(0.98)}.booking-cancel-btn{display:inline-flex;align-items:center;justify-content:center;padding:.95rem 1.6rem;font-size:1.05rem;font-weight:700;color:hsl(20,20%,20%);background:rgba(0,0,0,0);border:1px solid hsl(30,20%,88%);border-radius:999px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.booking-cancel-btn:hover{background:hsl(124,41%,92%);transform:translateY(-2px);box-shadow:0 10px 25px -18px rgba(0,0,0,.25)}@media(max-width: 520px){.booking-modal-content{padding:2rem 1.25rem}.booking-modal-title{font-size:1.65rem}.booking-modal-actions{gap:.75rem}.booking-continue-btn,.booking-cancel-btn{width:100%}}#backToTop{position:fixed;bottom:30px;right:30px;width:48px;height:48px;border-radius:50%;border:none;background:linear-gradient(135deg, hsla(112, 86%, 19%, 0.615), hsl(196, 26%, 42%));color:#fff;font-size:22px;cursor:pointer;display:none;z-index:999;box-shadow:0 10px 30px -10px rgba(200,100,100,.5);transition:transform .3s ease,opacity .3s ease}#backToTop:hover{transform:translateY(-3px) scale(1.05)}#backToTop.show{display:block}#footer{padding:3rem 1.5rem;border-top:1px solid hsl(30,20%,88%);text-align:center;align-items:center}.footer-brand{font-family:"Playfair Display",serif;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.site-footer{border-top:1px solid #000;text-align:center;background-color:hsl(124,41%,92%);padding-bottom:10px}.footer-copy{padding-bottom:10px;color:hsl(20,10%,45%);font-size:.9rem}.social-media{max-width:50px}.social-media:hover{transform:translateY(-2px);box-shadow:#ff0ace 0px 54px 55px}.bg-image{max-width:150px;position:absolute;top:5px;left:15px;z-index:1}.bg-image:hover{box-shadow:0 10px 30px -10px rgba(200,100,100,.4);cursor:pointer}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse at center, white 0%, rgba(255, 255, 255, 0.6) 25%, hsl(124, 41%, 92%) 70%)}.hero-content{position:relative;text-align:center;padding:2rem;max-width:800px}.hero-tagline{color:hsl(196,26%,42%);font-weight:1000;letter-spacing:.2em;text-transform:uppercase;margin-bottom:1rem;font-size:.9rem}.arrow{margin-left:10px;font-size:1.5rem;margin-right:10px;font-weight:bolder}.hero-title{font-size:clamp(3rem,8vw,5rem);font-weight:1200;line-height:1.1;margin-bottom:1.5rem}.hero-title span{color:hsla(112,86%,19%,.615);display:block}.hero-description{font-weight:600;font-size:1.2rem;color:hsl(20,10%,45%);max-width:600px;margin:0 auto 2.5rem}.services{padding:5rem 1.5rem;background:linear-gradient(180deg, hsl(124, 41%, 92%) 0%, hsl(30, 30%, 98%) 100%)}.services-container{max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:4rem}.section-title{font-size:clamp(2rem,5vw,3rem);margin-bottom:1rem}.section-subtitle{color:hsl(20,10%,45%);font-size:1.1rem}.services-grid{display:grid;grid-template-columns:1fr;gap:2rem}.category-card{background:#fff;border-radius:1.5rem;border:1px solid hsl(30,20%,88%);overflow:hidden;transition:box-shadow .3s ease,transform .3s ease}.category-card:hover{transform:translateY(-3px);box-shadow:0 20px 40px -20px rgba(0,0,0,.1)}.category-toggle{width:100%;padding:1.75rem 2rem;background:rgba(0,0,0,0);border:0;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem}.category-title{font-size:1.5rem;font-weight:700;color:#000}.category-meta{display:inline-flex;align-items:center;gap:.6rem;color:#000}.category-count{font-size:.9rem;opacity:.7}.category-chevron{display:inline-block;transition:transform 250ms ease;font-size:1.1rem;opacity:.8}.category-card[data-expanded=true] .category-chevron{transform:rotate(180deg)}.category-services{padding:0 2rem 2rem;max-height:0;overflow:hidden;opacity:0;margin-top:0;transition:max-height 350ms ease,opacity 250ms ease,margin-top 350ms ease;display:grid;gap:2rem}.category-services.is-open{max-height:3000px;opacity:1;margin-top:.5rem}.service-card{background:#fff;border-radius:1.5rem;padding:2rem;text-align:center;border:1px solid hsl(30,20%,88%);transition:all .3s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px -20px rgba(0,0,0,.1)}.service-icon{width:60px;height:60px;background:hsl(124,41%,92%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.service-icon svg{width:28px;height:28px;color:hsla(112,86%,19%,.615)}.service-meta{display:flex;margin-bottom:15px;gap:12px;text-align:center;margin-top:10px;align-items:center;justify-content:center}.service-price{font-weight:700;font-size:1.05rem}.service-duration{text-align:center;font-size:1rem;opacity:.7}.service-title{font-size:1.5rem;margin-bottom:.75rem}.service-description{color:hsl(20,10%,45%);font-size:1rem}.about{padding:5rem 1.5rem}.about-container{max-width:800px;margin:0 auto;text-align:center}.about-features{display:flex;justify-content:center;gap:3rem;margin-top:2rem;flex-wrap:wrap}.about-feature{text-align:center}.about-feature svg{width:24px;height:24px;color:hsla(112,86%,19%,.615);margin-bottom:.5rem}.about-feature p{font-size:1rem;color:hsl(20,10%,45%)}.about-feature a{text-decoration:none}.cta{padding:5rem 1.5rem;background:linear-gradient(135deg, hsl(124, 41%, 92%) 0%, hsl(15, 40%, 92%) 100%);text-align:center}.cta-container{max-width:600px;margin:0 auto}.cta-title{font-size:clamp(2rem,5vw,2.5rem);margin-bottom:1rem}.cta-description{color:hsl(20,10%,45%);font-size:1.1rem;margin-bottom:2rem}.about-images-group{gap:50px;display:flex;justify-content:center}.about-images-group img{box-shadow:5px 10px 10px rgba(0,0,0,.718);width:50%;max-width:300px;border-radius:12px}.hero{position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at center, white 0%, rgba(255, 255, 255, 0.6) 25%, hsl(124, 41%, 92%) 70%)}.hero-collage{position:absolute;inset:0;z-index:1;pointer-events:none}.collage-img{position:absolute;width:clamp(160px,22vw,320px);height:auto;border-radius:16px;object-fit:cover;opacity:.6;transform-origin:center}.hero-collage .img1{top:8%;left:6%;transform:rotate(-10deg)}.hero-collage .img2{top:18%;right:5%;transform:rotate(12deg);width:clamp(180px,26vw,360px)}.hero-collage .img3{bottom:8%;left:18%;transform:rotate(6deg)}.hero-collage .img4{bottom:5%;right:20%;transform:rotate(-8deg);width:clamp(150px,20vw,300px)}.hero-collage .img5{top:48%;left:2%;transform:rotate(14deg);width:clamp(140px,18vw,280px)}.hero-collage .img6{top:6%;right:30%;transform:rotate(-5deg);width:clamp(150px,20vw,300px)}.hero-content{position:relative;z-index:2}@media(max-width: 700px){.collage-img{opacity:.3}}@media(max-width: 1010px){.about-images-group{gap:10px;display:flex;justify-content:center}}@media(max-width: 950px){.about-images-group img{width:100%;max-width:200px;border-radius:12px}}@media(max-width: 637px){.hero-collage .img6,.hero-collage .img3{display:none}.about-images-group{display:grid;gap:10px;grid-template-columns:repeat(2, 1fr);align-items:stretch}.about-images-group img{width:100%;max-width:none;max-height:none;display:block;border-radius:12px}.about-img1{grid-column:1}.about-img2{grid-column:2}.about-img3{grid-column:1/-1;width:100%;max-width:none;justify-self:stretch}}body[data-page=contact] .hero--contact{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;padding:120px 24px 64px}body[data-page=contact] .hero-content--contact{top:150px;width:100%;max-width:640px;justify-self:end}body[data-page=contact] .contact-form{top:100px;width:100%;max-width:520px;justify-self:start;position:relative;padding-bottom:20px;z-index:2}body[data-page=contact] .contact-form fieldset{border:none;background:#fff;margin:0;padding:32px;border-radius:18px;box-shadow:0 12px 30px rgba(0,0,0,.08)}body[data-page=contact] .contact-form label{display:block;margin-top:10px;margin-bottom:6px;font-size:.9rem;color:#555}body[data-page=contact] .contact-form input,body[data-page=contact] .contact-form textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #d1d5db;font-size:.95rem;color:#333;background-color:#fff;transition:border-color .2s ease,box-shadow .2s ease}body[data-page=contact] .contact-form input:focus,body[data-page=contact] .contact-form textarea:focus{outline:none;border-color:hsla(112,86%,19%,.615);box-shadow:0 0 0 3px rgba(184,137,168,.2)}body[data-page=contact] .contact-form input:invalid,body[data-page=contact] .contact-form textarea:invalid{border-color:#e11d48}body[data-page=contact] .contact-form input:valid,body[data-page=contact] .contact-form textarea:valid{border-color:#22c55e}body[data-page=contact] .contact-form textarea{resize:vertical;min-height:120px}body[data-page=contact] .contact-form button{margin-top:18px;width:100%;padding:14px;border:none;border-radius:14px;background:hsla(112,86%,19%,.615);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s ease,transform .1s ease,box-shadow .2s ease}body[data-page=contact] .contact-form button:hover{background:hsla(112,86%,19%,.615);box-shadow:0 6px 18px rgba(184,137,168,.3);transform:translateY(-2px)}body[data-page=contact] .contact-form button:active{transform:scale(0.98)}body[data-page=contact] .form-status{margin-top:1rem;font-weight:600;text-align:center}body[data-page=contact] .form-status.success{color:#16a34a}body[data-page=contact] .form-status.error{color:#e11d48}body[data-page=contact] .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}@media(max-width: 1024px){body[data-page=contact] .hero--contact{grid-template-columns:1fr;gap:24px;padding:50px 20px 150px}body[data-page=contact] .hero-content--contact,body[data-page=contact] .contact-form{max-width:720px;justify-self:center}body[data-page=contact] .contact-form fieldset{padding:28px}}@media(max-width: 600px){body[data-page=contact] .hero--contact{padding:96px 16px 48px;gap:18px;padding:50px 20px 150px}body[data-page=contact] .hero-title{font-size:clamp(2.2rem,9vw,3rem)}body[data-page=contact] .contact-form fieldset{padding:20px}}.hero--policies{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto}.hero-content--policies{grid-row:1;width:100%;top:150px;max-width:1500px;justify-self:center}.hero-description--policies{grid-row:2;width:100%;justify-self:center;margin:0px;max-width:1500px}.policies-list{margin-top:50px;justify-self:center;text-align:left;max-width:100%;width:750px;z-index:1000;grid-row:3}.policies-list .li{margin-bottom:10px}.refund-policy{grid-row:3;margin-top:50px;margin-bottom:200px}@media(max-width: 800px){.hero-content{max-width:600px}}@media(max-width: 600px){.hero-content--policies{width:100%;max-width:400px}}@media(max-width: 480px){.hero-content{width:94%;max-width:380px}}
