/* HSD grid/list view switcher */
.catalog-view-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin:0 0 18px}.catalog-view-label{font-size:13px;font-weight:700;color:#52606d;margin-right:4px}.catalog-view-btn{width:40px;height:38px;border:1px solid #d7dee6;background:#fff;color:#56616d;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s ease}.catalog-view-btn:hover{border-color:#0d3156;color:#0d3156}.catalog-view-btn.is-active{background:#0d3156;border-color:#0d3156;color:#fff}.catalog-view-btn svg{width:18px;height:18px;fill:currentColor}
#product-area.view-list .product-grid{display:flex!important;flex-direction:column;gap:12px}
#product-area.view-list .product-card{display:grid!important;grid-template-columns:180px minmax(0,1fr);align-items:stretch;width:100%!important;max-width:none!important;min-height:180px;margin:0!important}
#product-area.view-list .product-card>a:first-child{display:flex;align-items:center;justify-content:center;padding:14px;border-right:1px solid #e8edf2;min-width:0}
#product-area.view-list .product-card>a:first-child .product-image,#product-area.view-list .product-card .product-image{width:150px!important;height:150px!important;max-width:150px!important;object-fit:contain;margin:0!important}
#product-area.view-list .product-info{display:flex;flex-direction:column;justify-content:center;padding:18px 22px!important;min-width:0}
#product-area.view-list .product-name{margin-top:0!important}
#product-area.view-list .product-actions{margin-top:auto;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:700px){.catalog-view-toolbar{justify-content:flex-start}.catalog-view-label{display:none}#product-area.view-list .product-card{grid-template-columns:105px minmax(0,1fr);min-height:125px}#product-area.view-list .product-card>a:first-child{padding:8px}#product-area.view-list .product-card>a:first-child .product-image,#product-area.view-list .product-card .product-image{width:90px!important;height:90px!important}#product-area.view-list .product-info{padding:12px!important}}

/* Professional HSD list layout */
#product-area.view-list .product-grid{gap:14px}
#product-area.view-list .product-card{grid-template-columns:155px minmax(0,1fr);min-height:156px;border:1px solid #dce5ee;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 2px 8px rgba(13,49,86,.055);transition:box-shadow .18s ease,border-color .18s ease}
#product-area.view-list .product-card:hover{border-color:#c5d4e2;box-shadow:0 5px 16px rgba(13,49,86,.09)}
#product-area.view-list .product-card>a:first-child{padding:16px;background:#fbfcfd;border-right:1px solid #e5ebf1}
#product-area.view-list .product-card>a:first-child .product-image,#product-area.view-list .product-card .product-image{width:125px!important;height:125px!important;max-width:125px!important}
#product-area.view-list .product-info{display:grid!important;grid-template-columns:minmax(0,1fr) 190px;grid-template-rows:auto auto auto auto;column-gap:24px;align-content:center;padding:16px 20px!important}
#product-area.view-list .product-name-link{grid-column:1;grid-row:1;margin:0 0 7px!important}
#product-area.view-list .product-name{font-size:15px!important;line-height:1.28!important;margin:0!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#product-area.view-list .product-item{grid-column:1;grid-row:2;margin:0 0 3px!important;font-size:13px!important}
#product-area.view-list .product-manufacturer{grid-column:1;grid-row:3;margin:0 0 6px!important;font-size:13px!important}
#product-area.view-list .product-price{grid-column:1;grid-row:4;margin:0!important;font-size:14px!important;font-weight:800}
#product-area.view-list .product-actions{grid-column:2;grid-row:1 / span 4;margin:0!important;display:flex!important;flex-direction:column;justify-content:center;align-items:stretch;gap:9px;border-left:1px solid #edf1f5;padding-left:20px}
#product-area.view-list .qty-gift-row{display:grid!important;grid-template-columns:1fr 42px;gap:7px;width:100%}
#product-area.view-list .product-qty{width:100%!important;min-width:0;height:38px!important}
#product-area.view-list .giftlist-btn{width:42px!important;height:38px!important;margin:0!important}
#product-area.view-list .add-to-cart-btn{width:100%!important;min-width:0!important;height:40px!important;margin:0!important;padding:0 12px!important;border-radius:6px!important;font-size:13px!important;white-space:nowrap}
@media(max-width:850px){#product-area.view-list .product-info{grid-template-columns:minmax(0,1fr) 155px;column-gap:14px;padding:13px 14px!important}#product-area.view-list .product-actions{padding-left:14px}}
@media(max-width:620px){#product-area.view-list .product-card{grid-template-columns:100px minmax(0,1fr)}#product-area.view-list .product-card>a:first-child{padding:8px}#product-area.view-list .product-card>a:first-child .product-image,#product-area.view-list .product-card .product-image{width:82px!important;height:82px!important}#product-area.view-list .product-info{display:block!important;padding:11px!important}#product-area.view-list .product-actions{border-left:0;padding-left:0;margin-top:10px!important;display:grid!important;grid-template-columns:105px minmax(0,1fr);align-items:center}#product-area.view-list .product-name{font-size:14px!important}#product-area.view-list .add-to-cart-btn{height:38px!important}}

/* HSD list view - larger product image / exact approved layout */
@media (min-width: 851px){
  #product-area.view-list .product-card{
    grid-template-columns:320px minmax(0,1fr)!important;
    min-height:190px!important;
  }
  #product-area.view-list .product-card>a:first-child{
    padding:10px 18px!important;
    background:#fff!important;
  }
  #product-area.view-list .product-card>a:first-child .product-image,
  #product-area.view-list .product-card .product-image{
    width:285px!important;
    height:170px!important;
    max-width:285px!important;
    object-fit:contain!important;
  }
  #product-area.view-list .product-info{
    grid-template-columns:minmax(0,1fr) 190px!important;
    column-gap:24px!important;
    padding:14px 18px!important;
  }
}

/* HSD FINAL desktop list: image | details | commerce | cart */
@media (min-width: 1050px){
 #product-area.view-list .product-card{grid-template-columns:285px minmax(0,1fr)!important;min-height:188px!important}
 #product-area.view-list .product-card>a:first-child .product-image,#product-area.view-list .product-card .product-image{width:255px!important;height:165px!important;max-width:255px!important}
 #product-area.view-list .product-info{display:grid!important;grid-template-columns:minmax(0,1fr) 215px 170px!important;grid-template-rows:auto auto auto!important;column-gap:20px!important;align-items:center!important;padding:14px 16px!important}
 #product-area.view-list .product-name-link{grid-column:1;grid-row:1;margin:0 0 8px!important;align-self:end}
 #product-area.view-list .product-name{font-size:15px!important;line-height:1.3!important;-webkit-line-clamp:3}
 #product-area.view-list .product-item{grid-column:1;grid-row:2;margin:0 0 3px!important}
 #product-area.view-list .product-manufacturer{grid-column:1;grid-row:3;margin:0!important;align-self:start}
 #product-area.view-list .product-commerce{grid-column:2;grid-row:1 / span 3;align-self:stretch;display:flex!important;flex-direction:column;justify-content:center;border-left:1px solid #e7edf3;padding:4px 18px!important;margin:0!important}
 #product-area.view-list .product-commerce .product-price{margin:0 0 9px!important;font-size:13px!important;color:#536579!important}
 #product-area.view-list .product-commerce .price-amount{font-size:23px!important;font-weight:800!important;color:#082f5b!important}
 #product-area.view-list .product-commerce .price-unit{font-size:13px!important;font-weight:600!important;color:#66788a!important}
 #product-area.view-list .product-stock{display:flex!important;align-items:center;gap:8px;margin:0 0 5px!important;font-size:13px!important;font-weight:800!important;color:#07852f!important}
 #product-area.view-list .stock-dot{width:10px;height:10px;border-radius:50%;background:#08a23b;display:inline-block;box-shadow:0 0 0 3px rgba(8,162,59,.09)}
 #product-area.view-list .product-shipping{margin:0 0 12px!important;font-size:12.5px!important;line-height:1.3!important;color:#5d6d7e!important}
 #product-area.view-list .product-view-details{display:inline-flex!important;align-items:center;gap:6px;margin:0 0 8px!important;font-size:13px!important;font-weight:800!important;color:#0759b5!important;text-decoration:none!important}
 #product-area.view-list .product-view-details:hover{text-decoration:underline!important}
 #product-area.view-list .product-bom-link{display:inline-flex!important;align-items:center;gap:6px;width:max-content!important;padding:0!important;border:0!important;background:transparent!important;color:#0759b5!important;font-size:13px!important;font-weight:700!important;cursor:pointer!important}
 #product-area.view-list .product-actions{grid-column:3!important;grid-row:1 / span 3!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:9px!important;border-left:1px solid #e7edf3!important;padding:4px 0 4px 18px!important;margin:0!important}
 #product-area.view-list .qty-gift-row{grid-template-columns:minmax(0,1fr) 42px!important}
 #product-area.view-list .product-qty{height:38px!important;text-align:center}
 #product-area.view-list .add-to-cart-btn{height:42px!important;font-weight:800!important;border-radius:6px!important}
}

@media (max-width:1049px) and (min-width:621px){
 #product-area.view-list .product-commerce{margin:8px 0 0!important}
}

/* =========================================================
   HSD CARD VIEW - restored professional product cards
   Applies ONLY when list view is not active.
   ========================================================= */
#product-area:not(.view-list) .products-grid,
#product-area:not(.view-list) .product-grid,
#product-area:not(.view-list) > .products-container{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}

#product-area:not(.view-list) .product-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid #dce6ef!important;
  border-radius:12px!important;
  box-shadow:0 3px 12px rgba(9,48,85,.07)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
#product-area:not(.view-list) .product-card:hover{
  transform:translateY(-2px)!important;
  border-color:#bfd0df!important;
  box-shadow:0 8px 22px rgba(9,48,85,.12)!important;
}
#product-area:not(.view-list) .product-card>a:first-child{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:205px!important;
  padding:14px 16px!important;
  margin:0!important;
  background:#fbfcfe!important;
  border:0!important;
  border-bottom:1px solid #e8eef4!important;
}
#product-area:not(.view-list) .product-card>a:first-child .product-image,
#product-area:not(.view-list) .product-card .product-image{
  display:block!important;
  width:100%!important;
  max-width:260px!important;
  height:175px!important;
  margin:0 auto!important;
  object-fit:contain!important;
}
#product-area:not(.view-list) .product-info{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  min-width:0!important;
  padding:16px 17px 17px!important;
}
#product-area:not(.view-list) .product-name-link{
  display:block!important;
  margin:0 0 8px!important;
  text-decoration:none!important;
}
#product-area:not(.view-list) .product-name{
  margin:0!important;
  color:#062f5c!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:800!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
  overflow:hidden!important;
}
#product-area:not(.view-list) .product-item,
#product-area:not(.view-list) .product-manufacturer{
  margin:0 0 4px!important;
  color:#6b7b8c!important;
  font-size:12.5px!important;
  line-height:1.35!important;
}
#product-area:not(.view-list) .product-commerce{
  display:block!important;
  margin:12px 0 0!important;
  padding:12px 0 10px!important;
  border:0!important;
  border-top:1px solid #edf1f5!important;
}
#product-area:not(.view-list) .product-commerce .product-price{
  display:block!important;
  margin:0 0 6px!important;
  color:#607184!important;
}
#product-area:not(.view-list) .product-commerce .price-amount{
  color:#082f5b!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:850!important;
}
#product-area:not(.view-list) .product-commerce .price-unit{
  color:#68798a!important;
  font-size:12px!important;
  font-weight:600!important;
}
#product-area:not(.view-list) .product-stock{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:0 0 4px!important;
  color:#07852f!important;
  font-size:13px!important;
  font-weight:800!important;
}
#product-area .product-stock.is-out-of-stock {
  color: #a20f1b!important;
}
#product-area .product-stock.is-out-of-stock .stock-dot {
  background: #b51d29!important;
  box-shadow: 0 0 0 3px rgba(181,29,41,.09)!important;
}
#product-area:not(.view-list) .stock-dot{
  display:inline-block!important;
  width:9px!important;
  height:9px!important;
  flex:0 0 9px!important;
  border-radius:50%!important;
  background:#08a23b!important;
  box-shadow:0 0 0 3px rgba(8,162,59,.08)!important;
}
#product-area:not(.view-list) .product-shipping{
  margin:0 0 10px!important;
  color:#657689!important;
  font-size:12px!important;
  line-height:1.3!important;
}
#product-area:not(.view-list) .product-view-details,
#product-area:not(.view-list) .product-bom-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0 0 5px!important;
  padding:2px 0!important;
  border:0!important;
  background:transparent!important;
  color:#0759b5!important;
  font-size:12.5px!important;
  font-weight:750!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
#product-area:not(.view-list) .product-view-details:hover,
#product-area:not(.view-list) .product-bom-link:hover{text-decoration:underline!important;}
#product-area:not(.view-list) .product-actions{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  width:100%!important;
  margin:auto 0 0!important;
  padding:11px 0 0!important;
  border:0!important;
  border-top:1px solid #edf1f5!important;
}
#product-area:not(.view-list) .qty-gift-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 44px!important;
  gap:8px!important;
  width:100%!important;
}
#product-area:not(.view-list) .product-qty{
  width:100%!important;
  height:40px!important;
  min-width:0!important;
  margin:0!important;
  border:1px solid #d6e1eb!important;
  border-radius:6px!important;
  text-align:center!important;
}
#product-area:not(.view-list) .giftlist-btn{
  width:44px!important;
  height:40px!important;
  margin:0!important;
  border-radius:6px!important;
}
#product-area:not(.view-list) .add-to-cart-btn{
  width:100%!important;
  height:43px!important;
  min-width:0!important;
  margin:0!important;
  padding:0 14px!important;
  border-radius:6px!important;
  font-size:13px!important;
  font-weight:800!important;
}
@media(max-width:1250px){
  #product-area:not(.view-list) .products-grid,
  #product-area:not(.view-list) .product-grid,
  #product-area:not(.view-list) > .products-container{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  #product-area:not(.view-list) .products-grid,
  #product-area:not(.view-list) .product-grid,
  #product-area:not(.view-list) > .products-container{grid-template-columns:1fr!important;}
  #product-area:not(.view-list) .product-card>a:first-child{height:185px!important;}
  #product-area:not(.view-list) .product-card>a:first-child .product-image,
  #product-area:not(.view-list) .product-card .product-image{height:155px!important;max-width:235px!important;}
}

/* HSD Bobcat hero: shorten visible CSS area by about 100px */
.bobcat-product-hero,
.bobcat-hero,
.product-bobcat-hero{
    height:280px!important;
    min-height:280px!important;
    max-height:280px!important;
    overflow:hidden!important;
    background-size:cover!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
}

.bobcat-product-hero .bobcat-hero-content,
.bobcat-hero .bobcat-hero-content,
.product-bobcat-hero .bobcat-hero-content,
.bobcat-product-hero .hero-content,
.bobcat-hero .hero-content{
    padding-top:22px!important;
    padding-bottom:12px!important;
    max-width:540px!important;
}

.bobcat-product-hero h1,
.bobcat-hero h1,
.product-bobcat-hero h1{
    margin:5px 0 8px!important;
    line-height:1.04!important;
}

.bobcat-product-hero p,
.bobcat-hero p,
.product-bobcat-hero p{
    max-width:525px!important;
    margin:0!important;
    line-height:1.32!important;
}

@media(max-width:900px){
    .bobcat-product-hero,
    .bobcat-hero,
    .product-bobcat-hero{
        height:auto!important;
        min-height:250px!important;
        max-height:none!important;
    }
}

/* Catalog artwork spans both the breadcrumb and heading areas. */
.hsd-catalog-masthead {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: #fff;
  background: #032a45;
}
.hsd-bobcat-breadcrumb-bar {
  position: relative;
  z-index: 2;
  color: #fff;
  background: transparent;
  border-bottom: 0;
}
.hsd-bobcat-breadcrumb-inner {
  width: min(100%, 1540px);
  margin: 0 auto;
  padding: 6px 28px;
}
.hsd-bobcat-breadcrumb-bar .breadcrumb {
  margin: 0;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}
.hsd-bobcat-breadcrumb-bar .breadcrumb a,
.hsd-bobcat-breadcrumb-bar .breadcrumb span {
  color: inherit;
}
.hsd-bobcat-hero {
  position: relative;
  z-index: 2;
  width: 100%;
  height: auto;
  min-height: 168px;
  overflow: hidden;
  color: #fff;
  background: transparent;
}
.hsd-bobcat-hero__image,
.hsd-bobcat-hero__shade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.hsd-bobcat-hero__image {
  z-index: 0;
  pointer-events: none;
  object-fit: cover;
  object-position: center;
}
.hsd-bobcat-hero__shade {
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(0, 35, 58, .98) 0%, rgba(0, 35, 58, .9) 27%, rgba(0, 35, 58, .24) 48%, transparent 68%);
}
.hsd-bobcat-hero__content {
  position: relative;
  z-index: 1;
  width: min(100%, 1540px);
  margin: 0 auto;
  padding: 10px 28px 12px;
}
/* Override the earlier alignment rule's vertical padding; keep its gutters. */
.hsd-catalog-masthead .hsd-bobcat-hero__content {
  padding-top: 10px !important;
  padding-bottom: 12px !important;
}
.hsd-bobcat-hero__eyebrow {
  margin-bottom: 6px;
  color: #ffc400;
  font-size: 11px;
  line-height: 1.4;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.hsd-bobcat-hero__content h1 {
  max-width: 565px;
  margin: 0 0 6px;
  color: #fff;
  font-size: clamp(24px, 1.65vw, 30px);
  line-height: 1.06;
}
.hsd-bobcat-hero__content h1 span {
  display: block;
  color: #ffc400;
}
.hsd-bobcat-hero__content p {
  max-width: 570px;
  margin: 0;
  color: #fff;
  font-size: 13px;
  line-height: 1.35;
}
.hsd-bobcat-hero__content p strong {
  color: #ffc400;
}
@media(max-width:1100px) {
  .hsd-bobcat-hero__shade {
    background: linear-gradient(90deg, rgba(0, 35, 58, .98) 0%, rgba(0, 35, 58, .88) 48%, rgba(0, 35, 58, .35) 75%);
  }
}
@media(max-width:760px) {
  .hsd-bobcat-breadcrumb-inner,
  .hsd-bobcat-hero__content {
    padding-right: 18px;
    padding-left: 18px;
  }
  .hsd-bobcat-hero {
    height: auto;
    min-height: 0;
  }
  .hsd-bobcat-hero__image {
    object-position: 62% center;
  }
  .hsd-bobcat-hero__shade {
    background: rgba(0, 35, 58, .82);
  }
}
