/* =========================
   BT Classic custom.css
   Clean final version - PS 9.1.4 / btclassic
   Date: 2026-07-17

   Functions:
   - Full width layout
   - Original title case, no forced uppercase
   - Header layout + search dropdown
   - Desktop product grid: 4 per row
   - Mobile/tablet product grid: 1 per row
   - Product titles blue + larger
   - Product listing SKU: label black, SKU value red
   - Product page SKU value red
   - Compact product cards, no large white space under title
   - Sale price: regular + discounted price side by side
   - Product flags / sale flags
   - Cart button fixed at top-right of image
   - Disable Quick View and hover video overlays
   - Subcategory clean blocks
   - Category cover blank box fix
   - Mobile: BT menu trigger moved into the top-left hamburger position
   - Mobile language hook preserved
   ========================= */

/* ===== Full width layout ===== */
body,
#wrapper,
#main,
#content,
.page-content,
#left-column,
#right-column {
  width: 100%;
  max-width: 100%;
}

/* ===== Final tablet header correction ===== */
@media (min-width: 768px) and (max-width: 991.98px) {
  /* Remove both separators between the logo row and action row. */
  html body #header .header-nav.bt-header-nav,
  html body #header .header-nav.bt-header-nav > .container,
  html body #header .bt-header-desktop,
  html body #header .bt-header-center,
  html body #header #_desktop_logo,
  html body #header .bt-header-right,
  html body #header .bt-header-actions,
  html body #header .bt-nav1-wrap {
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
  }

  html body #header .bt-header-center,
  html body #header #_desktop_logo {
    padding-bottom: 2px !important;
  }

  html body #header .bt-header-right {
    padding-top: 2px !important;
  }

  /* Anchor the dropdown to the full header, not to the 44px search button. */
  html body #header .bt-search-toggle {
    position: static !important;
  }

  html body #header .bt-search-panel {
    left: 50% !important;
    right: auto !important;
    width: min(420px, calc(100vw - 32px)) !important;
    max-width: calc(100vw - 32px) !important;
    transform: translateX(-50%) !important;
  }
}

/* ==========================================================
   BT MOBILE SHOP IMPROVEMENTS — V3
   Lightweight CSS for phones and tablets. No image preloading.
   ========================================================== */
/* ===== Phone header: restore the PrestaShop mobile language hook ===== */
@media (max-width: 767.98px) {
  html body #header .header-top.bt-header-mobile-only {
    position: relative !important;
  }

  html body #header #mobile_top_menu_wrapper {
    display: block !important;
    position: absolute !important;
    top: -60px !important;
    right: 104px !important;
    left: auto !important;
    z-index: 10020 !important;
    width: 72px !important;
    height: 60px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body #header #mobile_top_menu_wrapper > .js-top-menu.mobile,
  html body #header #_mobile_currency_selector,
  html body #header #_mobile_contact_link {
    display: none !important;
  }

  html body #header #mobile_top_menu_wrapper .js-top-menu-bottom,
  html body #header #_mobile_language_selector,
  html body #header #_mobile_language_selector .language-selector-wrapper,
  html body #header #_mobile_language_selector .language-selector {
    display: flex !important;
    width: 72px !important;
    height: 60px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
  }

  html body #header #_mobile_language_selector #language-selector-label {
    display: none !important;
  }

  html body #header #_mobile_language_selector select.link {
    display: block !important;
    width: 70px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 22px 0 8px !important;
    border: 1px solid #d9dde3 !important;
    border-radius: 6px !important;
    background-color: #fff !important;
    color: #222 !important;
    font-size: 14px !important;
    line-height: 38px !important;
  }
}

/* ===== Reliable phone language selector created by BT Mega Menu ===== */
@media (max-width: 767.98px) {
  html body #header #mobile_top_menu_wrapper {
    display: none !important;
  }

  html body #header .row.hidden-md-up.text-sm-center.mobile {
    position: relative !important;
  }

  html body #header #bt-mobile-language-host {
    position: absolute !important;
    top: 0 !important;
    right: 128px !important;
    z-index: 10030 !important;
    display: flex !important;
    width: 86px !important;
    height: 60px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body #header #bt-mobile-language-select {
    display: block !important;
    width: 84px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 26px 0 10px !important;
    border: 1px solid #d9dde3 !important;
    border-radius: 6px !important;
    background-color: #fff !important;
    color: #222 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 38px !important;
  }
}

@media (max-width: 991.98px) {
  /* Product cards: one clear card per row with comfortable tap targets. */
  html body .products.row > article.product-miniature {
    margin-bottom: 14px !important;
  }

  html body .product-miniature .thumbnail-container {
    border: 1px solid #e3e6ea !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .07) !important;
  }

  html body .product-miniature .product-description {
    padding: 10px 12px 12px !important;
  }

  #products .product-miniature .product-title,
  .product-miniature .product-title {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin-bottom: 7px !important;
    font-size: 1.05rem !important;
    line-height: 1.35 !important;
  }

  #products .product-miniature .product-title a,
  .product-miniature .product-title a {
    -webkit-line-clamp: 3 !important;
    line-height: 1.35 !important;
  }

  #products .product-miniature .product-price-and-shipping,
  .product-miniature .product-price-and-shipping {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 5px 9px !important;
    margin: 2px 0 0 !important;
    text-align: left !important;
  }

  #products .product-miniature .price,
  .product-miniature .price {
    color: #111 !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
  }

  .product-miniature .bt-product-sku {
    flex: 1 0 100% !important;
    margin-top: 2px !important;
    font-size: .9rem !important;
  }

  #products .product-miniature .btatcl-button,
  .product-miniature .btatcl-button {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }

  .products-sort-order .select-title {
    min-height: 44px !important;
    padding: 10px 12px !important;
    border: 1px solid #d7dce1 !important;
    border-radius: 7px !important;
    background: #fff !important;
  }

  /* Product page: stronger hierarchy and less unused space. */
  body#product .product-container h1.h1,
  body#product .product-container .h1 {
    margin: 12px 0 8px !important;
    font-size: 1.45rem !important;
    line-height: 1.3 !important;
    text-transform: none !important;
  }

  body#product .product-prices {
    margin-bottom: 10px !important;
  }

  body#product .current-price,
  body#product .current-price-value {
    font-size: 1.55rem !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
  }

  body#product .tax-shipping-delivery-label {
    margin-top: 6px !important;
    line-height: 1.4 !important;
  }

  body#product .delivery-information {
    display: inline-block !important;
    margin-left: 6px !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    background: #e9f8ee !important;
    color: #146c2e !important;
    font-weight: 700 !important;
  }

  body#product .bt-mobile-product-sku {
    display: block !important;
    margin: 7px 0 0 !important;
    font-size: .95rem !important;
    line-height: 1.3 !important;
  }

  body#product .bt-mobile-product-sku span {
    color: #d60000 !important;
    font-weight: 700 !important;
  }

  body#product .product-quantity {
    display: flex !important;
    gap: 8px !important;
    align-items: stretch !important;
  }

  body#product #quantity_wanted,
  body#product .add-to-cart {
    min-height: 48px !important;
  }

  body#product .add-to-cart {
    padding: 10px 16px !important;
    font-size: 1rem !important;
  }

  body#product .product-add-to-cart {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 80 !important;
    margin: 0 -8px !important;
    padding: 10px 8px !important;
    border-top: 1px solid #e2e5e9 !important;
    background: rgba(255, 255, 255, .96) !important;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, .08) !important;
  }

  body#product .social-sharing {
    margin-top: 14px !important;
  }

  .breadcrumb ol {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }

  .breadcrumb li {
    max-width: 38vw !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

@media (max-width: 767.98px) {
  #header .header-nav.bt-header-nav {
    min-height: 60px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  #header #_mobile_logo img,
  #header .top-logo img {
    max-height: 46px !important;
  }

  body#product .social-sharing {
    display: none !important;
  }
}

/* ===== Tablet/mobile header polish: one separator, tighter logo row ===== */
@media (max-width: 991.98px) {
  #header .header-nav.bt-header-nav,
  #header .header-nav.bt-header-nav .container,
  #header .bt-header-desktop,
  #header .bt-header-center {
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
  }

  #header .bt-header-desktop {
    min-height: 66px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }

  #header .bt-header-center img,
  #header #_mobile_logo img,
  #header .top-logo img {
    max-height: 48px !important;
  }

  #header .header-top.bt-header-mobile-only {
    border-top: 1px solid #e6e8eb !important;
    border-bottom: 0 !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, .07) !important;
  }

  #header .bt-menu-row {
    border-top: 0 !important;
    border-bottom: 0 !important;
  }
}

#header .container,
.header-banner .container,
.header-nav .container,
.header-top .container,
#wrapper .container,
#footer .container,
.block-category .container,
.breadcrumb .container,
.featured-products .container,
.page-home .container,
.page-index .container,
.page-product .container,
.page-category .container,
.page-cms .container,
.page-contact .container,
.page-manufacturer .container,
.page-supplier .container,
.page-prices-drop .container,
.page-best-sales .container,
.page-new-products .container,
.page-search .container,
.page-cart .container,
.page-checkout .container,
.page-my-account .container,
.page-authentication .container,
.page-address .container,
.page-addresses .container,
.page-history .container,
.page-order-detail .container,
.page-identity .container {
  width: 100% !important;
  max-width: 100% !important;
}

/* Large tablets / iPad Pro: use two wider cards so product images remain clear. */
@media (min-width: 992px) and (max-width: 1199.98px) {
  body#index .product-miniature,
  body#index .js-product-miniature,
  body#category #products .product-miniature,
  body#search #products .product-miniature,
  body#prices-drop #products .product-miniature,
  body#new-products #products .product-miniature,
  body#best-sales #products .product-miniature,
  body#manufacturer #products .product-miniature,
  body#supplier #products .product-miniature,
  .products.row > article.product-miniature {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }
}

/* Laptop and desktop: four products per row. */
@media (min-width: 1200px) {
  #header .container,
  .header-banner .container,
  .header-nav .container,
  .header-top .container,
  #wrapper .container,
  #footer .container,
  .block-category .container,
  .breadcrumb .container,
  .featured-products .container,
  .page-home .container,
  .page-index .container,
  .page-product .container,
  .page-category .container,
  .page-cms .container,
  .page-contact .container,
  .page-manufacturer .container,
  .page-supplier .container,
  .page-prices-drop .container,
  .page-best-sales .container,
  .page-new-products .container,
  .page-search .container,
  .page-cart .container,
  .page-checkout .container,
  .page-my-account .container,
  .page-authentication .container,
  .page-address .container,
  .page-addresses .container,
  .page-history .container,
  .page-order-detail .container,
  .page-identity .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  #header .container,
  .header-banner .container,
  .header-nav .container,
  .header-top .container,
  #wrapper .container,
  #footer .container,
  .block-category .container,
  .breadcrumb .container,
  .featured-products .container,
  .page-home .container,
  .page-index .container,
  .page-product .container,
  .page-category .container,
  .page-cms .container,
  .page-contact .container,
  .page-manufacturer .container,
  .page-supplier .container,
  .page-prices-drop .container,
  .page-best-sales .container,
  .page-new-products .container,
  .page-search .container,
  .page-cart .container,
  .page-checkout .container,
  .page-my-account .container,
  .page-authentication .container,
  .page-address .container,
  .page-addresses .container,
  .page-history .container,
  .page-order-detail .container,
  .page-identity .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

@media (max-width: 767px) {
  #header .container,
  .header-banner .container,
  .header-nav .container,
  .header-top .container,
  #wrapper .container,
  #footer .container,
  .block-category .container,
  .breadcrumb .container,
  .featured-products .container,
  .page-home .container,
  .page-index .container,
  .page-product .container,
  .page-category .container,
  .page-cms .container,
  .page-contact .container,
  .page-manufacturer .container,
  .page-supplier .container,
  .page-prices-drop .container,
  .page-best-sales .container,
  .page-new-products .container,
  .page-search .container,
  .page-cart .container,
  .page-checkout .container,
  .page-my-account .container,
  .page-authentication .container,
  .page-address .container,
  .page-addresses .container,
  .page-history .container,
  .page-order-detail .container,
  .page-identity .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* ===== Keep original title case ===== */
#main h1,
#main h1.h1,
#content-wrapper h1,
#content-wrapper h1.h1,
.page-product h1,
.page-product h1.h1,
.product-information h1,
.product-information h1.h1,
.product-detail h1,
.product-detail h1.h1,
.product-detail-name,
.product-page-product-name,
.h1.page-title,
.page-title,
.product-title,
.product-title a,
.product-miniature .product-title,
.product-miniature .product-title a,
#js-product-list .product-title,
#js-product-list .product-title a,
#subcategories .subcategory-name,
#subcategories .subcategory-name a,
.subcategories .subcategory-name,
.subcategories .subcategory-name a {
  text-transform: none !important;
}

/* ===== Header ===== */
#header .header-nav.bt-header-nav {
  background: #fff;
  border-bottom: 0 !important;
  position: relative;
  z-index: 30;
}

#header .header-top.bt-header-mobile-only {
  background: #fff;
  padding: 0;
  min-height: 0;
  position: relative;
  z-index: 10;
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid #e2e2e2 !important;
  clear: both;
}

#header .bt-header-desktop {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center !important;
  min-height: 82px !important;
  column-gap: 24px;
  width: 100%;
  position: relative;
  z-index: 30;
  padding-top: 10px;
  padding-bottom: 10px;
}

#header .bt-header-left,
#header .bt-header-center,
#header .bt-header-right,
#header .bt-nav1-wrap,
#header .bt-header-actions,
#header #_desktop_logo {
  position: relative;
  z-index: 31;
}

#header .bt-header-left {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
}

#header .bt-header-center {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

#header .bt-header-center h1 {
  margin: 0;
  line-height: 1;
}

#header .bt-header-center a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#header .bt-header-center img {
  max-height: 64px !important;
  width: auto;
  height: auto;
}

#header .bt-header-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  min-width: 0;
}

#header .bt-nav1-wrap {
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: nowrap;
}

#header .bt-shop-location-top {
  display: inline-block;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 500;
  color: #444 !important;
  text-transform: uppercase;
  text-decoration: none !important;
  line-height: 1.2;
}

#header .bt-shop-location-top:hover,
#header .bt-shop-location-top:focus {
  color: #111 !important;
  text-decoration: none !important;
}

#header .bt-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  white-space: nowrap;
}

#header .bt-header-actions > * {
  white-space: nowrap;
}

/* ===== Header search icon / dropdown ===== */
#header .bt-search-toggle {
  position: relative;
  margin: 0;
  flex: 0 0 auto;
}

#header .bt-search-toggle > summary {
  list-style: none;
}

#header .bt-search-toggle > summary::-webkit-details-marker {
  display: none;
}

#header .bt-search-toggle-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid #0b57d0 !important;
  border-radius: 4px;
  background: #fff;
  color: #0b57d0 !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: all .2s ease;
}

#header .bt-search-toggle-btn:hover,
#header .bt-search-toggle[open] .bt-search-toggle-btn {
  background: #f5f9ff;
  border-color: #0b57d0 !important;
  color: #0b57d0 !important;
}

#header .bt-search-toggle-btn *,
#header .bt-search-toggle-btn .material-icons,
#header .bt-search-toggle-btn i {
  color: #0b57d0 !important;
  fill: #0b57d0 !important;
  font-weight: 700 !important;
  opacity: 1 !important;
}

#header .bt-search-toggle-btn .material-icons {
  font-size: 24px;
  line-height: 1;
}

#header .bt-search-panel {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 999;
  width: 320px;
  padding: 12px;
  background: #fff;
  border: 1px solid #e2e2e2;
  border-radius: 6px;
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
}

#header .bt-search-panel .search-widget,
#header .bt-search-panel .search-widgets,
#header .bt-search-panel form {
  width: 100%;
  margin: 0;
}

#header .bt-search-panel input[type="text"],
#header .bt-search-panel input[type="search"],
#header .bt-search-panel .ui-autocomplete-input {
  width: 100%;
  height: 40px;
  min-height: 40px;
  border-radius: 4px;
}

#header .bt-search-panel input[type="text"],
#header .bt-search-panel input[type="search"],
#header .bt-search-panel .ui-autocomplete-input,
#header .bt-search-panel button[type="submit"],
#header .bt-search-panel button[type="submit"] *,
#header .bt-search-panel .material-icons,
#header .bt-search-panel i,
#header .bt-search-panel label,
#header .bt-search-panel .search {
  color: #0b57d0 !important;
  fill: #0b57d0 !important;
  font-weight: 700 !important;
  opacity: 1 !important;
}

/* ===== Menu row ===== */
#header .bt-menu-row {
  position: relative;
  z-index: 10;
  margin: 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid #e5e5e5 !important;
}

#header .bt-menu-row > .col-md-12 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

#header .bt-menu-row .top-menu {
  margin-bottom: 0;
}

#header .bt-menu-row .top-menu[data-depth="0"] {
  position: relative;
  z-index: 10;
  margin: 0 !important;
  min-height: 50px;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100%;
}

#header .bt-menu-row .top-menu[data-depth="0"] > li {
  flex: 1 1 auto;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 50px;
  text-align: center;
}

#header .bt-menu-row #search_widget,
#header .bt-menu-row .search-widget,
#header .bt-menu-row .search-widgets {
  display: none !important;
}

#header .header-nav.bt-header-nav::after,
#header .bt-header-desktop::after {
  display: none !important;
  content: none !important;
}

/* ===== Product grid: desktop 4 per row, mobile/tablet 1 per row ===== */
body#index .products,
body#index .featured-products .products,
body#index section.featured-products .products,
body#category #products .products.row,
body#search #products .products.row,
body#prices-drop #products .products.row,
body#new-products #products .products.row,
body#best-sales #products .products.row,
body#manufacturer #products .products.row,
body#supplier #products .products.row,
.products.row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}

/* Large tablets / iPad Pro: use two wider cards so product images remain clear. */
@media (min-width: 992px) and (max-width: 1199.98px) {
  body#index .product-miniature,
  body#index .js-product-miniature,
  body#category #products .product-miniature,
  body#search #products .product-miniature,
  body#prices-drop #products .product-miniature,
  body#new-products #products .product-miniature,
  body#best-sales #products .product-miniature,
  body#manufacturer #products .product-miniature,
  body#supplier #products .product-miniature,
  .products.row > article.product-miniature {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }
}

/* Laptop and desktop: four products per row. */
@media (min-width: 1200px) {
  body#index .product-miniature,
  body#index .js-product-miniature,
  body#category #products .product-miniature,
  body#search #products .product-miniature,
  body#prices-drop #products .product-miniature,
  body#new-products #products .product-miniature,
  body#best-sales #products .product-miniature,
  body#manufacturer #products .product-miniature,
  body#supplier #products .product-miniature,
  .products.row > article.product-miniature {
    flex: 0 0 25% !important;
    max-width: 25% !important;
    width: 25% !important;
  }
}

@media (max-width: 991.98px) {
  html body .products.row {
    display: block !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body .products.row > article.product-miniature,
  html body .products.row > .product-miniature,
  html body article.product-miniature[class*="col-"] {
    float: none !important;
    display: block !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    flex: 0 0 100% !important;
    flex-basis: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 18px !important;
  }

  html body .product-miniature .thumbnail-container {
    width: 100% !important;
    max-width: 400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .product-miniature .product-thumbnail,
  html body .product-miniature .thumbnail.product-thumbnail {
    width: 100% !important;
    max-width: 400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
  }

  html body .product-miniature .product-thumbnail img,
  html body .product-miniature .thumbnail.product-thumbnail img {
    width: 100% !important;
    max-width: 400px !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    object-fit: contain !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* ===== Product card layout ===== */
.product-miniature,
.js-product-miniature {
  display: flex;
  align-items: stretch;
  margin-bottom: 18px;
}

.product-miniature .thumbnail-container,
.js-product-miniature .thumbnail-container {
  width: 100%;
  height: 100%;
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  overflow: hidden !important;
}

#products .product-miniature .thumbnail-top {
  flex: 0 0 auto;
  width: 100%;
}

#products .product-miniature .product-thumbnail,
.product-miniature .product-thumbnail {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #fff;
  position: relative !important;
  z-index: 3 !important;
}

#products .product-miniature .product-thumbnail img,
.product-miniature .product-thumbnail img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100%;
  object-fit: contain;
  opacity: 1 !important;
  visibility: visible !important;
  transition: none !important;
  animation: none !important;
  transform: none !important;
  -webkit-transform: none !important;
  backface-visibility: visible !important;
  -webkit-backface-visibility: visible !important;
}

.product-miniature .product-description,
.js-product-miniature .product-description,
#products .product-miniature .product-description {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto;
  padding: 8px 8px 10px !important;
}

/* ===== Product listing title: blue, larger, 2 lines ===== */
.product-miniature .product-title,
.js-product-miniature .product-title,
#products .product-miniature .product-title,
#index .product-miniature .product-title,
#category .product-miniature .product-title,
#search .product-miniature .product-title,
.featured-products .product-title,
.product-accessories .product-title {
  color: #0056b3 !important;
  font-size: 1.05rem !important;
  line-height: 1.28 !important;
  font-weight: 600 !important;
  text-transform: none !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  margin: 0 0 6px !important;
  overflow: hidden !important;
}

.product-miniature .product-title a,
.js-product-miniature .product-title a,
#products .product-miniature .product-title a,
#index .product-miniature .product-title a,
#category .product-miniature .product-title a,
#search .product-miniature .product-title a,
.featured-products .product-title a,
.product-accessories .product-title a {
  color: #0056b3 !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  white-space: normal !important;
  word-break: break-word !important;
  line-height: 1.28 !important;
  text-overflow: unset !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.product-miniature .product-title a:hover,
.js-product-miniature .product-title a:hover,
#products .product-title a:hover,
.featured-products .product-title a:hover,
.product-accessories .product-title a:hover {
  color: #003f86 !important;
  text-decoration: underline !important;
}

/* ===== Product listing price: compact + sale prices side by side ===== */
#products .product-miniature .product-price-and-shipping,
#products .product-miniature .price-and-shipping,
.product-miniature .product-price-and-shipping,
.product-miniature .price-and-shipping,
.js-product-miniature .product-price-and-shipping,
.js-product-miniature .price-and-shipping,
.featured-products .product-miniature .product-price-and-shipping,
.featured-products .product-miniature .price-and-shipping,
body#index .product-miniature .product-price-and-shipping,
body#index .product-miniature .price-and-shipping {
  min-height: 22px !important;
  height: auto !important;
  margin: 4px 0 4px !important;
  padding: 0 !important;
  line-height: 1.25 !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: baseline !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
}

#products .product-miniature .regular-price,
.product-miniature .regular-price,
.js-product-miniature .regular-price,
.featured-products .regular-price,
body#index .product-miniature .regular-price {
  display: inline-block !important;
  margin: 0 !important;
  color: #777 !important;
  font-size: 0.9rem !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  text-decoration: line-through !important;
  vertical-align: baseline !important;
}

#products .product-miniature .price,
.product-miniature .price,
.js-product-miniature .price,
.featured-products .price,
body#index .product-miniature .price {
  display: inline-block !important;
  margin: 0 !important;
  min-height: 0 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  vertical-align: baseline !important;
}

/* ===== Product listing SKU: label black, SKU value red ===== */
.product-miniature .bt-product-sku,
.product-miniature .product-reference,
.product-miniature .product-miniature-reference,
.product-miniature .reference,
.js-product-miniature .bt-product-sku,
#products .product-miniature .bt-product-sku,
.featured-products .bt-product-sku,
.product-accessories .bt-product-sku {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  clear: both !important;
  order: 30 !important;
  margin: 5px 0 0 !important;
  padding: 0 !important;
  font-size: 0.95rem !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  text-align: left !important;
  color: #222 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.product-miniature .bt-product-sku-label,
.product-miniature .product-reference .bt-product-sku-label,
.product-miniature .product-miniature-reference .bt-product-sku-label,
.product-miniature .reference .bt-product-sku-label,
.product-miniature .product-reference .sku-label,
.product-miniature .product-miniature-reference .sku-label,
.product-miniature .reference .sku-label,
#products .bt-product-sku-label,
.featured-products .bt-product-sku-label,
.product-accessories .bt-product-sku-label {
  color: #222 !important;
  font-weight: 600 !important;
}

.product-miniature .bt-product-sku-value,
.product-miniature .product-reference .bt-product-sku-value,
.product-miniature .product-miniature-reference .bt-product-sku-value,
.product-miniature .reference .bt-product-sku-value,
.product-miniature .product-reference .sku-value,
.product-miniature .product-miniature-reference .sku-value,
.product-miniature .reference .sku-value,
#products .bt-product-sku-value,
.featured-products .bt-product-sku-value,
.product-accessories .bt-product-sku-value {
  color: #d60000 !important;
  font-weight: 700 !important;
}

/* ===== Add to cart button: top-right of product image ===== */
#products .product-miniature .btatcl-anchor,
.product-miniature .btatcl-anchor {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  left: auto !important;
  bottom: auto !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: none !important;
  z-index: 10 !important;
}

#products .product-miniature .btatcl-button,
.product-miniature .btatcl-button {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

#products .product-miniature .btatcl-button svg,
.product-miniature .btatcl-button svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
}

/* ===== Product listing flags ===== */
#index .product-miniature .thumbnail-container,
#category .product-miniature .thumbnail-container,
#search .product-miniature .thumbnail-container,
#js-product-list .product-miniature .thumbnail-container,
.products .product-miniature .thumbnail-container,
#index .product-miniature .product-thumbnail,
#category .product-miniature .product-thumbnail,
#search .product-miniature .product-thumbnail,
#js-product-list .product-miniature .product-thumbnail,
.products .product-miniature .product-thumbnail {
  position: relative !important;
  overflow: visible !important;
}

#index .product-miniature .product-flags,
#category .product-miniature .product-flags,
#search .product-miniature .product-flags,
#js-product-list .product-miniature .product-flags,
.products .product-miniature .product-flags,
#index .product-miniature .js-product-flags,
#category .product-miniature .js-product-flags,
#search .product-miniature .js-product-flags,
#js-product-list .product-miniature .js-product-flags,
.products .product-miniature .js-product-flags {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 50 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 4px !important;
  pointer-events: none !important;
}

#index .product-miniature .product-flag,
#category .product-miniature .product-flag,
#search .product-miniature .product-flag,
#js-product-list .product-miniature .product-flag,
.products .product-miniature .product-flag,
.product-miniature .product-flag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: calc(100% - 20px) !important;
  height: 22px !important;
  min-width: 42px !important;
  padding: 0 7px !important;
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 22px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  position: relative !important;
  z-index: 51 !important;
  transform: none !important;
  text-transform: none !important;
  border-radius: 15px 50px !important;
  box-shadow: none !important;
}

.product-miniature .product-flag.online-only .material-icons,
.product-miniature .product-flag.online-only i,
.product-miniature .product-flag.online-only svg,
.product-miniature .product-flag.online-only img,
.product-miniature .product-flag.online-only-flag .material-icons,
.product-miniature .product-flag.online-only-flag i,
.product-miniature .product-flag.online-only-flag svg,
.product-miniature .product-flag.online-only-flag img {
  display: none !important;
}

/* ===== Product page SKU red ===== */
body#product .product-reference span,
body#product .product-reference [itemprop="sku"],
body#product #product-details .product-reference span,
body#product .product-details .product-reference span,
body#product .bt-product-sku-value,
body#product .product-information .bt-product-sku-value,
body#product .tabs .bt-product-sku-value {
  color: #d60000 !important;
  font-weight: 700 !important;
}

body#product .product-reference label,
body#product .product-reference .label,
body#product .bt-product-sku-label {
  color: #222 !important;
  font-weight: 600 !important;
}

/* ===== Product page sale flag patch ===== */
body#product .product-container .page-content#content {
  position: relative !important;
}

body#product .product-container .page-content#content ul.product-flags,
body#product .product-container .page-content#content ul.product-flags.js-product-flags {
  position: absolute !important;
  top: 8px !important;
  left: 8px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 99 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 4px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  pointer-events: none !important;
}

body#product .product-container .page-content#content ul.product-flags li.product-flag,
body#product .product-container .page-content#content ul.product-flags li.product-flag.on-sale,
body#product .product-container .page-content#content ul.product-flags li.product-flag.discount {
  position: static !important;
  float: none !important;
  clear: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 42px !important;
  max-width: none !important;
  height: 22px !important;
  margin: 0 !important;
  padding: 0 7px !important;
  font-size: 12px !important;
  line-height: 22px !important;
  font-weight: 700 !important;
  text-align: center !important;
  white-space: nowrap !important;
  text-transform: none !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  background: #f39d72 !important;
  color: #fff !important;
}

body#product .product-container .page-content#content .images-container,
body#product .product-container .page-content#content .product-cover {
  position: relative !important;
  z-index: 1 !important;
}

/* ===== Disable Quick View completely ===== */
.product-miniature .highlighted-informations,
.product-miniature .highlighted-informations.no-variants,
.product-miniature .quick-view,
.product-miniature .quick_view,
.product-miniature .quickview,
.product-miniature .bt-qv-toggle,
.products .product-miniature .highlighted-informations,
.products .product-miniature .quick-view,
#js-product-list .product-miniature .highlighted-informations,
#js-product-list .product-miniature .quick-view,
#index .product-miniature .highlighted-informations,
#index .product-miniature .quick-view,
#category .product-miniature .highlighted-informations,
#category .product-miniature .quick-view,
#search .product-miniature .highlighted-informations,
#search .product-miniature .quick-view {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

/* ===== Stop hover video / overlay on list cards ===== */
#index .product-miniature video,
#index .product-miniature iframe,
#category .product-miniature video,
#category .product-miniature iframe,
#search .product-miniature video,
#search .product-miniature iframe,
#js-product-list .product-miniature video,
#js-product-list .product-miniature iframe,
.products .product-miniature video,
.products .product-miniature iframe,
#index .product-miniature [class*="video"],
#index .product-miniature [id*="video"],
#index .product-miniature [class*="hover-media"],
#index .product-miniature [class*="preview-media"],
#index .product-miniature [class*="video-preview"],
#index .product-miniature [class*="hover-video"],
#category .product-miniature [class*="video"],
#category .product-miniature [id*="video"],
#category .product-miniature [class*="hover-media"],
#category .product-miniature [class*="preview-media"],
#category .product-miniature [class*="video-preview"],
#category .product-miniature [class*="hover-video"],
#search .product-miniature [class*="video"],
#search .product-miniature [id*="video"],
#search .product-miniature [class*="hover-media"],
#search .product-miniature [class*="preview-media"],
#search .product-miniature [class*="video-preview"],
#search .product-miniature [class*="hover-video"],
#js-product-list .product-miniature [class*="video"],
#js-product-list .product-miniature [id*="video"],
#js-product-list .product-miniature [class*="hover-media"],
#js-product-list .product-miniature [class*="preview-media"],
#js-product-list .product-miniature [class*="video-preview"],
#js-product-list .product-miniature [class*="hover-video"],
.products .product-miniature [class*="video"],
.products .product-miniature [id*="video"],
.products .product-miniature [class*="hover-media"],
.products .product-miniature [class*="preview-media"],
.products .product-miniature [class*="video-preview"],
.products .product-miniature [class*="hover-video"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

/* ===== Subcategories clean block ===== */
#subcategories .subcategory-image,
#subcategories .subcategory-image a,
#subcategories .subcategory-image img,
#subcategories .category-image,
#subcategories .category-image a,
#subcategories .category-image img {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  background: transparent !important;
}

#subcategories .thumbnail-container,
#subcategories .category-miniature,
#subcategories .subcategory-block,
#subcategories .subcategories-list li,
#subcategories .block_content > ul > li,
#subcategories ul[data-depth="0"] > li,
#subcategories .row > div {
  background: #fff !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: background .2s ease, border-color .2s ease, transform .2s ease !important;
}

#subcategories .subcategory-name,
#subcategories .subcategory-name a,
#subcategories h5,
#subcategories h5 a,
#subcategories .cat_name,
#subcategories .cat_name a {
  display: block !important;
  margin: 0 !important;
  padding: 12px 10px !important;
  text-align: center !important;
  text-decoration: none !important;
  color: #25bfd0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

#subcategories .thumbnail-container:hover,
#subcategories .thumbnail-container:focus-within,
#subcategories .category-miniature:hover,
#subcategories .category-miniature:focus-within,
#subcategories .subcategory-block:hover,
#subcategories .subcategory-block:focus-within,
#subcategories .subcategories-list li:hover,
#subcategories .subcategories-list li:focus-within,
#subcategories .block_content > ul > li:hover,
#subcategories .block_content > ul > li:focus-within,
#subcategories ul[data-depth="0"] > li:hover,
#subcategories ul[data-depth="0"] > li:focus-within,
#subcategories .row > div:hover,
#subcategories .row > div:focus-within {
  background: #25bfd0 !important;
  border-color: #25bfd0 !important;
  transform: translateY(-1px) !important;
}

#subcategories .thumbnail-container:hover .subcategory-name a,
#subcategories .thumbnail-container:focus-within .subcategory-name a,
#subcategories .category-miniature:hover .subcategory-name a,
#subcategories .category-miniature:focus-within .subcategory-name a,
#subcategories .subcategory-block:hover .subcategory-name a,
#subcategories .subcategory-block:focus-within .subcategory-name a,
#subcategories .subcategories-list li:hover a,
#subcategories .subcategories-list li:focus-within a,
#subcategories .block_content > ul > li:hover a,
#subcategories .block_content > ul > li:focus-within a,
#subcategories ul[data-depth="0"] > li:hover a,
#subcategories ul[data-depth="0"] > li:focus-within a,
#subcategories .row > div:hover a,
#subcategories .row > div:focus-within a,
#subcategories .thumbnail-container:hover h5 a,
#subcategories .category-miniature:hover h5 a,
#subcategories .subcategory-block:hover h5 a {
  color: #fff !important;
  text-decoration: none !important;
}

#subcategories a,
#subcategories a:hover,
#subcategories a:focus,
#subcategories a:active,
#subcategories a:focus-visible,
#subcategories *:focus,
#subcategories *:focus-visible {
  box-shadow: none !important;
  outline: 0 !important;
}

/* ===== Category header / cover image blank box fix ===== */
body#category .block-category,
.page-category .block-category,
#category .block-category {
  min-height: 0 !important;
  height: auto !important;
  padding: 18px 24px !important;
  margin: 0 0 18px !important;
  background: #fff !important;
  overflow: visible !important;
  position: relative !important;
}

body#category .block-category.bt-category-no-cover,
.page-category .block-category.bt-category-no-cover,
#category .block-category.bt-category-no-cover {
  min-height: 0 !important;
  padding: 18px 24px !important;
}

body#category .block-category h1,
body#category .block-category .h1,
.page-category .block-category h1,
.page-category .block-category .h1,
#category .block-category h1,
#category .block-category .h1 {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.25 !important;
  text-transform: none !important;
}

body#category .block-category #category-description,
.page-category .block-category #category-description,
#category .block-category #category-description {
  margin-top: 12px !important;
  margin-bottom: 0 !important;
}

body#category .block-category.bt-category-no-cover .category-cover,
.page-category .block-category.bt-category-no-cover .category-cover,
#category .block-category.bt-category-no-cover .category-cover,
body#category .block-category .category-cover:empty,
.page-category .block-category .category-cover:empty,
#category .block-category .category-cover:empty {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body#category .block-category.bt-category-has-cover .category-cover,
.page-category .block-category.bt-category-has-cover .category-cover,
#category .block-category.bt-category-has-cover .category-cover,
body#category .block-category .category-cover,
.page-category .block-category .category-cover,
#category .block-category .category-cover {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  text-align: center !important;
  background: transparent !important;
}

body#category .block-category .category-cover img,
.page-category .block-category .category-cover img,
#category .block-category .category-cover img {
  display: inline-block !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 auto !important;
  vertical-align: middle !important;
}

body#category .block-category .category-cover img:not([src]),
body#category .block-category .category-cover img[src=""],
.page-category .block-category .category-cover img:not([src]),
.page-category .block-category .category-cover img[src=""],
#category .block-category .category-cover img:not([src]),
#category .block-category .category-cover img[src=""] {
  display: none !important;
}

/* ===== Mobile menu search ===== */
.bt-gsm-mobile-search {
  display: none;
}

@media (max-width: 767px) {
  #bt-gsm-mobile-search.bt-gsm-mobile-search {
    display: block !important;
    padding: 12px 16px;
    margin: 0;
    background: #fff;
    border-bottom: 1px solid #eee;
    list-style: none;
  }

  #bt-gsm-mobile-search .bt-gsm-search-form {
    display: block;
    width: 100%;
    margin: 0;
  }

  #bt-gsm-mobile-search .bt-gsm-search-box {
    display: flex;
    width: 100%;
    height: 42px;
    border: 1px solid #d9d9d9;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
  }

  #bt-gsm-mobile-search .bt-gsm-search-input {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
    height: 42px;
    padding: 0 12px;
    border: 0;
    outline: 0;
    font-size: 15px;
    color: #222;
    background: #fff;
    -webkit-appearance: none;
    appearance: none;
  }

  #bt-gsm-mobile-search .bt-gsm-search-input::placeholder {
    color: #888;
  }

  #bt-gsm-mobile-search .bt-gsm-search-button {
    flex: 0 0 46px;
    width: 46px;
    height: 42px;
    padding: 0;
    border: 0;
    border-left: 1px solid #eee;
    background: #f7f7f7;
    color: #222;
  }

  #bt-gsm-mobile-search .bt-gsm-search-button .material-icons {
    font-size: 22px;
    line-height: 42px;
  }
}

/* ===== Responsive header and product card tuning ===== */
@media (max-width: 1399.98px) {
  #header .bt-header-right,
  #header .bt-header-actions,
  #header .bt-nav1-wrap {
    gap: 12px;
  }

  #header .bt-search-panel {
    width: 290px;
  }
}

@media (max-width: 1199.98px) {
  #header .bt-header-desktop {
    column-gap: 14px;
  }

  #header .bt-header-center img {
    max-height: 58px !important;
  }

  #header .bt-shop-location-top {
    font-size: 13px;
  }

  #header .bt-search-panel {
    width: 250px;
  }
}

@media (max-width: 991.98px) {
  #header .bt-header-center img {
    max-height: 54px !important;
  }
}

@media (max-width: 767.98px) {
  #header .header-nav.bt-header-nav {
    padding-top: 8px;
    padding-bottom: 8px;
    border: 0 !important;
  }

  #header .header-top.bt-header-mobile-only {
    border: 0 !important;
  }

  #header #_mobile_logo {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #header #_mobile_logo img,
  #header .top-logo img {
    max-height: 52px;
    width: auto;
    height: auto;
  }

  #header #menu-icon {
    margin-top: 6px;
  }

  #header .bt-shop-location-top {
    display: none !important;
  }

  #products .product-miniature .product-title,
  .product-miniature .product-title {
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
  }

  #products .product-miniature .btatcl-anchor,
  .product-miniature .btatcl-anchor {
    top: 10px !important;
    right: 10px !important;
  }

  #products .product-miniature .btatcl-button,
  .product-miniature .btatcl-button {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
  }

  #products .product-miniature .btatcl-button svg,
  .product-miniature .btatcl-button svg {
    width: 20px !important;
    height: 20px !important;
  }

  body#product .product-container .page-content#content ul.product-flags,
  body#product .product-container .page-content#content ul.product-flags.js-product-flags {
    top: 6px !important;
    left: 6px !important;
    gap: 3px !important;
  }

  body#product .product-container .page-content#content ul.product-flags li.product-flag,
  body#product .product-container .page-content#content ul.product-flags li.product-flag.on-sale,
  body#product .product-container .page-content#content ul.product-flags li.product-flag.discount {
    min-width: 38px !important;
    height: 20px !important;
    padding: 0 6px !important;
    font-size: 11px !important;
    line-height: 20px !important;
  }

  body#category .block-category,
  .page-category .block-category,
  #category .block-category {
    min-height: 0 !important;
    padding: 14px 16px !important;
    margin-bottom: 14px !important;
  }

  body#category .block-category h1,
  body#category .block-category .h1,
  .page-category .block-category h1,
  .page-category .block-category .h1,
  #category .block-category h1,
  #category .block-category .h1 {
    font-size: 24px !important;
    line-height: 1.25 !important;
  }

  body#category .block-category .category-cover,
  .page-category .block-category .category-cover,
  #category .block-category .category-cover {
    margin-top: 12px !important;
  }
}

/* ==========================================================
   BT MOBILE SINGLE HAMBURGER — V2
   Mobile only
   Keeps the mobile language hook/header row visible.
   ========================================================== */
@media (max-width: 767.98px) {

  /*
   * Hide only the Classic theme hamburger.
   * Do not collapse .header-top.bt-header-mobile-only because
   * that row also contains the mobile language selector.
   */
  #header #menu-icon {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  /*
   * Remove spacing belonging only to the BT menu row.
   * The surrounding mobile header remains untouched.
   */
  #header .bt-menu-row,
  #header .bt-menu-row > [class*="col-"] {
    min-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  /*
   * BT menu wrapper that directly contains:
   * nav#btmegamenu-1-nav
   */
  #header .bt-menu-row
  :has(> nav[id^="btmegamenu-"][id$="-nav"]) {
    position: static !important;
    min-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  /*
   * Move the BT module's own working mobile trigger into the
   * top-left hamburger position.
   */
  #header .bt-menu-row
  :has(> nav[id^="btmegamenu-"][id$="-nav"])
  > :not(nav):not(script):not(style) {
    position: fixed !important;
    top: 8px !important;
    left: 8px !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 10050 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;

    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;

    border: 0 !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.88) !important;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.16) !important;

    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;

    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  /*
   * Keep the original clickable child in place but visually hide
   * its original "Menu" text and icon.
   */
  #header .bt-menu-row
  :has(> nav[id^="btmegamenu-"][id$="-nav"])
  > :not(nav):not(script):not(style) > * {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;

    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;

    opacity: 0 !important;
    color: transparent !important;
    font-size: 0 !important;
    text-indent: -9999px !important;
  }

  /*
   * Visible blue three-line hamburger.
   */
  #header .bt-menu-row
  :has(> nav[id^="btmegamenu-"][id$="-nav"])
  > :not(nav):not(script):not(style)::after {
    content: "\2630";
    position: absolute;
    inset: 0;
    z-index: 3;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #0b57d0;
    font-family: Arial, sans-serif;
    font-size: 29px;
    font-weight: 700;
    line-height: 44px;
    text-indent: 0;

    pointer-events: none;
  }

  /*
   * When the BT module opens the navigation, place it below the
   * mobile header. This does not affect the language selector.
   */
  #header .bt-menu-row
  nav[id^="btmegamenu-"][id$="-nav"] {
    position: fixed !important;
    top: 60px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    z-index: 10040 !important;

    width: 100% !important;
    max-width: 100% !important;
    max-height: calc(100vh - 60px) !important;

    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;

    background: #fff !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.14) !important;
  }
}

/* BT MOBILE SHOP V3 final cascade guards */
@media (max-width: 991.98px) {
  #products .product-miniature .product-title,
  .product-miniature .product-title {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  #products .product-miniature .product-title a,
  .product-miniature .product-title a {
    -webkit-line-clamp: 3 !important;
  }

  #products .product-miniature .btatcl-button,
  .product-miniature .btatcl-button {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }

  /* Allow price and SKU to wrap inside the card instead of overflowing left. */
  #products .product-miniature .product-price-and-shipping,
  #products .product-miniature .price-and-shipping,
  .product-miniature .product-price-and-shipping,
  .product-miniature .price-and-shipping,
  .js-product-miniature .product-price-and-shipping,
  .js-product-miniature .price-and-shipping {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: baseline !important;
    gap: 5px 9px !important;
    overflow: visible !important;
    text-align: left !important;
  }

  .product-miniature .bt-product-sku,
  .js-product-miniature .bt-product-sku,
  #products .product-miniature .bt-product-sku {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 2px 0 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    text-overflow: clip !important;
  }
}

@media (max-width: 767.98px) {
  #header .header-nav.bt-header-nav {
    min-height: 60px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  #header #_mobile_logo img,
  #header .top-logo img {
    max-height: 46px !important;
  }

  /* Product thumbnails: allow native finger swipe to every photo. */
  body#product .js-qv-mask.mask {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    touch-action: pan-x !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
  }

  body#product .js-qv-mask .js-qv-product-images {
    display: flex !important;
    flex-flow: row nowrap !important;
    width: max-content !important;
    min-width: 100% !important;
    margin: 0 !important;
    padding: 4px 2px 8px !important;
    gap: 10px !important;
    transform: none !important;
    scroll-snap-type: x proximity;
  }

  body#product .js-qv-mask .js-thumb-container {
    display: block !important;
    flex: 0 0 86px !important;
    width: 86px !important;
    margin: 0 !important;
    scroll-snap-align: start;
  }

  body#product .js-qv-mask .js-thumb {
    display: block !important;
    width: 86px !important;
    height: 86px !important;
    max-width: none !important;
    object-fit: contain !important;
  }

  body#product .scroll-box-arrows {
    display: none !important;
  }
}

/* ==========================================================
   BT TABLET HEADER — V1
   768–991px: centred logo row + separate actions row.
   992–1199px: logo left + compact actions right.
   Mobile and desktop remain unchanged.
   ========================================================== */

/* Small tablets, including iPad Air portrait. */
@media (min-width: 768px) and (max-width: 991.98px) {
  #header .header-nav.bt-header-nav {
    padding: 0 !important;
  }

  #header .bt-header-desktop {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "bt-tablet-logo"
      "bt-tablet-actions" !important;
    row-gap: 0 !important;
    column-gap: 0 !important;
    min-height: 0 !important;
    padding: 8px 12px 6px !important;
  }

  #header .bt-header-left {
    display: none !important;
  }

  #header .bt-header-center,
  #header #_desktop_logo {
    grid-area: bt-tablet-logo !important;
    position: static !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 54px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 0 6px !important;
    transform: none !important;
  }

  #header .bt-header-center img,
  #header #_desktop_logo img {
    display: block !important;
    max-width: min(260px, 58vw) !important;
    max-height: 54px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
  }

  #header .bt-header-right {
    grid-area: bt-tablet-actions !important;
    position: static !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 50px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    padding: 6px 0 0 !important;
    border-top: 1px solid #ececec !important;
  }

  #header .bt-header-actions,
  #header .bt-nav1-wrap {
    display: flex !important;
    min-width: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
  }

  #header .bt-shop-location-top {
    display: none !important;
  }

  #header .bt-search-toggle-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }

  #header .bt-search-panel {
    top: calc(100% + 6px) !important;
    right: 50% !important;
    width: min(420px, calc(100vw - 40px)) !important;
    transform: translateX(50%) !important;
  }
}

/* Larger tablets, including iPad Pro portrait. */
@media (min-width: 992px) and (max-width: 1199.98px) {
  #header .bt-header-desktop {
    display: grid !important;
    grid-template-columns: minmax(150px, 230px) minmax(0, 1fr) !important;
    grid-template-areas: "bt-tablet-logo bt-tablet-actions" !important;
    align-items: center !important;
    column-gap: 20px !important;
    min-height: 74px !important;
    padding: 8px 0 !important;
  }

  #header .bt-header-left {
    display: none !important;
  }

  #header .bt-header-center,
  #header #_desktop_logo {
    grid-area: bt-tablet-logo !important;
    position: static !important;
    display: flex !important;
    min-width: 0 !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    transform: none !important;
  }

  #header .bt-header-center img,
  #header #_desktop_logo img {
    display: block !important;
    max-width: 220px !important;
    max-height: 56px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
  }

  #header .bt-header-right {
    grid-area: bt-tablet-actions !important;
    position: static !important;
    display: flex !important;
    min-width: 0 !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
  }

  #header .bt-header-actions,
  #header .bt-nav1-wrap {
    display: flex !important;
    min-width: 0 !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
  }

  #header .bt-shop-location-top {
    display: none !important;
  }

  #header .bt-search-toggle-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }
}
