.cpq-quiz-placeholder{padding:40px;background:#f9f9f9;border:2px dashed #ccc;text-align:center;color:#888;font-size:1.2em;border-radius:8px;margin:30px 0}.cpq-progress-container{margin-bottom:30px;padding:20px 0}.cpq-progress-bar{width:100%;height:8px;background:#e9ecef;border-radius:10px;overflow:hidden;position:relative;box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}.cpq-progress-fill{height:100%;background:linear-gradient(90deg,#0073aa 0%,#005177 100%);border-radius:10px;transition:width .5s ease-in-out;position:relative;overflow:hidden}.cpq-progress-fill:after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;background-image:linear-gradient(-45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.2) 75%,transparent 75%,transparent);background-size:20px 20px;animation:progress-shimmer 2s linear infinite}@keyframes progress-shimmer{0%{transform:translateX(-20px)}100%{transform:translateX(20px)}}.cpq-progress-text{text-align:center;margin-top:10px;font-size:.9em;color:#6c757d;font-weight:500}.cpq-step{margin-bottom:20px}.cpq-step.fade-out{opacity:0}.cpq-step.fade-in{opacity:1}.cpq-step h3{font-size:1.5em;margin-bottom:25px;color:#2c3e50;font-weight:600;text-align:center;line-height:1.3}.cpq-step label{display:block;margin-bottom:12px;font-size:1em;cursor:pointer;padding:16px 20px;border:2px solid #e8f2f7;border-radius:12px;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.04)}.cpq-step label:before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,115,170,.1),transparent);transition:left .5s ease}.cpq-step label:hover{background:#f8fbfd;border-color:#0073aa;transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,115,170,.15)}.cpq-step label:hover:before{left:100%}.cpq-step label input[type=radio],.cpq-step label input[type=checkbox]{position:absolute;opacity:0;cursor:pointer}.cpq-step label input[type=radio]+span,.cpq-step label input[type=checkbox]+span{position:relative;padding-left:35px;display:block;font-weight:500;color:#4a5568;line-height:1.4}.cpq-step label input[type=radio]+span:before,.cpq-step label input[type=checkbox]+span:before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:20px;height:20px;border:2px solid #cbd5e0;border-radius:50%;background:#fff;transition:all .3s ease}.cpq-step label input[type=checkbox]+span:before{border-radius:4px}.cpq-step label input[type=radio]+span:after,.cpq-step label input[type=checkbox]+span:after{content:'';position:absolute;left:6px;top:50%;transform:translateY(-50%) scale(0);width:8px;height:8px;border-radius:50%;background:#fff;transition:all .3s ease}.cpq-step label input[type=checkbox]+span:after{left:5px;width:10px;height:10px;background:#0073aa;border-radius:2px;transform:translateY(-50%) scale(0) rotate(45deg)}.cpq-step label input[type=radio]:checked+span,.cpq-step label input[type=checkbox]:checked+span{font-weight:600;color:#0073aa}.cpq-step label input[type=radio]:checked+span:before,.cpq-step label input[type=checkbox]:checked+span:before{border-color:#0073aa;background:#0073aa;box-shadow:0 0 0 3px rgba(0,115,170,.1)}.cpq-step label input[type=radio]:checked+span:after,.cpq-step label input[type=checkbox]:checked+span:after{transform:translateY(-50%) scale(1)}.cpq-step select{width:100%;padding:16px 20px;border:2px solid #e8f2f7;border-radius:12px;font-size:1em;background:#fff;color:#4a5568;cursor:pointer;transition:all .3s ease;appearance:none;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 12px center;background-repeat:no-repeat;background-size:16px;padding-right:48px}.cpq-step select:hover{border-color:#0073aa;box-shadow:0 4px 16px rgba(0,115,170,.15)}.cpq-step select:focus{outline:none;border-color:#0073aa;box-shadow:0 0 0 3px rgba(0,115,170,.1)}.cpq-step select option{padding:12px;background:#fff;color:#4a5568}.cpq-step input[type=range]{width:100%;height:6px;border-radius:3px;background:linear-gradient(to right,#e8f2f7 0%,#e8f2f7 100%);outline:none;margin:40px 0 20px;appearance:none;cursor:pointer;position:relative;box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}.cpq-step input[type=range]::-webkit-slider-thumb{appearance:none;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#0073aa 0%,#005177 100%);cursor:pointer;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,115,170,.4),0 0 0 2px rgba(0,115,170,.1);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.cpq-step input[type=range]::-webkit-slider-thumb:before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;background:#fff;border-radius:50%;opacity:.9}.cpq-step input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 4px 16px rgba(0,115,170,.5),0 0 0 4px rgba(0,115,170,.2)}.cpq-step input[type=range]::-webkit-slider-thumb:active{transform:scale(1.1);box-shadow:0 2px 8px rgba(0,115,170,.4),0 0 0 2px rgba(0,115,170,.1)}.cpq-step input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#0073aa 0%,#005177 100%);cursor:pointer;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,115,170,.4),0 0 0 2px rgba(0,115,170,.1);transition:all .3s cubic-bezier(.4,0,.2,1)}.cpq-step input[type=range]::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:0 4px 16px rgba(0,115,170,.5),0 0 0 4px rgba(0,115,170,.2)}.cpq-step input[type=range]::-moz-range-thumb:active{transform:scale(1.1);box-shadow:0 2px 8px rgba(0,115,170,.4),0 0 0 2px rgba(0,115,170,.1)}.cpq-step input[type=range]::-webkit-slider-track{height:6px;border-radius:3px;background:linear-gradient(to right,#e8f2f7 0%,#e8f2f7 100%);box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}.cpq-step input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:linear-gradient(to right,#e8f2f7 0%,#e8f2f7 100%);box-shadow:inset 0 1px 3px rgba(0,0,0,.1);border:none}.cpq-scale-container{position:relative;margin:40px 0 20px}.cpq-scale-instruction{text-align:center;margin-bottom:15px;font-size:.9em;color:#666;font-style:italic;padding-top:35px}.cpq-scale-labels{position:absolute;top:-13px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.cpq-scale-label{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#fff;color:#666;font-size:.8em;font-weight:600;cursor:pointer;transition:all .3s ease;border:2px solid #e9ecef;position:relative;pointer-events:auto;box-shadow:0 2px 4px rgba(0,0,0,.1);z-index:2}.cpq-scale-label:hover{background:#0073aa;color:#fff;border-color:#0073aa;transform:scale(1.1);box-shadow:0 4px 8px rgba(0,115,170,.3)}.cpq-scale-label.active{background:#0073aa;color:#fff;border-color:#0073aa;transform:scale(1.15);box-shadow:0 4px 12px rgba(0,115,170,.4)}.cpq-scale-value-display{text-align:center;margin-bottom:15px;font-size:1.1em;font-weight:500;color:#2c3e50}.cpq-scale-value{font-weight:700;color:#0073aa;font-size:1.2em}.cpq-scale-value:before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.cpq-scale-value:hover:before{left:100%}.cpq-scale-value:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,115,170,.4)}.cpq-step output{display:inline-block;padding:12px 20px;background:linear-gradient(135deg,#0073aa 0%,#005177 100%);color:#fff;border-radius:25px;font-weight:700;font-size:1.1em;margin-left:20px;box-shadow:0 4px 12px rgba(0,115,170,.3);min-width:60px;text-align:center;position:relative;overflow:hidden}.cpq-step output:before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.cpq-step output:hover:before{left:100%}.cpq-nav{margin-top:30px;display:flex;gap:15px;justify-content:center;align-items:center}.cpq-nav button{padding:14px 28px;font-size:1em;border-radius:12px;border:none;background:linear-gradient(135deg,#0073aa 0%,#005177 100%);color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px rgba(0,115,170,.3);position:relative;overflow:hidden}.cpq-nav button:before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.cpq-nav button:hover{background:linear-gradient(135deg,#005177 0%,#003d5a 100%);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,115,170,.4)}.cpq-nav button:hover:before{left:100%}.cpq-nav button:active{transform:translateY(0);box-shadow:0 4px 12px rgba(0,115,170,.3)}.cpq-nav .cpq-prev{background:linear-gradient(135deg,#6c757d 0%,#495057 100%);box-shadow:0 4px 12px rgba(108,117,125,.3)}.cpq-nav .cpq-prev:hover{background:linear-gradient(135deg,#495057 0%,#343a40 100%);box-shadow:0 8px 20px rgba(108,117,125,.4)}.cpq-results{padding:30px 0;text-align:center}.cpq-fallback-notice{background:#fff3cd;border:1px solid #ffeaa7;color:#856404;padding:12px 16px;border-radius:4px;margin:20px 0;font-size:.95em;max-width:600px;margin-left:auto;margin-right:auto}.cpq-products{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin:40px 0;padding:0 20px}.cpq-product{background:#fff;border:2px solid #e8f2f7;border-radius:16px;width:280px;min-height:320px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:24px 20px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.cpq-product:hover{box-shadow:0 8px 30px rgba(0,0,0,.15);transform:translateY(-4px);border-color:#0073aa}.cpq-product img{width:100%;height:180px;object-fit:contain;margin-bottom:16px;background:#f8f9fa;border-radius:12px;padding:10px;transition:transform .3s ease}.cpq-product:hover img{transform:scale(1.05)}.cpq-product-title{font-size:1.3em;font-weight:700;margin-bottom:12px;color:#2c3e50;line-height:1.3}.cpq-product-key-features{font-size:.8em;color:#666;margin-top:8px;padding:8px 12px;background:#f8f9fa;border-radius:8px;line-height:1.4;font-weight:500}.price{font-size:1.1em;font-weight:700;margin-top:8px;margin-bottom:8px;padding:8px 12px;border-radius:8px;line-height:1.4;text-align:center}.price.normal_sale{color:#28a745;background:#d4edda;border-left:3px solid #28a745}.price.simple_sale{color:#0073aa;background:#e8f4fd;border-left:3px solid #0073aa}.price.exclusive_sale{color:#dc3545;background:#f8d7da;border-left:3px solid #dc3545}.cpq-product-actions{margin-top:12px;text-align:center}.cpq-more-info-btn{display:inline-block;padding:8px 16px;background:#0073aa;color:#fff;text-decoration:none;border-radius:6px;font-size:.9em;font-weight:500;transition:all .3s ease;border:none;cursor:pointer}.cpq-more-info-btn:hover{background:#005177;color:#fff;text-decoration:none;transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,115,170,.3)}.cpq-more-info-btn:active{transform:translateY(0);box-shadow:0 1px 4px rgba(0,115,170,.3)}.cpq-results-actions{margin:30px 0;text-align:center;display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.cpq-print-btn,.cpq-share-btn{padding:12px 24px;font-size:1em;border-radius:8px;border:none;cursor:pointer;transition:all .3s ease;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px rgba(0,0,0,.1);position:relative;overflow:hidden}.cpq-print-btn{margin-top:20px;padding:14px 28px;font-size:1em;border-radius:12px;border:none;background:linear-gradient(135deg,#0073aa 0%,#005177 100%);color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px rgba(0,115,170,.3);position:relative;overflow:hidden}.cpq-print-btn:hover{background:linear-gradient(135deg,#000 0%,#000 100%);transform:translateY(-2px);box-shadow:0 4px 12px rgba(40,167,69,.3)}.cpq-share-btn{margin-top:20px;padding:14px 28px;font-size:1em;border-radius:12px;border:none;background:linear-gradient(135deg,#0073aa 0%,#005177 100%);color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px rgba(0,115,170,.3);position:relative;overflow:hidden}.cpq-share-btn:hover{background:linear-gradient(135deg,#000 0%,#000 100%);transform:translateY(-2px);box-shadow:0 4px 12px rgba(111,66,193,.3)}.cpq-print-btn:active,.cpq-share-btn:active{transform:translateY(0);box-shadow:0 2px 8px rgba(0,0,0,.1)}@media print{.cpq-results-actions,.cpq-debug-btn,.cpq-restart{display:none !important}.cpq-product{break-inside:avoid;page-break-inside:avoid}.cpq-products{display:block !important}.cpq-product{width:100% !important;max-width:none !important;margin-bottom:20px !important;border:1px solid #ddd !important}}.cpq-logic-other-spas-section{margin-top:40px;padding-top:30px;border-top:2px solid #ffc107}.cpq-logic-other-spas-section h3{color:#856404;font-size:1.3em;margin-bottom:12px;text-align:center}.cpq-logic-other-spas-subtitle{text-align:center;color:#856404;margin-bottom:25px;font-size:.9em;font-style:italic}.cpq-logic-other-spas .cpq-product{border-color:#ffc107;background:#fff8e1;opacity:.95;transition:all .3s ease}.cpq-logic-other-spas .cpq-product:hover{border-color:#ff8f00;background:#fff;opacity:1;transform:translateY(-2px);box-shadow:0 6px 25px rgba(255,193,7,.15)}.cpq-logic-other-spas .cpq-product-title a{color:#856404}.cpq-logic-other-spas .cpq-product-title a:hover{color:#5d4200}@media (max-width:1200px){.cpq-products{gap:25px}.cpq-product{width:260px;min-height:300px;padding:20px 18px}.cpq-product img{height:160px}.cpq-product-title{font-size:1.2em}}@media (max-width:768px){.cpq-products{gap:20px;padding:0 15px}.cpq-product{width:240px;min-height:280px;padding:18px 16px}.cpq-product img{height:140px;margin-bottom:14px}.cpq-product-title{font-size:1.1em;margin-bottom:10px}}@media (max-width:600px){.cpq-products{gap:15px;padding:0 10px}.cpq-product{width:calc(50% - 15px);min-height:260px;padding:16px 14px}.cpq-product img{height:120px;margin-bottom:12px}.cpq-product-title{font-size:1em;margin-bottom:8px}}@media (max-width:480px){.cpq-products{gap:12px;padding:0 8px}.cpq-product{width:calc(50% - 12px);min-height:240px;padding:14px 12px}.cpq-product img{height:100px;margin-bottom:10px}.cpq-product-title{font-size:.95em;margin-bottom:6px}}@media (max-width:360px){.cpq-products{flex-direction:column;align-items:center;gap:20px}.cpq-product{width:100%;max-width:280px;min-height:220px}.cpq-product img{height:120px}.cpq-product-title{font-size:1.1em}}.cpq-restart{margin-top:20px;padding:14px 28px;font-size:1em;border-radius:12px;border:none;background:linear-gradient(135deg,#0073aa 0%,#005177 100%);color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px rgba(0,115,170,.3);position:relative;overflow:hidden}.cpq-restart:before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.cpq-restart:hover{background:linear-gradient(135deg,#005177 0%,#003d5a 100%);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,115,170,.4)}.cpq-restart:hover:before{left:100%}.cpq-restart:active{transform:translateY(0);box-shadow:0 4px 12px rgba(0,115,170,.3)}.cpq-debug-results li{margin-bottom:5px}#cpq-gravity-form-container{max-width:800px;margin:0 auto;padding:30px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1)}#cpq-gravity-form-container h3{text-align:center;color:#0073aa;margin-bottom:30px;font-size:1.5em}#cpq-gravity-form{margin-top:20px}#cpq-gravity-form .gform_wrapper{margin:0}#cpq-gravity-form .gform_wrapper .gfield{margin-bottom:20px}#cpq-gravity-form .gform_wrapper .gfield_label{font-weight:600;color:#333}#cpq-gravity-form .gform_wrapper input[type=text],#cpq-gravity-form .gform_wrapper input[type=email],#cpq-gravity-form .gform_wrapper textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px}#cpq-gravity-form .gform_wrapper .gform_button{background:#0073aa;color:#fff;padding:12px 24px;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background .2s}#cpq-gravity-form .gform_wrapper .gform_button:hover{background:#005177}#cpq-results-container{max-width:1200px;margin:0 auto;padding:30px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1)}#cpq-results-container .cpq-results{padding:0}#cpq-results-container .cpq-quiz-placeholder{margin:0}.cpq-step label.has-tooltip{position:relative;display:flex;align-items:center;justify-content:space-between;cursor:default}.cpq-step label.has-tooltip .cpq-tooltip-trigger{width:20px;height:20px;background:#0073aa;color:#fff;border-radius:50%;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:help;margin-left:10px;transition:all .3s ease;flex-shrink:0}.cpq-step label.has-tooltip .cpq-tooltip-trigger:hover{background:#005177;transform:scale(1.1)}.cpq-step label.has-tooltip .cpq-tooltip-trigger:active{transform:scale(.95)}.cpq-tooltip{position:fixed;background:#fff;color:#000;padding:16px 20px;border-radius:12px;font-size:14px;line-height:1.4;max-width:400px;width:auto;z-index:1000;box-shadow:0 8px 32px rgba(0,0,0,.4);opacity:0;visibility:hidden;transition:all .2s ease;pointer-events:none;border:1px solid #ddd;word-wrap:break-word;overflow-wrap:break-word;transform:translateY(5px)}@media (max-width:768px){.cpq-tooltip{width:95%;max-width:95%;margin:0 10px;padding:12px 16px;font-size:13px}}@media (max-width:480px){.cpq-tooltip{width:98%;max-width:98%;margin:0 5px;padding:10px 14px;font-size:12px}}.cpq-tooltip:before{content:'';position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #ddd}.cpq-tooltip.arrow-bottom:before{bottom:-6px;border-top:6px solid #ddd;border-bottom:none}.cpq-tooltip.arrow-top:before{top:-6px;border-bottom:6px solid #ddd;border-top:none}.cpq-tooltip.show{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);cursor:default}.cpq-tooltip p{margin:0 0 8px}.cpq-tooltip p:last-child{margin-bottom:0}.cpq-tooltip a{color:#4fc3f7;text-decoration:underline}.cpq-tooltip strong{color:#000}