:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#fff;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.price-tracker{border:2px solid #e9ecef;border-radius:8px;padding:1.5rem}.price-tracker h3{margin:0 0 1rem;color:#2c3e50;font-size:1.2rem}.services-list{margin-bottom:1rem}.no-services{color:#6c757d;font-style:italic;text-align:center;padding:1rem 0}.service-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #e9ecef}.service-name{font-weight:500}.service-price{color:#28a745;font-weight:700}.price-total{padding:1rem 0;border-top:2px solid #2c3e50;margin-top:1rem;text-align:center;font-size:1.1rem;color:#2c3e50}.price-note{text-align:center;color:#6c757d;margin-top:.5rem}.additional-services{background-color:#f8f9fa;border-radius:4px;padding:.75rem .5rem!important;margin:.5rem 0;border:1px solid #dee2e6!important}.additional-services .service-name{color:#495057;font-weight:600}.additional-services .service-price{color:#007bff;font-weight:700}.progress-indicator{width:100%}.progress-bar{width:100%;height:4px;background-color:#e9ecef;border-radius:2px;margin-bottom:1rem;overflow:hidden}.progress-fill{height:100%;background-color:#28a745;transition:width .3s ease;border-radius:2px}.progress-steps{display:flex;justify-content:space-between;align-items:center}.progress-step{display:flex;flex-direction:column;align-items:center;color:#6c757d;font-size:.8rem}.progress-step.active{color:#007bff;font-weight:700}.progress-step.completed{color:#28a745}.step-number{width:24px;height:24px;border-radius:50%;background-color:#e9ecef;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;margin-bottom:.2rem}.progress-step.active .step-number{background-color:#007bff;color:#fff}.progress-step.completed .step-number{background-color:#28a745;color:#fff}.step-label{white-space:nowrap}@media (max-width: 600px){.step-label{font-size:.7rem}}.layout{min-height:100vh;display:flex;flex-direction:column}.layout-header{background-color:#2c3e50;color:#fff;padding:1rem 2rem;text-align:center}.layout-header h1{margin:0 0 1rem;font-size:1.8rem}.layout-main{flex:1;display:grid;grid-template-columns:1fr 300px;gap:2rem;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.content-area{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000001a}.price-sidebar{background:#f8f9fa;padding:1.5rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;height:fit-content;position:sticky;top:2rem}.layout-footer{background-color:#34495e;color:#fff;text-align:center;padding:1rem;margin-top:auto}@media (max-width: 768px){.layout-main{grid-template-columns:1fr;padding:1rem}.price-sidebar{position:static}}.quote-form h2{color:#2c3e50;margin-bottom:.5rem}.accordion-item{border:2px solid #e9ecef;border-radius:8px;overflow:hidden;width:100%;box-sizing:border-box;flex-shrink:0;min-width:300px}.accordion-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background-color:#f8f9fa;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;user-select:none;min-height:60px;box-sizing:border-box}.accordion-header:hover{background-color:#e9ecef}.accordion-header.active{background-color:#007bff;color:#fff}.accordion-header h3{margin:0;color:inherit}.accordion-icon{font-size:1.5rem;font-weight:700;transition:transform .3s ease}.accordion-content{background-color:#fff;border-top:1px solid #e9ecef;overflow:hidden;transition:all .3s ease;width:100%;box-sizing:border-box}.accordion-content.open{max-height:none;padding:1.5rem;opacity:1}.accordion-content.closed{max-height:0;padding:0 1.5rem;opacity:0}.service-accordions{margin:2rem 0;width:100%;max-width:800px;margin-left:auto;margin-right:auto;display:flex;flex-direction:column;gap:1rem}.accordion-content p{margin-bottom:1rem;color:#6c757d}.carpet-services-table,.upholstery-services-table{overflow-x:auto}.carpet-services-table table,.upholstery-services-table table{width:100%;border-collapse:collapse;margin-top:1rem;table-layout:fixed}.carpet-services-table th:first-child,.carpet-services-table td:first-child,.upholstery-services-table th:first-child,.upholstery-services-table td:first-child{width:60%}.carpet-services-table th:last-child,.carpet-services-table td:last-child,.upholstery-services-table th:last-child,.upholstery-services-table td:last-child{width:40%}.carpet-services-table th,.carpet-services-table td,.upholstery-services-table th,.upholstery-services-table td{padding:1rem;text-align:center;border:1px solid #e9ecef}.carpet-services-table th,.upholstery-services-table th{background-color:#f8f9fa;font-weight:600;color:#2c3e50}.carpet-services-table .area-label,.upholstery-services-table .furniture-label{text-align:left;font-weight:500;color:#2c3e50}.quantity-input{width:60px;padding:.5rem;border:2px solid #e9ecef;border-radius:4px;text-align:center;font-size:1rem;font-weight:500;transition:border-color .3s ease}.quantity-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.quantity-input::-webkit-outer-spin-button,.quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-input[type=number]{appearance:textfield;-moz-appearance:textfield}.upholstery-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;padding:.75rem;border:1px solid #e9ecef;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.checkbox-label:hover{background-color:#f8f9fa}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:#007bff}.form-navigation{display:flex;justify-content:space-between;margin-top:2rem;gap:1rem}.next-button,.back-button,.confirm-button{padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .3s ease}.next-button,.confirm-button{background-color:#28a745;color:#fff}.next-button:hover,.confirm-button:hover{background-color:#218838}.back-button{background-color:#6c757d;color:#fff}.back-button:hover{background-color:#545b62}.additional-info-form{max-width:800px;margin:0 auto;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.form-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.form-header h2{color:#1f2937;font-size:2rem;font-weight:700;margin-bottom:.75rem}.form-header p{color:#6b7280;font-size:1.1rem;margin:0}.additional-info-content{display:flex;flex-direction:column;gap:2rem}.form-section{background:#f9fafb;padding:1.5rem;border-radius:8px;border-left:4px solid #3b82f6}.form-section h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin-bottom:1rem;margin-top:0}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.95rem}.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid #d1d5db;border-radius:6px;font-size:1rem;background:#fff;transition:border-color .3s ease,box-shadow .3s ease}.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit}.form-group select{cursor:pointer}.form-group select option{padding:.5rem}.form-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid #e5e7eb}.btn-primary,.btn-secondary{padding:.75rem 2rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:150px}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-secondary{background:#f3f4f6;color:#374151;border:2px solid #d1d5db}.btn-secondary:hover{background:#e5e7eb;border-color:#9ca3af;transform:translateY(-1px)}@media (max-width: 768px){.additional-info-form{margin:1rem;padding:1.5rem}.form-header h2{font-size:1.75rem}.form-header p{font-size:1rem}.form-section{padding:1rem}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.form-group label[for=preVacuum]:after,.form-group label[for=odorIssues]:after,.form-group label[for=petUrineAreas]:after,.form-group label[for=petUrine]:after,.form-group label[for=stains]:after{content:" *";color:#ef4444;font-weight:600}.form-section:first-of-type{border-left-color:#10b981}.form-section:first-of-type h3{color:#047857}.form-group select:hover,.form-group textarea:hover{border-color:#9ca3af}.information-form h2{color:#2c3e50;margin-bottom:.5rem}.info-form{margin:2rem 0}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#2c3e50}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:2px solid #e9ecef;border-radius:4px;font-size:1rem;transition:border-color .3s ease;background-color:#fff;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#007bff}.form-group select{cursor:pointer;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-group select:hover{border-color:#007bff}.form-group select option{padding:.5rem;background-color:#fff;color:#2c3e50}.form-group textarea{resize:vertical;font-family:inherit}.form-group label[for=email]:after,.form-group label[for=lastName]:after,.form-group label[for=firstName]:after,.form-group label[for=phone]:after,.form-group label[for=payment]:after,.form-group label[for=address]:after,.form-group label[for=presentForAppt]:after{content:" *";color:#ef4444;font-weight:600}.field-description{display:block;margin-top:.25rem;color:#6c757d;font-size:.875rem;line-height:1.4}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.scheduling-form h2{color:#2c3e50;margin-bottom:.5rem}.calendar-container{margin:2rem 0;padding:1.5rem;border:2px solid #e9ecef;border-radius:8px;background:#fff}.calendar-container h3{color:#2c3e50;margin-bottom:1rem;text-align:center}.booking-calendar{width:100%;max-width:400px;margin:0 auto;font-family:inherit}.booking-calendar .react-calendar__tile{padding:.75rem .5rem;background:#fff;border:1px solid #e9ecef;color:#2c3e50}.booking-calendar .react-calendar__tile:enabled:hover{background-color:#e3f2fd;border-color:#007bff}.booking-calendar .react-calendar__tile--active{background:#007bff!important;color:#fff}.booking-calendar .react-calendar__tile:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.selected-date{text-align:center;margin-top:1rem;padding:.5rem;background-color:#e3f2fd;border-radius:4px;color:#007bff;font-weight:500}.time-slots-container{margin:2rem 0;padding:1.5rem;border:2px solid #e9ecef;border-radius:8px;background:#fff}.time-slots-container h3{color:#2c3e50;margin-bottom:1rem}.time-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:2rem}.time-slot{padding:.75rem;border:2px solid #e9ecef;background:#fff;border-radius:4px;cursor:pointer;transition:all .3s ease}.time-slot:hover{border-color:#007bff;background-color:#f8f9fa}.time-slot.selected{border-color:#007bff;background-color:#007bff;color:#fff}.time-instruction{color:#6c757d;font-style:italic;text-align:center;padding:2rem}.no-slots{color:#dc3545;text-align:center;padding:2rem;background-color:#f8d7da;border-radius:4px}.selected-time{text-align:center;margin-top:1rem;padding:.5rem;background-color:#d4edda;border-radius:4px;color:#155724;font-weight:500}.next-button.disabled{background-color:#6c757d;cursor:not-allowed;opacity:.6}.confirmation-form h2{color:#2c3e50;margin-bottom:.5rem}.booking-summary{margin:2rem 0;border:2px solid #e9ecef;border-radius:8px;padding:1.5rem}.summary-section{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e9ecef}.summary-section:last-child{border-bottom:none;margin-bottom:0}.summary-section h3{color:#2c3e50;margin-bottom:.5rem;font-size:1.1rem}.summary-section p{color:#6c757d;margin:0}.services-list{margin-top:.5rem}.service-item{display:flex;justify-content:between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f1f3f4}.service-item:last-child{border-bottom:none}.service-name{flex:1;color:#495057}.service-price{font-weight:500;color:#28a745}.total-price{font-size:1.2rem;font-weight:700;color:#28a745!important}.minimum-charge{display:block;margin-top:.25rem;color:#6c757d;font-style:italic}.what-to-expect{margin:2rem 0;border:2px solid #e9ecef;border-radius:8px;padding:1.5rem;background-color:#f8f9fa}.what-to-expect h3{color:#2c3e50;margin-bottom:1rem;font-size:1.3rem;font-weight:700;text-align:center;border-bottom:2px solid #007bff;padding-bottom:.5rem}.what-to-expect .intro-text{color:#495057;font-weight:500;margin-bottom:1.5rem;padding:1rem;background-color:#e3f2fd;border-radius:6px;border-left:4px solid #007bff}.expect-section{margin-bottom:1.5rem}.expect-section:last-child{margin-bottom:0}.expect-section h4{color:#007bff;font-size:1.1rem;font-weight:700;margin-bottom:.5rem;text-decoration:underline}.expect-section p{color:#495057;line-height:1.5;margin-bottom:.75rem}.job-details{margin:0;padding-left:1.5rem}.job-details li{color:#495057;line-height:1.6;margin-bottom:.5rem}.job-details li:last-child{margin-bottom:0;font-weight:500;color:#28a745}.confirmation-actions{margin-top:2rem}.confirm-button{background-color:#28a745;font-size:1.1rem;padding:1rem 2rem}*{font-family:sans-serif}button{margin:10px}label{display:block;margin-top:10px}#root{max-width:100%;margin:0 auto;padding:0;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
