.cms-react-boilerplate{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.cms-react-boilerplate code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.chimney-configurator{background-color:#f8f9fa;min-height:100vh}.chimney-configurator .configurator-container{background:#fff;display:grid;grid-template-columns:1fr 400px;margin:0 auto;max-width:100%;min-height:100vh}@media(max-width:1024px){.chimney-configurator .configurator-container{grid-template-columns:1fr}.chimney-configurator .configurator-container .drawing-section{order:2}.chimney-configurator .configurator-container .config-section{border-bottom:1px solid #e0e0e0;border-left:none;order:1}}.chimney-configurator .drawing-section{align-items:center;background:#f5f5f5;display:flex;flex-direction:column;justify-content:center;padding:40px}@media(max-width:1024px){.chimney-configurator .drawing-section{padding:20px}}.chimney-configurator .config-section{background:#fff;border-left:1px solid #e0e0e0;max-height:100vh;min-width:25%;overflow-y:auto;padding:40px}@media(max-width:1024px){.chimney-configurator .config-section{max-height:none;padding:20px}}.chimney-configurator .success-message{-webkit-animation:fadeInScale .5s ease-out;animation:fadeInScale .5s ease-out;background:#fff;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.1);margin:100px auto;max-width:600px;padding:60px;text-align:center}@media(max-width:768px){.chimney-configurator .success-message{margin:50px 20px;padding:40px 30px}}.chimney-configurator .success-message h2{color:#27ae60;font-size:2em;font-weight:600;margin-bottom:20px}@media(max-width:768px){.chimney-configurator .success-message h2{font-size:1.6em}}.chimney-configurator .success-message p{color:#555;font-size:1.1em;line-height:1.6;margin-bottom:15px}.chimney-configurator .success-message p:last-of-type{margin-bottom:30px}@media(max-width:768px){.chimney-configurator .success-message p{font-size:1em}}.chimney-configurator .success-message .quote-button{margin:0 auto;max-width:300px}@-webkit-keyframes fadeInScale{0%{opacity:0;-webkit-transform:scale(.9);transform:scale(.9)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes fadeInScale{0%{opacity:0;-webkit-transform:scale(.9);transform:scale(.9)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.quote-button{background-color:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:16px;transition:background-color .2s;width:100%}.quote-button:hover{background-color:#2980b9}.quote-button:disabled{background-color:#95a5a6;cursor:not-allowed}.quote-button.continue-button{background-color:#27ae60}.quote-button.continue-button:hover{background-color:#229954}.quote-button.submit-button{background-color:#27ae60}.quote-button.submit-button:hover{background-color:#229954}.form-control{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.form-control:focus{border-color:#3498db;box-shadow:0 0 0 3px rgba(52,152,219,.1);outline:none}.loading-spinner{-webkit-animation:spin 1s ease-in-out infinite;animation:spin 1s ease-in-out infinite;border:3px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;display:inline-block;height:20px;width:20px}@-webkit-keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.configuration-step{padding:0}.configuration-step .back-button{background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-size:14px;margin-bottom:20px;padding:10px 20px;transition:background-color .2s}.configuration-step .back-button:hover{background-color:#e9ecef}.configuration-step .config-header{margin-bottom:30px}.configuration-step .config-header h1{color:#2c3e50;font-size:1.8em;font-weight:600;margin-bottom:8px}.configuration-step .config-header p{color:#666;font-size:.9em}.configuration-step .config-content .config-group{margin-bottom:25px}.configuration-step .config-content .config-group h3{color:#7f8c8d;font-size:.85em;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.configuration-step .config-content .config-group.lamel-config{background:#f8f9fa;border-radius:6px;padding:15px}.configuration-step .config-content .form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.configuration-step .config-content .form-control:focus{border-color:#3498db;box-shadow:0 0 0 3px rgba(52,152,219,.1);outline:none}.configuration-step .config-content .form-control.error{border-color:#e74c3c;box-shadow:0 0 0 3px rgba(231,76,60,.1)}.configuration-step .config-content .form-control.inline{display:inline-block;width:auto}.configuration-step .config-content select.form-control{background-image:url("data:image/svg+xml;charset=utf-8,%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:40px}.configuration-step .config-content .form-group{margin-bottom:15px}.configuration-step .config-content .form-group label{color:#555;display:block;font-size:14px;font-weight:500;margin-bottom:5px}.configuration-step .config-content .form-group small{color:#666;display:block;font-size:12px;margin-top:5px}.configuration-step .config-content .form-group .dimension-input{align-items:center;display:flex;gap:10px;margin-top:8px}.configuration-step .config-content .form-group .dimension-input input[type=number]{background:#fff;border:1px solid #ddd;border-radius:4px;flex:1;font-size:14px;max-width:120px;padding:10px 12px}.configuration-step .config-content .form-group .dimension-input input[type=number]:focus{border-color:#3498db;box-shadow:0 0 0 3px rgba(52,152,219,.1);outline:none}.configuration-step .config-content .form-group .dimension-input .unit{color:#666;font-size:14px;font-weight:500;min-width:30px}.configuration-step .config-content .radio-group{display:flex;flex-direction:column;gap:8px}.configuration-step .config-content .radio-group label{align-items:center;cursor:pointer;display:flex;gap:8px}.configuration-step .config-content .radio-group label input[type=radio]{accent-color:#3498db;height:16px;width:16px}.configuration-step .config-content .radio-group label span{color:#555;font-size:14px}.configuration-step .config-content .checkbox-group{align-items:center;display:flex;gap:8px;margin-top:12px}.configuration-step .config-content .checkbox-group input[type=checkbox]{accent-color:#3498db;height:16px;width:16px}.configuration-step .config-content .checkbox-group label{color:#555;cursor:pointer;font-size:14px}.configuration-step .config-content .checkbox-group label a{color:#3498db;text-decoration:underline}.configuration-step .config-content .checkbox-group label a:hover{text-decoration:none}.configuration-step .config-content .dimension-inputs{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:12px}.configuration-step .config-content .dimension-inputs .dimension-input{position:relative}.configuration-step .config-content .dimension-inputs .dimension-input label{color:#777;font-size:12px;font-weight:500;margin-bottom:3px}.configuration-step .config-content .dimension-inputs .dimension-input input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:12px 35px 12px 16px;width:100%}.configuration-step .config-content .dimension-inputs .dimension-input input:focus{border-color:#3498db;box-shadow:0 0 0 3px rgba(52,152,219,.1);outline:none}.configuration-step .config-content .dimension-inputs .dimension-input .unit{color:#666;font-size:12px;pointer-events:none;position:absolute;right:12px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.configuration-step .config-content input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:3px;height:6px;margin-top:8px;outline:none;transition:background .2s;width:100%}.configuration-step .config-content input[type=range]:hover{background:#ccc}.configuration-step .config-content input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#3498db;border-radius:50%;cursor:pointer;height:16px;width:16px}.configuration-step .config-content input[type=range]::-moz-range-thumb{background:#3498db;border:none;border-radius:50%;cursor:pointer;height:16px;width:16px}.configuration-step .config-summary{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;margin-bottom:25px;padding:20px}.configuration-step .config-summary h3{color:#2c3e50;font-size:1.1em;margin-bottom:15px}.configuration-step .config-summary .summary-items .summary-item{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:8px 0}.configuration-step .config-summary .summary-items .summary-item:last-child{border-bottom:none}.configuration-step .config-summary .summary-items .summary-item .label{color:#666;font-size:14px}.configuration-step .config-summary .summary-items .summary-item .value{color:#2c3e50;font-size:14px;font-weight:500}.configuration-step .config-summary .summary-items .summary-item.price-range .value{color:#27ae60;font-weight:600}.configuration-step .request-form h3{color:#2c3e50;font-size:1.1em;margin-bottom:20px}.configuration-step .request-form .form-row{display:grid;gap:15px;grid-template-columns:1fr 1fr}.configuration-step .request-form .form-row.postal-city{grid-template-columns:100px 1fr}.configuration-step .request-form .form-group.postal{flex:0 0 120px}.configuration-step .request-form .form-group.city{flex:1}.configuration-step .request-form .error-message{color:#e74c3c;display:block;font-size:12px;margin-top:5px}.configuration-step .request-form .privacy-group{background:#f8f9fa;border-radius:6px;margin:25px 0 15px;padding:15px}.configuration-step .request-form .privacy-group .checkbox-group{margin-top:0}.configuration-step .request-form .privacy-group .checkbox-group label{font-size:13px}.configuration-step .request-form .privacy-disclaimer{background-color:#f8f9fa;border-left:4px solid #6c757d;border-radius:6px;margin-top:20px;padding:15px}.configuration-step .request-form .privacy-disclaimer p{color:#666;font-size:13px;line-height:1.5;margin:0}.configuration-step .request-form .required-note{color:#666;font-size:12px;margin-bottom:0}.configuration-step .quote-button{background-color:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:16px;transition:background-color .2s;width:100%}.configuration-step .quote-button:hover{background-color:#2980b9}.configuration-step .quote-button.submit-button{background-color:#27ae60}.configuration-step .quote-button.submit-button:hover{background-color:#229954}.configuration-step .quote-button.submit-button:disabled{background-color:#95a5a6;cursor:not-allowed}.success-message{padding:60px 40px;text-align:center}.success-message h2{color:#27ae60;font-size:2em;margin-bottom:20px}.success-message p{color:#666;font-size:1.1em;margin-bottom:15px}.success-message .success-details{background:#f8f9fa;border-left:4px solid #27ae60;border-radius:8px;margin:25px 0;padding:20px}.success-message .success-details p{margin-bottom:10px}.success-message .success-details p:last-child{margin-bottom:0}.success-message .quote-button{margin:0 auto;max-width:300px}@media(max-width:768px){.configuration-step .dimension-inputs,.configuration-step .request-form .form-row,.configuration-step .request-form .form-row.postal-city{grid-template-columns:1fr}.configuration-step .config-content .form-group .dimension-input{align-items:stretch;flex-direction:column;gap:5px}.configuration-step .config-content .form-group .dimension-input input[type=number]{max-width:none}.configuration-step .config-content .form-group .dimension-input .unit{align-self:flex-start;margin-left:5px}}.drawing-container{overflow-x:auto}.drawing-container .technical-canvas{height:auto;max-height:800px;min-width:1280px;width:100%}@media(max-width:1024px){.drawing-container .technical-canvas{min-width:1280px}}.price-display{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:40px;padding:20px;text-align:center}.price-display .price-label{color:#666;font-size:.85em;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.price-display .price-value{color:#2c3e50;font-size:1.6em;font-weight:700;line-height:1.2}@media(max-width:768px){.price-display .price-value{font-size:1.3em}}.price-display .price-disclaimer{color:#888;font-size:.75em;font-style:italic;margin-top:10px}