:root{--is-primary-color:#020036;--is-primary-dark:#010013;--is-secondary-color:#00E8AC;--is-warning-color:#ecbe40;--is-error-color:#E50043;--is-background:#ffffff;--is-light-gray:#f9fafb;--is-border-color:#e5e7eb;--is-text-color:#020036;--is-text-muted:#6b7280;--is-shadow:0 1px 3px rgba(2, 0, 54, 0.1);--is-shadow-hover:0 4px 6px rgba(2, 0, 54, 0.12);--is-shadow-lg:0 10px 15px rgba(2, 0, 54, 0.15);--is-border-radius:8px;--is-transition:all 0.2s ease-in-out}.installation-service-option{margin:20px 0;padding:0;clear:both;font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}.installation-service-wrapper{background:var(--is-background);border-radius:var(--is-border-radius)}.installation-checkbox-label{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;cursor:pointer;margin:0;padding:16px 20px;background:var(--is-light-gray);border:1px solid var(--is-border-color);border-radius:var(--is-border-radius);transition:var(--is-transition);color:var(--is-text-color)}.installation-checkbox-label:hover{background:#f0f3ff;border-color:var(--is-primary-color)}.installation-checkbox-label input[type="checkbox"]{width:20px;height:20px;margin:0;accent-color:var(--is-primary-color);cursor:pointer;border-radius:4px}.installation-text{color:inherit;font-weight:600;transition:var(--is-transition)}.installation-wizard{position:relative;min-height:500px;margin-top:24px;padding-top:24px}.wizard-steps-container{position:relative;min-height:400px}.wizard-progress{display:flex;justify-content:center;align-items:center;margin-bottom:32px;gap:0;padding:0 20px}.progress-step{width:48px;height:48px;min-width:48px;min-height:48px;border-radius:50%;background:var(--is-background);border:2px solid var(--is-border-color);color:var(--is-text-muted);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;transition:var(--is-transition);position:relative;z-index:2;flex-shrink:0}.progress-step.active{background:var(--is-primary-color);border-color:var(--is-primary-color);color:#fff;transform:scale(1.1);box-shadow:0 0 0 4px rgb(2 0 54 / .1)}.progress-step.completed{background:var(--is-secondary-color);border-color:var(--is-secondary-color);color:var(--is-primary-color)}.progress-step.completed::after{content:'✓';position:absolute;font-size:24px;font-weight:900;color:var(--is-primary-color)}.progress-step.completed span{display:none}.progress-line{width:60px;height:2px;background:var(--is-border-color);position:relative;z-index:1;margin:0 -5px}.progress-line.completed{background:var(--is-secondary-color)}.wizard-step{display:none;opacity:0;min-height:320px;background:var(--is-background);border:none!important;outline:none!important}.wizard-step.active{display:block!important;position:relative;opacity:1;pointer-events:auto;z-index:2;animation:fadeInStep 0.3s ease}.wizard-step.transitioning{display:block!important;position:absolute;top:0;left:0;width:100%;opacity:1;pointer-events:none;z-index:1;animation:fadeOutStep 0.3s ease forwards}@keyframes fadeInUp{from{opacity:0;transform:translateY(0)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInStep{from{opacity:0}to{opacity:1}}@keyframes fadeOutStep{from{opacity:1}to{opacity:0}}.wizard-step h4{margin:0 0 24px 0;color:var(--is-text-color);font-size:24px;font-weight:700;padding-bottom:16px;border-bottom:2px solid var(--is-primary-color)}.question-content{margin-bottom:32px}.question-content>p{margin:0 0 24px 0;color:var(--is-text-muted);font-size:16px;line-height:1.6}.radio-options{display:flex;flex-direction:column;gap:12px}.radio-options label{display:flex;align-items:flex-start;gap:16px;padding:18px 20px;background:var(--is-background);border:1px solid var(--is-border-color);border-radius:var(--is-border-radius);cursor:pointer;transition:var(--is-transition);margin:0;position:relative}.radio-options label:hover{background:#fafbff;border-color:var(--is-primary-color);transform:translateY(-1px);box-shadow:var(--is-shadow)}.radio-options input[type="radio"]{width:20px;height:20px;min-width:20px;margin:0;accent-color:var(--is-primary-color);flex-shrink:0;margin-top:2px}.radio-content{flex:1;display:flex;flex-direction:column;gap:4px}.radio-content span{font-weight:600;color:var(--is-text-color);font-size:15px;line-height:1.4}.radio-content small{color:var(--is-text-muted);font-size:13px;line-height:1.4;font-style:normal;font-weight:400}.radio-options label:has(input:checked){background:#fafbff;border-color:var(--is-primary-color);box-shadow:0 0 0 3px rgb(2 0 54 / .05)}.radio-options label:has(input:checked)::after{content:'✓';position:absolute;top:18px;right:20px;color:var(--is-secondary-color);font-weight:900;font-size:18px}.custom-quote-notice,.carry-help-notice,.mount-compatibility-notice{margin:20px 0;padding:20px;background:linear-gradient(135deg,#fffbf5,#fff8ed);border:1px solid var(--is-warning-color);border-left:4px solid var(--is-warning-color);border-radius:var(--is-border-radius);animation:slideDown 0.3s ease;position:relative}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notice-content h5{margin:0 0 12px 0;color:var(--is-text-color);font-size:18px;font-weight:700}.notice-content h5::before{content:'!';display:inline-block;width:24px;height:24px;background:var(--is-warning-color);color:#fff;text-align:center;line-height:24px;border-radius:50%;margin-right:10px;font-size:14px}.notice-content p{margin:0 0 20px 0;color:var(--is-text-color);line-height:1.6;font-size:15px}.notice-actions{display:flex;gap:12px;flex-wrap:wrap}.contact-button{display:inline-flex;align-items:center;background:var(--is-primary-color);color:#fff;padding:12px 20px;border-radius:6px;text-decoration:none;font-weight:600;font-size:14px;transition:var(--is-transition);gap:8px}.contact-button:hover{background:var(--is-primary-dark);color:#fff;transform:translateY(-1px);box-shadow:var(--is-shadow-hover);text-decoration:none}.contact-button.secondary{background:#fff0;border:2px solid var(--is-primary-color);color:var(--is-primary-color)}.contact-button.secondary:hover{background:var(--is-primary-color);color:#fff}.wizard-navigation{display:flex;justify-content:flex-end;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--is-border-color);gap:16px}.wizard-navigation .wizard-back-btn{margin-right:auto}.wizard-back-btn,.wizard-next-btn,.wizard-complete-btn{background:var(--is-primary-color);color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;transition:var(--is-transition);min-width:120px}.wizard-back-btn{background:#fff0;border:1px solid var(--is-border-color);color:var(--is-text-muted)}.wizard-back-btn:hover{background:var(--is-light-gray);border-color:var(--is-primary-color);color:var(--is-primary-color)}.wizard-next-btn:hover,.wizard-complete-btn:hover{background:var(--is-primary-dark);transform:translateY(-1px);box-shadow:var(--is-shadow)}.wizard-next-btn:disabled,.wizard-complete-btn:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.wizard-next-btn:disabled:hover,.wizard-complete-btn:disabled:hover{background:#d1d5db!important;color:#9ca3af!important;cursor:not-allowed}.wizard-complete-btn{background:var(--is-secondary-color);color:var(--is-primary-color);font-weight:700;min-width:200px}.wizard-complete-btn:hover{background:#00BE8E}.selected-options-summary{background:var(--is-light-gray);padding:20px;border-radius:var(--is-border-radius);margin-bottom:24px;border:1px solid var(--is-border-color)}.selected-options-summary h5{margin:0 0 16px 0;color:var(--is-text-color);font-weight:700;font-size:16px}.selected-options-summary ul{list-style:none;padding:0;margin:0}.selected-options-summary li{padding:10px 0;color:var(--is-text-color);border-bottom:1px solid var(--is-border-color);display:flex;align-items:center;gap:10px;font-size:15px}.selected-options-summary li:last-child{border-bottom:none}.summary-check{color:var(--is-secondary-color);font-weight:900;font-size:16px;width:20px;text-align:center}.postcode-calculator{background:var(--is-light-gray);padding:24px;border-radius:var(--is-border-radius);margin:24px 0;border:1px solid var(--is-border-color)}.postcode-calculator label{display:block;margin-bottom:12px;font-weight:600;color:var(--is-text-color);font-size:15px}.postcode-input-group{display:flex;gap:12px;align-items:stretch}.postcode-input-group input[type="text"]{flex:1;padding:12px 16px;border:1px solid var(--is-border-color);border-radius:6px;text-transform:uppercase;font-size:16px;font-weight:600;text-align:center;letter-spacing:1px;transition:var(--is-transition);background:#fff}.postcode-input-group input[type="text"]:focus{border-color:var(--is-primary-color);outline:none;box-shadow:0 0 0 3px rgb(2 0 54 / .05)}.postcode-input-group .calculate-btn{background:var(--is-primary-color);color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;transition:var(--is-transition);white-space:nowrap}.postcode-input-group .calculate-btn:hover{background:var(--is-primary-dark);transform:translateY(-1px)}.postcode-input-group .calculate-btn:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed;transform:none}#calculation_result{margin-top:16px;font-size:14px}.calculation-error{color:var(--is-error-color);background:#fff5f5;border:1px solid #ffcdd2;padding:12px 16px;border-radius:6px;margin:0;font-weight:500}.installation-final-total{background:linear-gradient(135deg,var(--is-primary-color),var(--is-primary-dark));color:#fff;padding:28px;border-radius:12px;margin:24px 0;text-align:center;box-shadow:var(--is-shadow-lg);animation:slideUpFade 0.4s ease}@keyframes slideUpFade{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.installation-final-total h3{margin:0 0 16px 0;font-size:18px;font-weight:600;opacity:.95}.final-price-display{font-size:32px;font-weight:900;margin:16px 0}.price-breakdown{margin-top:20px;padding-top:20px;border-top:1px solid rgb(255 255 255 / .2)}.breakdown-details{text-align:left;max-width:400px;margin:0 auto;background:rgb(255 255 255 / .1);padding:16px;border-radius:8px}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;border-bottom:1px solid rgb(255 255 255 / .1)}.breakdown-item:last-child{border-bottom:none}.breakdown-item span:first-child{flex:1}.breakdown-item span:last-child{font-weight:600;margin-left:15px}.installation-wizard.completed{opacity:1;pointer-events:none;position:relative}.installation-service-wrapper.loading{opacity:.7;pointer-events:none;position:relative}.installation-service-wrapper.loading::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;border:3px solid var(--is-border-color);border-top-color:var(--is-primary-color);border-radius:50%;animation:spinner 1s linear infinite}@keyframes spinner{to{transform:translate(-50%,-50%) rotate(360deg)}}.step-error-message{margin:16px 0}.step-error-message p{margin:0;padding:12px 16px;background:#fff5f5;border:1px solid #ffcdd2;border-left:3px solid var(--is-error-color);border-radius:6px;color:var(--is-error-color);font-weight:500;font-size:14px}@media (max-width:768px){.installation-service-wrapper{padding:16px;margin:16px 0}.wizard-progress{gap:0;padding:0 10px}.progress-step{width:40px;height:40px;min-width:40px;min-height:40px;font-size:14px}.progress-line{width:40px;margin:0 -3px}.wizard-step{min-height:auto;padding:0}.wizard-step h4{font-size:20px;margin-bottom:16px}.radio-options label{padding:14px 16px}.wizard-navigation{flex-direction:column;gap:12px;padding-top:20px}.wizard-navigation .wizard-back-btn{margin-right:0;order:2}.wizard-next-btn,.wizard-complete-btn{order:1}.wizard-back-btn,.wizard-next-btn,.wizard-complete-btn{width:100%;padding:14px 20px;min-width:auto}.postcode-input-group{flex-direction:column;gap:12px}.postcode-input-group input[type="text"]{width:100%}.postcode-input-group .calculate-btn{width:100%;padding:14px 20px}.final-price-display{font-size:28px}.installation-final-total{padding:24px 16px}.notice-actions{flex-direction:column;gap:10px}.contact-button{text-align:center;justify-content:center}}@media (max-width:480px){.installation-service-wrapper{padding:12px;margin:12px 0}.progress-step{width:36px;height:36px;min-width:36px;min-height:36px;font-size:12px}.progress-line{width:30px}.wizard-step h4{font-size:18px}.final-price-display{font-size:24px}.installation-final-total{padding:20px 12px}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fade-in{animation:fadeIn 0.3s ease}.installation-already-added{margin:20px 0}.installation-already-added strong{font-weight:600;color:var(--is-text-color)}.installation-already-added p{margin:0;color:var(--is-text-color);line-height:1.5}.installation-already-added .btn{display:inline-block;text-decoration:none}.installation-notice{display:flex;gap:15px;padding:20px;background:#f0f3ff;border:1px solid #c5d0ff;border-radius:var(--is-border-radius);align-items:flex-start}.installation-notice .notice-icon{flex-shrink:0;width:32px;height:32px;background:var(--is-primary-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700}.installation-notice .notice-content{flex:1}.installation-notice strong{display:block;margin-bottom:8px;color:var(--is-primary-color);font-size:16px;font-weight:600}.installation-notice p{margin:0 0 15px 0;color:var(--is-text-muted);font-size:14px;line-height:1.5}.installation-notice .view-cart-btn{display:inline-block;padding:10px 20px;background:var(--is-primary-color);color:#fff;text-decoration:none;border-radius:6px;font-size:14px;font-weight:600;transition:var(--is-transition)}.installation-notice .view-cart-btn:hover{background:var(--is-primary-dark);color:#fff;text-decoration:none;transform:translateY(-1px);box-shadow:var(--is-shadow)}.remove-installation-checkout:hover i{color:var(--is-error-color)!important}@media (max-width:768px){.installation-notice{flex-direction:column;gap:12px}.installation-notice .notice-icon{align-self:center}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@media print{.installation-service-option{display:none}}@media (prefers-contrast:high){:root{--is-border-color:#000;--is-text-color:#000;--is-text-muted:#333}.radio-options label,.wizard-back-btn,.wizard-next-btn,.wizard-complete-btn{border-width:2px}}@media (prefers-reduced-motion:reduce){*{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}