/* HOS Brand pages v1.1 — visual-only refinement. Pricing/query logic untouched. */
.hos-brand-redesign{font-family:Jost,Arial,sans-serif!important;color:#181b20;background:#fff;}
.hos-brand-redesign>.container{width:min(100%,1500px)!important;max-width:1500px!important;padding:0 20px!important;}
.hos-brand-redesign .ps-breadcrumb{display:flex!important;gap:8px!important;align-items:center!important;list-style:none!important;padding:12px 2px!important;margin:0 0 4px!important;min-height:25px!important;}
.hos-brand-redesign .ps-breadcrumb a,.hos-brand-redesign .ps-breadcrumb li{font-size:12px!important;color:#68727f!important;}
.hos-brand-redesign .ps-breadcrumb li.active{color:#d50a1b!important;font-weight:700!important;}
.hos-brand-redesign .ps-banner__content{width:100%;}
.hos-brand-redesign .brand-header-section{border-radius:10px!important;margin:0 0 14px!important;padding:0!important;box-shadow:0 9px 25px rgba(0,0,0,.065)!important;background:#131925!important;}
.hos-brand-redesign .brand-banner-img{width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:430px!important;object-fit:cover!important;display:block!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;}
/* The existing two brand images: factory + awards, not invented replacements. */
.hos-brand-full .brand-banners-container{margin:0 0 13px!important;}
.hos-brand-full .brand-banners-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:15px!important;}
.hos-brand-full .banner-item{min-width:0!important;height:228px!important;border:1px solid #e8ebef!important;border-radius:10px!important;background:#fff!important;box-shadow:0 4px 16px rgba(20,30,50,.06)!important;padding:8px!important;overflow:hidden!important;}
.hos-brand-full .banner-image{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;display:block!important;}
/* Clear editorial brand-story treatment. The CMS text is not rewritten. */
.hos-brand-full .brand-description-container{padding:22px 25px 18px!important;border:1px solid #e8eaee!important;border-left:3px solid #e3000f!important;border-radius:11px!important;box-shadow:0 4px 16px rgba(16,24,40,.04)!important;background:#fcfcfd!important;margin:15px 0 14px!important;}
.hos-brand-full .hos-brand-story-heading{display:flex!important;align-items:center!important;gap:11px!important;margin:0 0 16px!important;padding:0 0 11px!important;border-bottom:1px solid #e9ebef!important;color:#1b1d23!important;font-size:19px!important;line-height:1.35!important;font-weight:800!important;letter-spacing:0!important;}
.hos-brand-full .hos-brand-story-heading:before{content:""!important;display:block!important;width:4px!important;height:21px!important;flex:none!important;background:#e3000f!important;border-radius:2px!important;}

.hos-brand-full .brand-rich-content{padding:0!important;margin:0!important;color:#333e49!important;font-family:Jost,Arial,sans-serif!important;line-height:1.78!important;background:transparent!important;overflow-wrap:anywhere!important;}
.hos-brand-full .brand-rich-content p,.hos-brand-full .brand-rich-content div,.hos-brand-full .brand-rich-content span,.hos-brand-full .brand-rich-content font{font-family:inherit!important;font-size:15px!important;line-height:1.78!important;color:#353e48!important;letter-spacing:.05px!important;}
.hos-brand-full .brand-rich-content p{margin:0 0 13px!important;max-width:1160px!important;}
.hos-brand-full .brand-rich-content p:last-child{margin-bottom:0!important;}
.hos-brand-full .brand-rich-content strong,.hos-brand-full .brand-rich-content b{color:#1e232b!important;font-weight:750!important;}
.hos-brand-full .brand-rich-content br{line-height:1.4!important;}
.hos-brand-full .brand-rich-content h1,.hos-brand-full .brand-rich-content h2,.hos-brand-full .brand-rich-content h3{font-family:inherit!important;color:#171b21!important;}
.hos-brand-full .brand-rich-content img{width:auto!important;max-width:100%!important;min-height:0!important;height:auto!important;}
.hos-brand-redesign .hos-brand-attributes{display:flex!important;flex-wrap:wrap!important;gap:9px!important;align-items:center!important;}
.hos-brand-redesign .hos-brand-attribute{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:0!important;padding:7px 11px!important;min-height:36px!important;border:1px solid #e8eaed!important;background:#fff!important;border-radius:8px!important;box-shadow:0 2px 5px rgba(15,20,30,.035)!important;color:#20252c!important;font-size:11.5px!important;font-weight:650!important;line-height:1.2!important;text-align:center!important;}
.hos-brand-redesign .hos-brand-attribute img{display:block!important;width:23px!important;height:23px!important;max-width:23px!important;min-height:0!important;max-height:23px!important;margin:0!important;padding:0!important;object-fit:contain!important;border:0!important;border-radius:0!important;box-shadow:none!important;}
.hos-brand-redesign .hos-brand-attribute span{white-space:normal!important;max-width:150px!important;}
.hos-brand-full .hos-brand-attribute-features{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:0!important;border-radius:10px!important;background:#f6f7f8!important;margin:15px 0 17px!important;padding:9px 7px!important;border:1px solid #e9ebed!important;}
.hos-brand-full .hos-brand-attribute-features .hos-brand-attribute{display:flex!important;flex-direction:column!important;gap:5px!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:7px 4px!important;border-right:1px solid #dadde2!important;border-radius:0!important;min-height:64px!important;}
.hos-brand-full .hos-brand-attribute-features .hos-brand-attribute:last-child{border-right:0!important;}
.hos-brand-full .hos-brand-attribute-features .hos-brand-attribute img{width:32px!important;height:32px!important;max-width:32px!important;max-height:32px!important;}
.hos-brand-full .hos-brand-media{margin:0 0 18px!important;background:#10141a!important;border-radius:11px!important;overflow:hidden!important;box-shadow:0 6px 21px rgba(0,0,0,.14)!important;}
.hos-brand-full .hos-brand-media:empty{display:none!important;}
.hos-brand-full .hos-brand-media video,.hos-brand-full .hos-brand-media iframe{display:block!important;width:100%!important;max-width:100%!important;min-height:0!important;height:auto!important;aspect-ratio:16/6.4!important;object-fit:cover!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#0b0d10!important;box-shadow:none!important;}
.hos-brand-redesign .ps-categogy,.hos-brand-redesign .ps-categogy__main,.hos-brand-redesign .ps-categogy__main .container{max-width:100%!important;width:100%!important;padding-left:0!important;padding-right:0!important;margin:0!important;background:#fff!important;}
.hos-brand-redesign .hos-brand-products-heading{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:16px!important;min-height:54px!important;padding:0!important;margin:16px 0 8px!important;}
.hos-brand-redesign .hos-brand-products-title{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;flex:0 0 auto!important;}
.hos-brand-redesign .hos-brand-title-rule{width:4px!important;height:24px!important;min-height:24px!important;background:#e3000f!important;border-radius:3px!important;flex:none!important;}
.hos-brand-redesign .hos-brand-products-title h2{color:#17191e!important;font-size:20px!important;line-height:1.2!important;font-weight:800!important;margin:0!important;padding:0!important;}
.hos-brand-redesign .hos-brand-attribute-compact{justify-content:flex-end!important;gap:8px!important;flex:1 1 auto!important;}
.hos-brand-redesign .hos-brand-attribute-compact .hos-brand-attribute{font-size:10.5px!important;padding:6px 9px!important;min-height:30px!important;}
.hos-brand-redesign .hos-brand-attribute-compact img{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;}
.hos-brand-redesign .hos-brand-product-section{border:0!important;background:#fff!important;border-radius:0!important;box-shadow:none!important;min-height:0!important;padding:0!important;margin:0 0 35px!important;}
.hos-brand-redesign .hos-brand-product-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;align-items:stretch!important;margin:0!important;padding:0!important;}
.hos-brand-redesign .hos-brand-product-cell{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;width:100%!important;padding:0!important;flex:none!important;display:block!important;}
.hos-brand-redesign .hos-brand-product-card{position:relative!important;display:flex!important;flex-direction:column!important;height:100%!important;min-height:0!important;width:100%!important;overflow:hidden!important;border:1px solid #e6e8ec!important;border-radius:10px!important;background:#fff!important;box-shadow:0 3px 10px rgba(20,25,35,.07)!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;cursor:pointer!important;}
.hos-brand-redesign .hos-brand-product-card:hover{transform:translateY(-3px)!important;border-color:#d3d6db!important;box-shadow:0 9px 20px rgba(20,25,35,.12)!important;}
.hos-brand-redesign .hos-brand-card-link{position:absolute!important;inset:0!important;z-index:12!important;display:block!important;background:transparent!important;text-decoration:none!important;}
.hos-brand-redesign .hos-brand-card-link:focus-visible{outline:3px solid #e3000f!important;outline-offset:-3px!important;border-radius:10px!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__actions,.hos-brand-redesign .hos-brand-product-card .ps-product__cart{display:none!important;}
.hos-brand-redesign .hos-brand-product-card .hos-discount-float-badge{z-index:13!important;pointer-events:none!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__thumbnail{position:relative!important;display:block!important;width:100%!important;height:196px!important;min-height:196px!important;max-height:196px!important;margin:0!important;padding:10px!important;flex:none!important;background:#fff!important;border:0!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__thumbnail a.ps-product__image,.hos-brand-redesign .hos-brand-product-card .ps-product__thumbnail .product-image-wrapper{display:block!important;width:100%!important;height:100%!important;max-height:none!important;min-height:0!important;background:#fff!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__thumbnail img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;}
@media(hover:hover) and (pointer:fine){
 .hos-brand-redesign .hos-brand-product-card:hover .product-image-wrapper img.primary{opacity:0!important;transform:scale(1.07)!important;}
 .hos-brand-redesign .hos-brand-product-card:hover .product-image-wrapper img.secondary{opacity:1!important;transform:scale(1.07)!important;}
}
.hos-brand-redesign .hos-brand-product-card .ps-product__content{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;flex:1 1 auto!important;min-width:0!important;min-height:0!important;height:auto!important;padding:8px 9px 12px!important;background:#fff!important;text-align:center!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__content>div{display:flex!important;flex-direction:column!important;flex:0 0 auto!important;justify-content:flex-start!important;gap:5px!important;min-height:0!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__title{display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important;height:auto!important;min-height:0!important;max-height:58px!important;width:100%!important;margin:0!important;line-height:1.36!important;text-align:center!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__title a{display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important;width:100%!important;height:auto!important;max-height:58px!important;color:#171b20!important;-webkit-text-fill-color:#171b20!important;font-size:14px!important;font-weight:700!important;line-height:1.36!important;text-align:center!important;text-decoration:none!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__meta{display:flex!important;align-items:center!important;justify-content:center!important;min-height:29px!important;height:auto!important;padding:0!important;margin-top:0!important;overflow:visible!important;}
.hos-brand-redesign .hos-brand-product-card .ps-product__price.sale{display:inline-flex!important;align-items:center!important;justify-content:center!important;max-width:100%!important;min-height:29px!important;min-width:82px!important;height:auto!important;border-radius:5px!important;border:0!important;padding:7px 10px!important;margin:0 auto!important;background:#292b30!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:13px!important;font-weight:800!important;line-height:1.1!important;white-space:nowrap!important;}
.hos-brand-redesign .hos-brand-product-card .price-badge-text,.hos-brand-redesign .hos-brand-product-card .details-badge-text{font-size:13px!important;font-weight:800!important;color:#fff!important;-webkit-text-fill-color:#fff!important;white-space:nowrap!important;}
/* Keep the existing sale-price calculation and original-price strikethrough. */
.hos-brand-redesign .hos-brand-product-card .ps-product__price:has(.hos-listing-price-stack){background:transparent!important;padding:0!important;box-shadow:none!important;}
.hos-brand-redesign .hos-brand-product-card .hos-listing-price-stack{position:relative!important;margin-top:14px!important;margin-bottom:0!important;min-height:29px!important;height:29px!important;}
.hos-brand-redesign .hos-brand-product-card .hos-listing-final-price{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:29px!important;height:29px!important;background:#292b30!important;border-radius:5px!important;padding:6px 10px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:13px!important;font-weight:800!important;}
.hos-brand-redesign .hos-brand-product-card .hos-listing-old-price{position:absolute!important;bottom:32px!important;left:50%!important;transform:translateX(-50%)!important;color:#777!important;font-size:11px!important;font-weight:700!important;white-space:nowrap!important;}
@media(max-width:1199px){.hos-brand-redesign .hos-brand-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}}
@media(max-width:991px){.hos-brand-redesign .hos-brand-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}.hos-brand-redesign .hos-brand-attribute-compact .hos-brand-attribute:nth-child(n+5){display:none!important;}}
@media(max-width:767px){
  .hos-brand-redesign>.container{padding-left:12px!important;padding-right:12px!important;}
  .hos-brand-redesign .ps-breadcrumb{padding:10px 2px!important;margin:0 0 3px!important;}
  .hos-brand-redesign .brand-header-section{margin-bottom:11px!important;border-radius:9px!important;}
  .hos-brand-redesign .brand-banner-img{max-height:none!important;min-height:0!important;object-fit:contain!important;}
  .hos-brand-full .brand-banners-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
  .hos-brand-full .banner-item{height:135px!important;min-height:0!important;padding:4px!important;border-radius:8px!important;}
  .hos-brand-full .brand-description-container{padding:16px 15px 15px!important;margin:10px 0 12px!important;border-radius:9px!important;}
  .hos-brand-full .hos-brand-story-heading{font-size:16px!important;margin-bottom:12px!important;padding-bottom:9px!important;}
  .hos-brand-full .hos-brand-story-heading:before{height:18px!important;}
  .hos-brand-full .brand-rich-content p,.hos-brand-full .brand-rich-content span,.hos-brand-full .brand-rich-content font,.hos-brand-full .brand-rich-content div{font-size:13px!important;line-height:1.68!important;}
  .hos-brand-full .brand-rich-content p{margin-bottom:12px!important;}
  .hos-brand-full .hos-brand-attribute-features{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;margin:13px 0!important;padding:6px 2px!important;}
  .hos-brand-full .hos-brand-attribute-features .hos-brand-attribute{min-height:62px!important;border-right:0!important;}
  .hos-brand-full .hos-brand-attribute-features .hos-brand-attribute:nth-child(3n+2){border-left:1px solid #e0e1e4!important;border-right:1px solid #e0e1e4!important;}
  .hos-brand-full .hos-brand-media video,.hos-brand-full .hos-brand-media iframe{aspect-ratio:16/9!important;}
  .hos-brand-redesign .hos-brand-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
  .hos-brand-redesign .hos-brand-products-heading{margin:16px 0 10px!important;min-height:0!important;align-items:flex-start!important;flex-direction:column!important;gap:9px!important;}
  .hos-brand-redesign .hos-brand-products-title h2{font-size:16px!important;}
  .hos-brand-redesign .hos-brand-title-rule{height:19px!important;min-height:19px!important;}
  .hos-brand-redesign .hos-brand-attribute-compact{display:flex!important;justify-content:flex-start!important;width:100%!important;overflow:hidden!important;gap:6px!important;flex-wrap:nowrap!important;}
  .hos-brand-redesign .hos-brand-attribute-compact .hos-brand-attribute{flex:1 1 0!important;min-width:0!important;padding:4px 5px!important;gap:4px!important;font-size:9px!important;line-height:1.15!important;}
  .hos-brand-redesign .hos-brand-attribute-compact img{max-width:17px!important;width:17px!important;height:17px!important;max-height:17px!important;}
  .hos-brand-redesign .hos-brand-attribute-compact .hos-brand-attribute:nth-child(n+4){display:none!important;}
  .hos-brand-redesign .hos-brand-product-card .ps-product__thumbnail{height:151px!important;min-height:151px!important;max-height:151px!important;padding:8px!important;}
  .hos-brand-redesign .hos-brand-product-card .ps-product__content{min-height:0!important;padding:7px 7px 10px!important;}
  .hos-brand-redesign .hos-brand-product-card .ps-product__title{min-height:0!important;max-height:55px!important;}
  .hos-brand-redesign .hos-brand-product-card .ps-product__title a{font-size:12px!important;line-height:1.35!important;max-height:55px!important;}
  .hos-brand-redesign .hos-brand-product-card .ps-product__price.sale{min-height:26px!important;min-width:0!important;padding:6px 9px!important;font-size:11px!important;}
  .hos-brand-redesign .hos-brand-product-card .price-badge-text,.hos-brand-redesign .hos-brand-product-card .details-badge-text{font-size:11px!important;}
  .hos-brand-redesign .hos-brand-product-card .hos-listing-final-price{font-size:11px!important;min-height:26px!important;height:26px!important;padding:5px 8px!important;}
  .hos-brand-redesign .hos-brand-product-card .hos-listing-old-price{font-size:10px!important;bottom:27px!important;}
  .hos-brand-redesign .hos-brand-product-section{margin-bottom:25px!important;}
}
@media(max-width:359px){.hos-brand-redesign .hos-brand-product-grid{gap:7px!important;}.hos-brand-redesign .hos-brand-product-card .ps-product__thumbnail{height:132px!important;min-height:132px!important;max-height:132px!important;}}

/* ============================================================
   HOS BRAND CARDS — NAME + PRICE ROWS & RIGHT EDGE (v1.3)
   CSS only; shared by brand_details and brand_details_top.
   Image -> aligned title start (2 rows desktop, 3 mobile)
         -> aligned prices. No sale, query, or link changes.
   ============================================================ */
/* Prevent the legacy Bootstrap .row and old page-inline media
   rules from widening / clipping the fifth card. Keep 5/4/3/2
   breakpoints defined above unchanged. */
.hos-brand-redesign .ps-categogy .hos-brand-product-grid {
    display: grid !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 12px !important;
    float: none !important;
}
.hos-brand-redesign .hos-brand-product-section {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}
.hos-brand-redesign .hos-brand-product-cell,
.hos-brand-redesign .hos-brand-product-card {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
}
/* Critical: top-align the WHOLE title/price block. The previous
   justify-content:flex-end moved the one-line titles downward. */
.hos-brand-redesign .hos-brand-product-card .ps-product__content {
    justify-content: flex-start !important;
    box-sizing: border-box !important;
}
.hos-brand-redesign .hos-brand-product-card .ps-product__content > div:first-child {
    justify-content: flex-start !important;
    align-items: stretch !important;
}
/* Every title starts at exactly the same height. Two-line title
   space is reserved on desktop so prices also share one baseline. */
.hos-brand-redesign .hos-brand-product-card .ps-product__title {
    display: block !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
    line-height: 1.36 !important;
    height: 38.08px !important;
    min-height: 38.08px !important;
    max-height: 38.08px !important;
    margin: 0 !important;
    overflow: hidden !important;
}
.hos-brand-redesign .hos-brand-product-card .ps-product__title a {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    box-sizing: border-box !important;
    max-height: 38.08px !important;
    overflow: hidden !important;
}
.hos-brand-redesign .hos-brand-product-card .ps-product__meta {
    align-items: center !important;
    justify-content: center !important;
    margin-top: 0 !important;
    min-height: 29px !important;
}
/* Where the page has discounted products, reserve a shared old-price
   line for the whole grid. Original and final price stay visible,
   and the final badges remain level across normal/discounted cards. */
.hos-brand-redesign .hos-brand-product-grid:has(.hos-listing-price-stack) .ps-product__meta {
    min-height: 44px !important;
    height: 44px !important;
    align-items: flex-end !important;
}
.hos-brand-redesign .hos-brand-product-grid:has(.hos-listing-price-stack) .hos-listing-price-stack {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 0 !important;
}
/* The price wrapper is never pushed down independently. */
.hos-brand-redesign .hos-brand-product-card .ps-product__price.sale:has(.hos-listing-price-stack) {
    padding: 0 !important;
}
/* Mobile: 3 lines of title room to avoid awkward clipping at 360px,
   while still starting all titles and prices in aligned rows. */
@media (max-width: 767px) {
    .hos-brand-redesign .ps-categogy .hos-brand-product-grid {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
    .hos-brand-redesign .hos-brand-product-card .ps-product__title {
        font-size: 12px !important;
        line-height: 1.35 !important;
        height: 48.6px !important;
        min-height: 48.6px !important;
        max-height: 48.6px !important;
    }
    .hos-brand-redesign .hos-brand-product-card .ps-product__title a {
        -webkit-line-clamp: 3 !important;
        max-height: 48.6px !important;
    }
    .hos-brand-redesign .hos-brand-product-card .ps-product__meta {
        min-height: 26px !important;
    }
    .hos-brand-redesign .hos-brand-product-card .hos-listing-price-stack {
        min-height: 26px !important;
        height: 26px !important;
    }
    .hos-brand-redesign .hos-brand-product-grid:has(.hos-listing-price-stack) .ps-product__meta {
        min-height: 41px !important;
        height: 41px !important;
    }
}
