/* Bouwmaterialen catalogus: compacte bouwgroothandel-indeling 2026-11-09.
   Behoud de bestaande prijs-, voorraad- en winkelwagenfuncties. */
.bm-page{padding-top:14px}
.bm-page .bm-heading{margin:12px 0;align-items:center}
.bm-page .bm-heading h1{font-size:clamp(23px,2.5vw,30px);line-height:1.18;letter-spacing:-.5px}
.bm-page .bm-heading p{font-size:13px;line-height:1.5;color:#637a89;max-width:620px}
.bm-page .bm-heading .vh-primary-button{font-size:12px;min-height:39px;padding:9px 13px;white-space:nowrap}
.bm-page .bm-service-strip{margin:8px 0 12px;gap:12px;font-size:12px;line-height:1.4}
.bm-page .bm-category-nav{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding:1px 1px 10px;margin:10px 0 7px;white-space:nowrap;scroll-snap-type:x proximity}
.bm-page .bm-category-nav a{flex:0 0 auto;scroll-snap-align:start;display:inline-flex;align-items:center;padding:10px 15px;border-radius:8px;border:1px solid #cbdce6;background:#fff;text-decoration:none;color:#16415d;font-weight:750;font-size:13px;transition:background .16s,border-color .16s}
.bm-page .bm-category-nav a:hover,.bm-page .bm-category-nav a:focus-visible{background:#e9f5fb;border-color:#82bcd9}
.bm-page .bm-search{background:#f8fbfd;padding:12px 14px;border-radius:9px;margin:0 0 10px}
.bm-page .bm-search label{font-size:12px;margin-bottom:5px}
.bm-page .bm-search input{font-size:14px;min-height:41px}
.bm-page .bm-search button{min-height:41px}
.bm-page .bm-quick-controls{margin:8px 0;font-size:14px}
.bm-page .bm-quick-grid{gap:10px 12px;margin-top:8px}
.bm-page .bm-quick-grid>.bm-group-label{scroll-margin-top:100px;font-size:18px;line-height:1.25;letter-spacing:-.2px;border-bottom:1px solid #d8e6ed;padding:13px 0 9px;margin:5px 0 1px}
.bm-page .bm-quick-grid>.bm-material-category{margin-bottom:4px}
.bm-page .bm-material-category-title{margin:6px 0 9px}
.bm-page .bm-material-category-title h3{font-size:15px}
.bm-page .bm-material-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.bm-page .bm-material-product{grid-template-columns:84px minmax(0,1fr);gap:10px;padding:10px;align-items:start;border-radius:8px}
.bm-page .bm-material-product-image{height:84px;width:84px;border-radius:6px}
.bm-page .bm-material-product-body{gap:5px}
.bm-page .bm-material-product h4{font-size:12.5px;line-height:1.26}
.bm-page .bm-material-product-price{font-size:14px!important;margin-top:2px}
.bm-page .bm-material-purchase{grid-template-columns:96px minmax(0,1fr);gap:5px}
.bm-page .bm-material-purchase .bm-order-qty{width:96px!important;height:33px!important;min-height:33px!important}
.bm-page .bm-material-purchase .bm-order-qty button{width:25px!important;min-width:25px}
.bm-page .bm-material-buy{font-size:10.5px;min-height:33px;padding:5px 4px}
.bm-page .bm-quick-grid .bm-quick-card[open]>summary{min-height:80px;gap:12px;padding:8px 10px}
.bm-page .bm-quick-grid .bm-quick-card[open]>summary>.bm-tile-photo{width:80px;height:71px;min-width:80px;min-height:71px}
.bm-page .bm-quick-grid .bm-tile-summary>strong{font-size:15px}
.bm-page .bm-quick-grid .bm-tile-summary>small{font-size:11px}
.bm-page .bm-quick-grid .bm-quick-card[open] .bm-quick-content{padding:5px 12px 10px!important}
.bm-page .bm-expand-products{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;max-width:100%;min-height:38px;padding:8px 12px;border:1px solid #a9cfdf;border-radius:7px;background:#f3fafd;color:#07577d;font-weight:750;font-size:12px;cursor:pointer;margin:8px 0}
.bm-page .bm-expand-products:hover{background:#e3f3fb}
.bm-page .bm-enhanced .bm-material-product:nth-child(n+9){display:none!important}
.bm-page .bm-enhanced.bm-expanded .bm-material-product:nth-child(n+9){display:grid!important}
.bm-page .bm-enhanced .bm-order-row.bm-extra-row{display:none!important}
.bm-page .bm-enhanced.bm-expanded .bm-order-row.bm-extra-row{display:grid!important}
.bm-page .bm-search-results{scroll-margin-top:105px}
.bm-page .bm-guide{margin-top:27px}
.bm-page .bm-guide>p{max-width:800px;font-size:13px;line-height:1.6}
@media(max-width:1100px){
 .bm-page .bm-material-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 .bm-page .bm-heading{align-items:stretch;gap:8px}
 .bm-page .bm-heading .vh-primary-button{align-self:flex-start}
 .bm-page .bm-category-nav{margin:7px -5px 8px;padding-left:5px;padding-right:5px}
 .bm-page .bm-category-nav a{padding:9px 12px;font-size:12px}
 .bm-page .bm-service-strip{font-size:11px}
 .bm-page .bm-material-product-grid{grid-template-columns:1fr;gap:8px}
 .bm-page .bm-material-product{grid-template-columns:86px minmax(0,1fr);gap:10px;padding:9px}
 .bm-page .bm-material-product-image{width:86px;height:86px}
 .bm-page .bm-material-product h4{font-size:13px}
 .bm-page .bm-material-purchase{grid-template-columns:100px minmax(0,1fr)}
 .bm-page .bm-material-purchase .bm-order-qty{width:100px!important}
 .bm-page .bm-material-buy{font-size:11px}
 .bm-page .bm-quick-grid>.bm-group-label{scroll-margin-top:85px;font-size:17px}
 .bm-page .bm-quick-grid .bm-quick-card[open]>summary{min-height:78px}
 .bm-page .bm-quick-grid .bm-tile-summary>strong{font-size:14px}
}
@media(max-width:370px){
 .bm-page .bm-material-product{grid-template-columns:72px minmax(0,1fr)}
 .bm-page .bm-material-product-image{width:72px;height:72px}
 .bm-page .bm-material-purchase{grid-template-columns:94px minmax(0,1fr)}
 .bm-page .bm-material-purchase .bm-order-qty{width:94px!important}
}
