
/* Shared block presentation. Properties stay scoped to each block. */
.cms-block{background-size:cover;background-position:center}
.cms-block.has-background>section,.cms-block.has-background>.benefits,.cms-block.has-backgroundImage>section{background:transparent!important}
.cms-block.has-textColor{color:var(--block-text)}
.cms-block.has-textColor :is(p,small,figcaption,.eyebrow,.hero__note){color:var(--block-text)}
.cms-block.has-headingColor :is(h1,h2,h3){color:var(--block-heading)}
.cms-block.has-maxWidth>section>.wrap,.cms-block.has-maxWidth>.wrap,.cms-block.has-maxWidth>.benefits>.wrap{max-width:var(--block-width);margin-inline:auto}
.cms-block.has-paddingTop{padding-top:var(--block-top)}.cms-block.has-paddingBottom{padding-bottom:var(--block-bottom)}
.cms-block.has-paddingX{padding-inline:var(--block-x)}.cms-block.has-paddingTop>section,.cms-block.has-paddingTop>.benefits{padding-top:0!important}.cms-block.has-paddingBottom>section,.cms-block.has-paddingBottom>.benefits{padding-bottom:0!important}
.cms-block.has-fontSize :is(p,.cms-rich,li){font-size:var(--block-font)}
.cms-block.has-headingSize :is(h1,h2){font-size:var(--block-heading-size)}
.cms-block.align-center .hero__actions{justify-content:center}.cms-block.align-right .hero__actions{justify-content:flex-end}
.cms-block.shadow-soft{box-shadow:0 8px 30px #20242114}.cms-block.shadow-strong{box-shadow:0 15px 45px #20242130}
.cms-block.has-radius{overflow:hidden}
.cms-block:not(:has(>section)):not(:has(>.benefits)):not(.cms-column .cms-block){max-width:var(--block-width,1200px);margin-inline:auto}
.hero-layout-reverse .hero__art{order:-1}.hero-layout-stack .hero__layout{grid-template-columns:1fr}.hero-layout-stack .hero__art{min-height:380px;max-width:800px;width:100%;margin:auto}
.hero-layout-stack .hero__copy{max-width:850px}
.row-ratio-wideLeft>.cms-columns:has(>.cms-column:nth-child(2):last-child){grid-template-columns:2fr 1fr}.row-ratio-wideRight>.cms-columns:has(>.cms-column:nth-child(2):last-child){grid-template-columns:1fr 2fr}
.row-vertical-middle>.cms-columns{align-items:center}.row-vertical-bottom>.cms-columns{align-items:end}
.cms-gallery,.cms-stats{display:grid;grid-template-columns:repeat(var(--catalog-cols,3),minmax(0,1fr));gap:28px;margin-top:32px}.cms-gallery figure{margin:0;min-width:0}.cms-gallery img{width:100%;height:280px;background:#f1f2e9}.cms-gallery figcaption{padding-top:18px}.cms-gallery p{margin:6px 0;color:var(--muted)}.cms-gallery b{font-size:18px}
.cms-banner{background:#edf0e5}.cms-banner .btn{margin-top:20px}.cms-banner p{max-width:700px}
.cms-quote{margin:0;padding:35px;border-left:4px solid var(--yellow);background:#f5f5ef}.cms-quote p{font-size:24px;line-height:1.5}.cms-quote footer{display:flex;gap:12px;flex-wrap:wrap}
.cms-stats strong{font-size:clamp(32px,5vw,66px);line-height:1.1;letter-spacing:-.05em}.cms-stats>div{padding:28px 0;border-top:2px solid var(--yellow)}.cms-stats p{color:var(--muted)}
.cms-divider{border:0;border-top:1px solid;margin:20px 0}.cms-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:35px;font-size:20px;font-weight:600;overflow-wrap:anywhere}.cms-contact-grid small{display:block;font-size:13px;font-weight:400;margin-top:10px}
.cms-catalog .catalog-grid{grid-template-columns:repeat(var(--catalog-cols,2),minmax(0,1fr))}.cms-catalog .catalog-grid.catalog-layout-list{grid-template-columns:1fr}.catalog-layout-list .product-card{display:grid;grid-template-columns:minmax(150px,30%) 1fr}.catalog-layout-list .product-card__image{min-height:220px}.catalog-layout-list .product-card__body{padding:25px}
.catalog-tools{gap:18px;flex-wrap:wrap}.catalog-filter{display:flex;flex-direction:column;gap:4px;font-size:10px;color:var(--muted)}.catalog-filter select{border:1px solid var(--line);background:white;padding:10px 12px;font-size:12px;min-width:160px;color:var(--ink)}.catalog-more{margin:35px auto 0;display:flex}
.cms-catalog:has(.catalog-grid[style]){min-width:0}
.cms-block .btn{max-width:100%}
@media(min-width:761px){.hide-desktop{display:none!important}}
@media(max-width:1000px) and (min-width:761px){.cms-catalog .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .hide-mobile{display:none!important}
 .cms-block.has-mobilePadding{padding:var(--block-mobile-padding)!important}.cms-block.has-mobilePadding>section{padding-block:0!important}
 .cms-block.has-mobileHeadingSize :is(h1,h2){font-size:var(--block-mobile-heading)}
 .cms-columns,.row-ratio-wideLeft>.cms-columns:has(>.cms-column:nth-child(2):last-child),.row-ratio-wideRight>.cms-columns:has(>.cms-column:nth-child(2):last-child){grid-template-columns:repeat(var(--mobile-cols,1),minmax(0,1fr))}
 .hero-layout-reverse .hero__art{order:0}
 .cms-gallery,.cms-catalog .catalog-grid{grid-template-columns:repeat(var(--mobile-cols,1),minmax(0,1fr))}
 .cms-gallery img{height:230px}.cms-contact-grid{grid-template-columns:1fr}.cms-stats{grid-template-columns:1fr 1fr;gap:18px}
 .cms-quote{padding:22px}.cms-quote p{font-size:19px}.catalog-tools{align-items:stretch}.catalog-tools .search{width:100%}.catalog-filter{flex:1}.catalog-filter select{width:100%;min-width:0}
 .catalog-layout-list .product-card{grid-template-columns:1fr}.catalog-layout-list .product-card__image{min-height:240px}
 .cms-catalog .product-card h3{font-size:26px;overflow-wrap:anywhere}.applications{grid-template-columns:1fr 1fr!important}
}


.category-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0 36px}.category-card{display:flex;gap:16px;align-items:center;padding:22px;border:1px solid #e1e3da;border-radius:14px;background:#fff;color:inherit;text-decoration:none}.category-card:hover{border-color:#c1a900;background:#fffdeb}.category-card img{width:90px;height:90px;object-fit:contain}.category-card h3{font-size:20px;margin:6px 0}.category-card p{font-size:14px;margin:0;color:#62675c}.category-card-icon{font-size:40px}.category-crumbs{display:flex;gap:12px;flex-wrap:wrap;padding-top:24px;padding-bottom:12px;font-size:14px}.category-card>div{flex:1;min-width:0}.category-card small{text-transform:uppercase;letter-spacing:.1em;font-size:10px}@media(max-width:900px){.category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.category-cards{grid-template-columns:1fr}.category-card{padding:16px}}

.cms-block h1{overflow-wrap:anywhere}@media(max-width:600px){.cms-block h1{font-size:clamp(30px,9vw,48px)}}
