.product-catalog-page{background:#fff}
.catalog-hero{height:526px;padding:60px 0;background:#d7e5f2 var(--catalog-hero-image) center/cover no-repeat;overflow:hidden}
.catalog-hero-content{height:100%;position:relative}
.catalog-hero h1{width:50%;margin:0 0 20px;font-size:42px;line-height:1;font-weight:500;letter-spacing:-.025em}
.catalog-hero-content>p{width:48%;max-width:610px;margin:0 0 42px;font-size:14px;line-height:1.55}
.catalog-hero--light-text{color:#fff}
.catalog-hero--light-text .catalog-hero-content>p{color:#fff}
.catalog-hero:not(.catalog-hero--butterfly) .catalog-hero-content{display:flex;flex-direction:column;justify-content:flex-start;padding-top:32px}
.catalog-hero:not(.catalog-hero--butterfly) .catalog-hero-content>p{max-width:650px}
.catalog-guide{display:inline-flex;align-items:center;justify-content:center;min-width:196px;height:48px;margin-bottom:16px;border:1px solid var(--red);border-radius:9px;background:#fff;color:var(--red);font-size:13px;font-weight:600}
.catalog-family-cards{display:flex;gap:20px}
.catalog-family-cards article{width:250px;height:165px;padding:20px;border-radius:10px;background:#fff;box-shadow:0 4px 8px rgba(0,0,0,.08);display:flex;flex-direction:column}
.catalog-family-cards article.active{outline:2px solid rgba(200,16,46,.2)}
.catalog-family-cards h3{margin:0 0 9px;color:var(--red);font-size:14px;line-height:18px}
.catalog-family-cards p{margin:0;font-size:12px;line-height:1.5;color:#222}
.catalog-family-cards a{margin-top:auto;color:var(--red);font-size:11px;font-weight:600}

.catalog-section{padding:70px 0 80px}
.catalog-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:48px}
.catalog-title-row h2{margin:0;font-size:42px;line-height:1.2;font-weight:500;letter-spacing:-.025em}
.mobile-filter-toggle{display:none}
.catalog-layout{display:grid;grid-template-columns:420px minmax(0,1fr);align-items:start}
.catalog-filters{border-right:1px solid #e5e5e5;min-height:1290px;padding-right:40px}
.filter-heading{height:54px;display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:14px}
.filter-heading h3{margin:0;font-size:17px;line-height:24px}
.filter-heading a{color:var(--red);font-size:13px;font-weight:600}
.filter-group{border:0;margin:0 0 28px;padding:0}
.filter-group legend{width:100%;margin:0 0 13px;padding:0;font-size:14px;font-weight:700}
.filter-group label,.filter-options label{display:flex;align-items:center;gap:10px;min-height:30px;font-size:13px;cursor:pointer}
.filter-group input,.filter-options input{accent-color:var(--red)}
.filter-group input:checked+span{font-weight:600}
.filter-dropdown{margin:0 0 23px;position:relative}
.filter-dropdown summary{list-style:none;margin-bottom:10px;font-size:13px;font-weight:500;cursor:pointer}
.filter-dropdown summary::-webkit-details-marker{display:none}
.filter-dropdown summary:after{content:"\f078";font-family:"Font Awesome 6 Free";font-weight:900;float:right;font-size:10px;transition:transform .2s}
.filter-dropdown[open] summary:after{transform:rotate(180deg)}
.filter-options{border:1px solid #e1e1e1;border-radius:8px;padding:10px 12px;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.08)}
.industries-filter{margin-top:26px}
.apply-filters{width:100%;height:42px;border:0;border-radius:8px;background:var(--red);color:#fff;font-weight:600}

.catalog-results{min-width:0}
.catalog-toolbar{height:68px;border-top:1px solid #e6e6e6;border-bottom:1px solid #e6e6e6;display:flex;align-items:center;justify-content:space-between;padding-left:40px}
.catalog-toolbar p{margin:0;font-size:12px}.catalog-toolbar small{color:#777;margin-left:4px}
.compare-toggle{width:195px;height:50px;border:0;border-radius:9px;background:var(--red);color:#fff;font-size:13px;font-weight:600}
.compare-toggle[aria-pressed="true"]{background:#111}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;row-gap:36px;padding:24px 0 28px}
.catalog-card{position:relative;box-sizing:border-box;min-height:340px;padding:20px 18px 17px;text-align:center;background:#fff;border:1px solid transparent;border-radius:10px;transition:box-shadow .2s,border-color .2s;display:flex;flex-direction:column;align-items:center}
.catalog-card:hover,.catalog-card:focus-within{z-index:2;border-color:#ededed;box-shadow:0 7px 16px rgba(0,0,0,.13)}
.catalog-image{height:168px;width:100%;display:flex;align-items:center;justify-content:center}
.catalog-image img{display:block;width:auto;max-width:168px;height:168px;object-fit:contain}
.catalog-card>p{margin:8px 0 2px;font-size:12px;line-height:16px}
.catalog-series{color:var(--red);font-size:13px;font-weight:600}
.catalog-card-actions{position:static;width:238px;height:40px;margin-top:24px;flex:none;display:flex;gap:20px;overflow:hidden;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .18s ease}
.catalog-card:hover .catalog-card-actions,.catalog-card:focus-within .catalog-card-actions{visibility:visible;opacity:1;pointer-events:auto}
.catalog-card-actions a{height:40px;flex:1;border:1px solid var(--red);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--red);background:#fff;font-size:12px;font-weight:600}
.catalog-card-actions a:first-child{background:var(--red);color:#fff}
.compare-check{display:none;position:absolute;top:12px;left:14px;z-index:3;padding:6px 8px;border-radius:6px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.13);font-size:11px;gap:6px;align-items:center}
.compare-mode .compare-check{display:flex}
.compare-check input{accent-color:var(--red)}
.catalog-empty{min-height:430px;margin-left:40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.catalog-empty h3{font-size:26px;margin:0 0 10px}.catalog-empty p{margin:0 0 20px}.catalog-empty a{padding:12px 18px;border-radius:8px;background:var(--red);color:#fff}
.catalog-pagination{height:50px;display:flex;align-items:center;justify-content:center;gap:8px}
.catalog-pagination span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:12px}.catalog-pagination span.active{background:var(--red);color:#fff}

.compare-tray{position:fixed;z-index:1600;left:50%;bottom:24px;transform:translateX(-50%);width:min(760px,calc(100vw - 32px));min-height:78px;padding:14px 18px;border-radius:12px;background:#fff;box-shadow:0 12px 38px rgba(0,0,0,.25);display:grid;grid-template-columns:150px 1fr 70px;align-items:center;gap:14px}
.compare-tray[hidden]{display:none}.compare-tray>div:first-child{display:flex;flex-direction:column}.compare-count{font-size:12px;color:#777}.compare-items{display:flex;gap:8px;flex-wrap:wrap}.compare-items span{padding:7px 10px;border-radius:18px;background:#f1f1f1;font-size:12px}.compare-clear{border:0;background:transparent;color:var(--red);font-weight:600}

@media(min-width:1600px){
  .catalog-hero h1{font-size:55.488px}
  .catalog-section{padding-top:70px}
}

@media(max-width:1100px){
  .catalog-layout{grid-template-columns:300px minmax(0,1fr)}
  .catalog-filters{padding-right:24px}.catalog-grid{grid-template-columns:repeat(2,1fr)}
  .catalog-family-cards article{width:220px}
}

@media(max-width:820px){
  .catalog-hero{height:auto;min-height:620px;padding:42px 0;background-position:62% center;position:relative}
  .catalog-hero:before{content:"";position:absolute;inset:0;background:rgba(220,232,242,.78)}
  .catalog-hero-content{position:relative}
  .catalog-hero h1,.catalog-hero-content>p{width:100%;max-width:520px}
  .catalog-family-cards{overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}
  .catalog-family-cards article{flex:0 0 245px;scroll-snap-align:start}
  .catalog-section{padding-top:50px}
  .catalog-title-row{margin-bottom:25px}
  .catalog-title-row h2{font-size:34px}
  .mobile-filter-toggle{display:block;border:1px solid var(--red);border-radius:7px;background:#fff;color:var(--red);padding:9px 14px}
  .catalog-layout{grid-template-columns:1fr}
  .catalog-filters{display:none;min-height:0;border:0;padding:0 0 30px}
  .catalog-filters.open{display:block}
  .catalog-toolbar{padding-left:0}.compare-toggle{width:140px}
  .catalog-grid{grid-template-columns:repeat(2,1fr)}
  .compare-tray{grid-template-columns:110px 1fr 54px}
}

@media(max-width:560px){
  .catalog-hero{min-height:610px}
  .catalog-hero h1{font-size:40px}
  .catalog-grid{grid-template-columns:1fr}
  .catalog-card{min-height:290px}
  .catalog-card-actions{width:min(238px,100%);height:40px;margin-top:30px;visibility:visible;opacity:1;pointer-events:auto;transform:none}
  .catalog-toolbar{height:auto;min-height:70px;gap:12px}.catalog-toolbar p{max-width:55%}
  .compare-tray{grid-template-columns:1fr auto}.compare-items{grid-column:1/-1;grid-row:2}.compare-clear{grid-column:2;grid-row:1}
}

@media(min-width:821px){
  .catalog-hero h1{font-size:38px}
  .catalog-hero-content>p{font-size:12px}
  .catalog-title-row h2{font-size:34px}
  .filter-heading h3{font-size:15px}
}
@media(min-width:1600px){.catalog-hero h1{font-size:42px}.catalog-title-row h2{font-size:36px}}

/* Product catalogue type scale measured against the source site at the same CSS viewport. */
.product-catalog-page{font-family:var(--font-regular)}
.catalog-hero h1,.catalog-title-row h2{font-family:var(--font-bold);font-weight:500}
.catalog-hero-content>p,.catalog-family-cards p,.filter-group label,.filter-options label,.catalog-toolbar p,.catalog-card>p{font-family:var(--font-regular);font-weight:400}
.catalog-guide,.catalog-family-cards a,.filter-heading a,.compare-toggle,.catalog-series,.catalog-card-actions a{font-family:var(--font-semibold)}
.catalog-family-cards h3{font-family:var(--font-bold);font-weight:500}
.filter-heading h3,.filter-group legend{font-family:var(--font-semibold);font-weight:500}

@media(min-width:821px){
  .catalog-hero{height:calc(32.875 * var(--source-rem));padding:calc(3.75 * var(--source-rem)) 0;margin-top:calc(-.375 * var(--source-rem))}
  .catalog-hero h1{width:calc(39.562 * var(--source-rem));height:calc(3.188 * var(--source-rem));margin-bottom:calc(1.25 * var(--source-rem));font-size:calc(3.468 * var(--source-rem));line-height:1;letter-spacing:normal}
  .catalog-hero-content>p{width:calc(39.562 * var(--source-rem));max-width:none;height:calc(3.5 * var(--source-rem));margin-bottom:calc(1.25 * var(--source-rem));font-size:12px;line-height:1.1}
  .catalog-guide{font-size:calc(.875 * var(--source-rem));line-height:1.5;font-weight:400}
  .catalog-family-cards h3{font-size:calc(.938 * var(--source-rem));line-height:1.2}
  .catalog-family-cards p{font-size:calc(.875 * var(--source-rem));line-height:1.5}
  .catalog-family-cards a{font-size:calc(.75 * var(--source-rem));line-height:1.5;font-weight:400}
  .catalog-title-row h2{font-size:calc(2.625 * var(--source-rem));line-height:1.2;letter-spacing:normal}
  .filter-heading h3{font-size:calc(1.125 * var(--source-rem));line-height:1.2}
  .filter-heading a{font-size:calc(.875 * var(--source-rem));line-height:1.5;font-weight:400}
  .filter-group legend{font-size:calc(.875 * var(--source-rem));line-height:1.5}
  .filter-group label,.filter-options label,.filter-dropdown summary{font-size:calc(.875 * var(--source-rem));line-height:1.5;font-weight:400}
  .compare-toggle{font-size:calc(.875 * var(--source-rem));line-height:1.5;font-weight:400}
  .catalog-toolbar p{font-size:calc(.75 * var(--source-rem));line-height:1.5}
  .catalog-card>p{font-size:calc(.75 * var(--source-rem));line-height:1.5}
  .catalog-series{font-size:calc(.75 * var(--source-rem));line-height:1.5;font-weight:400}
  .catalog-card-actions a{font-size:calc(.75 * var(--source-rem));line-height:1.5;font-weight:400}
  .catalog-section{margin-top:calc(3.75 * var(--source-rem));padding-top:var(--source-rem)}
  .catalog-title-row{margin-bottom:calc(2.5 * var(--source-rem))}
}
@media(min-width:1681px){.catalog-hero-content>p{font-size:14px}}

/* Source card geometry measured at the same CSS viewport as bray.com. */
@media(min-width:821px){
  .catalog-guide{width:195px;min-width:195px;height:50px;margin-bottom:20px;border-radius:10px;font-size:14px;line-height:21px}
  .catalog-family-cards{gap:20px}
  .catalog-family-cards article{width:250px;height:165px;padding:20px;border:1px solid #ececec;border-radius:10px}
  .catalog-family-cards h3{margin:0;font-size:15.008px;line-height:18.0096px}
  .catalog-family-cards p{height:84px;margin:10px 0 0;font-size:14px;line-height:21px}
  .catalog-family-cards a{font-size:12px;line-height:18px}
  .catalog-layout{border-top:1px solid #e5e5e5}
  .catalog-toolbar{border-top:0}
}
.catalog-pagination{height:auto}
.catalog-pagination span{width:auto;height:auto;border-radius:0}
.catalog-pagination span.active{background:transparent;color:var(--red)}

/* Source product-directory geometry. At Bray's 11px desktop root this yields
   a 25/75 filter/results split, 134x34 compare control and 241x187 cards. */
@media(min-width:821px){
  .catalog-title-row{margin-bottom:calc(3.073 * var(--source-rem))}
  .catalog-layout{grid-template-columns:25% 75%;align-items:stretch}
  .catalog-filters{min-height:0;padding:calc(2 * var(--source-rem)) calc(2.5 * var(--source-rem)) 0 0}
  .filter-heading{height:auto;min-height:calc(1.85 * var(--source-rem));align-items:flex-start;margin-bottom:calc(1.5 * var(--source-rem))}

  .catalog-toolbar{height:calc(4.125 * var(--source-rem));padding:0 calc(2.5 * var(--source-rem)) 0 calc(2.75 * var(--source-rem))}
  .compare-toggle{width:calc(12.188 * var(--source-rem));height:calc(3.125 * var(--source-rem));flex:none;border-radius:10px;padding:0}

  .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:calc(.125 * var(--source-rem))}
  .catalog-card{height:calc(17.01 * var(--source-rem));min-height:calc(17.01 * var(--source-rem));padding:calc(2.25 * var(--source-rem)) 0 0;border:0;border-radius:10px 10px 0 0;box-shadow:none;overflow:visible;transition:box-shadow .2s ease}
  .catalog-card:hover,.catalog-card:focus-within{z-index:3;border:0;border-radius:10px 10px 2px 2px;box-shadow:0 6px 16px -4px #dcdcdc}
  .catalog-image{width:100%;height:calc(10.5 * var(--source-rem));flex:none}
  .catalog-image img{width:auto;max-width:100%;height:calc(10.5 * var(--source-rem));object-fit:contain}
  .catalog-card>p{width:100%;margin:0;padding:0 calc(.938 * var(--source-rem));line-height:calc(1.125 * var(--source-rem))}
  .catalog-series{display:block;width:100%;margin:0 0 calc(.938 * var(--source-rem));padding:0 calc(.75 * var(--source-rem));line-height:calc(1.125 * var(--source-rem))}
  .catalog-card-actions{position:absolute;z-index:4;left:0;top:100%;bottom:auto;width:100%;height:calc(3.573 * var(--source-rem));margin:0;padding:0 var(--source-rem) var(--source-rem);transform:none;display:none;align-items:flex-start;justify-content:center;gap:calc(1.275 * var(--source-rem));overflow:visible;visibility:visible;opacity:1;pointer-events:auto;background:#fff;border-radius:2px 2px 10px 10px;box-shadow:0 6px 16px -4px #dcdcdc;transition:none}
  .catalog-card:hover .catalog-card-actions,.catalog-card:focus-within .catalog-card-actions{display:flex;visibility:visible;opacity:1;pointer-events:auto}
  .catalog-card-actions a{flex:0 0 calc(5.875 * var(--source-rem));width:calc(5.875 * var(--source-rem));height:calc(2.5 * var(--source-rem));padding:var(--source-rem) calc(2 * var(--source-rem));border-color:#c8102e;border-radius:10px;color:#c8102e;font-size:calc(.875 * var(--source-rem));line-height:1.5;font-weight:400}
  .catalog-card-actions a:first-child{border:0;background:#c8102e;color:#fff}
}
