*{margin:0;padding:0}:root{--primary-green:#00a86b;--dark-green:#008f5c;--light-green:#e8f5e8;--primary-yellow:gold;--dark-yellow:#e6c200;--light-yellow:#fff9e6;--gray-50:#fafafa;--gray-100:#f4f4f5;--gray-200:#e4e4e7;--gray-300:#d4d4d8;--gray-400:#a1a1aa;--gray-500:#71717a;--gray-600:#52525b;--gray-700:#3f3f46;--gray-800:#27272a;--gray-900:#18181b;--white:#fff;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--radius:8px;--radius-lg:12px}body{-webkit-font-smoothing:antialiased;background-color:#fff;background-color:var(--white);color:#18181b;color:var(--gray-900);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.container{margin:0 auto;max-width:1200px;padding:0 1rem}.loading-screen{align-items:center;background:linear-gradient(135deg,#00a86b,#008f5c);background:linear-gradient(135deg,var(--primary-green),var(--dark-green));color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center;text-align:center}.loading-spinner{border:4px solid #ffffff4d;border-top-color:#fff;height:40px;margin-bottom:1rem;width:40px}button:focus-visible,input:focus-visible{outline:2px solid #00a86b;outline:2px solid var(--primary-green);outline-offset:2px}@media (max-width:768px){.mobile-only{display:block}.desktop-only{display:none}.container{padding:0 1rem}}@media (max-width:480px){.container{padding:0 .75rem}}button{cursor:pointer;transition:all .2s ease}button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}@media (max-width:480px){h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}}.mobile-cart-icon{background:none;border:none;border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:none;padding:.5rem;position:relative;transition:background .2s ease}.mobile-cart-icon:hover{background:var(--gray-100)}.mobile-cart-icon .cart-badge{align-items:center;background:var(--primary-green);border-radius:10px;color:#fff;display:flex;font-size:.625rem;font-weight:700;height:16px;justify-content:center;min-width:16px;padding:2px 5px;position:absolute;right:4px;top:4px}.mobile-actions{align-items:center;display:none;flex-direction:row;gap:.25rem}.user-info-mobile span{color:var(--gray-700);font-weight:500}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block!important}.mobile-only.mobile-actions{align-items:center!important;display:flex!important;flex-direction:row!important}.mobile-cart-icon,.mobile-menu-btn{align-items:center;display:flex!important;height:44px;justify-content:center;width:44px}.nav{align-items:flex-start;background:#fff;box-shadow:var(--shadow-lg);flex-direction:column;gap:0;height:100vh;padding:80px 24px 24px;position:fixed;right:-100%;top:0;transition:right .3s ease;width:280px;z-index:999}.nav.nav-open{right:0}.nav a{border-bottom:1px solid var(--gray-200);font-size:16px;padding:16px 0;width:100%}.nav a:last-child{border-bottom:none}.top-bar-content{flex-direction:column;gap:8px;text-align:center}}@media (min-width:769px){.mobile-only{display:none!important}}.user-info span{font-size:.875rem}.dropdown-item{padding:.5rem}.hero-banner{background:linear-gradient(135deg,var(--light-green) 0,var(--white) 50%,var(--light-yellow) 100%);overflow:hidden;padding:5rem 0;position:relative}.hero-content{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr}.welcome-badge{background:var(--primary-green);border-radius:2rem;color:#fff;display:inline-block;font-size:.875rem;font-weight:600;margin-bottom:1rem;padding:.5rem 1rem}.hero-title{color:var(--gray-900);font-size:3.5rem;font-weight:700;line-height:1.1;margin-bottom:1.5rem}.hero-title .highlight{color:var(--primary-green);display:block}.hero-subtitle{color:var(--gray-700);font-size:1.25rem;line-height:1.6}.hero-search,.hero-subtitle{margin-bottom:2rem;max-width:500px}.hero-search{display:flex;gap:1rem}.search-box{background:#fff;border:1px solid var(--gray-200);box-shadow:var(--shadow-md);flex:1 1;padding:1rem 1.25rem;transition:box-shadow .2s ease}.search-box input{font-size:1rem}.search-btn{align-items:center;background:var(--primary-green);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:1rem 1.5rem;transition:all .2s ease;white-space:nowrap}.search-btn:hover{background:var(--dark-green);box-shadow:var(--shadow-md);transform:translateY(-1px)}.trust-indicators{gap:2rem}.trust-indicators,.trust-item{align-items:center;display:flex}.trust-item{color:var(--gray-600);font-size:.875rem;font-weight:500;gap:.5rem}.trust-item svg{color:var(--primary-green)}.hero-visual{display:flex;justify-content:center}.service-showcase{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;max-width:300px}.showcase-item{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1.5rem;text-align:center;transition:transform .2s ease}.showcase-item:hover{transform:translateY(-4px)}.showcase-item.primary{background:var(--primary-green);color:#fff;grid-column:1/-1}.showcase-item.secondary{background:#fff;border:1px solid var(--gray-200);color:var(--gray-900)}.showcase-item.accent{background:var(--primary-yellow);color:var(--gray-900)}.showcase-icon{display:flex;justify-content:center;margin-bottom:.75rem}.showcase-item span{font-size:.875rem;font-weight:600}.section-header{margin-bottom:3rem;text-align:center}.section-header h2{font-size:2.5rem;margin-bottom:1rem}.section-header p{font-size:1.125rem;line-height:1.6;margin:0 auto;max-width:600px}.featured-services{background:var(--white);padding:5rem 0}.featured-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.all-services{background:var(--gray-50);padding:5rem 0}.category-navigation{gap:1rem;justify-content:center;margin-bottom:3rem;padding-bottom:1rem}.category-nav-btn{border:1px solid var(--gray-200);border-radius:2rem;padding:.75rem 1.5rem}.category-nav-btn.active,.category-nav-btn:hover{background:var(--primary-green);border-color:var(--primary-green);color:#fff}.services-grid{grid-gap:2rem;gap:2rem}.service-card{height:100%;overflow:hidden}.service-card.featured{border:2px solid var(--primary-yellow)}.service-header{background:var(--gray-50);border-bottom:1px solid var(--gray-200);padding:2rem 2rem 0;position:relative}.service-icon{margin-bottom:1rem}.service-icon-svg{color:var(--primary-green)}.featured-badge{align-items:center;background:var(--primary-yellow);border-radius:1rem;color:var(--gray-900);display:flex;font-size:.75rem;font-weight:600;gap:.25rem;padding:.5rem .75rem;position:absolute;right:1rem;top:1rem}.service-content{display:flex;flex:1 1;flex-direction:column;padding:1.5rem 2rem 2rem}.service-name{color:var(--gray-900);font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.service-description{color:var(--gray-600);flex:1 1;font-size:.875rem;line-height:1.5;margin-bottom:1.5rem}.service-features{display:flex;gap:1rem;margin-bottom:1.5rem}.feature{align-items:center;color:var(--gray-600);display:flex;font-size:.75rem;gap:.5rem}.feature svg{color:var(--primary-green)}.service-footer{justify-content:space-between;margin-top:auto}.price-info,.service-footer{align-items:center;display:flex}.price{font-size:1.125rem}.book-btn{background:var(--primary-green);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:background .2s ease}.book-btn:hover{background:var(--dark-green)}.value-proposition{background:#fff;padding:5rem 0}.proposition-content{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr}.proposition-text h2{color:var(--gray-900);font-size:2.5rem;font-weight:700;margin-bottom:1.5rem}.proposition-text>p{color:var(--gray-600);font-size:1.125rem;line-height:1.6;margin-bottom:2rem}.proposition-features{display:flex;flex-direction:column;gap:1.5rem}.proposition-feature{align-items:flex-start;display:flex;gap:1rem}.proposition-feature svg{color:var(--primary-green);flex-shrink:0;margin-top:.25rem}.proposition-feature h4{color:var(--gray-900);font-weight:600;margin-bottom:.5rem}.proposition-feature p{color:var(--gray-600);font-size:.875rem;line-height:1.5}.proposition-visual{display:flex;justify-content:center}.visual-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg);max-width:300px;padding:2rem}.card-header{gap:.75rem;margin-bottom:1rem}.card-header svg{color:var(--primary-green)}.visual-card p{color:var(--gray-600);line-height:1.6}.how-it-works{background:var(--gray-50);padding:5rem 0}.steps-container{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1000px}.step{padding:2rem;text-align:center}.step-icon{display:flex;justify-content:center;margin-bottom:1.5rem;position:relative}.step-number{font-size:1.125rem;font-weight:700;height:40px;position:absolute;right:-10px;top:-10px;width:40px;z-index:2}.step-icon svg{background:var(--light-green);border-radius:50%;color:var(--primary-green);padding:1.5rem}.step-content h3{color:var(--gray-900);font-size:1.5rem;font-weight:600;margin-bottom:1rem}.step-content p{color:var(--gray-600);line-height:1.6}.cta-section{background:linear-gradient(135deg,var(--primary-green),var(--dark-green));color:#fff;padding:5rem 0;text-align:center}.cta-content h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.cta-content p{font-size:1.125rem;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:600px;opacity:.9}.cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.cta-btn{border:none;border-radius:var(--radius);cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .2s ease}.cta-btn.primary{background:#fff;color:var(--primary-green)}.cta-btn.primary:hover{background:var(--gray-100);transform:translateY(-2px)}.cta-btn.secondary{background:#0000;border:2px solid #fff;color:#fff}.cta-btn.secondary:hover{background:#fff;color:var(--primary-green);transform:translateY(-2px)}.modal-overlay{z-index:1000}.modal-content{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:400px;padding:2rem;position:relative;width:100%}.modal-header{align-items:center;justify-content:space-between;margin-bottom:1.5rem}.modal-header h2{font-weight:600}.close-btn{background:none;border-radius:4px;color:var(--gray-500);font-size:1.5rem;height:32px;padding:0;width:32px}.close-btn:hover{background:var(--gray-100);color:var(--gray-700)}.auth-form input{background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);font-size:1rem;padding:.75rem;transition:border-color .2s ease}.auth-form input:focus{border-color:var(--primary-green);box-shadow:0 0 0 3px #00a86b1a;outline:none}.error-message{padding:.75rem;text-align:center}.auth-switch{margin-top:1rem;padding-top:1rem}@media (max-width:768px){.mobile-menu-btn{display:block}.nav{background:#fff;border-top:1px solid var(--gray-200);box-shadow:var(--shadow-lg);display:none;flex-direction:column;left:0;padding:1rem;position:absolute;right:0;top:100%}.nav.nav-open{display:flex}.auth-buttons{flex-direction:column;width:100%}.btn-login,.btn-signup{text-align:center;width:100%}.hero-content{gap:2rem;grid-template-columns:1fr;text-align:center}.hero-title{font-size:2.5rem}.hero-search{flex-direction:column}.trust-indicators{flex-wrap:wrap;justify-content:center}.service-showcase{grid-template-columns:1fr;max-width:250px}.category-navigation{justify-content:flex-start}.proposition-content,.services-grid{grid-template-columns:1fr}.proposition-content{gap:2rem}.steps-container{grid-template-columns:1fr}.cta-buttons{align-items:center;flex-direction:column}.cta-btn{max-width:300px;width:100%}}@media (max-width:480px){.container{padding:0 .5rem}.hero-title,.section-header h2{font-size:2rem}.service-showcase{align-items:center;flex-direction:column}.proposition-feature{flex-direction:column;text-align:center}}@media (max-width:1024px){body,html{max-width:100vw;overflow-x:hidden;width:100%}.hero-title{font-size:3rem}.hero-content{gap:2rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width:768px){body,html{max-width:100vw;overflow-x:hidden;width:100%}.container{max-width:100%;overflow-x:hidden}.mobile-menu-btn{align-items:center;border:1px solid var(--gray-200);border-radius:var(--radius);display:flex;height:44px;justify-content:center;width:44px}.nav{background:#fff;box-shadow:var(--shadow-lg);flex-direction:column;gap:1.5rem;height:100vh;left:-100%;max-width:300px;padding:2rem;position:fixed;top:0;transition:left .3s ease;width:80%;z-index:1001}.nav.nav-open{left:0}.nav a{border-bottom:1px solid var(--gray-100);font-size:1.1rem;padding:.75rem 0;width:100%}.nav a:last-child{border-bottom:none}.auth-buttons{flex-direction:column;margin-top:1rem;width:100%}.btn-login,.btn-signup{padding:.75rem 1.5rem;text-align:center;width:100%}.nav-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:1000}.nav-overlay.nav-open{display:block}.hero-content{gap:2rem;grid-template-columns:1fr;text-align:center}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.125rem}.hero-search{flex-direction:column}.search-box{width:100%}.search-btn{justify-content:center;width:100%}.trust-indicators{flex-wrap:wrap;gap:1rem;justify-content:center}.trust-item{flex:0 0 auto}.service-showcase{grid-template-columns:1fr;max-width:100%}.showcase-item{padding:1.25rem}.category-navigation{justify-content:flex-start;padding-bottom:.5rem}.category-nav-btn{font-size:.875rem;padding:.625rem 1.25rem}.services-grid{gap:1.25rem;grid-template-columns:1fr}.service-card{margin:0 auto;max-width:400px}.proposition-content,.steps-container{gap:2rem;grid-template-columns:1fr}.step{padding:1.5rem 1rem;text-align:center}.step-icon{margin-bottom:1rem}.cta-buttons{align-items:center;flex-direction:column;gap:1rem}.cta-btn{max-width:300px;width:100%}.features-grid,.testimonials-grid{grid-template-columns:1fr}.features-grid{gap:1.5rem}.feature-item{padding:1.5rem 1rem}.all-services,.cta-section,.featured-services,.hero-banner,.how-it-works,.value-proposition{padding:3rem 0}.section-header{margin-bottom:2rem}.section-header h2{font-size:2rem}}@media (max-width:480px){body,html{max-width:100vw;overflow-x:hidden;width:100%}.container{max-width:100%;overflow-x:hidden;padding:0 1rem}.hero-title{font-size:2rem;line-height:1.2}.hero-subtitle{font-size:1rem}.welcome-badge{padding:.375rem .75rem}.top-bar,.welcome-badge{font-size:.75rem}.top-bar-content{flex-direction:column;gap:.5rem;text-align:center}.logo-text h1{font-size:1.25rem}.logo-text span{font-size:.75rem}.service-header{padding:1.5rem 1.5rem 0}.service-content{padding:1rem 1.5rem 1.5rem}.service-name{font-size:1.125rem}.service-features{flex-direction:column;gap:.5rem}.feature{justify-content:center}.service-footer{flex-direction:column;gap:1rem;text-align:center}.price-info{justify-content:center}.book-btn{width:100%}.proposition-feature{flex-direction:column;gap:.75rem;text-align:center}.proposition-feature svg{align-self:center}.visual-card{padding:1.5rem}.step-content h3{font-size:1.25rem}.cta-content h2{font-size:2rem}.cta-content p{font-size:1rem}.mobile-only{display:block}.desktop-only{display:none}}@media (min-width:481px){.mobile-only{display:none}.desktop-only{display:block}}@media (hover:none) and (pointer:coarse){input,select,textarea{font-size:16px!important}.service-card:hover{transform:none}.add-to-cart-btn,.book-btn,.btn-login,.btn-signup,.category-nav-btn,.cta-btn,.view-details-btn{align-items:center;display:flex;justify-content:center;min-height:44px;min-width:44px}.search-box input{font-size:16px}.service-card:active{transform:scale(.98);transition:transform .1s ease}.book-btn:active,.category-nav-btn:active,.cta-btn:active{transform:scale(.95);transition:transform .1s ease}}@media (max-width:768px) and (-webkit-min-device-pixel-ratio:2),(max-width:768px) and (min-resolution:2dppx){.hero-title{font-weight:700}.service-name{font-weight:600}}@media (max-width:768px) and (orientation:landscape){.hero-banner{padding:2rem 0}.hero-content{min-height:auto}.nav{overflow-y:auto;padding:1rem}.nav a{padding:.5rem 0}}@supports (padding:max(0px)){.container{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.header{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}}.user-info-mobile{text-align:center}.category-mobile-header{margin-bottom:1rem}.category-mobile-toggle{padding:1rem}.category-mobile-toggle:hover{border-color:var(--primary-green)}.category-navigation.mobile-open{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);display:flex;flex-direction:column;margin-bottom:2rem;padding:1rem}.category-navigation.mobile-open .category-nav-btn{border:none;border-radius:var(--radius);margin-bottom:.5rem;text-align:left}.category-navigation.mobile-open .category-nav-btn:last-child{margin-bottom:0}.loading-screen{padding:2rem}.loading-spinner{border-width:3px}@media (max-width:768px){.service-card:active{transform:scale(.98);transition:transform .1s ease}.book-btn:active,.category-nav-btn:active{transform:scale(.95);transition:transform .1s ease}}.category-navigation{scrollbar-color:var(--gray-300) #0000}.category-navigation::-webkit-scrollbar{height:4px}.category-navigation::-webkit-scrollbar-track{background:#0000}.category-navigation::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:2px}@media (max-width:768px){.proposition-feature p,.service-description,.step-content p{font-size:.8125rem;line-height:1.4}}.book-btn,.category-nav-btn,.service-card{will-change:transform}@media (prefers-reduced-motion:reduce){.book-btn,.category-nav-btn,.cta-btn,.service-card{transition:none}.service-card:hover{transform:none}}.top-bar{background:var(--gray-900);color:#fff;font-size:.875rem;padding:.5rem 0}.top-bar-content{align-items:center;display:flex;justify-content:space-between}.contact-info,.location{align-items:center;display:flex;gap:.5rem}.header{background:var(--white);box-shadow:var(--shadow-sm);position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-container{justify-content:space-between;padding:1rem 0;position:relative}.logo,.nav-container{align-items:center;display:flex}.logo{gap:.75rem;text-decoration:none;z-index:1002}.logo-icon{align-items:center;background:linear-gradient(135deg,var(--primary-green),var(--dark-green));border-radius:8px;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:40px;justify-content:center;width:40px}.logo-text h1{color:var(--primary-green);font-size:1.5rem;font-weight:700;line-height:1}.logo-text span{font-size:.875rem}.logo-text span,.nav a{color:var(--gray-800);font-weight:500}.nav a{position:relative;text-decoration:none;transition:color .2s ease}.nav a:hover{color:var(--primary-green)}.nav a:after{background:var(--primary-green);bottom:-4px;content:"";height:2px;left:0;position:absolute;transition:width .2s ease;width:0}.nav a:hover:after{width:100%}.auth-buttons,.auth-section{align-items:center;display:flex;gap:1rem}.btn-login{background:#0000;border:1px solid var(--primary-green);border-radius:var(--radius);color:var(--primary-green);cursor:pointer;display:inline-block;font-weight:600;padding:.5rem 1.5rem;text-align:center;text-decoration:none;transition:all .2s ease}.btn-login:hover,.btn-signup{background:var(--primary-green);color:#fff}.btn-signup{border:none;border-radius:var(--radius);cursor:pointer;display:inline-block;font-weight:600;padding:.5rem 1.5rem;text-align:center;text-decoration:none;transition:all .2s ease}.btn-signup:hover{background:var(--dark-green);transform:translateY(-1px)}.user-actions-desktop{align-items:center;display:flex;gap:.75rem;margin-right:1rem}.btn-dashboard{align-items:center;background:#0000;border:1px solid var(--primary-green);border-radius:var(--radius);color:var(--primary-green);display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.btn-dashboard:hover{transform:translateY(-1px)}.btn-browse,.btn-dashboard:hover{background:var(--primary-green);color:#fff}.btn-browse{align-items:center;border:1px solid var(--primary-green);border-radius:var(--radius);display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.btn-browse:hover{background:var(--dark-green);border-color:var(--dark-green);transform:translateY(-1px)}.user-profile{position:relative}.user-trigger{align-items:center;background:var(--gray-50);border:none;border-radius:var(--radius);cursor:pointer;display:flex;font-family:inherit;gap:.5rem;padding:.5rem 1rem;transition:background .2s ease}.user-trigger:hover{background:var(--gray-100)}.user-avatar{align-items:center;background:var(--primary-green);border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.user-dropdown{animation:dropdownFadeIn .2s ease;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);box-shadow:var(--shadow-lg);margin-top:.5rem;min-width:200px;padding:1rem;position:absolute;right:0;top:100%;z-index:1001}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-info{border-bottom:1px solid var(--gray-200);margin-bottom:.5rem;padding-bottom:1rem}.user-info strong{color:var(--gray-900);display:block;font-size:.875rem}.user-info span{color:var(--gray-600);font-size:.75rem}.dropdown-item{align-items:center;background:none;border:none;border-radius:4px;color:var(--gray-700);cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;gap:.5rem;padding:.75rem;text-align:left;text-decoration:none;transition:background .2s ease;width:100%}.dropdown-item:hover{background:var(--gray-50);color:var(--gray-900)}.mobile-menu-btn{align-items:center;background:none;border:none;border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:none;height:44px;justify-content:center;padding:.5rem;transition:background .2s ease;width:44px;z-index:1002}.mobile-menu-btn:hover{background:var(--gray-100)}.nav-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:998}.nav-overlay.nav-open{display:block}.nav{align-items:center;display:flex;gap:2rem}.auth-buttons-mobile{border-top:1px solid var(--gray-200);display:flex;flex-direction:column;gap:1rem;margin-top:2rem;padding-top:2rem}.auth-buttons-mobile .btn-login,.auth-buttons-mobile .btn-signup{font-size:1rem;padding:.75rem 1.5rem;text-align:center;width:100%}.user-info-mobile{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.user-details-mobile{align-items:center;background:var(--gray-50);border-radius:var(--radius);display:flex;gap:.75rem;padding:1rem}.user-avatar-mobile{align-items:center;background:var(--primary-green);border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.user-details-mobile div{flex:1 1;overflow:hidden}.user-details-mobile strong{color:var(--gray-900);display:block;font-size:.875rem;margin-bottom:.25rem}.user-details-mobile span,.user-details-mobile strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-details-mobile span{color:var(--gray-600);font-size:.75rem}.btn-dashboard-mobile{background:var(--primary-green);color:#fff;cursor:pointer;gap:.5rem;justify-content:center;padding:.75rem;width:100%}.btn-dashboard-mobile:hover{background:var(--dark-green);border-color:var(--dark-green)}.btn-logout-mobile{align-items:center;background:var(--gray-100);border:1px solid var(--gray-300);border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem;transition:all .2s ease;width:100%}.btn-logout-mobile:hover{background:var(--gray-200);color:var(--gray-900)}.user-actions-mobile{border-bottom:1px solid var(--gray-200);border-top:1px solid var(--gray-200);display:flex;flex-direction:column;gap:.75rem;margin:1rem 0;padding:1rem 0}.btn-dashboard-mobile{align-items:center;background:#0000;border:1px solid var(--primary-green);border-radius:var(--radius);color:var(--primary-green);display:flex;font-size:1rem;font-weight:600;gap:.75rem;padding:.75rem 1rem;text-align:left;text-decoration:none;transition:all .2s ease}.btn-browse-mobile,.btn-dashboard-mobile:hover{background:var(--primary-green);color:#fff}.btn-browse-mobile{align-items:center;border:1px solid var(--primary-green);border-radius:var(--radius);display:flex;font-size:1rem;font-weight:600;gap:.75rem;padding:.75rem 1rem;text-align:left;text-decoration:none;transition:all .2s ease}.btn-browse-mobile:hover{background:var(--dark-green);border-color:var(--dark-green)}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block!important}.mobile-menu-btn{display:flex;z-index:1002}.nav{align-items:flex-start;background:#fff;box-shadow:var(--shadow-xl);flex-direction:column;gap:0;height:100vh;max-width:320px;overflow-y:auto;padding:80px 1.5rem 2rem;position:fixed;right:-100%;top:0;transition:right .3s cubic-bezier(.4,0,.2,1);width:85%;z-index:1001}.nav.nav-open{right:0}.nav a{border-bottom:1px solid var(--gray-200);color:var(--gray-800);font-size:1.1rem;padding:1rem 0;transition:color .2s ease;width:100%}.nav a:last-child{border-bottom:none}.nav a:hover{background:none;color:var(--primary-green)}.nav a:after{display:none}.top-bar-content{flex-direction:column;gap:.5rem;text-align:center}.top-bar{font-size:.75rem}.logo-text h1{font-size:1.25rem}.logo-text span{font-size:.75rem}.user-actions-desktop{display:none}}@media (min-width:769px){.mobile-only{display:none!important}.desktop-only{display:flex!important}.auth-buttons-mobile,.user-actions-mobile{display:none}}@media (max-width:480px){.container{padding:0 1rem}.nav{max-width:280px;padding:80px 1rem 2rem;width:100%}.logo-text h1{font-size:1.125rem}.user-details-mobile{padding:.75rem}.user-avatar-mobile{height:36px;width:36px}.btn-browse-mobile,.btn-dashboard-mobile{padding:.875rem 1rem}}@media (max-width:768px) and (orientation:landscape){.nav{overflow-y:auto;padding:70px 1.5rem 1.5rem}.nav a{padding:.75rem 0}.user-actions-mobile{margin:.5rem 0;padding:.5rem 0}.auth-buttons-mobile{margin-top:1rem;padding-top:1rem}}@supports (padding:max(0px)){.container{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.header{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}@media (max-width:768px){.nav{padding-left:max(1.5rem,env(safe-area-inset-left));padding-right:max(1.5rem,env(safe-area-inset-right))}}}@media (hover:none) and (pointer:coarse){.mobile-menu-btn:active,.user-trigger:active{background:var(--gray-200)}.btn-browse:active,.btn-dashboard:active,.btn-login:active,.btn-signup:active{transform:scale(.98);transition:transform .1s ease}.nav a:active{background:var(--gray-50);color:var(--primary-green)}}.mobile-menu-btn,.nav,.user-profile{will-change:transform}@media (prefers-reduced-motion:reduce){.btn-browse:hover,.btn-dashboard:hover,.btn-login:hover,.btn-signup:hover,.nav,.user-trigger:hover{transition:none}.user-dropdown{animation:none}}@media (prefers-contrast:high){.nav a{border-bottom:2px solid #0000}.nav a:hover{border-bottom-color:var(--primary-green)}.btn-dashboard,.btn-login{border-width:2px}}.btn-browse:focus-visible,.btn-dashboard:focus-visible,.btn-login:focus-visible,.btn-signup:focus-visible,.dropdown-item:focus-visible,.mobile-menu-btn:focus-visible,.user-trigger:focus-visible{outline:2px solid var(--primary-green);outline-offset:2px}.nav a:focus-visible{border-radius:2px;outline:2px solid var(--primary-green);outline-offset:4px}.cart-button{background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;margin-right:16px;padding:8px;position:relative;transition:all .2s}.cart-button:hover{background:#f3f4f6;color:#374151}.cart-badge{align-items:center;background:#ef4444;border-radius:10px;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:2px 6px;position:absolute;right:-2px;top:-2px}.mobile-cart-button{align-items:center;background:none;border:none;border-bottom:1px solid #e5e7eb;color:#374151;cursor:pointer;display:flex;font-size:1rem;gap:8px;padding:12px 0;text-align:left;transition:color .2s;width:100%}.mobile-cart-button:hover{color:var(--primary-green)}.auth-modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:10000}.auth-modal-container{animation:slideUp .3s ease;max-width:440px;width:100%}.auth-modal-content{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden;position:relative}.auth-modal-header{padding:2rem 2rem 1rem;position:relative;text-align:center}.auth-modal-close{position:absolute;right:1rem;top:1rem}.close-btn{align-items:center;background:var(--gray-100);border:none;border-radius:var(--radius);color:var(--gray-600);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.close-btn:hover{background:var(--gray-200);color:var(--gray-900)}.auth-modal-title h2{color:var(--gray-900);font-size:1.75rem;font-weight:700;margin-bottom:.5rem}.auth-modal-title p{color:var(--gray-600);font-size:.875rem}.auth-modal-body{padding:0 2rem 2rem}.google-signin-btn{align-items:center;background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:flex;font-weight:500;gap:.75rem;justify-content:center;margin-bottom:1.5rem;padding:.875rem 1.5rem;transition:all .2s ease;width:100%}.google-signin-btn:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.google-signin-btn:disabled{cursor:not-allowed;opacity:.6}.auth-divider{margin:1.5rem 0;position:relative;text-align:center}.auth-divider:before{background:var(--gray-300);content:"";height:1px;left:0;position:absolute;right:0;top:50%}.auth-divider span{background:var(--white);color:var(--gray-500);font-size:.875rem;padding:0 1rem;position:relative}.auth-form{display:flex;flex-direction:column;gap:1rem}.form-input{background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);color:var(--gray-900);font-size:.875rem;padding:.875rem 1rem;transition:all .2s ease}.form-input:focus{border-color:var(--primary-green);box-shadow:0 0 0 3px #00a86b1a;outline:none}.form-input::placeholder{color:var(--gray-400)}.error-message{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius);color:#dc2626;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1rem}.error-message svg{flex-shrink:0}.submit-btn{align-items:center;background:var(--primary-green);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;margin-top:.5rem;padding:.875rem 1.5rem;transition:all .2s ease;width:100%}.submit-btn:hover:not(:disabled){background:var(--dark-green);transform:translateY(-1px)}.submit-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.submit-btn.loading{background:var(--primary-green)}.spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.auth-switch{border-top:1px solid var(--gray-200);margin-top:1.5rem;padding-top:1.5rem;text-align:center}.auth-switch p{color:var(--gray-600);font-size:.875rem}.switch-btn{background:none;border:none;color:var(--primary-green);cursor:pointer;font-weight:600;text-decoration:underline;transition:color .2s ease}.switch-btn:hover{color:var(--dark-green)}@media (max-width:480px){.auth-modal-container{max-width:100%}.auth-modal-header{padding:1.5rem 1.5rem 1rem}.auth-modal-body{padding:0 1.5rem 1.5rem}.auth-modal-title h2{font-size:1.5rem}.close-btn{height:36px;width:36px}}.form-input:focus-visible{outline:2px solid var(--primary-green);outline-offset:2px}@media (prefers-reduced-motion:reduce){.auth-modal-container,.auth-modal-overlay,.close-btn,.google-signin-btn,.submit-btn{animation:none;transition:none}}@media (prefers-contrast:high){.form-input,.google-signin-btn{border-width:2px}}.cart-overlay{background:#00000080;bottom:0;display:flex;justify-content:flex-end;left:0;position:fixed;right:0;top:0;z-index:1000}.cart-sidebar{animation:slideInRight .3s ease-out;background:#fff;box-shadow:-4px 0 20px #0000001a;display:flex;flex-direction:column;height:100vh;max-width:450px;width:100%}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.cart-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:20px}.cart-title{align-items:center;display:flex;gap:12px}.cart-title h2{color:#111827;font-size:1.25rem;font-weight:600;margin:0}.cart-close{background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;padding:8px;transition:all .2s}.cart-close:hover{background:#e5e7eb;color:#111827}.cart-content{overflow:hidden}.cart-content,.empty-cart{display:flex;flex:1 1;flex-direction:column}.empty-cart{align-items:center;color:#6b7280;justify-content:center;padding:40px 20px;text-align:center}.empty-cart svg{color:#d1d5db;margin-bottom:16px}.empty-cart h3{color:#374151;font-size:1.125rem;font-weight:600;margin:0 0 8px}.empty-cart p{color:#6b7280;margin:0 0 24px}.browse-services-btn{background:var(--primary-green);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:12px 24px;transition:background .2s}.browse-services-btn:hover{background:var(--dark-green)}.cart-items{flex:1 1;overflow-y:auto;padding:0}.cart-item{border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:16px;padding:20px}.item-info h4{color:#111827;font-size:1rem;font-weight:600;line-height:1.4;margin:0 0 8px}.item-description{color:#6b7280;font-size:.875rem;line-height:1.4;margin:0 0 8px}.item-meta{color:#6b7280;display:flex;font-size:.75rem;gap:16px}.item-controls{align-items:center;display:flex;gap:12px;justify-content:space-between}.quantity-controls{background:#f3f4f6;gap:8px;padding:4px}.qty-btn{border:1px solid #d1d5db;border-radius:6px;height:32px;transition:all .2s;width:32px}.qty-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.qty-btn:disabled{opacity:.5}.quantity{color:#111827;font-weight:600;min-width:24px;text-align:center}.item-pricing{display:flex}.discount-info,.item-pricing{align-items:flex-end;flex-direction:column;gap:4px}.original-price{color:#6b7280;font-size:.875rem}.discount-badge{background:#dcfce7;border:1px solid #bbf7d0;border-radius:12px;font-size:.75rem;font-weight:600;gap:4px;padding:2px 8px}.item-total{color:#111827;font-size:1rem;font-weight:700}.remove-btn{background:none;border:none;border-radius:6px;color:#ef4444;cursor:pointer;padding:8px;transition:all .2s}.remove-btn:hover{background:#fef2f2}.cart-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:20px}.cart-summary{margin-bottom:16px}.savings-info{align-items:center;color:#059669;display:flex;font-size:.875rem;font-weight:600;gap:8px;margin-bottom:8px}.cart-total{color:#111827;font-size:1.25rem;font-weight:700;text-align:right}.cart-actions{display:flex;gap:12px}.clear-cart-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;flex:1 1;font-weight:500;padding:12px 16px;transition:all .2s}.clear-cart-btn:hover{background:#f9fafb;border-color:#9ca3af}.checkout-btn{align-items:center;background:var(--primary-green);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:2 1;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:background .2s}.checkout-btn:hover{background:var(--dark-green)}@media (max-width:768px){.cart-sidebar{max-width:100%}.cart-header,.cart-item{padding:16px}.item-controls{flex-wrap:wrap;gap:8px}.quantity-controls{order:1}.item-pricing{align-items:flex-start;order:2}.remove-btn{align-self:flex-end;order:3}.cart-footer{padding:16px}.cart-actions{flex-direction:column}.checkout-btn,.clear-cart-btn{flex:none}}*{box-sizing:border-box}.dashboard-loading{align-items:center;background:var(--gray-50);display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:100vh}.dashboard-loading p{color:var(--gray-600);font-size:1rem}.dashboard-loading .loading-spinner{animation:spin 1s linear infinite;border-top:4px solid var(--gray-200);border:4px solid var(--gray-200);border-radius:50%;border-top-color:var(--primary-green);height:40px;width:40px}.dashboard{background:var(--gray-50);display:flex;min-height:100vh;overflow-x:hidden;position:relative;width:100%}.dashboard-sidebar{background:var(--white);border-right:1px solid var(--gray-200);display:flex;flex-direction:column;height:100vh;overflow-y:auto;position:fixed;transition:transform .3s ease;width:280px;z-index:1000}.dashboard-main{flex:1 1;margin-left:280px;max-width:100%;min-height:100vh;overflow-x:hidden;width:calc(100% - 280px)}.sidebar-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}.mobile-menu-toggle{background:none;border:none;border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:none;padding:.5rem;transition:background .2s ease}.mobile-menu-toggle:hover{background:var(--gray-100)}.header-left{align-items:center;display:flex;gap:1rem}.sidebar-header{border-bottom:1px solid var(--gray-200);padding:1.5rem}.sidebar-header .logo{align-items:center;display:flex;gap:.75rem}.sidebar-header .logo-icon{align-items:center;background:linear-gradient(135deg,var(--primary-green),var(--dark-green));border-radius:var(--radius);color:#fff;display:flex;height:40px;justify-content:center;width:40px}.sidebar-header .logo-text h1{color:var(--primary-green);font-size:1.25rem;font-weight:700;line-height:1}.sidebar-header .logo-text span{color:var(--gray-600);font-size:.75rem;font-weight:500}.sidebar-nav{flex:1 1;padding:1rem 0}.nav-item{align-items:center;background:none;border:none;color:var(--gray-600);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;padding:.875rem 1.5rem;transition:all .2s ease;width:100%}.nav-item:hover{background:var(--gray-50);color:var(--gray-900)}.nav-item.active{background:var(--primary-green);border-right:3px solid var(--dark-green);color:#fff}.nav-divider{background:var(--gray-200);height:1px;margin:1rem 0}.sidebar-footer{border-top:1px solid var(--gray-200);padding:1rem 1.5rem}.logout-btn{align-items:center;background:var(--gray-100);border:1px solid var(--gray-300);border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;padding:.75rem;transition:all .2s ease;width:100%}.logout-btn:hover{background:var(--gray-200);color:var(--gray-900)}.dashboard-header{background:var(--white);border-bottom:1px solid var(--gray-200);max-width:100%;padding:1.5rem 2rem;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;max-width:100%;width:100%}.header-title{flex:1 1;min-width:0}.header-title h1{color:var(--gray-900);font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.header-title h1,.header-title p{word-wrap:break-word;overflow-wrap:break-word}.header-title p{color:var(--gray-600);font-size:.875rem}.overview-content{max-width:100%;overflow-x:hidden;padding:0 2rem 2rem;width:100%}.overview-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));max-width:100%;width:100%}.quick-actions-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.card-header h3{color:var(--gray-900);font-size:1.125rem;font-weight:600}.quick-actions{display:flex;flex-direction:column;gap:.75rem}.quick-action-btn{align-items:center;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:flex;font-weight:500;gap:.75rem;padding:1rem;text-align:left;transition:all .2s ease}.quick-action-btn:hover{transform:translateY(-1px)}.quick-action-btn.primary,.quick-action-btn:hover{background:var(--primary-green);border-color:var(--primary-green);color:#fff}.quick-action-btn.primary:hover{background:var(--dark-green);border-color:var(--dark-green)}.upcoming-services-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem}.upcoming-services-list{display:flex;flex-direction:column;gap:1rem}.upcoming-service-item{background:var(--gray-50);gap:1rem;padding:1rem}.service-date,.upcoming-service-item{align-items:center;border-radius:var(--radius);display:flex}.service-date{background:var(--primary-green);color:#fff;flex-direction:column;flex-shrink:0;min-width:60px;padding:.75rem}.date-day{font-size:1.25rem;font-weight:700;line-height:1}.date-month{font-size:.75rem;font-weight:500;text-transform:uppercase}.service-info h4{color:var(--gray-900);font-size:.875rem;font-weight:600;margin-bottom:.25rem}.service-info p{color:var(--gray-600);font-size:.75rem}.contact-btn{align-items:center;background:var(--primary-green);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;display:flex;justify-content:center;padding:.75rem;transition:background .2s ease}.contact-btn:hover{background:var(--dark-green)}.no-upcoming{padding:2rem 1rem;text-align:center}.no-upcoming p{color:var(--gray-600);margin-bottom:1rem}.book-service-btn{background:var(--primary-green);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:background .2s ease}.book-service-btn:hover{background:var(--dark-green)}.bookings-section{max-width:100%;overflow-x:hidden;padding:0 2rem 2rem;width:100%}.section-header{margin-bottom:2rem;max-width:100%;width:100%}.section-title{flex:1 1;min-width:0}.section-header h2{word-wrap:break-word;color:var(--gray-900);font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.section-header p{word-wrap:break-word;color:var(--gray-600);font-size:.875rem}.bookings-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;max-width:100%;width:100%}.bookings-controls .search-box{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius);display:flex;flex:1 1;gap:.75rem;max-width:300px;min-width:200px;padding:.75rem 1rem;transition:border-color .2s ease}.bookings-controls .search-box:focus-within{border-color:var(--primary-green);box-shadow:0 0 0 3px #00a86b1a}.bookings-controls .search-box input{background:#0000;border:none;color:var(--gray-900);flex:1 1;font-size:.875rem;min-width:0;outline:none;width:100%}.bookings-controls .search-box input::placeholder{color:var(--gray-400)}.filter-dropdown{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius);color:var(--gray-700);display:flex;gap:.5rem;min-width:150px;padding:.75rem 1rem}.filter-dropdown select{background:#0000;border:none;color:var(--gray-700);cursor:pointer;flex:1 1;font-size:.875rem;min-width:0;outline:none}.bookings-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;max-width:100%;width:100%}.error-alert{align-items:center;background:#fee2e2;border:1px solid #fecaca;border-radius:var(--radius);color:#dc2626;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.booking-card{animation:fadeIn .3s ease;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);max-width:100%;overflow:hidden;padding:1.5rem;transition:all .3s ease}.booking-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.booking-header{align-items:flex-start;display:flex;gap:1rem;margin-bottom:1rem;max-width:100%;width:100%}.service-icon{background:var(--gray-100);border-radius:10px;flex-shrink:0;font-size:1.5rem;height:50px;width:50px}.service-info{min-width:0}.service-info h3{word-wrap:break-word;margin-bottom:.25rem;overflow-wrap:break-word}.provider-rating{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.provider{color:var(--gray-600);font-size:.875rem}.rating{color:var(--primary-yellow);gap:.25rem}.rating,.status-badge{align-items:center;display:flex;font-size:.75rem;font-weight:600}.status-badge{border-radius:2rem;flex-shrink:0;gap:.5rem;padding:.5rem .75rem;white-space:nowrap}.status-badge.status-confirmed{background:#d1fae5;color:#065f46}.status-badge.status-pending{background:#fef3c7;color:#92400e}.status-badge.status-in-progress{background:#dbeafe;color:#1e40af}.status-badge.status-completed{background:#d1fae5;color:#065f46}.status-badge.status-cancelled{background:#fee2e2;color:#991b1b}.booking-details{background:var(--gray-50);border-radius:var(--radius);display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;max-width:100%;overflow:hidden;padding:1rem;width:100%}.detail-item{color:var(--gray-700);gap:.75rem}.detail-item,.detail-item span{word-wrap:break-word;overflow-wrap:break-word}.detail-item span{flex:1 1;min-width:0}.detail-item svg{color:var(--gray-500);flex-shrink:0}.otp-section{background:#f0f9ff;border:1px solid #bae6fd;border-radius:.5rem;margin-top:1rem;max-width:100%;overflow:hidden;padding:1rem;width:100%}.otp-header{color:#0369a1;font-size:.875rem;font-weight:500;gap:.5rem;margin-bottom:.75rem}.otp-display{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.otp-code{background:#fff;border:1px solid #93c5fd;border-radius:.375rem;color:#1e40af;font-size:1.25rem;letter-spacing:.1rem;padding:.5rem 1rem;word-break:break-all}.copy-otp-btn{background:#3b82f6;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;padding:.375rem .75rem;transition:background .2s;white-space:nowrap}.copy-otp-btn:hover{background:#2563eb}.otp-info{word-wrap:break-word;color:#0369a1;font-size:.75rem;line-height:1.4;margin:0}.otp-used{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:.375rem;color:#059669;display:flex;flex-wrap:wrap;font-size:.875rem;font-weight:500;gap:.5rem;margin-top:1rem;padding:.5rem}.complete-service-btn{background:var(--primary-green);border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;margin-left:auto;padding:.375rem .75rem;transition:background .2s;white-space:nowrap}.complete-service-btn:hover{background:var(--dark-green)}.complete-service-btn:disabled{cursor:not-allowed;opacity:.6}.booking-footer{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;max-width:100%;width:100%}.booking-meta{display:flex;flex-direction:column;gap:.5rem;min-width:0}.price{color:var(--gray-900);font-size:1.25rem;font-weight:700}.payment-status{align-items:center;display:flex}.payment-badge{border-radius:1rem;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:capitalize;white-space:nowrap}.payment-badge.payment-paid{background:#d1fae5;color:#065f46}.payment-badge.payment-pending{background:#fef3c7;color:#92400e}.payment-badge.payment-refunded{background:#fee2e2;color:#991b1b}.action-buttons{align-items:center;flex-wrap:wrap;gap:.75rem}.btn-primary{align-items:center;background:var(--primary-green);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.btn-primary:hover{background:var(--dark-green);transform:translateY(-1px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{align-items:center;background:#0000;border:1px solid var(--gray-300);border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-400)}.btn-cancel{align-items:center;background:#0000;border:1px solid #fecaca;border-radius:var(--radius);color:#dc2626;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;white-space:nowrap}.btn-cancel:hover{background:#fef2f2}.empty-state{background:var(--white);border:2px dashed var(--gray-300);border-radius:var(--radius-lg);padding:4rem 2rem;text-align:center}.empty-state svg{color:var(--gray-400);margin-bottom:1rem}.empty-state h3{color:var(--gray-900);font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.empty-state p{color:var(--gray-600);margin-bottom:1.5rem}.rating-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.rating-modal{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:500px;width:90%}.rating-modal-header{align-items:center;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:1.5rem}.rating-modal-header h3{color:var(--gray-900);font-size:1.25rem;font-weight:600}.rating-modal-header button{align-items:center;background:none;border:none;border-radius:4px;color:var(--gray-500);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;width:32px}.rating-modal-header button:hover{background:var(--gray-100);color:var(--gray-700)}.rating-modal-body{padding:2rem 1.5rem}.rating-stars{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.star-btn{background:none;border:none;color:var(--gray-300);cursor:pointer;padding:.25rem;transition:all .2s ease}.star-btn:hover{transform:scale(1.1)}.star-btn.active{color:var(--primary-yellow)}.rating-input label{color:var(--gray-700);display:block;font-weight:500;margin-bottom:.5rem}.rating-input textarea{border:1px solid var(--gray-300);border-radius:var(--radius);font-family:inherit;font-size:.875rem;padding:.75rem;resize:vertical;width:100%}.rating-input textarea:focus{border-color:var(--primary-green);box-shadow:0 0 0 3px #00a86b1a;outline:none}.rating-modal-footer{border-top:1px solid var(--gray-200);display:flex;gap:.75rem;justify-content:flex-end;padding:1.5rem}.profile-section{padding:0 2rem 2rem}.profile-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 2fr}.profile-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);height:-webkit-fit-content;height:fit-content;padding:2rem;text-align:center}.profile-avatar{align-items:center;background:var(--primary-green);border-radius:50%;color:#fff;display:flex;height:80px;justify-content:center;margin:0 auto 1rem;width:80px}.profile-info h3{color:var(--gray-900);font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.profile-info p{color:var(--gray-600);margin-bottom:1.5rem}.profile-stats{display:flex;gap:2rem;justify-content:center;margin-top:1rem}.profile-stats .stat{text-align:center}.profile-stats .stat-value{color:var(--primary-green);display:block;font-size:1.5rem;font-weight:600}.profile-stats .stat-label{color:var(--gray-600);font-size:.875rem}.profile-details{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem}.detail-group{margin-bottom:1.5rem}.detail-group label{color:var(--gray-700);display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.detail-group input,.detail-group textarea{background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);font-size:.875rem;padding:.75rem;transition:border-color .2s ease;width:100%}.detail-group input:focus,.detail-group textarea:focus{border-color:var(--primary-green);box-shadow:0 0 0 3px #00a86b1a;outline:none}.detail-group input[readonly]{background:var(--gray-50);color:var(--gray-600)}.floating-book-btn{align-items:center;background:var(--primary-green);border:none;border-radius:50%;bottom:2rem;box-shadow:var(--shadow-lg);color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;position:fixed;right:2rem;transition:all .3s ease;width:60px;z-index:100}.floating-book-btn:hover{background:var(--dark-green);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:translateY(-2px)}.floating-book-btn:active{transform:translateY(0)}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bookings-section,.overview-content,.profile-section{animation:slideIn .3s ease}.dashboard-main::-webkit-scrollbar{width:6px}.dashboard-main::-webkit-scrollbar-track{background:var(--gray-100)}.dashboard-main::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}.dashboard-main::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}@media (max-width:1024px){.dashboard-sidebar{width:250px}.dashboard-main{margin-left:250px}.overview-grid,.profile-content{grid-template-columns:1fr}.bookings-controls{align-items:stretch;flex-direction:column}.bookings-controls .search-box{max-width:none}}@media (max-width:768px){.mobile-menu-toggle{align-items:center;display:flex;justify-content:center}.sidebar-overlay{display:block}.dashboard-sidebar{box-shadow:var(--shadow-lg);transform:translateX(-100%);width:280px}.dashboard-sidebar.sidebar-open{transform:translateX(0)}.dashboard-main{margin-left:0;max-width:100vw;width:100%}.dashboard-header{padding:1rem}.header-content{align-items:flex-start;flex-direction:column;gap:1rem}.header-left{width:100%}.header-title h1{font-size:1.25rem;line-height:1.3}.header-title p{font-size:.8125rem;line-height:1.4}.bookings-section,.overview-content,.profile-section{padding:0 1rem 1rem}.overview-grid{gap:1rem;grid-template-columns:1fr}.section-header{margin-bottom:1.5rem}.section-header h2{font-size:1.125rem}.section-header p{font-size:.8125rem}.bookings-controls{flex-direction:column;gap:.75rem}.bookings-controls .search-box{max-width:none;min-width:auto;width:100%}.filter-dropdown{min-width:auto;width:100%}.filter-dropdown select{width:100%}.booking-card{padding:1rem}.booking-header{flex-wrap:wrap;gap:.75rem}.service-icon{height:44px;width:44px}.service-info{flex:1 1;min-width:0}.service-info h3{font-size:.9375rem;line-height:1.3}.provider-rating{flex-wrap:wrap;gap:.5rem}.status-badge{font-size:.6875rem;padding:.375rem .625rem}.booking-details{gap:.625rem;padding:.875rem}.detail-item{font-size:.8125rem;line-height:1.4}.otp-section{padding:.875rem}.otp-display{align-items:flex-start;flex-direction:column;gap:.5rem}.otp-code{font-size:1rem;padding:.375rem .75rem;text-align:center}.copy-otp-btn,.otp-code{width:100%}.booking-footer{align-items:flex-start;flex-direction:column;gap:1rem}.booking-meta{width:100%}.price{font-size:1.125rem}.action-buttons{flex-wrap:wrap;gap:.5rem;width:100%}.action-buttons button{flex-basis:calc(50% - 0.25rem);flex-grow:1;flex-shrink:1;font-size:.8125rem;justify-content:center;min-width:120px;padding:.5rem .75rem}.upcoming-service-item{gap:.875rem;padding:.875rem}.service-date{min-width:55px;padding:.625rem}.date-day{font-size:1.125rem}.quick-actions-card,.upcoming-services-card{padding:1.25rem}.quick-action-btn{font-size:.875rem;padding:.875rem}.rating-modal{margin:0 1rem;max-width:450px;width:95%}.rating-modal-body{padding:1.5rem 1rem}.rating-stars{gap:.375rem}.star-btn{padding:.125rem}.floating-book-btn{bottom:1.5rem;height:56px;right:1.5rem;width:56px}.sidebar-open~.dashboard-main .floating-book-btn{display:none}.profile-card,.profile-details{padding:1.5rem}.profile-stats{gap:1.5rem}.profile-stats .stat-value{font-size:1.25rem}}@media (max-width:480px){.dashboard-header{padding:.75rem}.header-title h1{font-size:1.125rem;line-height:1.3}.header-title p{font-size:.75rem;line-height:1.4}.bookings-section,.overview-content,.profile-section{padding:0 .75rem .75rem}.section-header h2{font-size:1rem}.section-header p{font-size:.75rem}.booking-card{padding:.875rem}.booking-header{align-items:flex-start;flex-direction:column;gap:.625rem}.service-icon{height:40px;width:40px}.service-info h3{font-size:.875rem;line-height:1.3}.provider-rating{align-items:flex-start;flex-direction:column;gap:.375rem}.status-badge{align-self:flex-start;font-size:.625rem;padding:.3125rem .5625rem}.booking-details{gap:.5rem;padding:.75rem}.detail-item{font-size:.75rem;gap:.5rem;line-height:1.4}.detail-item svg{height:14px;width:14px}.otp-section{padding:.75rem}.otp-header{font-size:.75rem;gap:.375rem}.otp-header svg{height:14px;width:14px}.otp-display{align-items:stretch;flex-direction:column;gap:.5rem}.otp-code{font-size:.9375rem;letter-spacing:.05rem;text-align:center}.copy-otp-btn,.otp-code{padding:.375rem .625rem;width:100%}.copy-otp-btn,.otp-info{font-size:.6875rem}.otp-used{align-items:flex-start;flex-direction:column;font-size:.75rem;gap:.375rem;padding:.375rem}.otp-used svg{height:14px;width:14px}.complete-service-btn{font-size:.6875rem;margin-left:0;padding:.375rem .625rem;width:100%}.booking-footer{gap:.875rem}.price{font-size:1rem}.payment-badge{font-size:.625rem;padding:.1875rem .4375rem}.action-buttons{flex-direction:column;gap:.5rem;width:100%}.action-buttons button{flex:none;font-size:.8125rem;justify-content:center;min-width:auto;padding:.625rem;width:100%}.action-buttons button svg{height:14px;width:14px}.quick-actions-card,.upcoming-services-card{padding:1rem}.card-header{margin-bottom:1rem}.card-header h3{font-size:.9375rem}.quick-action-btn{font-size:.8125rem;gap:.625rem;padding:.75rem}.quick-action-btn svg{height:18px;width:18px}.upcoming-service-item{gap:.75rem;padding:.75rem}.service-date{min-width:50px;padding:.5rem}.date-day{font-size:1rem}.date-month{font-size:.625rem}.service-info h4{font-size:.8125rem}.service-info p{font-size:.6875rem}.contact-btn{padding:.625rem}.contact-btn svg{height:14px;width:14px}.no-upcoming{padding:1.5rem .75rem}.book-service-btn,.no-upcoming p{font-size:.8125rem}.book-service-btn{padding:.625rem 1.25rem}.overview-grid{gap:.875rem}.empty-state{padding:2.5rem 1rem}.empty-state svg{height:40px;width:40px}.empty-state h3{font-size:1rem}.empty-state p{font-size:.8125rem}.rating-modal{margin:0 .5rem;width:95%}.rating-modal-header{padding:1rem}.rating-modal-header h3{font-size:1rem}.rating-modal-body{padding:1.25rem 1rem}.rating-stars{gap:.25rem}.star-btn svg{height:28px;width:28px}.rating-input label{font-size:.8125rem}.rating-input textarea{font-size:.8125rem;padding:.625rem}.rating-modal-footer{gap:.5rem;padding:1rem}.rating-modal-footer button{font-size:.8125rem;padding:.5rem .875rem}.profile-content{gap:1rem}.profile-card{padding:1.25rem}.profile-avatar{height:70px;width:70px}.profile-avatar svg{height:40px;width:40px}.profile-info h3{font-size:1.125rem}.profile-info p{font-size:.8125rem}.profile-stats{gap:1.25rem}.profile-stats .stat-value{font-size:1.125rem}.profile-stats .stat-label{font-size:.8125rem}.profile-details{padding:1.25rem}.detail-group{margin-bottom:1.25rem}.detail-group label{font-size:.8125rem;margin-bottom:.375rem}.detail-group input,.detail-group textarea{font-size:.8125rem;padding:.625rem}.floating-book-btn{bottom:1rem;height:52px;right:1rem;width:52px}.floating-book-btn svg{height:22px;width:22px}}.services-page{background:var(--gray-50);max-width:100vw;min-height:100vh;overflow-x:hidden;width:100%}.services-header{background:linear-gradient(135deg,var(--primary-green),var(--dark-green));color:#fff;padding:2rem 0;text-align:center}.services-header .container{display:flex;flex-direction:column;gap:1rem;margin:0 auto;max-width:1200px;padding:0 1.5rem}.back-button{align-self:flex-start;background:#fff3;color:#fff;padding:.5rem 1rem;transition:background .2s ease}.back-button:hover{background:#ffffff4d}.services-header h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.services-header p{font-size:1.125rem;opacity:.9}.services-filters{background:#fff;border-bottom:1px solid var(--gray-200);box-shadow:0 2px 8px #0000000d;padding:1.5rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.services-filters .container{display:flex;flex-direction:column;gap:1rem;margin:0 auto;max-width:1200px;padding:0 1.5rem}.search-box{align-items:center;background:var(--gray-50);border:1px solid var(--gray-300);border-radius:var(--radius);display:flex;gap:.75rem;padding:.875rem 1rem;transition:all .2s ease}.search-box:focus-within{border-color:var(--primary-green);box-shadow:0 0 0 3px #00a86b1a}.search-box svg{color:var(--primary-green);flex-shrink:0}.search-box input{background:#0000;border:none;color:var(--gray-900);flex:1 1;font-size:.875rem;outline:none}.search-box input::placeholder{color:var(--gray-400)}.category-mobile-header,.mobile-only{display:none}.category-mobile-toggle{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius);color:var(--gray-700);cursor:pointer;display:flex;font-weight:500;justify-content:space-between;padding:.875rem 1rem;transition:all .2s ease;width:100%}.category-mobile-toggle:active{transform:scale(.98)}.category-mobile-toggle svg{transition:transform .2s ease}.category-mobile-toggle svg.rotated{transform:rotate(180deg)}.category-navigation{display:flex;flex-wrap:wrap;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-color:var(--primary-green) var(--gray-200);scrollbar-width:thin}.category-navigation::-webkit-scrollbar{height:6px}.category-navigation::-webkit-scrollbar-track{background:var(--gray-200);border-radius:10px}.category-navigation::-webkit-scrollbar-thumb{background:var(--primary-green);border-radius:10px}.category-nav-btn{background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius);color:var(--gray-700);cursor:pointer;flex-shrink:0;font-weight:500;padding:.75rem 1.25rem;transition:all .2s ease;white-space:nowrap}.category-nav-btn:hover{background:var(--gray-50);border-color:var(--gray-400)}.category-nav-btn.active{background:var(--primary-green);border-color:var(--primary-green);color:#fff}.services-content{padding:2rem 0}.services-content .container{margin:0 auto;max-width:1200px;padding:0 1.5rem}.services-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.service-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;padding:1.5rem;transition:all .3s ease}.service-card:hover{border-color:var(--primary-green);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.service-icon-wrapper{align-items:center;background:var(--light-green);border-radius:12px;color:var(--primary-green);display:flex;height:60px;justify-content:center;margin-bottom:1rem;transition:all .3s ease;width:60px}.service-card:hover .service-icon-wrapper{transform:scale(1.05)}.service-card h3{color:var(--gray-900);font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.service-short-desc{color:var(--gray-600);flex:1 1;font-size:.875rem;line-height:1.5;margin-bottom:1rem}.service-meta{align-items:center;border-top:1px solid var(--gray-200);justify-content:space-between;margin-bottom:1rem;padding-top:1rem}.service-rating{font-weight:600;gap:.5rem}.service-rating .reviews{color:var(--gray-500);font-weight:400}.service-price{color:var(--primary-green);font-size:1.25rem;font-weight:700}.view-details-btn{border-radius:var(--radius);font-weight:600;padding:.75rem;transition:background .2s ease;width:100%}.view-details-btn:active{transform:translateY(0)}.service-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.service-modal{background:#fff;border-radius:var(--radius-lg);max-height:90vh;max-width:600px;overflow-y:auto;position:relative;width:100%}.modal-close{background:var(--gray-100);color:var(--gray-600);font-size:1.5rem;transition:background .2s ease;z-index:1}.modal-close:hover{background:var(--gray-200)}.modal-header{align-items:flex-start;border-bottom:1px solid var(--gray-200);display:flex;gap:1rem;padding:2rem}.modal-icon{align-items:center;background:var(--light-green);border-radius:12px;color:var(--primary-green);display:flex;flex-shrink:0;height:60px;justify-content:center;width:60px}.modal-header h2{color:var(--gray-900);font-size:1.5rem;font-weight:700;margin-bottom:.5rem;padding-right:2rem}.modal-rating{align-items:center;color:var(--primary-yellow);display:flex;font-size:.875rem;font-weight:600;gap:.5rem}.modal-rating .reviews{color:var(--gray-500);font-weight:400}.modal-body{padding:2rem}.modal-description{color:var(--gray-700);line-height:1.6;margin-bottom:1.5rem}.modal-info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem}.info-item{align-items:flex-start;background:var(--gray-50);border-radius:var(--radius);display:flex;gap:.75rem;padding:1rem}.info-item svg{color:var(--primary-green);flex-shrink:0;margin-top:.125rem}.info-item div{display:flex;flex-direction:column;gap:.25rem}.info-item strong{color:var(--gray-900);display:block;font-size:.875rem;font-weight:600}.info-item span{color:var(--gray-600);font-size:.875rem}.service-includes{margin-bottom:1.5rem}.service-includes h3{color:var(--gray-900);font-size:1.125rem;font-weight:600;margin-bottom:1rem}.service-includes ul{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.service-includes li{align-items:flex-start;color:var(--gray-700);display:flex;font-size:.875rem;gap:.75rem;line-height:1.5}.service-includes li svg{color:var(--primary-green);flex-shrink:0;margin-top:.125rem}.modal-footer{align-items:center;border-top:1px solid var(--gray-200);display:flex;justify-content:space-between;padding-top:1.5rem}.modal-price{display:flex;flex-direction:column}.modal-price span{color:var(--gray-600);font-size:.875rem;margin-bottom:.25rem}.modal-price strong{color:var(--primary-green);font-size:1.75rem;font-weight:700}.book-now-btn{background:var(--primary-green);border-radius:var(--radius);font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:background .2s ease}.book-now-btn:hover:not(:disabled){background:var(--dark-green)}.book-now-btn:active:not(:disabled){transform:translateY(0)}.book-now-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:1024px){.services-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.services-header h1{font-size:2rem}.services-header p{font-size:1rem}}@media (max-width:768px){.services-header{padding:1.25rem 0}.services-header .container{padding:0 1rem}.back-button{font-size:.9rem;padding:.6rem 1rem}.services-header h1{font-size:1.75rem;line-height:1.3}.services-header p{font-size:.95rem;line-height:1.5}.services-filters{padding:1rem 0}.services-filters .container{padding:0 1rem}.search-box{margin-bottom:0;padding:.875rem 1rem}.search-box input{font-size:.875rem}.category-mobile-header,.mobile-only{display:block}.category-navigation{display:none;flex-direction:column;gap:.5rem;margin-top:.5rem;padding:0}.category-navigation.mobile-open{display:flex}.category-nav-btn{padding:1rem 1.25rem;text-align:left;width:100%}.category-nav-btn.active{order:-1}.services-content{padding:1.25rem 0}.services-content .container{padding:0 1rem}.services-grid{gap:1rem;grid-template-columns:1fr}.service-card{max-width:100%;padding:1.25rem}.service-icon-wrapper{height:56px;width:56px}.service-card h3{font-size:1.0625rem;line-height:1.3}.service-short-desc{font-size:.875rem;line-height:1.5}.service-meta{margin-bottom:.875rem;padding-top:.875rem}.service-rating{font-size:.875rem}.service-price{font-size:1.125rem}.service-actions{gap:8px;margin-top:.875rem}.add-to-cart-btn-card,.view-details-btn{font-size:.875rem;min-height:44px;padding:.75rem 1rem}.service-modal-overlay{align-items:flex-end;padding:0}.service-modal{animation:slideUp .3s ease;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92vh}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-close{right:1rem;top:1rem}.modal-header{padding:1.25rem}.modal-icon{height:56px;width:56px}.modal-header h2{font-size:1.375rem;line-height:1.3;padding-right:2rem}.modal-body{padding:1.25rem}.modal-description{font-size:.875rem;line-height:1.6}.modal-info-grid{gap:.875rem;grid-template-columns:1fr}.info-item{padding:.875rem}.modal-footer{align-items:stretch;flex-direction:column;gap:1rem}.modal-price{align-items:baseline;flex-direction:row;gap:.75rem}.modal-price strong{font-size:1.5rem}.book-now-btn{min-height:48px;padding:1rem;width:100%}.quick-add-modal{max-height:88vh;padding:1.5rem}.quick-add-modal h3{font-size:1.375rem}.modal-section label{font-size:.9rem}.bhk-options{gap:.625rem;grid-template-columns:repeat(2,1fr)}.bhk-btn{font-size:.875rem;padding:.625rem}.variant-btn{padding:.875rem}.quantity-controls{padding:.625rem .875rem}.modal-actions{flex-direction:column;gap:.875rem}.btn-add-to-cart,.btn-cancel{padding:.875rem 1.25rem;width:100%}}@media (max-width:480px){.services-header{padding:1.25rem 0}.services-header .container{padding:0 .75rem}.services-header h1{font-size:1.5rem;line-height:1.3}.services-header p{font-size:.875rem;line-height:1.4}.back-button{font-size:.85rem;padding:.5rem .875rem}.services-filters{padding:.875rem 0}.services-filters .container{padding:0 .75rem}.search-box{padding:.75rem .875rem}.search-box input{font-size:.875rem}.category-mobile-toggle{font-size:.875rem;padding:.75rem .875rem}.category-nav-btn{font-size:.875rem;padding:.875rem 1rem}.services-content{padding:1rem 0}.services-content .container{padding:0 .75rem}.services-grid{gap:1rem;grid-template-columns:1fr}.service-card{max-width:100%;padding:1rem}.service-icon-wrapper{height:50px;width:50px}.service-card h3{font-size:1rem;line-height:1.3}.service-short-desc{font-size:.8125rem;line-height:1.4}.service-meta{align-items:flex-start;flex-direction:column;gap:.5rem}.service-rating{font-size:.8125rem}.service-price{font-size:1.125rem}.service-actions{flex-direction:row;gap:8px}.add-to-cart-btn-card,.view-details-btn{flex:1 1;font-size:.8125rem;min-height:44px;padding:.75rem .875rem}.modal-body,.modal-header{padding:1.25rem}.modal-icon{height:50px;width:50px}.modal-header h2{font-size:1.125rem;line-height:1.3}.modal-description{font-size:.8125rem;line-height:1.5}.modal-price strong{font-size:1.375rem}.book-now-btn{font-size:.875rem;padding:.875rem}.quick-add-modal{max-height:85vh;padding:1.25rem}.quick-add-modal h3{font-size:1.25rem}.modal-service-name{font-size:.875rem}.bhk-options{gap:8px;grid-template-columns:repeat(2,1fr)}.bhk-btn{font-size:.8125rem;padding:.625rem}.variant-btn{padding:.875rem}.variant-btn span:first-child{font-size:.875rem}.variant-btn span:last-child{font-size:1rem}.quantity-controls{padding:.625rem .875rem}.quantity-controls button{height:40px;width:40px}.quantity-controls span{font-size:1.125rem}.modal-actions{flex-direction:column;gap:10px}.btn-add-to-cart,.btn-cancel{font-size:.875rem;padding:.875rem;width:100%}}@media (max-width:768px) and (orientation:landscape){.service-modal-overlay{align-items:center;padding:1rem}.service-modal{border-radius:var(--radius-lg);max-height:85vh}}@media (min-width:1440px){.services-grid{gap:2rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}html{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}body,html{max-width:100vw;overflow-x:hidden;position:relative;width:100%}.service-modal::-webkit-scrollbar{width:8px}.service-modal::-webkit-scrollbar-track{background:var(--gray-200)}.service-modal::-webkit-scrollbar-thumb{background:var(--primary-green);border-radius:10px}.service-modal::-webkit-scrollbar-thumb:hover{background:var(--dark-green)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.back-button:focus,.book-now-btn:focus,.category-mobile-toggle:focus,.category-nav-btn:focus,.modal-close:focus,.search-box:focus-within,.view-details-btn:focus{outline:2px solid var(--primary-green);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.service-card{animation:fadeIn .3s ease}.service-modal{animation:fadeIn .2s ease}@media print{.back-button,.book-now-btn,.services-filters,.services-header,.view-details-btn{display:none}.service-card{border:1px solid var(--gray-300);box-shadow:none;break-inside:avoid;page-break-inside:avoid}}.login-prompt{margin-bottom:1rem;text-align:center}.login-prompt p{background:#fef3c7;border:1px solid #f59e0b;border-radius:.375rem;color:#f59e0b;font-size:.875rem;font-weight:500;margin:0;padding:.5rem}.service-actions{gap:8px;margin-top:12px}.add-to-cart-btn{border:1px solid var(--primary-green);border-radius:6px;display:flex;flex:1 1;font-size:.875rem;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s}.add-to-cart-btn:hover,.view-details-btn{background:var(--primary-green);color:#fff}.view-details-btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:8px 12px;transition:background .2s}.view-details-btn:hover{background:var(--dark-green)}.service-duration{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:4px}@media (max-width:768px){.service-actions{flex-direction:column;gap:6px}.add-to-cart-btn,.view-details-btn{flex:none}}.service-actions{display:flex;gap:.5rem;margin-top:1rem}.book-now-btn-card{flex:1 1}.book-now-btn-card:active{transform:translateY(0)}.service-price .inspection-price{color:var(--primary-green);font-size:1rem;font-weight:600}.service-card .inspection-note{color:var(--gray-500);font-size:.75rem;margin-top:.25rem}.add-to-cart-btn-card{align-items:center;background:#fff;border:2px solid var(--primary-green);border-radius:8px;color:var(--primary-green);cursor:pointer;display:flex;flex:1 1;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease}.add-to-cart-btn-card:hover{background:var(--primary-green);box-shadow:0 4px 12px #22c55e33;color:#fff;transform:translateY(-1px)}.add-to-cart-btn-card:active{transform:translateY(0)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:10000}.quick-add-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;max-height:90vh;max-width:500px;overflow-y:auto;padding:2rem;position:relative;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.quick-add-modal h3{color:var(--gray-900);font-size:1.5rem;margin:0 0 .5rem}.modal-service-name{color:var(--gray-600);font-size:.95rem;margin-bottom:1.5rem}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:var(--gray-500);cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:32px}.modal-close:hover{background:var(--gray-100);color:var(--gray-900)}.modal-section{margin-bottom:1.5rem}.modal-section label{color:var(--gray-900);display:block;font-size:.95rem;font-weight:600;margin-bottom:.75rem}.fixed-price-display{align-items:center;background:var(--light-green);border:2px solid var(--primary-green);border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.fixed-price-display .price-label{color:var(--gray-900);font-size:1rem;font-weight:600}.fixed-price-display .price-value{color:var(--primary-green);font-size:1.25rem;font-weight:700}.bhk-options{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.bhk-btn{align-items:center;background:#fff;border:2px solid var(--gray-300);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;font-size:.875rem;padding:.75rem;transition:all .2s ease}.bhk-btn.active,.bhk-btn:hover{background:var(--light-green);border-color:var(--primary-green)}.bhk-btn.active{color:var(--primary-green);font-weight:600}.bhk-btn span:first-child{font-weight:600;margin-bottom:.25rem}.bhk-btn span:last-child{color:var(--primary-green);font-size:.875rem;font-weight:700}.variant-options{display:flex;flex-direction:column;gap:.75rem}.variant-btn{align-items:center;background:#fff;border:2px solid var(--gray-300);border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:1rem;text-align:left;transition:all .2s ease}.variant-btn.active,.variant-btn:hover{background:var(--light-green);border-color:var(--primary-green)}.variant-btn span:first-child{color:var(--gray-900);font-weight:600}.variant-btn span:last-child{color:var(--primary-green);font-size:1.1rem;font-weight:700}.quantity-controls{align-items:center;background:var(--gray-50);border-radius:8px;display:flex;gap:1rem;padding:.75rem 1rem;width:-webkit-fit-content;width:fit-content}.quantity-controls button{align-items:center;background:#fff;border:2px solid var(--gray-300);border-radius:50%;color:var(--gray-700);cursor:pointer;display:flex;font-size:1.25rem;font-weight:600;height:36px;justify-content:center;transition:all .2s ease;width:36px}.quantity-controls button:hover:not(:disabled){background:var(--light-green);border-color:var(--primary-green);color:var(--primary-green)}.quantity-controls button:disabled{cursor:not-allowed;opacity:.4}.quantity-controls span{color:var(--gray-900);font-size:1.25rem;font-weight:700;min-width:40px;text-align:center}.modal-actions{display:flex;gap:1rem;margin-top:2rem}.btn-cancel{background:#fff;border:2px solid var(--gray-300);border-radius:8px;color:var(--gray-700);cursor:pointer;flex:1 1;font-weight:600;padding:.875rem 1.5rem;transition:all .2s ease}.btn-cancel:hover{background:var(--gray-100);border-color:var(--gray-400)}.btn-add-to-cart{align-items:center;background:var(--primary-green);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:2 1;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem 1.5rem;transition:all .2s ease}.btn-add-to-cart:hover{background:var(--dark-green);box-shadow:0 4px 12px #22c55e4d;transform:translateY(-1px)}.btn-add-to-cart:active{transform:translateY(0)}@media (max-width:768px){.quick-add-modal{max-height:85vh;padding:1.5rem}.bhk-options{grid-template-columns:repeat(2,1fr)}.modal-actions{flex-direction:column}.btn-add-to-cart,.btn-cancel{width:100%}}.service-detail-page{background:linear-gradient(135deg,#f8fafc,#f1f5f9);max-width:100vw;min-height:100vh;overflow-x:hidden;position:relative;width:100%}.service-detail-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;padding:20px 0}.back-button{border-radius:8px;color:#64748b;font-weight:500;gap:10px;padding:10px 16px;transition:all .3s ease}.back-button:hover{background:#f1f5f9;color:#334155;transform:translateX(-2px)}.service-detail-content{padding:48px 0}.service-detail-layout{grid-gap:48px;align-items:start;display:grid;gap:48px;grid-template-columns:1fr 420px}.service-main{background:#fff;border:1px solid #f1f5f9;border-radius:20px;box-shadow:0 4px 20px #00000014;padding:48px}.service-hero{border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:24px;margin-bottom:48px;padding-bottom:32px}.service-header-section{align-items:center;display:flex;gap:24px}.service-title-section{flex:1 1}.service-description-section{width:100%}.service-description-section .service-description{color:#64748b;font-size:1.1rem;font-weight:400;line-height:1.7;margin:0}.service-icon-large{align-items:center;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:24px;box-shadow:0 4px 12px #22c55e26;color:var(--primary-green);display:flex;flex-shrink:0;height:100px;justify-content:center;width:100px}.service-info{flex:1 1}.service-category{margin-bottom:12px}.service-category span{background:linear-gradient(135deg,var(--primary-green),var(--dark-green));border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;letter-spacing:.025em;padding:6px 16px;text-transform:uppercase}.service-info h1{color:#0f172a;font-size:2.5rem;font-weight:800;letter-spacing:-.025em;line-height:1.2;margin:0 0 16px}.service-description{color:#64748b;font-size:1.2rem;font-weight:400;line-height:1.7;margin:0 0 24px}.service-meta{display:flex;gap:32px;margin-top:24px}.meta-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;color:#64748b;display:flex;font-size:.95rem;font-weight:500;gap:10px;padding:12px 16px}.meta-item svg{color:var(--primary-green)}.service-includes{margin-bottom:48px}.service-includes h3{align-items:center;color:#0f172a;display:flex;font-size:1.5rem;font-weight:700;gap:8px;margin:0 0 24px}.service-includes h3:before{background:var(--primary-green);border-radius:2px;content:"";height:24px;width:4px}.includes-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.include-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;color:#374151;display:flex;font-size:.95rem;font-weight:500;gap:12px;padding:16px;transition:all .2s ease}.include-item:hover{background:#f0fdf4;border-color:#bbf7d0}.include-item svg{color:var(--primary-green);flex-shrink:0}.pricing-info{border-top:2px solid #f1f5f9;margin-top:32px;padding-top:32px}.pricing-info h3{align-items:center;color:#0f172a;display:flex;font-size:1.5rem;font-weight:700;gap:8px;margin:0 0 24px}.pricing-info h3:before{background:var(--primary-green);border-radius:2px;content:"";height:24px;width:4px}.pricing-options{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:24px}.pricing-option{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:16px;padding:24px;transition:all .3s ease}.pricing-option:hover{border-color:var(--primary-green);box-shadow:0 8px 25px #22c55e26;transform:translateY(-2px)}.pricing-option h4{color:#0f172a;font-size:1.1rem;font-weight:700;margin:0 0 8px}.pricing-option p{color:var(--primary-green);font-size:1.1rem;font-weight:700;margin:0}.bhk-pricing{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:24px}.bhk-option{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #bbf7d0;color:var(--dark-green);font-size:.9rem;font-weight:700;text-align:center}.bhk-option:hover{box-shadow:0 4px 12px #22c55e33}.cleaning-includes{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #bbf7d0;border-radius:16px;padding:24px}.cleaning-includes p{color:#166534;font-size:.95rem;font-weight:500;line-height:1.6;margin:0}.service-booking{position:-webkit-sticky;position:sticky;top:32px}.booking-card{background:#fff;border:1px solid #f1f5f9;border-radius:20px;box-shadow:0 8px 30px #0000001f;box-sizing:border-box;padding:32px;width:100%}.quantity-section{margin-bottom:32px}.quantity-section h3{color:#0f172a;font-size:1.3rem;font-weight:700;margin:0 0 16px;text-align:center}.quantity-selector{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:16px;gap:20px;padding:20px}.qty-btn,.quantity-selector{align-items:center;border:2px solid #e2e8f0;display:flex;justify-content:center}.qty-btn{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;cursor:pointer;height:48px;transition:all .3s ease;width:48px}.qty-btn:hover:not(:disabled){background:var(--primary-green);border-color:var(--primary-green);box-shadow:0 4px 12px #22c55e4d;color:#fff;transform:translateY(-2px)}.qty-btn:disabled{cursor:not-allowed;opacity:.4}.quantity-display{background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#0f172a;font-size:1.5rem;font-weight:800;min-width:40px;padding:8px 16px;text-align:center}.pricing-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:16px;margin-bottom:32px;padding:24px}.discount-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.original-price{color:#94a3b8;font-size:.95rem;font-weight:500;text-decoration:line-through}.discount-badge{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:2px solid #bbf7d0;border-radius:20px;box-shadow:0 2px 8px #22c55e33;color:#166534;font-size:.8rem;font-weight:700;gap:6px;padding:6px 12px}.current-price,.discount-badge{align-items:center;display:flex}.current-price{justify-content:space-between}.price-label{color:#64748b;font-size:.95rem;font-weight:600}.price-amount{color:#0f172a;font-size:1.8rem;font-weight:800;letter-spacing:-.025em}.quantity-pricing{border-top:2px solid #f1f5f9;margin-bottom:32px;padding-top:24px}.quantity-pricing h4{color:#0f172a;font-size:1.1rem;font-weight:700;margin:0 0 16px;text-align:center}.pricing-tiers{display:flex;flex-direction:column;gap:12px}.pricing-tier{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:all .3s ease}.pricing-tier:hover{background:#f8fafc;border-color:var(--primary-green);box-shadow:0 4px 12px #22c55e26;transform:translateY(-1px)}.pricing-tier.active{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:var(--primary-green);box-shadow:0 4px 12px #22c55e33}.tier-qty{color:#374151;font-size:.95rem;font-weight:600}.tier-pricing{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.tier-price{color:#0f172a;font-size:1.05rem;font-weight:700}.tier-discount{color:var(--primary-green);font-size:.8rem;font-weight:700}.booking-actions{display:flex!important;flex-direction:column!important;gap:12px;position:relative;width:100%;z-index:10}.booking-actions>*{flex-shrink:0!important;width:100%!important}.add-to-cart-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:2px solid var(--primary-green);border-radius:12px;box-sizing:border-box;color:var(--primary-green);cursor:pointer;display:flex!important;flex-shrink:0;font-size:1rem;font-weight:700;gap:10px;justify-content:center;padding:16px 20px;pointer-events:auto;touch-action:manipulation;transition:all .3s ease;user-select:none;-webkit-user-select:none;width:100%!important}.add-to-cart-btn:hover:not(:disabled){background:var(--primary-green);box-shadow:0 6px 20px #22c55e4d;color:#fff;transform:translateY(-2px)}.add-to-cart-btn:active:not(:disabled){transform:translateY(0)}.add-to-cart-btn:disabled{cursor:not-allowed;opacity:.6;pointer-events:none}.book-now-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:linear-gradient(135deg,var(--primary-green),var(--dark-green));border:none;border-radius:12px;box-shadow:0 4px 15px #22c55e4d;box-sizing:border-box;color:#fff;cursor:pointer;display:flex!important;flex-shrink:0;font-size:1.1rem;font-weight:700;justify-content:center;padding:18px 20px;pointer-events:auto;touch-action:manipulation;transition:all .3s ease;user-select:none;-webkit-user-select:none;width:100%!important}.book-now-btn:hover{box-shadow:0 8px 25px #22c55e66;transform:translateY(-2px)}.book-now-btn:active{transform:translateY(0)}.error-container,.loading-container{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;min-height:500px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f1f5f9;border-radius:50%;border-top:4px solid var(--primary-green);height:48px;margin-bottom:20px;width:48px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-container h2{color:#374151;font-size:1.5rem;font-weight:700;margin:0 0 12px}.back-to-services-btn{background:linear-gradient(135deg,var(--primary-green),var(--dark-green));border:none;border-radius:12px;box-shadow:0 4px 15px #22c55e4d;color:#fff;cursor:pointer;font-weight:600;margin-top:20px;padding:14px 28px;transition:all .3s ease}.back-to-services-btn:hover{box-shadow:0 8px 25px #22c55e66;transform:translateY(-2px)}@media (max-width:1024px){.service-detail-layout{gap:32px;grid-template-columns:1fr}.service-booking{position:static}}@media (max-width:768px){.service-detail-page{overflow-x:hidden}.service-detail-content{padding:16px 0}.service-main{border-radius:12px;margin:0 8px;padding:24px 16px}.service-hero{gap:16px;margin-bottom:32px;padding-bottom:24px}.service-header-section,.service-hero{align-items:center;flex-direction:column;text-align:center}.service-header-section{gap:12px;width:100%}.service-title-section{width:100%}.service-description-section{text-align:left;width:100%}.service-icon-large{height:80px;width:80px}.service-info h1{font-size:1.75rem;line-height:1.3}.service-description-section .service-description{font-size:.95rem;line-height:1.6}.service-meta{flex-wrap:wrap;gap:12px;justify-content:center}.meta-item{font-size:.875rem;padding:10px 14px}.includes-grid{gap:12px;grid-template-columns:1fr}.include-item{font-size:.875rem;padding:14px}.pricing-options{gap:12px;grid-template-columns:1fr}.pricing-option{padding:16px}.bhk-pricing{gap:12px;grid-template-columns:repeat(2,1fr)}.bhk-option{font-size:.85rem;padding:12px}.booking-card{border-radius:12px;box-sizing:border-box;margin:0 8px 2rem;padding:20px 16px;width:calc(100% - 16px)}.quantity-section h3{font-size:1.1rem}.quantity-selector{gap:12px;padding:14px}.qty-btn{height:44px;min-height:44px;min-width:44px;width:44px}.quantity-display{font-size:1.3rem;padding:6px 12px}.pricing-section{padding:16px}.price-amount{font-size:1.5rem}.pricing-tiers{gap:8px}.pricing-tier{padding:12px 14px}.tier-qty{font-size:.875rem}.tier-price{font-size:.95rem}.tier-discount{font-size:.75rem}.booking-actions{display:flex!important;flex-direction:column!important;gap:12px;margin-top:1.5rem!important;position:static!important;width:100%!important}.booking-actions *{pointer-events:auto!important}.add-to-cart-btn,.book-now-btn{-webkit-tap-highlight-color:rgba(34,197,94,.3)!important;align-items:center!important;display:flex!important;font-size:.95rem;justify-content:center!important;min-height:48px;padding:14px 18px;pointer-events:auto!important;touch-action:manipulation!important;width:100%!important}.pricing-info h3,.service-includes h3{font-size:1.3rem}.cleaning-includes{padding:16px}.cleaning-includes p{font-size:.875rem}}@media (max-width:480px){.service-main{margin:0 4px;padding:20px 12px}.service-hero{gap:12px;margin-bottom:24px;padding-bottom:20px}.service-header-section{gap:10px}.service-icon-large{height:70px;width:70px}.service-category span{font-size:.75rem;padding:4px 10px}.service-info h1{font-size:1.5rem;line-height:1.3}.service-description-section .service-description{font-size:.875rem;line-height:1.5}.service-meta{gap:8px}.meta-item{font-size:.8rem;padding:8px 12px}.include-item{font-size:.8rem;padding:12px}.booking-card{box-sizing:border-box;margin:0 4px 2rem;padding:16px 12px;width:calc(100% - 8px)}.quantity-section h3{font-size:1rem}.quantity-selector{gap:10px;padding:12px}.qty-btn{height:40px;min-height:40px;min-width:40px;width:40px}.quantity-display{font-size:1.2rem;padding:4px 10px}.pricing-section{padding:14px}.price-amount{font-size:1.3rem}.discount-badge{font-size:.7rem;padding:4px 8px}.booking-actions{display:flex!important;flex-direction:column!important;gap:10px;width:100%!important}.add-to-cart-btn,.book-now-btn{align-items:center!important;display:flex!important;font-size:.875rem;justify-content:center!important;min-height:44px;padding:12px 16px;width:100%!important}.pricing-info h3,.service-includes h3{font-size:1.15rem}.bhk-pricing{gap:10px;grid-template-columns:1fr}.bhk-option{padding:10px}.pricing-option{padding:14px}.pricing-option h4{font-size:1rem}.pricing-tier{padding:10px 12px}.cleaning-includes{padding:14px}.cleaning-includes p{font-size:.8rem}}.add-to-cart-btn.success{animation:successPulse .6s ease-in-out;background:var(--primary-green)!important;color:#fff!important}@keyframes successPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.service-icon-large:hover{transform:scale(1.05);transition:transform .3s ease}.meta-item:hover{background:#f0fdf4;border-color:#bbf7d0;transform:translateY(-1px)}.add-to-cart-btn:focus,.book-now-btn:focus,.pricing-tier:focus,.qty-btn:focus{outline:3px solid #22c55e4d;outline-offset:2px}@media (hover:none) and (pointer:coarse){.meta-item:hover,.service-icon-large:hover{transform:none}.add-to-cart-btn:active,.book-now-btn:active,.qty-btn:active{transform:scale(.95);transition:transform .1s ease}.add-to-cart-btn,.bhk-option,.book-now-btn,.pricing-tier,.qty-btn,.variant-option{min-height:44px;min-width:44px}}.loading-container{max-width:400px}.error-container,.loading-container{background:#fff;border-radius:20px;box-shadow:0 8px 30px #0000001f;margin:48px auto;padding:48px}.error-container{max-width:500px}@media (max-width:768px){.service-category span{font-size:.8rem;padding:5px 12px}.service-hero{padding-bottom:24px}.service-hero,.service-includes{margin-bottom:32px}.pricing-info{margin-top:24px;padding-top:24px}}.bhk-selector{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:16px}.bhk-option{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;padding:16px;transition:all .2s ease}.bhk-option:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.bhk-option.active{background:#eff6ff;border-color:#3b82f6}.bhk-label{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:8px}.bhk-price{color:#3b82f6;font-size:18px;font-weight:700}.variant-selector{display:flex;flex-direction:column;gap:12px;margin-top:16px}.variant-option{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;text-align:left;transition:all .2s ease}.variant-option:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateX(4px)}.variant-option.active{background:#eff6ff;border-color:#3b82f6}.variant-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.variant-name{color:#1f2937;font-size:16px;font-weight:600}.variant-desc{color:#6b7280;font-size:14px}.variant-price{color:#3b82f6;font-size:20px;font-weight:700;margin-left:16px}.price-note{background:#f3f4f6;border-radius:8px;color:#6b7280;font-size:14px;margin-top:8px;padding:8px 12px;text-align:center}@media (max-width:768px){.bhk-selector{gap:8px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.bhk-option{padding:12px}.bhk-label{font-size:14px}.bhk-price{font-size:16px}.variant-option{padding:12px 16px}.variant-name{font-size:14px}.variant-desc{font-size:12px}.variant-price{font-size:18px}}.quantity-note{color:#6b7280;font-size:14px}.inspection-note,.quantity-note{margin-top:8px;text-align:center}.inspection-note{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d;border-radius:10px;color:#92400e;font-size:.9rem;font-weight:500;padding:12px 16px}.inspection-note span{display:block}.booking-page{background:var(--gray-50);min-height:100vh}.booking-header{background:var(--white);border-bottom:1px solid var(--gray-200);padding:1rem 0}.booking-header .container{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.back-button{align-items:center;background:none;border:none;border-radius:var(--radius);color:var(--gray-600);cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem;transition:all .2s}.back-button:hover{background:var(--gray-100);color:var(--gray-700)}.booking-header h1{color:var(--gray-900);font-size:1.5rem;font-weight:600;margin:0}.booking-steps{display:flex;gap:1rem}.booking-steps .step{align-items:center;background:var(--gray-100);border-radius:2rem;color:var(--gray-600);display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.booking-steps .step.active{background:var(--primary-green);color:#fff}.booking-steps .step span{align-items:center;background:#fff3;border-radius:50%;display:flex;font-size:.75rem;font-weight:600;height:1.5rem;justify-content:center;width:1.5rem}.booking-content{padding:2rem 0}.booking-layout{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 2fr;margin:0 auto;max-width:1200px}.service-summary{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);height:-webkit-fit-content;height:fit-content;padding:1.5rem}.service-info{display:flex;gap:1rem;margin-bottom:1.5rem}.service-info h3{color:var(--gray-900);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.service-rating{align-items:center;color:var(--primary-yellow);display:flex;font-size:.875rem;gap:.25rem}.service-rating .reviews{color:var(--gray-600);margin-left:.25rem}.service-details{border-bottom:1px solid var(--gray-200);display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem}.price-breakdown{space-y:.75rem}.price-item{align-items:center;display:flex;font-size:.875rem;justify-content:space-between;padding:.5rem 0}.price-item:first-child{padding-top:0}.price-total{align-items:center;border-top:1px solid var(--gray-200);color:var(--gray-900);display:flex;font-size:1rem;font-weight:600;justify-content:space-between;padding:1rem 0 0}.booking-form{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem}.form-step{width:100%}.step-header{border-bottom:1px solid var(--gray-200);display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1rem}.step-header h2{color:var(--gray-900);font-size:1.25rem;font-weight:600;margin:0 0 .25rem}.step-header p{color:var(--gray-600);font-size:.875rem;margin:0}.form-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group.full-width{grid-column:1/-1}.form-group label{color:var(--gray-700);font-size:.875rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--gray-300);border-radius:var(--radius);font-size:.875rem;padding:.75rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-green);box-shadow:0 0 0 3px #00a86b1a;outline:none}.form-group textarea{min-height:80px;resize:vertical}.back-btn,.confirm-btn,.next-btn{border:none;border-radius:var(--radius);cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.confirm-btn,.next-btn{background:var(--primary-green);color:#fff;width:100%}.confirm-btn:hover,.next-btn:hover{background:var(--dark-green);transform:translateY(-1px)}.confirm-btn:disabled,.next-btn:disabled{background:var(--gray-400);cursor:not-allowed;transform:none}.back-btn{background:var(--gray-100);color:var(--gray-700)}.back-btn:hover{background:var(--gray-200)}.step-buttons{display:flex;gap:1rem}.step-buttons .back-btn{flex:1 1}.step-buttons .next-btn{flex:2 1}.booking-summary{background:var(--light-green);border:1px solid var(--gray-200);border-radius:.75rem;margin-bottom:1.5rem;padding:1.5rem}.booking-summary h3{color:var(--gray-900);font-size:1rem;font-weight:600;margin:0 0 1rem}.summary-item{align-items:center;display:flex;font-size:.875rem;justify-content:space-between;padding:.5rem 0}.summary-item.total{border-top:1px solid var(--gray-300);color:var(--primary-green);font-size:1rem;font-weight:600;margin-top:.5rem;padding-top:1rem}.payment-info{margin-bottom:2rem}.payment-note{align-items:center;background:var(--light-green);border:1px solid var(--primary-green);border-radius:var(--radius);color:var(--dark-green);display:flex;font-size:.875rem;gap:.5rem;padding:1rem}@media (max-width:768px){.booking-header .container{align-items:flex-start;flex-direction:column}.booking-steps{justify-content:center;width:100%}.booking-layout{gap:1rem;grid-template-columns:1fr}.booking-form{padding:1.5rem}.form-grid{grid-template-columns:1fr}.step-buttons{flex-direction:column}.step-buttons .back-btn,.step-buttons .next-btn{flex:none}}.cart-summary{margin-bottom:24px}.cart-header{align-items:center;color:#374151;display:flex;gap:8px;margin-bottom:16px}.cart-header h3{font-size:1.125rem;font-weight:600;margin:0}.cart-item-summary{border-bottom:1px solid #e5e7eb;padding:12px 0}.cart-item-summary:last-child{border-bottom:none}.cart-item-summary .service-info{align-items:center;display:flex;gap:12px}.cart-item-summary .service-icon{align-items:center;background:#f3f4f6;border-radius:8px;color:#3b82f6;display:flex;height:40px;justify-content:center;width:40px}.cart-item-summary h4{color:#111827;font-size:.875rem;font-weight:600;margin:0 0 4px}.item-details{color:#6b7280;display:flex;font-size:.75rem;gap:12px}.item-details span:last-child{color:#111827;font-weight:600}.booking-items-manager{background:#fff;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.service-header-info{border-bottom:1px solid var(--gray-200);display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem}.service-header-info .service-icon{align-items:center;background:var(--green-50);border-radius:12px;color:var(--primary-green);display:flex;flex-shrink:0;height:60px;justify-content:center;width:60px}.service-header-info h3{color:var(--gray-900);font-size:1.25rem;font-weight:700;margin-bottom:.25rem}.service-subtitle{color:var(--gray-600);font-size:.875rem;margin:0}.booking-items-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.booking-item-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;padding:1rem}.booking-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.item-number{color:var(--gray-700);font-size:.875rem;font-weight:600}.remove-item-btn{align-items:center;background:var(--red-50);border:none;border-radius:50%;color:var(--red-600);cursor:pointer;display:flex;font-size:1.5rem;height:28px;justify-content:center;line-height:1;transition:all .2s ease;width:28px}.remove-item-btn:hover{background:var(--red-100)}.booking-item-controls{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:2fr 1fr;margin-bottom:1rem}.booking-item-controls .form-group{margin-bottom:0}.booking-item-controls label{color:var(--gray-700);display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.variant-select{cursor:pointer;font-size:.875rem;padding:.75rem;width:100%}.quantity-control,.variant-select{background:#fff;border:1px solid var(--gray-300);border-radius:6px}.quantity-control{align-items:center;display:flex;gap:.75rem;padding:.5rem}.qty-btn-small{align-items:center;background:var(--gray-100);border:none;border-radius:4px;color:var(--gray-700);cursor:pointer;display:flex;font-size:1.125rem;font-weight:600;height:32px;justify-content:center;transition:all .2s ease;width:32px}.qty-btn-small:hover{background:var(--gray-200)}.qty-display{color:var(--gray-900);font-size:1rem;font-weight:600;min-width:30px;text-align:center}.booking-item-price{align-items:center;border-top:1px solid var(--gray-200);color:var(--gray-700);display:flex;font-size:.875rem;justify-content:space-between;padding-top:1rem}.booking-item-price .price-value{color:var(--primary-green);font-size:1.125rem;font-weight:700}.add-another-item-btn{align-items:center;background:#fff;border:2px dashed var(--primary-green);border-radius:8px;color:var(--primary-green);cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem;transition:all .2s ease;width:100%}.add-another-item-btn:hover{background:var(--green-50)}.book-now-btn-card{align-items:center;background:var(--primary-green);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease;width:100%}.book-now-btn-card:hover{background:var(--primary-green-dark);box-shadow:0 4px 12px #22c55e33;transform:translateY(-1px)}@media (max-width:768px){.booking-items-manager{padding:1rem}.service-header-info{align-items:center;flex-direction:column;text-align:center}.service-header-info .service-icon{height:50px;width:50px}.service-header-info h3{font-size:1.125rem}.booking-item-controls{gap:.75rem;grid-template-columns:1fr}.booking-item-card{padding:.875rem}.quantity-control{justify-content:center}}.booking-success-page{background:linear-gradient(135deg,var(--primary-green) 0,var(--dark-green) 100%);min-height:100vh;padding:2rem 0}.success-content{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin:0 auto;max-width:600px;overflow:hidden}.success-header{background:linear-gradient(135deg,var(--primary-green) 0,var(--dark-green) 100%);color:#fff;padding:3rem 2rem 2rem;text-align:center}.success-icon{align-items:center;background:#fff3;border-radius:50%;display:inline-flex;height:5rem;justify-content:center;margin-bottom:1.5rem;width:5rem}.success-header h1{font-size:2rem;font-weight:700;margin:0 0 .5rem}.success-header p{font-size:1rem;line-height:1.5;margin:0;opacity:.9}.otp-section{background:var(--light-green);border-bottom:1px solid var(--gray-200);padding:2rem;text-align:center}.otp-header{align-items:center;display:flex;gap:.75rem;justify-content:center;margin-bottom:1.5rem}.otp-header h2{color:var(--gray-900);font-size:1.25rem;font-weight:600;margin:0}.otp-display{margin-bottom:1rem}.otp-code{background:var(--white);border:2px solid var(--primary-green);border-radius:.75rem;color:var(--primary-green);display:inline-block;font-family:Courier New,monospace;font-size:2.5rem;font-weight:700;letter-spacing:.25rem;padding:1rem 2rem}.otp-info{align-items:flex-start;display:flex;gap:.5rem;margin:0 auto;max-width:400px;text-align:left}.otp-info p{color:var(--gray-600);font-size:.875rem;line-height:1.5;margin:0}.booking-details{padding:2rem}.booking-details h3{color:var(--gray-900);font-size:1.125rem;font-weight:600;margin:0 0 1.5rem}.detail-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:.75rem;padding:1.5rem}.detail-header{border-bottom:1px solid var(--gray-200);display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem}.service-icon{align-items:center;background:var(--light-green);border-radius:.75rem;color:var(--primary-green);display:flex;height:3rem;justify-content:center;width:3rem}.detail-header h4{color:var(--gray-900);font-size:1rem;font-weight:600;margin:0 0 .25rem}.booking-id{color:var(--gray-600);font-size:.75rem;font-weight:500}.detail-items{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.detail-item{align-items:center;color:var(--gray-600);display:flex;font-size:.875rem;gap:.5rem}.price-info{border-top:1px solid var(--gray-200);color:var(--primary-green);font-weight:600;padding-top:1rem}.next-steps{padding:0 2rem 2rem}.next-steps h3{color:var(--gray-900);font-size:1.125rem;font-weight:600;margin:0 0 1.5rem}.steps-list{display:flex;flex-direction:column;gap:1rem}.step-item{align-items:flex-start;display:flex;gap:1rem}.step-number{align-items:center;background:var(--primary-green);border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:2rem;justify-content:center;width:2rem}.step-item h4,.step-number{font-size:.875rem;font-weight:600}.step-item h4{color:var(--gray-900);margin:0 0 .25rem}.step-item p{color:var(--gray-600);font-size:.8rem;line-height:1.4;margin:0}.action-buttons{display:flex;gap:1rem;padding:0 2rem 2rem}.dashboard-btn,.services-btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:flex;flex:1 1;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s}.dashboard-btn{background:var(--gray-100);color:var(--gray-700)}.dashboard-btn:hover{background:var(--gray-200)}.services-btn{background:var(--primary-green);color:#fff}.services-btn:hover{background:var(--dark-green)}.support-info{border-top:1px solid var(--gray-200);color:var(--gray-600);font-size:.875rem;padding:1rem 2rem 2rem;text-align:center}.support-info strong{color:var(--gray-900)}@media (max-width:768px){.booking-success-page{padding:1rem}.success-header{padding:2rem 1.5rem 1.5rem}.success-header h1{font-size:1.5rem}.booking-details,.next-steps,.otp-section{padding:1.5rem}.otp-code{font-size:2rem;padding:.75rem 1.5rem}.detail-header{flex-direction:column;gap:.75rem}.action-buttons{flex-direction:column;padding:0 1.5rem 1.5rem}.support-info{padding:1rem 1.5rem 1.5rem}}.detail-card+.detail-card{margin-top:1rem}.otp-display-small{align-items:center;background:var(--light-green);border-radius:.5rem;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-top:1rem;padding:.5rem 1rem}.otp-display-small,.otp-display-small svg{color:var(--primary-green)}@media (max-width:768px){.detail-card+.detail-card{margin-top:1.5rem}.otp-display-small{font-size:.8rem;padding:.75rem}.top-bar{display:none}.header{padding:0;position:-webkit-sticky;position:sticky;z-index:10001}.nav-container{padding:.75rem 1rem}.logo-icon{height:32px;width:32px}.logo-text h1{font-size:1.125rem}.logo-text span{font-size:.75rem}.nav{align-items:flex-start;background:#fff;box-shadow:-4px 0 20px #00000026;flex-direction:column;gap:0;height:100vh;max-width:320px;overflow-y:auto;padding:5rem 2rem 2rem;position:fixed;right:-100%;top:0;transition:right .35s cubic-bezier(.4,0,.2,1);width:80%;will-change:right;z-index:9999}.nav.nav-open{right:0}.nav a{border-bottom:1px solid var(--gray-100);font-size:1.125rem;padding:1rem 0;width:100%}.nav a:after{display:none}.nav-overlay{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0009;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;width:100%;z-index:9998}.nav-overlay.nav-open{opacity:1;visibility:visible}.mobile-menu-btn{align-items:center;background:none;border:none;color:var(--gray-800);cursor:pointer;display:flex;justify-content:center;padding:.5rem;position:relative;z-index:10000}.desktop-only{display:none!important}.mobile-only{display:block!important}.auth-buttons-mobile{border-top:2px solid var(--gray-100);margin-top:2rem;padding-top:2rem;width:100%}.mobile-cart-button{align-items:center;background:var(--primary-green);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin-bottom:1rem;padding:1rem;width:100%}.user-info-mobile{display:flex;flex-direction:column;gap:.75rem}.btn-dashboard-mobile,.btn-logout-mobile{align-items:center;border:none;border-radius:var(--radius);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem;transition:all .2s ease;width:100%}.btn-dashboard-mobile{background:var(--primary-green);color:#fff}.btn-logout-mobile{background:var(--red-50);color:var(--red-600)}.auth-buttons-container{display:flex;flex-direction:column;gap:.75rem;width:100%}.auth-buttons-container .btn-login,.auth-buttons-container .btn-signup{font-size:1rem;padding:1rem;width:100%}.hero-banner{padding:2rem 0}.hero-content{flex-direction:column;gap:2rem}.hero-text{text-align:center}.welcome-badge{font-size:.75rem;padding:.375rem .75rem}.hero-title{font-size:1.75rem;line-height:1.2}.hero-subtitle{font-size:.875rem}.hero-visual{display:none}.hero-search{flex-direction:column;gap:.75rem}.search-box{width:100%}.search-box input{font-size:.875rem;padding:.75rem 1rem .75rem 2.5rem}.search-btn{font-size:.875rem;padding:.875rem;width:100%}.trust-indicators{flex-direction:column;gap:.75rem}.trust-item{font-size:.875rem}.services-grid{gap:1rem;grid-template-columns:1fr}.view-all-container{margin-top:2rem;text-align:center}.view-all-btn{font-size:.875rem;max-width:300px;padding:1rem;width:100%}.service-card{padding:1rem}.service-card h3{font-size:1rem}.service-short-desc{font-size:.875rem}.proposition-content{flex-direction:column;gap:2rem}.proposition-text h2{font-size:1.5rem}.proposition-text>p{font-size:.875rem}.proposition-features{gap:1rem;grid-template-columns:1fr}.proposition-feature{align-items:flex-start;flex-direction:row;gap:.75rem}.proposition-feature svg{flex-shrink:0;height:20px;width:20px}.proposition-feature h4{font-size:1rem}.proposition-feature p{font-size:.875rem}.proposition-visual{width:100%}.visual-card{max-width:100%;padding:1.5rem}.visual-card h3{font-size:1.125rem}.visual-card p{font-size:.875rem}.steps-container{flex-direction:column}.step{padding:1.5rem}.step-icon{height:60px;width:60px}.step-number{font-size:.75rem;height:28px;width:28px}.step-content h3{font-size:1.125rem}.step-content p{font-size:.875rem}.cta-section{padding:2rem 0}.cta-content h2{font-size:1.5rem}.cta-content p{font-size:.875rem;padding:0 1rem}.cta-buttons{flex-direction:column;padding:0 1rem}.cta-btn{width:100%}.services-header{padding:1.5rem 0}.services-header h1{font-size:1.5rem}.services-header p{font-size:.875rem}.services-filters{padding:1rem 0}.search-box{flex-direction:row;gap:.5rem}.search-box input{flex:1 1;min-width:0}.search-btn{min-width:auto;padding:.75rem;width:auto}.search-btn svg{margin:0}.category-navigation,.search-btn span{display:none}.category-mobile-header{display:block!important;margin-top:1rem}.category-mobile-toggle{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius);cursor:pointer;display:flex;font-weight:600;justify-content:space-between;padding:.875rem 1rem;width:100%}.category-navigation.mobile-open{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);display:flex;flex-direction:column;margin-top:.5rem;padding:.5rem}.category-nav-btn{border-radius:var(--radius);padding:.875rem 1rem;text-align:left;width:100%}.service-detail-page{overflow-x:hidden;padding-bottom:10rem;width:100%}.service-detail-header{padding:1rem 0}.back-button{font-size:.875rem;padding:.75rem 1rem}.service-detail-content{padding:1.5rem 0}.service-detail-layout{flex-direction:column;gap:1.5rem}.service-main{border-radius:12px;overflow-x:hidden;padding:1.5rem;width:100%}.service-hero{align-items:center;flex-direction:column;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem;text-align:center}.service-icon-large{border-radius:16px;height:64px;width:64px}.service-icon-large svg{height:36px;width:36px}.service-category span{font-size:.75rem;padding:.375rem .875rem}.service-category{display:none}.service-info h1{font-size:1.5rem;line-height:1.3;margin-bottom:.75rem}.service-description{display:none;font-size:.875rem;line-height:1.6;margin-bottom:1rem}.service-meta{align-items:stretch;display:none;flex-direction:column;gap:.5rem}.service-includes{margin-bottom:2rem}.service-includes h3{font-size:1.125rem;margin-bottom:1rem}.includes-grid{gap:.75rem;grid-template-columns:1fr}.include-item{font-size:.875rem;padding:.875rem}.pricing-info{margin-top:1.5rem;padding-top:1.5rem}.pricing-info h3{font-size:1.125rem;margin-bottom:1rem}.pricing-options{gap:.75rem;grid-template-columns:1fr}.pricing-option{padding:1rem}.pricing-option h4,.pricing-option p{font-size:1rem}.bhk-selector{gap:.5rem;grid-template-columns:repeat(2,1fr)}.bhk-option{padding:.75rem}.bhk-label{font-size:.875rem}.bhk-price{font-size:1rem}.variant-selector{gap:.75rem}.variant-option{flex-wrap:wrap;padding:.875rem 1rem}.variant-name{font-size:.875rem}.variant-desc{font-size:.75rem}.variant-price{font-size:1.125rem;margin-left:0;margin-top:.5rem;text-align:right;width:100%}.service-booking{position:static;width:100%}.booking-card{border-radius:12px;padding:1rem}.quantity-section{margin-bottom:1.5rem}.quantity-section h3{font-size:1rem;margin-bottom:.75rem}.quantity-selector{gap:1rem;padding:.75rem}.qty-btn{border-radius:8px;height:40px;width:40px}.quantity-display{font-size:1.25rem;min-width:50px;padding:.5rem 1rem}.quantity-note{font-size:.75rem;margin-top:.5rem}.pricing-section{margin-bottom:1.5rem;padding:1rem}.discount-info{align-items:flex-start;flex-direction:column;gap:.5rem}.original-price{font-size:.875rem}.discount-badge{font-size:.75rem;padding:.375rem .75rem}.current-price{align-items:flex-start;flex-direction:column;gap:.25rem}.price-label{font-size:.875rem}.price-amount{font-size:1.75rem}.price-note{font-size:.75rem;margin-top:.5rem;padding:.5rem .75rem}.booking-actions{background:#0000!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;gap:0!important;margin-top:1.5rem!important;padding:0!important;position:static!important;width:100%!important;z-index:1!important}.add-to-cart-btn,.book-now-btn{-webkit-tap-highlight-color:transparent!important;border:none!important;border-radius:12px!important;cursor:pointer!important;font-size:1rem!important;font-weight:700!important;min-height:52px!important;padding:1rem 1.5rem!important;pointer-events:auto!important;touch-action:manipulation!important;width:100%!important}.add-to-cart-btn{background:#fff!important;border:2px solid var(--primary-green)!important;color:var(--primary-green)!important}.add-to-cart-btn:active{opacity:.8!important}.book-now-btn{background:var(--primary-green)!important;color:#fff!important}.book-now-btn:active{opacity:.8!important;transform:scale(.98)!important}.error-container,.loading-container{margin:2rem 1rem;min-height:300px;padding:2rem 1rem}.loading-spinner{height:40px;width:40px}.error-container h2{font-size:1.25rem}.back-to-services-btn{font-size:.875rem;padding:.875rem 1.5rem}.booking-layout{flex-direction:column}.service-summary{position:static;width:100%}.booking-form{width:100%}.form-grid{grid-template-columns:1fr}.dashboard-sidebar{width:280px}.dashboard-main{margin-left:0;padding:1rem}.stats-grid{gap:.75rem;grid-template-columns:repeat(2,1fr)}.stat-card{padding:1rem}.stat-card h3{font-size:1.5rem}.bookings-grid{grid-template-columns:1fr}.cart-sidebar{max-width:100%;width:100%}body{overflow-x:hidden}.home-page,section{overflow-x:hidden;width:100%}.container{max-width:100%;overflow-x:hidden;padding-left:1rem;padding-right:1rem}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}button{font-size:.875rem}section{padding:2rem 0}}@media (max-width:480px){.hero-title{font-size:1.5rem}.bhk-selector,.stats-grid{grid-template-columns:1fr}.service-main{padding:1rem}.service-header-section,.service-hero{gap:.75rem}.service-icon-large{height:56px;width:56px}.service-icon-large svg{height:32px;width:32px}.service-info h1{font-size:1.25rem}.service-description-section .service-description{font-size:.875rem}.meta-item{font-size:.8125rem;padding:.625rem .875rem}.include-item{font-size:.8125rem;padding:.75rem}.booking-card{padding:.875rem}.quantity-selector{gap:.75rem;padding:.625rem}.qty-btn{height:36px;width:36px}.quantity-display{font-size:1.125rem;padding:.375rem .75rem}.pricing-section{padding:.875rem}.price-amount{font-size:1.5rem}.variant-option{padding:.75rem .875rem}.variant-name{font-size:.8125rem}.variant-price{font-size:1rem}}@media (max-width:768px){.service-card{border-radius:12px;padding:1.25rem}.service-icon-wrapper{margin-bottom:1rem}.service-card h3{font-size:1.125rem;line-height:1.4;margin-bottom:.5rem}.service-short-desc{font-size:.875rem;line-height:1.5;margin-bottom:.75rem}.service-meta{gap:.5rem;justify-content:space-between;margin-bottom:1rem}.service-duration,.service-price{font-size:.875rem}.service-actions{margin-top:1rem}.book-now-btn-card{border-radius:10px;font-size:1rem;font-weight:700;padding:1rem}.services-grid{gap:1.25rem;grid-template-columns:1fr;padding:.5rem 0}.search-box{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:.5rem}.search-box input{font-size:1rem;padding:.875rem 1rem .875rem 2.75rem}.search-btn{border-radius:10px;padding:.875rem 1rem}.category-mobile-toggle{border-radius:10px;box-shadow:0 2px 8px #00000014;font-size:1rem;padding:1rem}.service-detail-page{overflow-x:hidden;padding-bottom:2rem}.service-hero{flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem}.service-header-section{align-items:center;flex-direction:column;gap:1rem;text-align:center;width:100%}.service-title-section{width:100%}.service-description-section{text-align:left;width:100%}.service-info h1{font-size:1.5rem;line-height:1.3;margin-bottom:.5rem}.service-description-section .service-description{color:var(--gray-600);display:block!important;font-size:.9375rem;line-height:1.6;margin:0}.service-meta{display:flex!important;flex-direction:row;gap:1rem;justify-content:center}.meta-item{align-items:center;background:var(--gray-50);border-radius:8px;display:flex;font-size:.875rem;gap:.5rem;padding:.75rem 1rem}.booking-actions{background:#0000!important;box-shadow:none!important;display:flex!important;flex-direction:row!important;gap:0!important;margin-top:1.5rem!important;padding:0!important;position:static!important;width:100%!important;z-index:1!important}.book-now-btn{-webkit-tap-highlight-color:transparent!important;background:var(--primary-green)!important;border:none!important;border-radius:12px!important;color:#fff!important;cursor:pointer!important;font-size:1.125rem!important;font-weight:700!important;min-height:56px!important;padding:1rem 1.5rem!important;pointer-events:auto!important;touch-action:manipulation!important;width:100%!important}.book-now-btn:active{opacity:.9!important;transform:scale(.98)!important}.bhk-selector{gap:.75rem;grid-template-columns:repeat(2,1fr)}.bhk-option{border-radius:10px;padding:1rem}.bhk-label{font-size:.9375rem;font-weight:600}.bhk-price{font-size:1.125rem;font-weight:700}.variant-selector{gap:.75rem}.variant-option{border-radius:10px;padding:1rem}.variant-name{font-size:.9375rem;font-weight:600}.variant-desc{font-size:.8125rem;margin-top:.25rem}.variant-price{font-size:1.125rem;font-weight:700;margin-top:.5rem}.includes-grid{gap:.5rem;grid-template-columns:1fr}.include-item{border-radius:8px;font-size:.9375rem;padding:.875rem 1rem}.booking-card{border-radius:12px;margin-bottom:1rem;padding:1.25rem}.quantity-section h3{font-size:1.125rem;margin-bottom:1rem}.quantity-selector{border-radius:10px;gap:1.5rem;padding:1rem}.qty-btn{border-radius:10px;height:44px;width:44px}.quantity-display{font-size:1.5rem;font-weight:700;min-width:60px;padding:.5rem 1rem}.pricing-section{border-radius:10px;margin-bottom:1rem;padding:1.25rem}.price-label{font-size:.9375rem}.price-amount{font-size:2rem;font-weight:800}.booking-header{padding:1rem 0}.booking-header h1{font-size:1.5rem;margin-bottom:1rem}.booking-steps{display:flex;gap:.5rem;justify-content:space-between}.step{flex:1 1;font-size:.8125rem;padding:.75rem .5rem}.step span{font-size:.875rem;height:28px;width:28px}.form-group input,.form-group select,.form-group textarea{border-radius:10px;font-size:1rem;padding:.875rem 1rem}.form-group label{font-size:.9375rem;margin-bottom:.5rem}.back-btn,.confirm-btn,.next-btn{border-radius:10px;font-size:1rem;font-weight:700;min-height:52px;padding:1rem 1.5rem}.service-summary{border-radius:12px;margin-bottom:1.5rem;padding:1.25rem}.service-summary .service-icon{height:50px;width:50px}.service-summary h3{font-size:1.125rem}.price-breakdown{border-radius:10px;padding:1rem}.price-item{font-size:.9375rem;padding:.75rem 0}.price-total{font-size:1.125rem;padding:1rem 0}.error-alert{border-radius:10px;font-size:.9375rem;margin-bottom:1rem;padding:1rem}.loading-container{padding:3rem 1rem}.loading-spinner{height:48px;width:48px}}@media (max-width:480px){.service-card{padding:1rem}.service-card h3{font-size:1rem}.book-now-btn-card{font-size:.9375rem;padding:.875rem}.bhk-selector{grid-template-columns:1fr}.service-info h1{font-size:1.25rem}.price-amount{font-size:1.75rem}.quantity-display{font-size:1.25rem}.booking-steps{flex-direction:column;gap:.5rem}.step{padding:.75rem 1rem}}@media (max-width:768px){.service-booking{margin-top:2rem;width:100%}.booking-card{border:1px solid #e5e7eb;box-shadow:0 4px 20px #0000001a}.booking-actions{border-top:2px solid #f3f4f6;padding-top:1rem}.book-now-btn{box-shadow:0 4px 12px #22c55e4d;transition:all .2s ease}.book-now-btn:active{box-shadow:0 2px 8px #22c55e66}.pricing-section{background:#f9fafb;border-radius:12px;margin-bottom:1rem;padding:1rem}.current-price{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.price-amount{color:var(--primary-green);font-size:1.75rem;font-weight:800}}@media (max-width:480px){.book-now-btn{font-size:1.0625rem!important;min-height:52px!important}}
/*# sourceMappingURL=main.410376fc.css.map*/