
/* Clean checkout select: never overflow its grid cell */
.checkoutFormGrid .field,.checkoutFormGrid .select{min-width:0;max-width:100%;}
.checkoutFormGrid select{display:block;width:100%;padding-right:32px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}
/* Size filters */
.dimensionFilters{min-width:0;margin:18px 0;padding:15px;border:1px solid #dae5eb;border-radius:13px;background:#f7fafb}
.dimensionFilters legend{padding:0 7px;font-weight:800;font-size:13px;color:#24465a}
.dimensionFilters p{font-size:11px;line-height:1.5;margin:0 0 12px}
.dimensionFilterGrid{display:grid;gap:12px}
.dimensionFilter>strong{display:block;font-size:12px;margin-bottom:5px}
.dimensionFilter>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.dimensionFilter .input{width:100%;min-width:0}
.dimsMeta{display:inline-block;color:#516d7d;font-size:11px}
/* Category navigation + SEO below pagination */
.categoryPagination{display:flex;gap:8px;justify-content:center;align-items:center;margin:25px 0 17px;flex-wrap:wrap}
.categoryPagination button{padding:10px 13px;border:1px solid #d9e5eb;border-radius:11px;background:#fff;color:#224257;cursor:pointer;font-weight:800}
.categoryPagination button[aria-current="page"]{background:#183446;color:#fff}
.categorySeoText{margin-top:22px}
/* Estimate flow */
.estimateChoice{border:1px solid #d9e5eb;border-radius:20px;background:#f8fbfc;padding:26px;margin:16px 0 26px}
.estimateChoice h2{margin:0 0 6px;font-size:24px;color:#153245}
.estimateChoice>p{color:#607b8b;margin:0 0 20px;font-size:14px}
.estimateChoiceGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.estimateChoiceCard{display:flex;gap:9px;flex-direction:column;align-items:flex-start;text-align:left;border:2px solid #d9e6ec;border-radius:16px;padding:20px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.estimateChoiceCard:hover,.estimateChoiceCard:focus-visible{border-color:#367898;box-shadow:0 8px 26px rgba(24,52,70,.08)}
.estimateChoiceCard strong{color:#183547;font-size:16px}
.estimateChoiceCard small{color:#607a89;line-height:1.5}
.estimateChoiceIcon{font-size:26px;color:#2e708c}
.estimateBack{margin:10px 0 18px}
@media(max-width:700px){.estimateChoice{padding:17px}.estimateChoiceGrid{grid-template-columns:1fr}.estimateChoiceCard{padding:15px}}

.estimateChoiceCard{text-decoration:none;line-height:1.4;color:inherit}
.estimateChoiceCard:visited{color:inherit}
body[data-page="specification"] main{padding:45px 0 80px}
body[data-page="specification"] .specUploadCard{margin-top:22px}
@media(max-width:700px){body[data-page="specification"] main{padding:23px 0 50px}}

/* Long category names must not collide with the catalogue prices. */
.productCard .priceRow{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;min-width:0}
.productCard .priceRow .price{white-space:nowrap;overflow-wrap:normal;word-break:keep-all;min-width:0;max-width:100%;font-size:clamp(15px,1.45vw,19px);line-height:1.3}
.productCard .priceRow .badge{display:block;white-space:normal;overflow-wrap:anywhere;word-break:normal;text-align:left;max-width:100%;align-self:flex-start;min-width:0;line-height:1.45}
.productCard .productMeta .tag{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.45}
@media(max-width:600px){.productCard .priceRow .price{font-size:16px}}
