.elementor-2689 .elementor-element.elementor-element-3edd896d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-6b2977dc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-400a448{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-2e88ee9d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-29c45a91{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-53ebf74d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-79f7ead6{text-align:start;}.elementor-2689 .elementor-element.elementor-element-79f7ead6 img{width:220px;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-1f31edb.elementor-social-icon{background-color:#edf4f9;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-1f31edb.elementor-social-icon i{color:#064572;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-1f31edb.elementor-social-icon svg{fill:#064572;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-4479627.elementor-social-icon{background-color:#edf4f9;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-4479627.elementor-social-icon i{color:#064572;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-4479627.elementor-social-icon svg{fill:#064572;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-fd7c57c.elementor-social-icon{background-color:#edf4f9;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-fd7c57c.elementor-social-icon i{color:#064572;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-fd7c57c.elementor-social-icon svg{fill:#064572;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-41d4be6.elementor-social-icon{background-color:#edf4f9;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-41d4be6.elementor-social-icon i{color:#064572;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-repeater-item-41d4be6.elementor-social-icon svg{fill:#064572;}.elementor-2689 .elementor-element.elementor-element-6802c08f{--grid-template-columns:repeat(0, auto);--icon-size:17px;--grid-column-gap:9px;--grid-row-gap:0px;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-widget-container{text-align:left;}.elementor-2689 .elementor-element.elementor-element-6802c08f .elementor-social-icon{--icon-padding:0.6em;}.elementor-2689 .elementor-element.elementor-element-234d44f0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-702be742 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-2689 .elementor-element.elementor-element-702be742 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-2689 .elementor-element.elementor-element-702be742{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-2689 .elementor-element.elementor-element-702be742 .elementor-icon-list-text{transition:color 0.3s;}.elementor-2689 .elementor-element.elementor-element-827a4bc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-ab7f431 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-2689 .elementor-element.elementor-element-ab7f431 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-2689 .elementor-element.elementor-element-ab7f431{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-2689 .elementor-element.elementor-element-ab7f431 .elementor-icon-list-text{transition:color 0.3s;}.elementor-2689 .elementor-element.elementor-element-4ce49afa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-2061a1ea .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-2689 .elementor-element.elementor-element-2061a1ea .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-2689 .elementor-element.elementor-element-2061a1ea{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-2689 .elementor-element.elementor-element-2061a1ea .elementor-icon-list-text{transition:color 0.3s;}.elementor-2689 .elementor-element.elementor-element-6c30c69a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2689 .elementor-element.elementor-element-1ae45785{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS */.elementor-2689 .ps-footer-2026, .elementor-2689 .ps-footer-2026 * { box-sizing: border-box; }
.elementor-2689 .ps-footer-2026 { --gap: 0px; gap: 0; padding: 0; margin: 0; }
.elementor-2689 .pf-shell { width: 100%; max-width: 1200px; margin: 0 auto; padding-left: 40px; padding-right: 40px; }
.elementor-2689 .pf-cta { background: #064572; color: #ffffff; border-top: 4px solid #4296b7; }
.elementor-2689 .pf-cta-inner { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 40px; padding-top: 38px; padding-bottom: 38px; }
.elementor-2689 .pf-cta-copy { width: auto; max-width: 680px; gap: 10px; padding: 0; }
.elementor-2689 .pf-kicker { color: #a9daef; font-size: 11px; line-height: 1.4; font-weight: 700; letter-spacing: 1.8px; }
.elementor-2689 .pf-cta-title .elementor-heading-title { color: #ffffff; font-size: 30px; line-height: 1.25; font-weight: 700; }
.elementor-2689 .pf-cta-button { width: auto; flex-shrink: 0; }
.elementor-2689 .pf-cta-button .elementor-button { background: #ffffff; color: #064572; font-size: 14px; font-weight: 700; padding: 17px 24px; border-radius: 10px; box-shadow: none; transition: background .18s ease, color .18s ease; }
.elementor-2689 .pf-cta-button .elementor-button:hover { background: #dceef7; color: #04365a; }
.elementor-2689 .pf-main { background: #f7fafc; }
.elementor-2689 .pf-grid { display: grid; grid-template-columns: 1.25fr .85fr 1fr 1.1fr; gap: 36px; padding-top: 56px; padding-bottom: 50px; align-items: start; }
.elementor-2689 .pf-col { width: 100%; min-width: 0; padding: 0; gap: 18px; }
.elementor-2689 .pf-heading .elementor-heading-title { color: #123c5b; font-size: 16px; line-height: 1.4; font-weight: 700; }
.elementor-2689 .pf-logo img { width: 220px; max-width: 100%; height: auto; }
.elementor-2689 .pf-brand-copy { color: #526476; font-size: 14px; line-height: 1.8; }
.elementor-2689 .pf-brand-copy p, .elementor-2689 .pf-address p, .elementor-2689 .pf-hours p, .elementor-2689 .pf-bottom p { margin: 0; }
.elementor-2689 .pf-links .elementor-icon-list-item { padding-top: 5px; padding-bottom: 5px; }
.elementor-2689 .pf-links .elementor-icon-list-icon { display: none; }
.elementor-2689 .pf-links .elementor-icon-list-text { padding-left: 0; color: #425a70; font-size: 14px; line-height: 1.65; font-weight: 500; transition: color .18s ease; }
.elementor-2689 .pf-links .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #006a98; text-decoration: underline; text-underline-offset: 4px; }
.elementor-2689 .pf-contact { gap: 16px; }
.elementor-2689 .pf-contact-links .elementor-icon-list-text { color: #064572; font-weight: 600; overflow-wrap: anywhere; }
.elementor-2689 .pf-hours { color: #425a70; font-size: 13px; line-height: 1.65; }
.elementor-2689 .pf-address { color: #526476; font-size: 13px; line-height: 1.8; padding-top: 14px; border-top: 1px solid #dce6ed; }
.elementor-2689 .pf-social .elementor-social-icon { background: #e7f0f6; transition: background .18s ease; }
.elementor-2689 .pf-social .elementor-social-icon:hover { background: #cfe5f1; opacity: 1; }
.elementor-2689 .pf-social .elementor-social-icon i, .elementor-2689 .pf-social .elementor-social-icon svg { color: #064572; fill: #064572; }
.elementor-2689 .pf-bottom { background: #f7fafc; }
.elementor-2689 .pf-bottom-inner { display: flex; flex-direction: row; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid #dce6ed; padding-top: 20px; padding-bottom: 22px; }
.elementor-2689 .pf-bottom .elementor-widget-text-editor { width: auto; color: #526476; font-size: 12px; line-height: 1.6; }
.elementor-2689 .pf-location { flex-shrink: 0; }
.elementor-2689 .ps-footer-2026 a:focus-visible { outline: 3px solid #3188b1; outline-offset: 5px; border-radius: 3px; }
.elementor-2689 .pf-cta a:focus-visible { outline-color: #ffffff; }
@media (max-width: 1024px) {
 .elementor-2689 .pf-shell { padding-left: 32px; padding-right: 32px; }
 .elementor-2689 .pf-grid { grid-template-columns: 1.1fr 1fr; gap: 36px 44px; }
 .elementor-2689 .pf-cta-inner { gap: 24px; }
 .elementor-2689 .pf-cta-title .elementor-heading-title { font-size: 27px; }
 .elementor-2689 .pf-bottom-inner { padding-bottom: 76px; }
}
@media (max-width: 767px) {
 .elementor-2689 .pf-shell { padding-left: 24px; padding-right: 24px; }
 .elementor-2689 .pf-cta-inner { flex-direction: column; align-items: flex-start; gap: 22px; padding-top: 30px; padding-bottom: 30px; }
 .elementor-2689 .pf-cta-title .elementor-heading-title { font-size: 25px; line-height: 1.3; }
 .elementor-2689 .pf-cta-button, .elementor-2689 .pf-cta-button .elementor-button { width: 100%; }
 .elementor-2689 .pf-grid { grid-template-columns: 1fr; gap: 30px; padding-top: 36px; padding-bottom: 32px; }
 .elementor-2689 .pf-col { gap: 13px; }
 .elementor-2689 .pf-links .elementor-icon-list-item { padding-top: 7px; padding-bottom: 7px; }
 .elementor-2689 .pf-bottom-inner { flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 18px; padding-bottom: 92px; }
 .elementor-2689 .pf-logo img { width: 210px; }
}

/* PROSOL TI: consistent catalog cards, 2026-11-04. Scoped to shop/category/tag archives. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products {
 display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:1fr; gap:24px; margin:24px 0 36px; padding:0; align-items:stretch;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products::before,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products::after { display:none; }
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product {
 float:none; clear:none; width:100%; min-width:0; height:100%; margin:0; padding:20px; box-sizing:border-box; display:flex; flex-direction:column; border:1px solid #e0e8f0; border-radius:20px; background:#fff; box-shadow:0 8px 24px rgba(44,53,82,.04);
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product a.woocommerce-loop-product__link {
 display:flex; flex-direction:column; flex:1; min-width:0; color:#2c3552; text-decoration:none;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product a img {
 display:block; width:100%; height:220px; object-fit:contain; box-sizing:border-box; padding:12px; margin:0 0 18px; border-radius:12px; background:#f4f8fb;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product .woocommerce-loop-product__title {
 color:#2c3552; font-family:inherit; font-size:17px; font-weight:700; line-height:1.4; min-height:4.2em; margin:0 0 14px; padding:0; overflow-wrap:anywhere;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product .price {
 color:#2d486e; font-size:18px; line-height:1.5; font-weight:700; min-height:27px; margin:auto 0 12px;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product > a.button {
 display:flex; align-items:center; justify-content:center; box-sizing:border-box; width:100%; min-height:44px; padding:11px 12px; margin:12px 0 0; border:1px solid #4396c2; border-radius:24px; background:#fff; color:#2379a6; text-align:center; font-size:13px; line-height:1.4; font-weight:700;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product .yith-ywraq-add-to-quote { width:100%; margin:10px 0 0; }
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product .yith-ywraq-add-to-quote a.add-request-quote-button.button {
 display:flex!important; align-items:center; justify-content:center; box-sizing:border-box!important; width:100%!important; min-height:44px; padding:11px 12px!important; margin:0!important; border:1px solid #4396c2!important; border-radius:24px!important; background:#4396c2!important; color:#fff!important; text-align:center!important; font-size:13px!important; line-height:1.4!important; font-weight:700!important; text-decoration:none!important;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product > a.button:hover { background:#edf6fb; }
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product .yith-ywraq-add-to-quote a.add-request-quote-button.button:hover { background:#07507c!important; border-color:#07507c!important; }
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product a.button:focus-visible { outline:3px solid #2c3552; outline-offset:3px; }
@media(max-width:1024px) {
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product { padding:16px; }
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product a img { height:190px; }
}
@media(max-width:767px) {
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product { padding:12px; border-radius:16px; }
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product a img { height:150px; padding:8px; margin-bottom:14px; }
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product .woocommerce-loop-product__title { font-size:14px; min-height:5.6em; }
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product > a.button,
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product .yith-ywraq-add-to-quote a.add-request-quote-button.button { font-size:12px!important; min-height:48px; padding:10px 8px!important; }
}
@media(max-width:359px) {
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products { grid-template-columns:minmax(0,1fr); }
 body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product a img { height:200px; }
}


/* Override WooCommerce's legacy mobile percentage widths inside the catalog grid. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products[class*="columns-"] li.product {
 width:100%!important; max-width:none; margin:0!important;
}


/* Reserve the same commercial-info space for quotation-only and priced products. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) main ul.products li.product a.woocommerce-loop-product__link:not(:has(.price))::after {
 content:""; display:block; min-height:27px; margin:auto 0 12px;
}/* End custom CSS */