.config-container .transition-all-fast {
            transition: all 0.2s ease-in-out;
        }
        .config-container .transition-opacity-fast {
            transition: opacity 0.3s ease-in-out;
        }
       
        .config-container select {
            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 8l4 4 4-4'/%3e%3c/svg%3e");
            background-position: right 0.5rem center;
            background-repeat: no-repeat;
            background-size: 1.5em 1.5em;
            padding-right: 2.5rem;
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
        }
        .config-container select:disabled {
            background-color: #e5e7eb;
            cursor: not-allowed;
            opacity: 0.7;
        }
        
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(10px); }
            to { opacity: 1; transform: translateY(0); }
        }
        .fade-in {
            animation: fadeIn 0.5s ease-in-out forwards;
        }
        
        .scale-95 {
          --tw-scale-x: .95;
          --tw-scale-y: .95;
          transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
        }
        

        #resetButton {
            background: #fff;
            color:#ff3300;
            font-size: 0.875rem;
            line-height: 1.25rem;
            transition: all 0.2s ease-in-out;
            border: 0;
        }
        
        #resetButton:hover {
            color:#ca2800;
        }
        
        
        
        #ConfigQuote,
        #quoteForm button,
        #customQuoteForm button,
        #cf_5 .cf-form-wrap button,
        #cf_6 .cf-form-wrap button{
            background:#ff3300;
            color:#fff;
            font-weight: 600;
            --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
            --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
            border-radius: 0.5rem;
            padding:0.75rem 1.5rem;
            transition: all 0.2s ease-in-out;
            border: 0;
        }
        
        #ConfigQuote {
            width:100%;
        }
        
        #ConfigCustomQuote {
            background:rgba(33,37,41,0.8); 
            color:#fff;
            font-weight: 500;
            --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
            --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
            border-radius: 0.5rem;
            transition: all 0.2s ease-in-out;
            padding:0.75rem 1.5rem;
            width: auto;
            margin-top: 1.5rem;
            border:0;
        }
        
        #ConfigQuote:focus,
        #quoteForm button:focus,
        #customQuoteForm button:focus,
        #cf_5 .cf-form-wrap button:focus,
        #cf_6 .cf-form-wrap button:focus{
          outline: 2px solid #ff3300; 
          outline-offset: 2px; 
        }
        
        #ConfigCustomQuote:focus {
          outline: 2px solid #212529; 
          outline-offset: 2px; 
        }
        
        #quoteForm input[type="text"]:focus,
        #quoteForm input[type="email"]:focus,
        #quoteForm input[type="tel"]:focus,
        #quoteForm textarea:focus,
        #cf_5 .cf-form-wrap input[type="text"]:focus,
        #cf_5 .cf-form-wrap input[type="email"]:focus,
        #cf_5 .cf-form-wrap input[type="tel"]:focus,
        #cf_5 .cf-form-wrap textarea:focus,
        #cf_6 .cf-form-wrap input[type="text"]:focus,
        #cf_6 .cf-form-wrap input[type="email"]:focus,
        #cf_6 .cf-form-wrap input[type="tel"]:focus,
        #cf_6 .cf-form-wrap textarea:focus{
          outline: 2px solid #ff3300; 
          outline-offset: -1px; 
        }
        
        #quoteForm .quoteForm-cta,
        #cf_5 .cf-form-wrap .quoteForm-cta,
        #cf6 .cf-form-wrap .quoteForm-cta{
            text-align: right;
            margin-top: 1.5rem;
        }
        
        
        .config-container .custom-quote {
            text-align: center;
            background:#fff;
            border-radius: 1rem;
            margin-top: 2rem;
            padding: 2rem;
            --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
            --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
        }
        
        .config-container .custom-quote h2 {
            color: #212529;
            font-weight: 500;
            font-size: 1.25rem;
            line-height: 1.75rem;
            margin-bottom: 1rem;
        }
        
        .hidden {
          display: none;
        }
        
        .fade-in {
          animation: fadeIn 0.5s ease-in-out forwards;
        }
        
       .opacity-0 {
          opacity: 0;
        }
        
        .pointer-events-none {
          pointer-events: none;
        }
        
        .config-container .grid {
          display: grid;
        }
        
        .config-container {
            width: 100%;
            max-width: 80rem;
            margin-left: auto;
            margin-right: auto;
            padding:2rem 1rem;
        }
        
        .config-container header {
            text-align: center;
            margin-bottom: 2.5rem;
        }
        
        .config-container header h1 {
            color: rgb(17,24,39);
            font-weight: 700;
            font-size: 3rem;
            line-height: 2.5rem;
        }
        
        .config-container header p {
            color: rgb(75,85,99);
            font-size: 1.125rem;
            line-height: 1.75rem;
            margin:0.75rem auto 0 auto;
            margin-top: 0.75rem;
            width:100%;
            max-width: 54rem;
        }
        
        .config-container main {
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: 2rem;
        }
        
        .config-container main h2 {
            color: rgb(31,41,55);
            font-weight: 700;
            font-size: 1.5rem;
            line-height: 2rem;
        }
        
        .config-container aside {
            grid-column: span 2 / span 2;
            padding: 2rem;
            height: -moz-fit-content;
            height: fit-content;
        }
        
        .config-container section {
            grid-column: span 3 / span 3;
        }
        
        .config-container .options-reset {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 1.5rem;
        }
        
        .config-container .select-options > :not([hidden]) ~ :not([hidden]) {
              --tw-space-y-reverse: 0;
              margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
              margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
            }
        
        .config-container .select-options > div > label {
            display: flex;
            align-items: center;
            margin-bottom: 0.5rem;
        }
        
        .config-container .select-options > div > label > :not([hidden]) ~ :not([hidden]) {
          --tw-space-x-reverse: 0;
          margin-right: calc(0.75rem * var(--tw-space-x-reverse));
          margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse)));
        }
        
        .config-container .select-options select {
            padding: 0.75rem;
            border: 1px solid rgb(209,213,219);
            border-radius: 0.5rem;
            width: 100%;
            --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
            --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
            transition: all 0.2s ease-in-out;
        }
        
        .config-container .select-options .text-gray-500 {
            color: rgb(107,114,128);
            font-weight: 600;
        }
        
        
        .config-container .config-container .select-options .text-gray-700 {
            color: rgb(55,65,81);
            font-weight: 600;
        }
        
        .config-container .select-option-nr {
            font-weight: 700;
            font-size: 0.875rem;
            line-height: 1.25rem;
            border-radius: 9999px;
            justify-content: center;
            align-items: center;
            width: 1.5rem;
            height: 1.5rem;
            display: flex;
            background-color: rgb(229,231,235);
            color: rgb(55,65,81);
        }
        
        .config-container .select-option-nr.active {
            background:rgb(255,51,0);
            opacity: 1;
            color:#fff;
        }
        
        .config-container .select-options h3 {
            color: rgb(31,41,55);
            font-weight: 700;
            font-size: 1.125rem;
            line-height: 1.75rem;
        }
        
        .config-container .select-options .divider {
            border-top: 1px solid #e5e7eb;
        }
        
        .config-container .bg-white-shadow {
            background:#fff;
            --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
            --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
            border-radius: 1rem;
        }
        
        .config-container .initial-state,
        .config-container .no-match{
            text-align: center;
            color: rgb(107,114,128);
        }
        
        .config-container .initial-state svg {
            color: rgb(156,163,175);
        }
        
        .config-container .initial-state svg,
        .config-container .no-match svg{
            width: 3rem;
            height: 3rem;
            margin: 0 auto;
        }
        
        .config-container .initial-state h3,
        .config-container .no-match h3{
            color: rgb(31,41,55);
            font-weight: 500;
            font-size: 1.125rem;
            line-height: 1.75rem;
            margin-top: 1rem;
        }
        
        .config-container .initial-state p,
        .config-container .no-match p{
            margin-top: 0.25rem;
            font-size: 0.875rem;
            line-height: 1.25rem;
        }
        
        .config-container .no-match svg {
            color: rgb(234,179,8);
        }
        
        .config-container .product-match {
            width: 100%;
        }
        
        .config-container .product-match-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 2rem;
            align-items: flex-start;
            margin-bottom: 40px;
            padding-bottom: 60px;
            border-bottom: 1px solid #e5e7eb;
        }
        
        .config-container .product-match-grid:last-child {
            margin:0;
            padding:0;
            border-bottom:0;
        }
        
        .config-container .product-match-grid .grid-container {
            grid-column: span 2 / span 2;
        }
        
        .config-container .product-match-grid .grid-container h2 {
            font-size: 1.875rem;
            line-height: 2.25rem;
        }
        
        .config-container .product-match-grid .grid-container p {
            margin-top: 0.75rem;
        }
        
        .config-container .product-match-grid img {
            --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
            --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
            object-fit: cover;
            background-color: rgb(243,244,246);
            border-radius: 0.5rem;
            width: 100%;
            height: auto;
            aspect-ratio: 1 / 1;
        }
        
        .config-container .product-match-grid .product-description {
            display: flex;
            flex-direction: column;
            height: 100%;
            line-height: 1.5;
        }
        
        
        .config-container .product-match-grid .product-description {
          white-space: pre-line; 
        }

        
        .config-container .product-match-grid .product-description p {
            flex-grow: 1;
        }
        
        .config-container .product-match-grid .product-description .prod-desc-cta {
            margin-top: 1.5rem;
        }
        
        .config-container .title-model-wrapper {
            display: grid;
            grid-template-columns: 1fr 3fr;
            margin-bottom: -20px;
        }

        .config-container .title-model-wrapper .text-wrapper {
            padding-left:25px;
        }
        
        .config-container .title-model-wrapper .text-wrapper h2 {
          font-size: 1.575rem;
          line-height: 2rem;
        }

        .popup {
            background-color: rgb(255 255 255);
            border-radius: 1rem;
            --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
            --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
            padding: 2rem;
            transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
            width: 100%;
            max-width: 32rem;
            transition: all 0.2s ease-in-out;
        }
        
        .popup .popup-header {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            margin-bottom: 1.5rem;
        }
        
        #dialog5 .eb-content h2,
        #dialog6 .eb-content h2,
        .popup .popup-header h2 {
            color: rgb(31,41,55);
            font-weight: 700;
            font-size: 1.5rem;
            line-height: 2rem;
        }
        
        #dialog5 .eb-content p,
        #dialog6 .eb-content p,
        .popup .popup-header p {
            font-size: 0.875rem;
            line-height: 1.25rem;
            margin-top: 0.35rem;
        }

        #cf_5 .cf-form-wrap,
        #cf_6 .cf-form-wrap {
          padding: 20px 1px;
        }
        
        .popup form label {
            display: block;
            color: rgb(55,65,81);
            font-weight: 500;
            font-size: 0.875rem;
            line-height: 1.25rem;
        }

        #cf_5 .cf-form-wrap .cf-control-label label,
        #cf_6 .cf-form-wrap .cf-control-label label{
            font-family: 'Inter', sans-serif;
            color: rgb(55,65,81);
            font-weight: 500;
            font-size: 0.875rem;
            line-height: 1.25rem;
            margin-bottom: 0;
        }
        
        .popup form .icon-required {
            color: rgb(239,68,68);
        }
        
        .popup form input[type="text"],
        .popup form input[type="tel"],
        .popup form input[type="email"],
        .popup form textarea,
        #cf_5 .cf-form-wrap input[type="text"],
        #cf_5 .cf-form-wrap input[type="tel"],
        #cf_5 .cf-form-wrap input[type="email"],
        #cf_5 .cf-form-wrap textarea, 
        #cf_6 .cf-form-wrap input[type="text"],
        #cf_6 .cf-form-wrap input[type="tel"],
        #cf_6 .cf-form-wrap input[type="email"],
        #cf_6 .cf-form-wrap textarea{
            --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
            --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
            padding: 0.5rem;
            border: 1px solid rgb(209,213,219);
            border-radius: 0.375rem;
            margin-top: 0.25rem;
        }
        
       .popup form .frm-col-span-2 input[type="text"],
       .popup form .frm-col-span-2 input[type="tel"],
       .popup form .frm-col-span-2 input[type="email"],
       .popup form .frm-col-span-2 textarea {
            width:95%;
        }
        
        
        .quoteFormContainer {
            display: grid;
            gap: 1rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        
        .quoteFormContainer .frm-col-span-2 {
            grid-column: span 2 / span 2;
        }
        
       .quoteModal {
            position: fixed;
            inset: 0px;
            background-color: rgba(0,0,0,0.6);
            padding: 1rem;
            z-index: 50;
            display: flex;
            justify-content: center;
            align-items: center;
            transition: opacity 0.3s ease-in-out;
        }
        
        .btnModalClose {
            background: #fff;
            color: rgb(156,163,175);
            font-size: 1.875rem;
            line-height: 2.25rem;
            transition: all 0.2s ease-in-out;
            border:0;
        }
        
        .btnModalClose:hover {
            color: rgb(55,65,81);
        }
        
        .results-container {
            background:#fff;
            --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
            --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
            box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
            padding: 2rem;
            border-radius: 1rem;
            display:flex;
            justify-content: center;
            align-items: center;
            min-height: 400px;
        }
        

        @media (max-width: 768px) {
            
            .config-container header h1 {
                font-size: 2.25rem;
                line-height: 2.5rem;
            }
            
            .config-container main {
                grid-template-columns: repeat(1, minmax(0, 1fr));
            }

            
            .config-container aside {
                padding: 1.5rem;
            }
            
            .config-container .results-container {
                padding: 1.5rem;
            }
            
            .config-container aside,
            .config-container section,
            .config-container .product-match-grid .grid-container{
                grid-column: span 1 / span 1;
            }
            
            .config-container .product-match-grid {
                grid-template-columns: repeat(1, minmax(0, 1fr));
                gap: 1.5rem;
            }
            
            .config-container .product-match-grid .grid-container h2 {
                font-size: 1.5rem;
                line-height: 2rem;
            }
            
            .config-container .title-model-wrapper {
                grid-template-columns: 1fr;
            }

            .config-container .title-model-wrapper .text-wrapper {
                padding-left:0;
                margin-top:10px;
            }
            
            .quoteFormContainer {
                grid-template-columns: repeat(1, minmax(0, 1fr));
            }
            
            .quoteFormContainer .frm-col-span-2 {
                grid-column: span 1 / span 1;
            }
            
        }
        
        @media (max-width: 1023px) {
            .config-container main {
                grid-template-columns: repeat(1, minmax(0, 1fr));
            }
        }
        