/* Store archive: a left filter column and a consistent product grid. */
body.post-type-archive-product .twm-commerce,body.tax-product_cat .twm-commerce,body.tax-product_tag .twm-commerce,body.search .twm-commerce{max-width:1320px;width:calc(100% - 64px);margin:0 auto 72px;padding:32px 0 0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1b3035}
.twm-commerce .woocommerce-breadcrumb{font-size:12px;margin:0 0 26px;color:#7b8384}.twm-commerce .woocommerce-breadcrumb a{color:#6b7779}
.twm-catalog-heading{margin-bottom:34px;padding-bottom:28px;border-bottom:1px solid #deded7}.twm-catalog-eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#85705b;margin:0 0 12px}.twm-catalog-heading h1{font-size:44px;letter-spacing:-1.6px;font-weight:600;line-height:1.1;margin:0 0 14px;color:#20363a}.twm-catalog-heading>p:last-child{font-size:15px;line-height:1.7;color:#667377;margin:0;max-width:700px}
.twm-catalog-layout{display:grid;grid-template-columns:228px minmax(0,1fr);gap:36px;align-items:start}.twm-catalog-sidebar{position:sticky;top:104px;min-width:0}.twm-catalog-filters{background:#fff;border:1px solid #dddddd;border-radius:14px;overflow:hidden}.twm-catalog-filters>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;padding:21px 22px;border-bottom:1px solid #eeeee8;font-size:15px;font-weight:650;pointer-events:none}.twm-catalog-filters>summary::-webkit-details-marker{display:none}.twm-catalog-filter-content{padding:22px 20px}.twm-catalog-search{margin:0 0 26px}.twm-catalog-search label{display:block;font-size:11px;font-weight:650;margin-bottom:10px;color:#596a6e}.twm-catalog-search>div{position:relative;display:flex;align-items:center}.twm-catalog-search input[type=search]{width:100%;min-width:0;min-height:42px;background:#f7f7f7;border:1px solid #cccccc;border-radius:7px;font:12px/1.4 inherit;color:#203b41;padding:11px 36px 11px 11px;outline-offset:3px}.twm-catalog-search button{position:absolute;right:3px;width:32px;height:34px;padding:6px;display:grid;place-items:center;background:transparent;color:#657477;border:0;cursor:pointer}.twm-catalog-filter-group{padding:0 0 24px;margin:0 0 24px;border-bottom:1px solid #eeeeea}.twm-catalog-filter-group h2{font-size:12px;font-weight:700;color:#354d52;margin:0 0 14px}.twm-catalog-filter-group nav{display:grid;gap:5px}.twm-catalog-filter-group nav a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 10px;border-radius:7px;color:#69777a;font-size:12px;text-decoration:none;line-height:1.5}.twm-catalog-filter-group nav a:hover{background:#f3f3f3;color:#173f49}.twm-catalog-filter-group nav a[aria-current=page]{background:#ff2525;color:#ffffff;font-weight:650}.twm-catalog-filter-group nav small{display:grid;place-items:center;min-width:21px;height:21px;background:#fff;border:1px solid #dddddd;border-radius:5px;font-size:10px;color:#666666}
.twm-catalog-price .price_slider_wrapper{padding-top:10px}.twm-catalog-price .ui-slider .ui-slider-range,.twm-catalog-price .ui-slider .ui-slider-handle{background:#ff2525!important}.twm-catalog-price .price_slider_wrapper .ui-widget-content{background:#cccccc!important}.twm-catalog-price .price_slider{margin:0 7px 22px}.twm-catalog-price .price_slider_amount{font-size:10px;line-height:1.7;text-align:left}.twm-catalog-price .price_slider_amount .button{float:none;display:block;background:#f3f3f3;color:#173f49;border:1px solid #cccccc;border-radius:6px;font-size:11px;font-weight:600;padding:8px 14px;margin:0 0 12px}.twm-catalog-reset{display:inline-block;font-size:12px;color:#52636a;text-underline-offset:4px;margin:0 0 20px}.twm-catalog-advice{background:#f5f5f5;padding:18px 15px;border-radius:8px}.twm-catalog-advice-icon{display:grid;place-items:center;width:24px;height:24px;border:1px solid #cccccc;border-radius:50%;color:#173f49;font-size:12px;font-weight:700;margin:0 0 12px}.twm-catalog-advice h2{font-size:13px;font-weight:650;line-height:1.5;margin:0 0 8px}.twm-catalog-advice p{font-size:11px;line-height:1.8;color:#757575;margin:0 0 12px}.twm-catalog-advice a{display:flex;justify-content:space-between;font-size:12px;color:#173f49;font-weight:650;text-decoration:none}
.twm-catalog-grid{min-width:0}.twm-catalog-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin:0 0 22px;min-height:42px}.twm-catalog-toolbar .woocommerce-notices-wrapper{flex-basis:100%}.twm-catalog-toolbar .woocommerce-notices-wrapper:empty{display:none}.twm-catalog-toolbar .woocommerce-result-count{float:none;margin:0;font-size:12px;color:#7b8586;line-height:1.6}.twm-catalog-toolbar .woocommerce-ordering{float:none;margin:0}.twm-catalog-toolbar .woocommerce-ordering select{width:215px;max-width:100%;height:41px;padding:9px 30px 9px 12px;font-family:inherit;font-size:11px;border:1px solid #cccccc;border-radius:7px;background:#fff;color:#536568}
.woocommerce .twm-catalog-grid ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:24px;clear:both;margin:0;padding:0;list-style:none}.woocommerce .twm-catalog-grid ul.products::before,.woocommerce .twm-catalog-grid ul.products::after{display:none}.woocommerce .twm-catalog-grid ul.products li.product.twm-catalog-card{float:none;width:100%;min-width:0;margin:0;padding:0;display:flex;flex-direction:column;background:#fff;border:1px solid #dddddd;border-radius:14px;overflow:hidden;transition:border-color .18s,box-shadow .18s}.woocommerce .twm-catalog-grid ul.products li.product.twm-catalog-card:hover{border-color:#cccccc;box-shadow:0 7px 24px #173f4910}
.woocommerce .twm-catalog-grid ul.products li.product .twm-catalog-media{display:block;flex:0 0 236px;height:236px;width:100%;overflow:hidden;background:#f4f4f4;border-bottom:1px solid #dddddd;margin:0}.woocommerce .twm-catalog-grid ul.products li.product .twm-catalog-media img{display:block;width:100%;height:100%;max-height:100%;margin:0;border:0;border-radius:0;padding:22px;object-fit:contain;object-position:center;background:transparent;aspect-ratio:auto}.twm-catalog-card-body{display:flex;flex-direction:column;flex:1;padding:23px 24px 24px;min-width:0}.twm-catalog-kind{display:flex;gap:7px;align-items:center;font-size:9px;font-weight:700;letter-spacing:1.2px;line-height:18px;margin:0 0 11px;color:#747474}.twm-catalog-kind>span{width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:#ff2525}.woocommerce .twm-catalog-grid ul.products li.product .woocommerce-loop-product__title{font-family:inherit;font-size:21px;font-weight:600;letter-spacing:-.6px;line-height:1.3;height:55px;margin:0 0 12px;padding:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.twm-catalog-card h2 a{color:#263e43;text-decoration:none}.twm-catalog-description{font-size:13px;line-height:1.75;color:#7a8587;height:46px;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.twm-catalog-detail{height:20px;font-size:10px;line-height:1.6;color:#59666b;margin:0 0 18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.twm-catalog-card-footer{margin-top:auto;padding-top:18px;border-top:1px solid #eeeee8}.twm-catalog-price-block{height:72px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}.woocommerce .twm-catalog-grid ul.products li.product .price,.twm-catalog-quote{display:block;font-family:inherit;font-size:25px;font-weight:650;letter-spacing:-.6px;color:#263e43;line-height:1.3;margin:0 0 5px}.woocommerce .twm-catalog-grid ul.products li.product .price del{font-size:12px;opacity:.55;margin-right:5px}.woocommerce .twm-catalog-grid ul.products li.product .price ins{font-weight:650;text-decoration:none}.twm-catalog-price-block>small{font-size:10px;line-height:1.5;color:#98a09d;letter-spacing:0}.woocommerce .twm-catalog-grid ul.products li.product a.twm-catalog-card-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;float:none;width:100%;min-height:43px;margin:0;padding:12px 15px;border:1px solid #cccccc;border-radius:7px;background:#f3f3f3;color:#173f49;font-family:inherit;font-size:12px;font-weight:650;line-height:1.4;text-decoration:none;box-shadow:none;white-space:normal}.woocommerce .twm-catalog-grid ul.products li.product a.twm-catalog-card-cta:hover{background:#ff2525;border-color:#ff2525;color:#fff}.twm-catalog-card-cta>span{font-size:17px;font-weight:400}.twm-catalog-layout a:focus-visible,.twm-catalog-layout input:focus-visible,.twm-catalog-layout button:focus-visible,.twm-catalog-layout select:focus-visible,.twm-catalog-layout summary:focus-visible{outline:2px solid #ff2525;outline-offset:4px;box-shadow:none}
@media(min-width:1600px){.woocommerce .twm-catalog-grid ul.products li.product .twm-catalog-media{height:260px;flex-basis:260px}}
@media(max-width:1100px){.woocommerce .twm-catalog-grid ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.twm-catalog-layout{grid-template-columns:205px minmax(0,1fr);gap:24px}.twm-catalog-card-body{padding:20px}.woocommerce .twm-catalog-grid ul.products li.product .woocommerce-loop-product__title{font-size:19px}.twm-catalog-description{font-size:12px}.woocommerce .twm-catalog-grid ul.products li.product .twm-catalog-media{height:208px;flex-basis:208px}.twm-catalog-filter-content{padding:18px 15px}}
@media(max-width:900px){body.post-type-archive-product .twm-commerce,body.tax-product_cat .twm-commerce,body.tax-product_tag .twm-commerce,body.search .twm-commerce{width:calc(100% - 40px);padding-top:24px}.twm-catalog-heading h1{font-size:38px}.twm-catalog-heading{margin-bottom:24px;padding-bottom:24px}.twm-catalog-layout{grid-template-columns:1fr;gap:24px}.twm-catalog-sidebar{position:static}.twm-catalog-filters>summary{pointer-events:auto;cursor:pointer;padding:15px 18px}.twm-catalog-filter-content{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:22px}.twm-catalog-filters:not([open])>.twm-catalog-filter-content{display:none}.twm-catalog-search,.twm-catalog-filter-group{margin:0}.twm-catalog-advice{display:none}.twm-catalog-toolbar{margin-bottom:20px}.woocommerce .twm-catalog-grid ul.products{gap:18px}}
@media(max-width:580px){.twm-catalog-heading h1{font-size:34px;letter-spacing:-1px}.twm-catalog-heading>p:last-child{font-size:13px}.twm-catalog-filter-content{grid-template-columns:1fr;padding:20px}.twm-catalog-toolbar{align-items:center;gap:10px}.twm-catalog-toolbar .woocommerce-result-count{font-size:10px}.twm-catalog-toolbar .woocommerce-ordering select{width:178px;font-size:10px}.woocommerce .twm-catalog-grid ul.products{grid-template-columns:1fr;gap:22px}.woocommerce .twm-catalog-grid ul.products li.product .twm-catalog-media{height:230px;flex-basis:230px}.twm-catalog-card-body{padding:23px}.woocommerce .twm-catalog-grid ul.products li.product .woocommerce-loop-product__title{font-size:21px}.twm-catalog-description{font-size:13px}.twm-catalog-detail{font-size:10px}.twm-catalog-price-block{height:70px}}
/* Keep archive controls independent of the general content/form styles. */
.twm-commerce .twm-catalog-sidebar details.twm-catalog-filters{padding:0;background:#fff;margin:0;border:1px solid #dddddd}
.twm-commerce .twm-catalog-filters>summary{margin:0;padding:21px 22px;font-size:15px;line-height:1.4}
.twm-commerce .twm-catalog-search input[type=search]{min-height:42px;height:42px;padding:10px 34px 10px 11px;font-family:inherit;font-size:12px;line-height:20px;border:1px solid #cccccc;background:#f7f7f7;border-radius:7px}
.twm-commerce .twm-catalog-filter-group h2{font-size:12px;line-height:1.4;margin:0 0 14px}
.twm-commerce .twm-catalog-card p.twm-catalog-kind{font-size:10px;line-height:18px;margin:0 0 11px}
.twm-commerce .twm-catalog-card p.twm-catalog-description{font-size:14px;line-height:23px;height:46px;margin:0 0 14px}
.twm-commerce .twm-catalog-card p.twm-catalog-detail{font-size:11px;line-height:18px;height:20px;margin:0 0 18px}
.woocommerce .twm-catalog-sidebar .widget_price_filter .price_slider_amount .button{float:none;display:block;font-size:11px;line-height:1.4;padding:8px 14px;min-height:34px;margin:0 0 10px;background:#f3f3f3;color:#173f49;border:1px solid #cccccc;border-radius:6px}
.woocommerce .twm-catalog-sidebar .widget_price_filter .price_slider_amount .price_label{float:none;display:block;font-size:10px;line-height:1.7;text-align:left;white-space:normal}
.twm-commerce .twm-catalog-advice h2{font-size:13px;line-height:1.5;margin:0 0 8px}.twm-commerce .twm-catalog-advice p{font-size:11px;line-height:1.8;margin:0 0 12px}
@media(max-width:900px){.twm-commerce .twm-catalog-filters>summary{padding:15px 18px}}

/* Reserve equal space for the full product benefit copy in every card. */
.twm-commerce .twm-catalog-card p.twm-catalog-description{height:92px;-webkit-line-clamp:4}

/* Service artwork uses the original landscape ratio instead of square crops. */
.woocommerce .twm-catalog-grid ul.products li.product.twm-catalog-service-card .twm-catalog-media img{padding:12px;object-fit:contain}

/* Compact catalog: retain a small, visible page heading after the products. */
.twm-commerce .twm-catalog-heading-footer{margin:30px 0 0;padding:18px 0 0;border:0;border-top:1px solid #ddd}
.twm-commerce .twm-catalog-heading-footer h1{font-size:16px;line-height:1.4;letter-spacing:0;margin:0 0 5px;font-weight:600}
.twm-commerce .twm-catalog-heading-footer>p:last-child{font-size:12px;line-height:1.7;margin:0;max-width:none;color:#737373}
.twm-catalog-filter-group nav a[aria-current=page] small{color:#ff2525;border-color:#fff}
.woocommerce .twm-catalog-sidebar .widget_price_filter .price_slider_amount .button:hover,.woocommerce .twm-catalog-sidebar .widget_price_filter .price_slider_amount .button:focus-visible{background:#ff2525;border-color:#ff2525;color:#fff}
.twm-catalog-filter-group nav a:hover{background:#e9e9e9;color:#173f49}
.twm-catalog-filter-group nav a[aria-current=page]:hover{background:#df2020;color:#fff}
.twm-catalog-advice a:hover,.twm-catalog-reset:hover{color:#ff2525}
.twm-commerce .twm-catalog-gva-summary{height:92px;margin:0 0 14px;color:#59666b}
.twm-commerce .twm-catalog-gva-summary>p{font-size:12px;line-height:18px;margin:0 0 4px;color:#757575}
.twm-commerce ul.twm-catalog-gva-plans{display:grid;gap:1px;list-style:none;margin:0;padding:0}
.twm-commerce ul.twm-catalog-gva-plans li{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:11px;line-height:21px;margin:0;padding:0;white-space:nowrap}
.twm-catalog-gva-plans strong{font-size:12px;font-weight:650;color:#173f49}
.twm-catalog-gva-plans small{font-size:10px;font-weight:400;color:#737373}
.twm-catalog-gva-plans strong small{margin-left:2px}

/* Lighter filters with a little more room in the sidebar. */
@media(min-width:1101px){.twm-catalog-layout{grid-template-columns:260px minmax(0,1fr)}}
@media(min-width:901px) and (max-width:1100px){.twm-catalog-layout{grid-template-columns:230px minmax(0,1fr)}}
.twm-commerce .twm-catalog-sidebar :is(summary,label,h2,a,button,.button,.price_label,.price_label span){font-weight:400}
.woocommerce .twm-catalog-sidebar .widget_price_filter .ui-slider-horizontal{height:3px}
.woocommerce .twm-catalog-sidebar .widget_price_filter .ui-slider .ui-slider-range{height:3px}
.woocommerce .twm-catalog-sidebar .widget_price_filter .ui-slider .ui-slider-handle{width:12px;height:12px;top:-4.5px;margin-left:-6px}
