/* Homepage layout inspired by broad industrial catalog storefronts; MH-USA branding and content. */
.catalog-home{--ch-blue:#0E58CB;--ch-navy:#10243e;--ch-text:#202b3c;--ch-line:#dbe3ee;color:var(--ch-text);background:#fff}
.catalog-home a{text-decoration:none}
.catalog-home a:focus-visible,.catalog-home button:focus-visible{outline:3px solid #83b1ff;outline-offset:3px}
.catalog-home-inner{max-width:1440px;margin:auto;padding:0 26px}
.catalog-home .catalog-deal-strip{display:block;background:#e7f0ff;color:#0E58CB;text-align:center;padding:11px 16px;font-size:13px;font-weight:800;letter-spacing:.025em}
.catalog-home .catalog-deal-strip:hover{background:#d5e7ff}
.catalog-feature-wrap{max-width:1440px;margin:30px auto 0;padding:22px 20px 0;background:linear-gradient(#f7f9fc 0 62%,#fff 62%)}
.catalog-feature-wrap h1{text-align:center;text-transform:uppercase;font-size:clamp(21px,2vw,30px);line-height:1.2;margin:0 0 20px;letter-spacing:-.025em;color:#202b3c}
.catalog-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.catalog-feature{display:flex;flex-direction:column;min-width:0;padding:15px;background:#fff;border:1px solid #e1e6ed;border-radius:4px;box-shadow:0 3px 9px rgba(15,35,63,.12)}
.catalog-feature img{width:100%;aspect-ratio:2.4;object-fit:cover;border-radius:3px}
.catalog-feature h2{font-size:clamp(16px,1.4vw,20px);line-height:1.25;margin:13px 0 7px;min-height:2.5em}
.catalog-feature p{font-size:13px;line-height:1.4;color:#536175;margin:0 0 13px}
.catalog-feature a{align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;min-width:188px;min-height:42px;margin-top:auto;padding:9px 18px;border-radius:4px;background:var(--ch-blue);color:#fff;font-size:13px;font-weight:800}
.catalog-feature a:hover{background:#0A429B}
.catalog-seasonal{max-width:1388px;min-height:92px;margin:40px auto 30px;display:grid;grid-template-columns:270px minmax(0,1fr) auto;align-items:center;background:var(--ch-blue);color:#fff}
.catalog-seasonal img{width:100%;height:92px;object-fit:cover}
.catalog-seasonal-copy{display:flex;flex-direction:column;padding:10px 24px}
.catalog-seasonal strong{font-size:clamp(17px,1.6vw,24px);line-height:1.25}
.catalog-seasonal small{font-size:12px;margin-top:3px;color:#e2efff}
.catalog-seasonal a{margin-right:24px;min-width:180px;text-align:center;padding:13px 20px;border:2px solid #fff;border-radius:4px;background:#fff;color:#0E58CB;font-weight:800}
.catalog-seasonal a:hover{background:#eaf2ff}
.catalog-section{max-width:1440px;margin:0 auto;padding:0 26px 34px}
.catalog-section h2{margin:0 0 16px;font-size:clamp(21px,1.8vw,28px);line-height:1.25}
.catalog-categories{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.catalog-category{min-width:0;min-height:152px;padding:10px 8px;border:1px solid #d7dfe9;border-radius:3px;text-align:center;color:#3a4659;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;font-size:12px;font-weight:800;line-height:1.25}
.catalog-category:hover{border-color:var(--ch-blue);box-shadow:0 5px 15px rgba(0,75,160,.1);color:#0E58CB}
.catalog-category img{width:100%;height:104px;object-fit:contain}
.catalog-industries{background:#f5f8fc;padding:32px 0}
.catalog-industries .catalog-section{padding-bottom:0}
.catalog-industries-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;padding:8px;border:5px solid var(--ch-blue);background:#fff}
.catalog-industry{display:flex;flex-direction:column;min-width:0;overflow:hidden;color:var(--ch-navy);background:#fff}
.catalog-industry img{width:100%;height:155px;object-fit:cover;display:block;transition:transform .25s ease}
.catalog-industry span{display:flex;align-items:center;justify-content:center;min-height:30px;padding:4px 2px;color:var(--ch-navy);font-size:10px;font-weight:800;line-height:1.2;text-transform:uppercase;text-align:center}
.catalog-industry:hover img{transform:scale(1.04)}
.catalog-products{padding-top:28px}
.catalog-heading-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px}
.catalog-heading-row a{color:#0E58CB;font-size:13px;font-weight:800}
.catalog-products .product-rail{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;border:0}
.catalog-product-card{display:flex;flex-direction:column;min-width:0;padding:10px;background:#fff;border:1px solid var(--ch-line);border-radius:3px}
.catalog-product-photo{display:flex;align-items:center;justify-content:center;height:158px}
.catalog-product-photo img{width:100%;height:100%;object-fit:contain}
.catalog-product-name{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-height:1.35;height:4.05em;margin:10px 0 3px;color:var(--ch-text);font-size:12px;font-weight:700}
.catalog-product-name:hover{color:var(--ch-blue)}
.catalog-product-sku{color:#617188;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.catalog-product-price{margin-top:auto;padding-top:12px;color:#152a43;font-size:18px;font-weight:800}
.catalog-product-unpriced{font-size:12px}
.catalog-product-actions{display:flex;gap:5px;margin-top:9px}
.catalog-product-actions label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.catalog-product-actions input{width:48px;min-width:0;height:35px;padding:2px 4px;border:1px solid #ccd6e4;border-radius:3px;text-align:center;font-size:12px}
.catalog-product-add,.catalog-product-view{display:inline-flex;align-items:center;justify-content:center;min-height:35px;margin-top:9px;padding:6px 8px;border:0;border-radius:3px;background:var(--ch-blue);color:#fff;font-size:12px;font-weight:800;text-align:center;cursor:pointer}
.catalog-product-actions .catalog-product-add{flex:1;margin-top:0}
.catalog-home a.catalog-product-view{color:#fff}
.catalog-product-add:hover,.catalog-product-view:hover{background:#0A429B;color:#fff}
.catalog-product-add:disabled{opacity:.6;cursor:wait}
.catalog-product-message{min-height:1.3em;margin-top:3px;color:#235a30;font-size:11px}
.catalog-brand-story{max-width:1388px;margin:8px auto 28px;display:grid;grid-template-columns:42% 58%;background:#f3f7fa;color:var(--ch-text);border:1px solid #e4eaf0}
.catalog-story-photos{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:repeat(2,1fr);gap:5px;height:300px;padding:12px}
.catalog-story-photos img{width:100%;height:100%;min-height:0;object-fit:cover}
.catalog-story-photos img:first-child{grid-row:span 2}
.catalog-story-copy{display:flex;justify-content:center;align-items:flex-start;flex-direction:column;padding:26px clamp(20px,3vw,46px)}
.catalog-story-copy h2{font-size:clamp(22px,2vw,29px);line-height:1.2;text-transform:uppercase;margin:0 0 12px}
.catalog-story-copy p{line-height:1.55;color:#43546b;font-size:14px;margin:0 0 11px}
.catalog-story-copy a{display:inline-block;color:#0E58CB;font-size:13px;font-weight:800}
.catalog-account{max-width:1388px;margin:12px auto 32px;display:grid;grid-template-columns:1fr 1fr 34%;min-height:245px;background:#064a83;color:#fff}
.catalog-account-intro,.catalog-account-benefits{padding:34px clamp(20px,2.5vw,40px)}
.catalog-account-intro{border-right:1px solid rgba(255,255,255,.22)}
.catalog-account h2{color:#fff;font-size:clamp(21px,1.8vw,27px);line-height:1.2;margin:0 0 12px}
.catalog-account p{font-size:14px;margin:0 0 18px}
.catalog-account a{display:inline-block;padding:11px 18px;background:#fff;color:#0E58CB;border-radius:3px;font-size:13px;font-weight:800}
.catalog-account-benefits strong{font-size:16px}
.catalog-account ul{margin:10px 0 0;padding-left:20px;color:#f1f7ff;font-size:13px;line-height:1.85}
.catalog-account>img{width:100%;height:100%;min-height:245px;object-fit:cover}
body:has(.catalog-home) .site-footer .footer-newsletter{display:block}
@media(min-width:701px){
  .catalog-home .catalog-deal-strip{padding-top:7px;padding-bottom:7px}
  .catalog-feature p{display:none}
}
@media(max-width:1000px){
 .catalog-categories{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
 .catalog-seasonal{margin-left:26px;margin-right:26px;grid-template-columns:170px minmax(0,1fr) auto}
 .catalog-seasonal a{min-width:120px;margin-right:14px}
  .catalog-industries-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .catalog-products .product-rail{grid-template-columns:repeat(3,minmax(0,1fr))}
  .catalog-account{grid-template-columns:1fr 1fr}
  .catalog-account>img{grid-column:1/-1;max-height:220px}
}
@media(max-width:700px){
 .catalog-home-inner,.catalog-section{padding-left:16px;padding-right:16px}
 .catalog-feature-wrap{margin-top:16px;padding:18px 16px 0}
 .catalog-features{grid-template-columns:1fr;gap:12px}
 .catalog-feature{display:grid;grid-template-columns:38% 1fr;gap:4px 12px;padding:10px}
 .catalog-feature img{grid-row:1/4;height:100%;min-height:150px;aspect-ratio:auto}
 .catalog-feature h2{grid-column:2;grid-row:1;font-size:16px;margin:4px 0;min-height:0}
 .catalog-feature p{grid-column:2;grid-row:2;font-size:11px;line-height:1.3;margin:0 0 4px}
 .catalog-feature a{grid-column:2;grid-row:3;min-width:0;min-height:38px;padding:8px 12px;font-size:12px}
  .catalog-seasonal{margin:28px 16px;grid-template-columns:100px 1fr;min-height:118px}
  .catalog-seasonal img{height:100%;min-height:118px;grid-row:span 2}
 .catalog-seasonal-copy{padding:12px 14px 2px}
 .catalog-seasonal strong{font-size:15px}
 .catalog-seasonal a{justify-self:start;margin:0 0 10px 14px;padding:7px 13px;font-size:12px}
 .catalog-categories{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
 .catalog-category{min-height:135px;font-size:11px;padding:8px;gap:7px}
 .catalog-category img{height:84px}
 .catalog-industries-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .catalog-industry img{height:145px}
  .catalog-products .product-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,45%);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}
  .catalog-product-card{scroll-snap-align:start}
 .catalog-brand-story{grid-template-columns:1fr;margin-left:16px;margin-right:16px}
  .catalog-story-photos{height:220px}
  .catalog-story-copy{padding:25px}
  .catalog-account{grid-template-columns:1fr;margin-left:16px;margin-right:16px}
  .catalog-account-intro,.catalog-account-benefits{padding:22px}
  .catalog-account>img{grid-column:1;max-height:200px}
}
@media(max-width:400px){.catalog-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-feature img{min-height:145px}}
@media(prefers-reduced-motion:reduce){.catalog-industry img{transition:none}}