/* Shared catalogue controls and category landing pages */
.catalog-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,260px);align-items:end;gap:15px;margin:4px 0 15px}
.product-filter-row{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.product-filter-button{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 14px;border:1px solid rgba(24,78,82,.12);border-radius:999px;background:#fff;color:#48636b;font-size:10px;font-weight:700;cursor:pointer}
.product-filter-button:hover{border-color:#81bbb4;color:#167d73}
.product-filter-button.is-active{border-color:transparent;background:linear-gradient(120deg,#177d73,#255f7c);color:#fff;box-shadow:0 7px 17px rgba(30,106,112,.16)}
.catalog-search,.catalog-sort{display:grid;gap:6px;color:#74868b;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.catalog-search input,.catalog-sort select{width:100%;height:42px;padding:0 12px;border:1px solid #dce6e4;border-radius:12px;background:#fff;color:#254c56;font:inherit;font-size:11px;letter-spacing:normal;text-transform:none}
.catalog-search input:focus,.catalog-sort select:focus{outline:2px solid rgba(34,139,128,.22);border-color:#258a80}
.product-filter-count{margin:0 0 15px;color:#788b90;font-size:10px}
.catalog-load-row{display:flex;justify-content:center;margin:27px 0 0}
.catalog-load-more{min-height:45px;padding:0 23px;border:1px solid #d4e2df;border-radius:999px;background:linear-gradient(130deg,#fff,#eff6f4);color:#315b62;font-size:11px;font-weight:750;cursor:pointer}
.catalog-load-more:hover{border-color:#75b3aa;box-shadow:0 8px 20px rgba(36,88,89,.1)}
.catalog-load-more[hidden],.catalog-empty[hidden]{display:none!important}
.catalog-empty{margin:18px 0;padding:24px;border:1px dashed #cbdad7;border-radius:16px;color:#71858a;text-align:center;font-size:12px}
.category-card-link{display:block;height:100%;color:inherit}
.category-info .category-product-count{display:block;margin:-4px 0 13px;color:#7a8983;font-size:9px;font-weight:650;letter-spacing:.04em}
.category-info .text-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--line);font-size:10px}
.category-info .text-link span{font-size:16px;transition:transform .18s ease}
.category-card:hover .category-info .text-link span{transform:translateX(4px)}
.category-page{padding-bottom:70px}
.category-page-hero{display:flex;align-items:end;justify-content:space-between;gap:35px;padding:28px 0 38px}
.category-page-hero h1{max-width:760px;margin:12px 0;font-size:clamp(38px,5.2vw,66px);line-height:1.02;letter-spacing:-.05em}
.category-page-hero p{max-width:760px;margin:0;color:#647a81;font-size:13px;line-height:1.8}
.category-page-hero .category-page-count{margin-top:11px;color:#298178;font-size:10px;font-weight:750}
.category-cta{display:inline-flex;flex:0 0 auto;align-items:center;gap:12px;padding:14px 18px;border-radius:999px;background:linear-gradient(120deg,#17887d,#215d78);color:#fff;font-size:10px;font-weight:750;box-shadow:0 8px 20px rgba(27,116,113,.17)}
.category-page-nav{display:flex;gap:8px;overflow:auto;padding:15px 0 17px;border-top:1px solid #e0e9e6;border-bottom:1px solid #e0e9e6;scrollbar-width:thin}
.category-nav-link{flex:0 0 auto;padding:9px 13px;border:1px solid #e0e9e6;border-radius:999px;color:#60777e;font-size:10px;font-weight:700}
.category-nav-link:hover,.category-nav-link.is-current{border-color:transparent;background:#e8f4f0;color:#1d7772}
.category-page-products{padding:52px 0 60px}
.category-page-products-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:23px}
.category-page-products-head h2{margin:9px 0 0;font-size:clamp(27px,3.4vw,39px);letter-spacing:-.035em}
.category-page-products-head .catalog-search{width:min(290px,100%)}
.category-project-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px;border-radius:22px;background:radial-gradient(circle at 90% 0,rgba(86,193,181,.25),transparent 33%),linear-gradient(125deg,#123f50,#176a6c 58%,#1e536c);color:#fff}
.category-project-cta h2{max-width:600px;margin:9px 0;font-size:clamp(24px,3vw,34px);line-height:1.12}
.category-project-cta p{max-width:620px;margin:0;color:#d2e4e2;font-size:11px;line-height:1.75}
.category-project-cta .pd-actions{flex:0 0 auto}
.category-project-cta .pd-button-secondary{border-color:rgba(255,255,255,.37);background:rgba(255,255,255,.1);color:#fff}
.category-page .product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.category-page .product-card{min-width:0;display:flex;flex-direction:column;border:1px solid rgba(29,48,42,.1);border-radius:18px;background:#fff;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.category-page .product-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(22,49,39,.09)}
.category-page .product-card-media{display:block;aspect-ratio:1/1;overflow:hidden;background:#e9eeea}
.category-page .product-card-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.category-page .product-card:hover .product-card-media img{transform:scale(1.025)}
.category-page .product-card-content{display:flex;flex:1;flex-direction:column;padding:16px}
.category-page .product-card-category{color:#9b6149;font-size:9px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}
.category-page .product-card-highlight{display:inline-flex;width:max-content;max-width:100%;margin-top:8px;padding:5px 8px;border-radius:999px;background:linear-gradient(120deg,#edf7f3,#f7efe8);color:#47636a;font-size:10px;font-weight:700}
.category-page .product-card h3{margin:12px 0 7px;color:#203e46;font-size:16px;line-height:1.3}
.category-page .product-card-content>p{min-height:58px;margin:0;color:#718188;font-size:10px;line-height:1.65}
.category-page .product-card-specs{margin:12px 0;color:#536a70;font-size:9px}
.category-page .product-card-specs div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid #edf0ee}
.category-page .product-card-specs dt{color:#839198}
.category-page .product-card-specs dd{margin:0;font-weight:700}
.category-page .product-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:auto}
.category-page .product-card-actions .button{min-height:40px;display:flex;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;font-size:9px;font-weight:750}
.category-page .button-rust{background:#197b77;color:#fff}
.category-page .button-quiet{border:1px solid #dce6e4;background:#fff;color:#315b62}
.category-page .product-detail-link{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:11px;padding-top:10px;border-top:1px solid #edf0ee;color:#247270;font-size:10px;font-weight:800}
@media(max-width:920px){.catalog-toolbar{grid-template-columns:1fr 1fr}.catalog-toolbar .product-filter-row{grid-column:1/-1}.category-page-hero{align-items:start;flex-direction:column}.category-project-cta{align-items:start;flex-direction:column}.category-page .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.catalog-toolbar{grid-template-columns:1fr}.catalog-toolbar .product-filter-row{grid-column:auto;flex-wrap:nowrap;overflow:auto;padding:2px 1px 8px}.product-filter-button{flex:0 0 auto}.category-page-hero{padding:14px 0 28px}.category-page-hero h1{font-size:39px}.category-cta{width:100%;justify-content:center}.category-page-products{padding:38px 0}.category-page-products-head{align-items:start;flex-direction:column}.category-page-products-head .catalog-search{width:100%}.category-page .product-grid{grid-template-columns:1fr}.category-page .product-card-content>p{min-height:0}.category-project-cta{padding:23px 19px}.category-project-cta .pd-actions{width:100%}.category-project-cta .pd-actions .pd-button{flex:1}.category-info .category-product-count{margin-top:0}}