:root{--primary-green:#00a676;--dark-green:#008a62;--navy:#1a2b3c;--text-grey:#667085;--white:#fff;--bg-light:#f9fdfc}*{box-sizing:border-box;margin:0;padding:0;font-family:Poppins,sans-serif}html{scroll-behavior:smooth}body{background-color:var(--white);padding-top:80px}.disabled{pointer-events:none;opacity:.5;cursor:not-allowed}.main-header{background-color:var(--white);z-index:1000;align-items:center;width:100%;height:80px;display:flex;position:fixed;top:0;left:0;box-shadow:0 2px 10px #0000000d}.header-container{justify-content:space-between;align-items:center;width:90%;max-width:1400px;margin:0 auto;display:flex}.logo-link{text-decoration:none;transition:opacity .2s;display:block}.logo{cursor:pointer;align-items:center;gap:12px;display:flex}.logo:before{content:"";background:url(/dirtfree-logo.svg) 50%/contain no-repeat;flex-shrink:0;width:156px;height:54px;display:block}.logo-img,.brand-name{display:none}.brand-name{color:#1a2b3c;font-size:1.5rem;font-weight:800}.nav-menu a{color:#4a5568;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s}.nav-menu a:hover{color:var(--primary-green)}.city-picker{cursor:pointer;position:relative}.picker-trigger{color:var(--primary-green);align-items:center;gap:6px;font-weight:600;display:flex}.chevron{transition:all .3s}.city-dropdown{background:var(--white);z-index:1100;border-radius:20px;width:280px;display:none;position:absolute;top:50px;left:0;overflow:hidden;box-shadow:0 10px 40px #00000026}.city-dropdown.active{display:block}.dropdown-header{color:#94a3b8;letter-spacing:1px;padding:20px 25px 10px;font-size:.7rem;font-weight:700}.city-list{list-style:none}.city-item{color:#334155;justify-content:space-between;padding:15px 25px;font-size:.95rem;transition:all .2s;display:flex}.city-item:hover{color:var(--primary-green);background:#f8fafc}.city-item .arrow{color:#cbd5e1}:root{--primary-green:#00a676;--light-mint:#a2d2c9;--navy-blue:#1a2b3c;--border-grey:#e2e8f0;--bg-light:#f8fafc;--text-slate:#64748b}body{background-color:var(--bg-light);margin:0;padding-bottom:50px}.booking-page-container{justify-content:center;padding:20px;display:flex}.booking-card-main{background:#fff;border-radius:20px;width:100%;max-width:680px;padding:40px;box-shadow:0 4px 25px #0000000d}.booking-header-main{align-items:center;gap:15px;margin-bottom:30px;display:flex}.step-circle{background:var(--primary-green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:700;display:flex}.booking-header-main h2{color:var(--navy-blue);font-size:1.4rem;font-weight:800}.input-group{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.input-group label{color:var(--navy-blue);font-size:.85rem;font-weight:700}.input-group input,.input-group textarea,.input-group select{border:1px solid var(--border-grey);width:100%;color:var(--navy-blue);border-radius:10px;outline:none;padding:14px 16px;font-size:.95rem;transition:border-color .2s}.input-group input::placeholder,.input-group textarea::placeholder{color:#cbd5e1}.input-group input:focus,.input-group textarea:focus{border-color:var(--primary-green)}.phone-input{border:1px solid var(--border-grey);border-radius:10px;display:flex;overflow:hidden}.phone-input .prefix{border-right:1px solid var(--border-grey);color:var(--text-slate);background:#f8fafc;padding:14px 18px;font-size:.95rem;font-weight:600}.phone-input input{border:none}.order-summary{background:#f8fafc;border:1px solid #00000005;border-radius:15px;margin:30px 0;padding:25px}.order-summary p{color:var(--navy-blue);margin-bottom:15px;font-size:.95rem;font-weight:700}.summary-row{color:var(--text-slate);justify-content:space-between;margin-bottom:12px;font-size:.9rem;display:flex}.summary-total{color:var(--primary-green);border-top:1px solid #e2e8f0;justify-content:space-between;margin-top:5px;padding-top:15px;font-size:1.2rem;font-weight:800;display:flex}.booking-footer{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.btn-back{color:var(--text-slate);border:1px solid var(--border-grey);border-radius:25px;padding:10px 25px;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .2s}.btn-back:hover{background:#f1f5f9}.btn-place-order{background-color:var(--light-mint);color:var(--navy-blue);cursor:pointer;border:none;border-radius:25px;padding:14px 45px;font-size:1rem;font-weight:700;transition:all .3s}.btn-place-order:hover{background-color:var(--primary-green);color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #00a67633}@media (width<=600px){.booking-card-main{padding:25px}.row{flex-direction:column;gap:0!important}.city-title{font-size:2rem}}.hero-section{background:url(https://images.unsplash.com/photo-1581578731548-c64695cc6958?auto=format&fit=crop&q=80&w=1600) 50%/cover;align-items:center;height:85vh;min-height:600px;padding:0 5%;display:flex;position:relative}.hero-content{z-index:2;max-width:700px;color:var(--white);position:relative}.badge{color:var(--primary-green);background:#00a67640;border-radius:20px;padding:6px 16px;font-size:.8rem;font-weight:600}h1{margin:20px 0;font-size:4rem;line-height:1.1}.text-green{color:var(--primary-green)}.hero-desc{opacity:.9;margin-bottom:30px;font-size:1.1rem}.cta-group{gap:20px;margin-bottom:40px;display:flex}.btn{border-radius:50px;padding:16px 32px;font-weight:700;text-decoration:none}.btn-filled{background:var(--primary-green);color:var(--white)}.btn-outline{border:2px solid var(--white);color:var(--white)}.city-tags{gap:10px;margin-top:15px;display:flex}.city-tag{color:#fff;cursor:pointer;background:#00000080;border:1px solid #ffffff4d;border-radius:20px;padding:8px 18px}.info-bar{-webkit-backdrop-filter:blur(10px);z-index:10;background-color:#00000073;border:1px solid #ffffff1a;border-radius:15px;justify-content:space-around;align-items:center;width:90%;max-width:1200px;padding:20px;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.info-item{color:#fff;align-items:center;gap:10px;font-size:.9rem;font-weight:600;display:flex}.info-item span{color:#00a676;filter:brightness(1.2)}.services-section{background:var(--bg-light);padding:80px 0}.services-container{width:90%;max-width:1400px;margin:0 auto}.services-header{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;margin-bottom:50px;display:flex}.badge-alt{color:var(--primary-green);background:#dff6f0;border-radius:20px;padding:5px 15px;font-size:.8rem;font-weight:600}.section-title{color:var(--navy);margin-top:10px;font-size:2.5rem}.section-subtitle{max-width:600px;color:var(--text-grey);margin:0 auto;font-size:.9rem}.services-grid{grid-template-columns:repeat(5,1fr);gap:20px;display:grid}.service-card{cursor:pointer;background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 4px 15px #0000000d}.card-img{background-position:50%;background-repeat:no-repeat;background-size:cover;width:100%;height:200px}.card-body{padding:20px}.card-body h3{margin-bottom:10px;font-size:1.1rem}.card-body p{color:var(--text-grey);margin-bottom:15px;font-size:.85rem}.card-footer{color:var(--primary-green);font-size:.8rem;font-weight:700}.city-quick-links p{color:#fff;opacity:.9;margin-bottom:15px;font-size:.9rem}.city-tags{flex-wrap:wrap;gap:12px;display:flex}.city-btn{color:#fff;cursor:pointer;background-color:#3b3b3b;border:1px solid #0000;border-radius:50px;outline:none;padding:10px 24px;font-size:.95rem;font-weight:500;transition:all .3s}.city-hero{align-items:center;height:70vh;min-height:500px;padding:0 8%;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:1;background-position:50%;background-size:cover;width:100%;height:100%;position:absolute;top:0;left:0}.location-badge{color:#00a676;background:#00a67633;border-radius:20px;align-items:center;gap:6px;margin-bottom:20px;padding:6px 14px;font-size:.8rem;font-weight:600;display:inline-flex}.city-title{color:#fff;margin-bottom:20px;font-size:4rem;font-weight:800;line-height:1.1}.city-title .highlight{color:#00a676}.city-desc{color:#ffffffe6;max-width:600px;margin-bottom:35px;font-size:1.1rem}.city-nav-pills{gap:12px;display:flex}.pill{color:#fff;cursor:pointer;background:#0006;border:1px solid #fff3;border-radius:50px;padding:10px 24px;font-weight:600;transition:all .3s}.pill.active{background-color:#02acb8;border-color:#00a676}.pill:hover:not(.active){background:#ffffff1a;border-color:#fff}@media (width<=768px){.city-title{font-size:2.5rem}.city-nav-pills{flex-wrap:wrap}}.city-btn:hover{background-color:#2c2c2c;border-color:#fff;transform:translateY(-2px)}.city-btn:active{background-color:#1a1a1a;transform:translateY(0)}@media (width<=1024px){.services-grid{grid-template-columns:repeat(2,1fr)}h1{font-size:3rem}.nav-menu a:not(.btn-book-now){display:none}}.booking-section{text-align:center;background-color:#fff;padding:60px 5%}.booking-header h2{color:#0f1c2d;margin:20px 0 40px;font-size:2rem;font-weight:800}.services-tag{color:#1a2b3c;background:#f0f4f8;border:1px solid #e2e8f0;border-radius:30px;align-items:center;gap:8px;padding:8px 20px;font-size:.85rem;font-weight:600;display:inline-flex}.services-container{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.booking-card{text-align:left;background-position:50%;background-size:cover;border-radius:20px;flex-direction:column;justify-content:flex-end;width:220px;height:350px;padding:25px;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.booking-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0003}.card-overlay-content h3{color:#fff;margin-bottom:10px;font-size:1.4rem}.card-overlay-content p{color:#ffffffe6;margin-bottom:20px;font-size:.95rem;line-height:1.4}.card-btn{color:#fff;text-align:center;background-color:#38a189;border-radius:10px;width:100%;padding:12px 0;font-size:.9rem;font-weight:700;text-decoration:none;transition:background .3s;display:block}.card-btn:hover{background-color:#2d826f}.location-map-section{text-align:center;background:#fff;padding:70px 5%}.location-map-inner{width:100%;max-width:1000px;margin:0 auto}.location-map-tag{color:#178f7b;letter-spacing:.14em;text-transform:uppercase;background:#eef8f6;border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:7px 18px;font-size:.78rem;font-weight:800;display:inline-flex}.location-map-title{color:#0f1c2d;margin:18px 0 12px;font-size:2.3rem;font-weight:800;line-height:1.15}.location-map-subtitle{color:#5f6f89;max-width:620px;margin:0 auto 42px;font-size:1rem;line-height:1.7}.location-map-frame{background:#eef2f5;border:1px solid #dbe3ea;border-radius:14px;width:100%;height:400px;position:relative;overflow:hidden;box-shadow:0 18px 45px #0f1c2d14}.location-map-frame iframe{border:0;width:100%;height:100%;display:block}.location-map-open{z-index:2;color:#1a73e8;background:#fff;border-radius:6px;justify-content:center;align-items:center;min-height:34px;padding:8px 14px;font-size:.86rem;font-weight:600;text-decoration:none;display:inline-flex;position:absolute;top:14px;left:14px;box-shadow:0 2px 8px #0f1c2d29}.location-map-open:hover{color:#0b57d0}@media (width<=768px){.booking-card{width:100%;height:200px}.location-map-section{padding:52px 5%}.location-map-title{font-size:1.9rem}.location-map-subtitle{margin-bottom:30px}.location-map-frame{border-radius:12px;height:320px}.location-map-open{max-width:calc(100% - 20px);font-size:.8rem;top:10px;left:10px}}.about-section{color:#fff;background-color:#0b1622;padding:100px 8%;font-family:Poppins,sans-serif}.about-container{max-width:1200px;margin:0 auto}.about-top{justify-content:space-between;align-items:center;gap:60px;margin-bottom:80px;display:flex}.about-text{flex:1.2}.about-features{flex:1;grid-template-columns:1fr 1fr;gap:20px;display:grid}.sub-title{color:#fff9;margin-bottom:15px;font-size:.9rem;display:block}.about-text h1{margin-bottom:25px;font-size:3rem;font-weight:800;line-height:1.1}.about-text .highlight{color:#00a676}.about-text p{color:#ffffffb3;max-width:500px;margin-bottom:20px;line-height:1.6}.btn-meet{color:#fff;background-color:#00a676;border-radius:50px;margin-top:20px;padding:14px 35px;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.feature-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:15px;align-items:center;gap:15px;padding:25px;display:flex}.feature-icon{background:#00a67626;border:1px solid #00a6764d;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex}.feature-card span{font-size:.95rem;font-weight:600}.about-stats{text-align:center;border-top:1px solid #ffffff1a;justify-content:space-between;padding-top:60px;display:flex}.stat-item h3{color:#00a676;margin-bottom:5px;font-size:2.5rem}.stat-item p{color:#fff9;font-size:.9rem}@media (width<=992px){.about-top{text-align:center;flex-direction:column}.about-text p{margin:0 auto 20px}.about-stats{flex-wrap:wrap;justify-content:center;gap:30px}.stat-item{flex:40%}}.reviews-section{background-color:#f8fafc;padding:80px 8%;font-family:Poppins,sans-serif}.reviews-container{max-width:1200px;margin:0 auto}.badge-green{color:#00a676;background-color:#dcfce7;border-radius:20px;margin-bottom:20px;padding:6px 16px;font-size:.85rem;font-weight:600;display:inline-block}.reviews-header h2{color:#0f1c2d;margin-bottom:50px;font-size:2.8rem;font-weight:800;line-height:1.2}.testimonial-grid{grid-template-columns:repeat(3,1fr);gap:25px;display:grid}.testimonial-card{background:#fff;border-radius:20px;padding:35px;transition:transform .3s;box-shadow:0 10px 30px #00000008}.testimonial-card:hover{transform:translateY(-5px)}.user-info{align-items:center;gap:15px;margin-bottom:20px;display:flex}.avatar{color:#00a676;background-color:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:1rem;font-weight:700;display:flex}.name-meta h3{color:#0f1c2d;margin:0;font-size:1rem}.name-meta span{color:#94a3b8;font-size:.85rem}.stars{color:#facc15;letter-spacing:2px;margin-bottom:20px;font-size:1.2rem}.quote{color:#475569;font-size:.95rem;font-style:italic;line-height:1.6}@media (width<=992px){.testimonial-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.testimonial-grid{grid-template-columns:1fr}.reviews-header h2{font-size:2rem}}.faq-section{background-color:#fff;padding:100px 8%;font-family:Poppins,sans-serif}.faq-container{max-width:900px;margin:0 auto}.faq-header{text-align:center;margin-bottom:50px}.badge-faq{color:#00a676;background-color:#dcfce7;border-radius:20px;margin-bottom:20px;padding:6px 20px;font-size:.85rem;font-weight:600;display:inline-block}.faq-header h2{color:#0f1c2d;font-size:3rem;font-weight:800}.faq-accordion{flex-direction:column;gap:15px;display:flex}.faq-item{border:1px solid #e2e8f0;border-radius:12px;transition:all .3s;overflow:hidden}.faq-question{cursor:pointer;color:#0f1c2d;background:#fff;justify-content:space-between;align-items:center;padding:24px 30px;font-size:1.1rem;font-weight:600;display:flex}.faq-icon{width:20px;height:20px;position:relative}.faq-icon:before,.faq-icon:after{content:"";background-color:#00a676;transition:transform .3s;position:absolute}.faq-icon:before{width:100%;height:2px;top:50%;left:0;transform:translateY(-50%)}.faq-icon:after{width:2px;height:100%;top:0;left:50%;transform:translate(-50%)}.faq-item.active .faq-icon:after{opacity:0;transform:translate(-50%)rotate(90deg)}.faq-answer{background:#fff;border-top:0 solid #e2e8f0;max-height:0;transition:max-height .3s ease-out,padding .3s;overflow:hidden}.faq-answer p{color:#64748b;padding:0 30px 24px;font-size:1rem;line-height:1.6}.faq-item.active{border-color:#0f1c2d}.faq-item.active .faq-answer{border-top-width:1px;max-height:200px;padding-top:20px}:root{--app-primary:#4a90e2;--app-primary-dark:#357abd;--app-accent:#00a676;--app-accent-dark:#008a62;--app-ink:#101828;--app-muted:#667085;--app-border:#e4e7ec;--app-surface:#fff;--app-soft:#f5f7fb;--app-shadow:0 12px 32px #10182814}body{color:var(--app-ink);background:radial-gradient(circle at 0 0,#4a90e21f,#0000 34%),linear-gradient(#f7f9fc 0%,#fff 42%,#f8fafc 100%)}.main-header{-webkit-backdrop-filter:blur(14px);background:#fffffff0;border-bottom:1px solid #e4e7ece6;height:82px;box-shadow:0 8px 24px #1018280f}.header-container{min-height:82px}.logo-img{background:linear-gradient(135deg,#4a90e21f,#00a6761f);border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.brand-name{color:var(--app-ink)}.nav-menu{align-items:center;gap:12px;display:flex}.nav-menu>a:not(.card-btn),.picker-trigger,.nav-location-pill{z-index:10;border-radius:10px;align-items:center;min-height:42px;padding:0 14px;transition:background .2s,color .2s,transform .2s;display:inline-flex;position:relative}.nav-menu>a:not(.card-btn):hover,.picker-trigger:hover{color:var(--app-primary);background:#f1f5f9;transform:translateY(-1px)}.nav-menu .card-btn{color:#fff;white-space:nowrap;z-index:8;border-radius:12px;justify-content:center;align-items:center;width:auto;min-width:102px;min-height:44px;padding:0 18px;line-height:1;display:inline-flex;position:relative;pointer-events:auto!important}.card-btn:hover,.btn-filled:hover,.btn-place-order:hover,.cat-add-btn:hover{background:linear-gradient(135deg, var(--app-accent) 0%, var(--app-accent-dark) 100%);transform:translateY(-2px);box-shadow:0 12px 26px #00a6763d}.btn-outline,.btn-back,.cat-tier-details-btn{border-radius:10px}.nav-location-pill{color:#2563eb;background:#eef6ff;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex!important}.google-reviews-section{background-color:#fff;padding:80px 8%;font-family:Poppins,sans-serif}.google-reviews-container{max-width:1200px;margin:0 auto}.reviews-header{text-align:center;margin-bottom:50px}.reviews-badge{color:#00a676;background-color:#dcfce7;border-radius:20px;margin-bottom:20px;padding:6px 16px;font-size:.85rem;font-weight:600;display:inline-block}.reviews-header h2{color:#0f1c2d;margin-bottom:15px;font-size:2.5rem;font-weight:800}.reviews-header p{color:#667085;max-width:600px;margin:0 auto;font-size:1.1rem}.google-reviews-grid{grid-template-columns:repeat(3,1fr);gap:25px;margin-bottom:40px;display:grid}.google-review-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:30px;transition:transform .3s,box-shadow .3s}.google-review-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #00000014}.google-stars{color:#facc15;letter-spacing:2px;margin-bottom:12px;font-size:1.3rem}.google-reviewer{color:#0f1c2d;margin-bottom:5px;font-size:.95rem;font-weight:700}.google-review-date{color:#94a3b8;margin-bottom:15px;font-size:.8rem}.google-review-text{color:#475569;font-size:.9rem;font-style:italic;line-height:1.6}.google-reviews-footer{text-align:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:30px}.google-reviews-footer p{color:#667085;margin-bottom:15px;font-size:.95rem}.google-reviews-btn{color:#fff;background:linear-gradient(135deg,#4a90e2 0%,#357abd 100%);border-radius:10px;padding:12px 30px;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.google-reviews-btn:hover{background:linear-gradient(135deg,#00a676 0%,#008a62 100%);transform:translateY(-2px);box-shadow:0 8px 20px #00a67640}@media (width<=992px){.google-reviews-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.google-reviews-grid{grid-template-columns:1fr}.reviews-header h2{font-size:2rem}.city-location-info{top:100px;right:20px}}.badge,.badge-alt,.badge-green,.badge-faq,.services-tag,.location-badge{color:var(--app-primary);background:#4a90e21f;border:1px solid #4a90e22e;border-radius:999px}.services-container,.about-container,.reviews-container,.faq-container{max-width:1280px}.info-bar,.service-card,.testimonial-card,.faq-item,.feature-card,.booking-card{box-shadow:var(--app-shadow);border:1px solid #e4e7ece6}.service-card,.testimonial-card,.faq-item,.feature-card{border-radius:16px}.service-card{transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px #4a90e226}.service-card:focus-visible{outline-offset:4px;outline:3px solid #1663d852}.city-hero{padding:0 5%}.city-hero .hero-content{width:min(90%,1280px);margin:0 auto}.city-hero .hero-bg:after,.booking-card:after{content:"";pointer-events:none;position:absolute;inset:0}.city-hero .hero-bg:after{background:linear-gradient(90deg,#101828c7,#10182870,#1018282e)}.city-title{max-width:760px}.city-desc{color:#ffffffdb}.pill,.city-btn{background:#101828b8;border:1px solid #ffffff38;border-radius:999px;font-weight:700}.pill.active,.city-btn:hover{background:linear-gradient(135deg, var(--app-primary) 0%, var(--app-accent) 100%);border-color:#0000}.booking-section,.services-section,.reviews-section,.faq-section{background:0 0}.booking-section{padding:76px 5%}.booking-card{isolation:isolate;border-radius:18px;width:240px;height:360px}.booking-card:before{content:"";z-index:0;background:linear-gradient(#0000 15%,#101828d6 100%);position:absolute;inset:0}.booking-card>*{z-index:1;position:relative}.card-overlay-content h3{line-height:1.2}.footer{color:#ffffffc2;text-align:center;background:#101828;padding:26px 20px}@media (width<=900px){body{padding-top:72px}.main-header,.header-container{height:72px;min-height:72px}.nav-menu{gap:8px}.nav-menu>a:not(.card-btn),.picker-trigger,.nav-location-pill{min-height:36px;padding:0 9px;font-size:.82rem}.card-btn{padding:10px 12px}.nav-menu .card-btn{min-width:auto;min-height:38px;padding:0 12px;font-size:.82rem}.hero-section,.city-hero{height:auto;min-height:680px;padding-top:48px;padding-bottom:48px}.info-bar{flex-wrap:wrap;justify-content:flex-start}}:root{--ui-primary:#2563eb;--ui-primary-2:#06b6d4;--ui-accent:#10b981;--ui-ink:#0f172a;--ui-text:#334155;--ui-muted:#64748b;--ui-line:#94a3b838;--ui-glass:#ffffffd1;--ui-soft:#f8fafc;--ui-shadow-sm:0 8px 22px #0f172a14;--ui-shadow-md:0 18px 42px #0f172a1f;--ui-ring:0 0 0 4px #2563eb24}body{color:var(--ui-text);background:radial-gradient(circle at 12% 0,#2563eb24,#0000 28%),radial-gradient(circle at 88% 12%,#10b9811f,#0000 24%),linear-gradient(#f8fafc 0%,#fff 38%,#f8fafc 100%);padding-bottom:0}.main-header{border-bottom:1px solid var(--ui-line);background:linear-gradient(#ffffffeb,#ffffffc7);height:78px;box-shadow:0 12px 34px #0f172a14}.main-header:before{content:"";pointer-events:none;background:linear-gradient(90deg,#2563eb14,#0000 36%,#10b98114);position:absolute;inset:0}.header-container{z-index:1;min-height:78px;position:relative}.logo-img{background:linear-gradient(135deg, var(--ui-primary), var(--ui-primary-2));transition:transform .22s,box-shadow .22s;box-shadow:0 12px 24px #2563eb3d}.logo-link:hover{opacity:1}.logo-link:hover .logo-img{transform:translateY(-2px)rotate(-3deg);box-shadow:0 16px 30px #2563eb52}.brand-name{color:var(--ui-ink);letter-spacing:0}.nav-menu{gap:8px}.nav-menu>a:not(.card-btn),.picker-trigger,.nav-location-pill{color:#475569;border:1px solid #0000;border-radius:999px;min-height:40px;padding:0 14px;position:relative;overflow:hidden}.nav-menu>a:not(.card-btn):after,.picker-trigger:after{content:"";background:linear-gradient(90deg, var(--ui-primary), var(--ui-accent));transform-origin:50%;border-radius:99px;height:2px;transition:transform .22s;position:absolute;bottom:7px;left:14px;right:14px;transform:scaleX(0)}.nav-menu>a:not(.card-btn):hover,.picker-trigger:hover{color:var(--ui-primary);background:#2563eb14;border-color:#2563eb24;transform:translateY(-1px)}.nav-menu>a:not(.card-btn):hover:after,.picker-trigger:hover:after{transform:scaleX(1)}.picker-trigger,.nav-location-pill{color:var(--ui-primary);font-weight:800}.city-dropdown{border:1px solid var(--ui-line);box-shadow:var(--ui-shadow-md);-webkit-backdrop-filter:blur(18px);background:#fffffff5;border-radius:18px;padding:8px;top:48px}.dropdown-header{color:var(--ui-muted);letter-spacing:.04em;padding:14px 16px 8px}.city-item{color:var(--ui-text);border-radius:12px;margin:2px 0}.city-item:hover{color:var(--ui-primary);background:linear-gradient(135deg,#2563eb1a,#10b98114);transform:translate(3px)}.nav-menu .card-btn{background:linear-gradient(135deg, var(--ui-primary), var(--ui-primary-2));color:#fff;border-radius:999px;min-width:106px;min-height:42px;padding:0 18px;position:relative;overflow:visible;box-shadow:0 12px 24px #2563eb42}.nav-toggle{width:42px;height:42px;color:var(--ui-ink);cursor:pointer;box-shadow:var(--ui-shadow-sm);background:#ffffffdb;border:1px solid #94a3b83d;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;transition:transform .2s,background .2s;display:none}.nav-toggle span{background:currentColor;border-radius:99px;width:19px;height:2px;transition:transform .22s,opacity .22s}.nav-toggle:hover{background:#2563eb14;transform:translateY(-1px)}.main-header.nav-open .nav-toggle span:first-child{transform:translateY(7px)rotate(45deg)}.main-header.nav-open .nav-toggle span:nth-child(2){opacity:0}.main-header.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-menu .card-btn:before,.btn-filled:before,.btn-place-order:before,.cat-add-btn:before{content:"";background:linear-gradient(120deg,#0000 0%,#ffffff42 42%,#0000 64%);transition:transform .45s;position:absolute;inset:0;transform:translate(-120%)}.nav-menu .card-btn:hover:before,.btn-filled:hover:before,.btn-place-order:hover:before,.cat-add-btn:hover:before{transform:translate(120%)}.nav-menu .card-btn:hover{background:linear-gradient(135deg, var(--ui-accent), var(--ui-primary-2));box-shadow:0 16px 30px #10b9813d}.card-btn,.btn,.btn-back,.btn-place-order,.cat-tier-details-btn,.cat-add-btn,.city-btn,.pill{transition:transform .22s,box-shadow .22s,border-color .22s,background .22s,color .22s}.btn-filled,.btn-place-order,.cat-add-btn{background:linear-gradient(135deg, var(--ui-primary), var(--ui-primary-2));color:#fff;position:relative;overflow:hidden}.btn-outline,.btn-back,.cat-tier-details-btn{border:1px solid var(--ui-line);color:var(--ui-primary);box-shadow:var(--ui-shadow-sm);background:#ffffffdb}.btn-outline:hover,.btn-back:hover,.cat-tier-details-btn:hover{color:var(--ui-primary);background:#2563eb14;border-color:#2563eb47;transform:translateY(-2px)}.hero-overlay{pointer-events:none;background:linear-gradient(90deg,#0f172ad1,#0f172a7a,#0f172a2e),radial-gradient(circle at 24% 36%,#2563eb4d,#0000 28%);width:100%;height:100%;position:absolute;top:0;left:0}.text-green,.city-title .highlight,.about-text .highlight{color:#5eead4}.badge,.badge-alt,.badge-green,.badge-faq,.services-tag,.location-badge{color:var(--ui-primary);box-shadow:var(--ui-shadow-sm);background:#ffffffdb;border:1px solid #2563eb2e}.service-card,.testimonial-card,.faq-item,.booking-card,.booking-form-section,.cart-preview,.feature-card{border:1px solid var(--ui-line);box-shadow:var(--ui-shadow-sm)}.service-card,.testimonial-card,.faq-item{background:#ffffffeb}.service-card:hover,.testimonial-card:hover,.booking-card:hover,.faq-item:hover{box-shadow:var(--ui-shadow-md);border-color:#2563eb3d;transform:translateY(-5px)}.section-title,.booking-header h2,.reviews-header h2,.faq-header h2,.about-text h1{color:var(--ui-ink)}.about-section{background:radial-gradient(circle at 20% 0,#2563eb38,#0000 30%),linear-gradient(135deg,#0f172a 0%,#111827 52%,#0b1120 100%)}.feature-card{-webkit-backdrop-filter:blur(14px);background:#ffffff14}.info-bar{background:#0f172a9e;border-color:#ffffff24;box-shadow:0 18px 42px #00000038}.city-btn,.pill{background:#0f172aad;border-color:#ffffff2e}.city-btn:hover,.pill.active,.pill:hover:not(.active){background:linear-gradient(135deg, var(--ui-primary), var(--ui-accent));border-color:#0000;box-shadow:0 12px 26px #2563eb3d}.booking-card:before{background:linear-gradient(#0f172a14,#0f172ae0),linear-gradient(135deg,#2563eb29,#10b9811f)}.booking-card .card-btn{color:var(--ui-primary);box-shadow:none;background:#ffffffeb;border-radius:12px}.booking-card .card-btn:hover{background:linear-gradient(135deg, var(--ui-primary), var(--ui-primary-2));color:#fff}input:focus,select:focus,textarea:focus{border-color:var(--ui-primary)!important;box-shadow:var(--ui-ring)!important}@media (width<=900px){.main-header,.header-container{height:auto;min-height:74px}.main-header{padding:10px 0}.nav-menu{gap:6px}.nav-menu>a:not(.card-btn),.picker-trigger,.nav-location-pill{min-height:36px;padding:0 10px}.nav-menu .card-btn{min-width:auto;min-height:38px;padding:0 13px}}@media (width<=1024px){.nav-menu a:not(.btn-book-now){display:inline-flex}}@media (width<=760px){body{padding-top:82px}.main-header{min-height:72px}.header-container{flex-wrap:nowrap;gap:12px;width:94%;min-height:52px}.logo{gap:9px}.logo-img{border-radius:12px;width:38px;height:38px}.brand-name{font-size:1.25rem}.nav-menu{border:1px solid var(--ui-line);box-shadow:var(--ui-shadow-md);-webkit-backdrop-filter:blur(18px);opacity:0;pointer-events:none;background:#fffffff5;border-radius:18px;gap:8px;padding:12px;transition:opacity .2s,transform .2s;display:grid;position:absolute;top:calc(100% + 10px);left:0;right:0;transform:translateY(-8px)}.main-header.nav-open .nav-menu{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-menu>a:not(.card-btn),.picker-trigger,.nav-location-pill,.nav-menu .card-btn{justify-content:flex-start;width:100%;min-height:38px;padding:0 14px;font-size:.82rem}.nav-menu .card-btn{justify-content:center}.nav-toggle{margin-left:auto;display:inline-flex}.service-page .nav-toggle{display:none}.service-page .nav-menu{width:auto;box-shadow:none;opacity:1;pointer-events:auto;background:0 0;border:0;border-radius:0;margin-left:auto;padding:0;transition:none;display:flex;position:static;transform:none}.service-page .nav-menu .card-btn{white-space:nowrap;width:auto;min-height:40px;padding:0 16px}.city-picker{width:100%}.city-dropdown{width:auto;position:fixed;top:76px;left:3%;right:3%}}@media (width<=460px){body{padding-top:78px}.main-header{min-height:68px}.header-container{min-height:48px}.brand-name{font-size:1.12rem}.nav-menu>a:not(.card-btn),.picker-trigger,.nav-location-pill,.nav-menu .card-btn{min-height:36px;padding:0 10px;font-size:.78rem}.city-dropdown{top:72px}}.site-footer{color:#cbd5e1;background:radial-gradient(circle at 12% 0,#2563eb38,#0000 32%),radial-gradient(circle at 88% 12%,#10b98129,#0000 28%),linear-gradient(135deg,#0b1220 0%,#101827 48%,#0f172a 100%);margin-bottom:0;padding:76px 20px 32px;position:relative;overflow:hidden}.site-footer:before{content:"";pointer-events:none;background:linear-gradient(90deg,#ffffff0a,#0000 35%,#ffffff08),repeating-linear-gradient(90deg,#ffffff06 0 1px,#0000 1px 120px);position:absolute;inset:0}.site-footer-inner{z-index:1;width:min(90%,1280px);margin:0 auto;position:relative}.site-footer-grid{grid-template-columns:minmax(280px,1.4fr) .7fr 1fr;align-items:start;gap:64px;display:grid}.footer-brand{color:#fff;align-items:center;gap:12px;margin-bottom:22px;text-decoration:none;display:inline-flex}.footer-brand:before{content:"";background:url(/dirtfree-logo.svg) 50%/contain no-repeat;flex-shrink:0;width:172px;height:60px;display:block}.footer-logo-mark{background:linear-gradient(135deg,#2563eb,#06b6d4 58%,#10b981);border-radius:14px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;box-shadow:0 16px 34px #2563eb4d}.footer-logo-mark svg{width:28px;height:28px}.footer-brand-name{color:#fff;font-size:1.55rem;font-weight:800}.footer-copy{color:#a9c3df;max-width:460px;font-size:.96rem;line-height:1.8}.footer-socials{gap:12px;margin-top:26px;display:flex}.footer-social{color:#dbeafe;background:#ffffff14;border:1px solid #ffffff17;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:.76rem;font-weight:800;text-decoration:none;transition:transform .22s,background .22s,color .22s;display:inline-flex}.footer-social:hover{color:#fff;background:linear-gradient(135deg,#2563eb,#10b981);transform:translateY(-3px)}.footer-title{color:#fff;text-transform:uppercase;letter-spacing:.04em;margin-bottom:22px;font-size:.92rem;font-weight:800}.footer-links,.footer-contact{gap:14px;margin:0;padding:0;list-style:none;display:grid}.footer-links a,.footer-contact a{color:#a9c3df;text-decoration:none;transition:color .2s,transform .2s}.footer-links a:hover,.footer-contact a:hover{color:#fff;transform:translate(3px)}.footer-contact li{color:#a9c3df;grid-template-columns:34px 1fr;align-items:center;gap:10px;display:grid}.footer-contact-icon{color:#67e8f9;background:#2563eb1f;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:.78rem;font-weight:800;display:inline-flex}.footer-bottom{z-index:1;color:#9fb6d0;border-top:1px solid #ffffff1a;justify-content:space-between;gap:24px;margin-top:64px;padding-top:28px;font-size:.9rem;display:flex;position:relative}.footer-bottom strong{color:#dbeafe}@media (width<=900px){.site-footer{padding:56px 20px 28px}.site-footer-grid{grid-template-columns:1fr;gap:34px}.footer-bottom{flex-direction:column;margin-top:42px}}:root{--ui-primary:#1d4ed8;--ui-primary-2:#0891b2;--ui-accent:#059669;--ui-ink:#0b1220;--ui-text:#26364b}.nav-menu .card-btn,.btn-filled,.btn-place-order,.cat-add-btn,.cat-sidebar-item.active,.cart-count-badge{background:linear-gradient(135deg,#1d4ed8 0%,#0891b2 55%,#059669 100%)}.badge,.badge-alt,.badge-green,.badge-faq,.services-tag,.location-badge{color:#1d4ed8;background:linear-gradient(135deg,#ffffffeb,#ecfdf5e0)}.section-title,.booking-header h2,.reviews-header h2,.faq-header h2{color:#0b1220}.logo-img,.brand-name,.footer-logo-mark,.footer-brand-name{display:none!important}.logo:before{width:clamp(132px,17vw,156px);height:clamp(45px,5.8vw,54px)}.footer-brand:before{width:min(172px,100%);height:60px}
