/* Homepage-only visual refresh. Existing theme modules keep their content and actions. */
body#index {
  --bess-bg: #030e17;
  --bess-panel: #112536;
  --bess-text: #f3f8ff;
  --bess-accent: #42d7f4;
  background: var(--bess-bg);
  color: var(--bess-text);
}
body#index #wrapper,
body#index #main,
body#index #content-wrapper,
body#index .page-home { background: var(--bess-bg); color: var(--bess-text); }
body#index #header,
body#index .header-top,
body#index .header-nav,
body#index .header-banner { background: #020b11; color: var(--bess-text); border-bottom: 1px solid rgba(66,215,244,.22); }
body#index .header-banner .header-contact-info { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 8px; padding-bottom: 8px; }
body#index .header-banner .header-contact, body#index .header-banner .header-contact li, body#index .header-banner .header-contact a, body#index .header-banner .header-contact i, body#index .header-banner .header_address, body#index .header-banner .header_address span { color: #b8c8d8; }
body#index .header-banner .right-block { display: flex; align-items: center; gap: 18px; margin: 0; }
body#index .header-top { border-bottom: 1px solid rgba(66, 215, 244, .35); }
body#index #header a,
body#index #header button,
body#index #header i { color: var(--bess-text); }
body#index #header a:hover,
body#index #header a:focus-visible { color: var(--bess-accent); }
body#index #header input[type="text"],
body#index #header input[type="search"] {
  background: #fff;
  color: #182836;
  border: 1px solid #b3eefa;
  border-radius: 999px;
  min-height: 44px;
}
body#index .page-home h1,
body#index .page-home h2,
body#index .page-home h3,
body#index .page-home h4 { color: var(--bess-text); }
body#index .page-home .products,
body#index .page-home .products-section { gap: 16px; }
body#index .page-home .product-miniature .thumbnail-container,
body#index .page-home .product-miniature .product-description {
  background: #fff;
  color: #172839;
  border-radius: 12px;
}
body#index .page-home .product-miniature .product-title,
body#index .page-home .product-miniature .product-title a,
body#index .page-home .product-miniature .price { color: #172839; }
body#index .page-home .product-miniature .thumbnail-container {
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
}
body#index .page-home .product-miniature .thumbnail-container-bottom,
body#index .page-home .product-miniature .product-description {
  position: static;
  visibility: visible;
  opacity: 1;
  transform: none;
}
body#index .page-home .product-miniature .product-description {
  display: block;
  padding: 12px;
  min-height: 78px;
}
body#index .page-home .product-miniature .product-title,
body#index .page-home .product-miniature .product-price-and-shipping {
  display: block;
  visibility: visible;
  opacity: 1;
  margin: 0 0 6px;
}
body#index .page-home .product-miniature .product-title a { color: #172839; }
body#index .page-home .products { align-items: flex-start; row-gap: 20px; }
body#index .page-home .product-miniature { margin-bottom: 0; }
body#index .page-home .product-miniature .thumbnail-container { height: auto; }
body#index .page-home .product-miniature .thumbnail-container-inner,
body#index .page-home .product-miniature .thumbnail-container-images {
  position: relative;
  width: 100%;
  min-height: 0;
}
body#index .page-home .product-miniature .thumbnail-container-images {
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
body#index .page-home .product-miniature .thumbnail-container-images > a {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}
body#index .page-home .product-miniature .thumbnail-container-images img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}
body#index .page-home .products {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: flex-start;
  gap: 20px;
  height: auto;
  min-height: 0;
  margin-bottom: 24px;
}
body#index .page-home .products > .product-miniature {
  flex: 0 1 220px;
  width: 220px;
  max-width: 100%;
  height: auto;
  min-height: 0;
  margin: 0;
  padding: 0;
}
body#index #bon_manufacturers_block { margin-top: 24px; margin-bottom: 24px; padding-top: 0; padding-bottom: 0; }
body#index .page-home .btn-primary {
  background: linear-gradient(110deg, #ed5da8, #29caed);
  border: 0;
  border-radius: 999px;
  color: #071724;
  font-weight: 700;
}
body#index .page-home .btn-primary:hover,
body#index .page-home .btn-primary:focus-visible { filter: brightness(1.12); }
/* Bonpresta slider and configured promotional banners retain their own links. */
body#index #bonslick { background: radial-gradient(ellipse at 70% 70%, #07568a 0, #07192e 45%, #030e17 85%); overflow: hidden; }
body#index #bonslick .bonslick-slider { margin: 0; }
body#index #bonslick .link-bonslick { display: block; position: relative; }
body#index #bonslick .link-bonslick > img { width: 100%; height: auto; display: block; }
body#index #bonslick .bonslick-caption { color: #fff; }
body#index #bonslick .bonslick-caption h1,
body#index #bonslick .bonslick-caption h2,
body#index #bonslick .bonslick-caption h3 { color: #fff; }
body#index #bonbanners { padding: 18px 0; }
body#index #bonbanners li > a { display: block; position: relative; border: 1px solid rgba(66,215,244,.28); border-radius: 14px; overflow: hidden; }
body#index #bonbanners img { width: 100%; height: auto; display: block; }
body#index #bonbanners .banner-inner { color: #fff; }
body#index #boncategory .boncategory-title { background: linear-gradient(110deg,#f48ab1,#a678ef,#29cbe9); border-radius: 12px; }
body#index #boncategory .boncategory-title h4 { color: #101d2a; }
/* Preserve readable text on existing light dropdowns and overlays. */
body#index #header .dropdown-menu a,
body#index #header .dropdown-menu button,
body#index #header .dropdown-menu i { color: #172839; }
/* Desktop header: use the theme's existing logo, search and action hooks. */
@media (min-width: 992px) {
  body#index #header .header-top .row > .position-static {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: space-between;
    gap: clamp(14px, 1.8vw, 28px) !important;
    width: 100%;
  }
  body#index #header #_desktop_logo {
    display: block !important;
    position: static !important;
    inset: auto !important;
    order: 0 !important;
    flex: 0 0 185px !important;
    width: 185px !important;
    min-width: 0;
    margin: 0 !important;
    transform: none !important;
  }
  body#index #header #_desktop_logo h1 { margin: 0 !important; }
  body#index #header #_desktop_logo img {
    display: block !important;
    width: 100% !important;
    max-width: 185px !important;
    max-height: 72px !important;
    height: auto;
    object-fit: contain;
  }
  body#index #header #_desktop_search_widget {
    display: block !important;
    position: static !important;
    order: 1 !important;
    flex: 1 1 360px !important;
    width: auto !important;
    min-width: 180px !important;
    max-width: none !important;
    margin: 0 !important;
    transform: none !important;
  }
  body#index #header .bon-nav-bar {
    display: flex !important;
    position: static !important;
    order: 2 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content;
    align-items: center !important;
    justify-content: flex-end;
    gap: 14px !important;
    margin: 0 0 0 auto !important;
    transform: none !important;
  }
  body#index #header .bess-home-coin-header {
    display: block !important;
    position: static !important;
    order: -1;
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
  }
  body#index #header .bess-home-coin-header .bess-coins-header { white-space: nowrap; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  body#index #header #_desktop_logo { flex-basis: 150px !important; width: 150px !important; }
  body#index #header #_desktop_logo img { max-width: 150px !important; }
  body#index #header .bon-nav-bar { gap: 9px !important; }
  body#index #header .bess-home-coin-header .bess-coins-header { padding: 6px 9px; }
  body#index #header .bon-nav-bar #_desktop_cart,
  body#index #header .bon-nav-bar #bonwishlist,
  body#index #header .bon-nav-bar #_desktop_user_info { flex: 0 0 auto; }
}
  body#index .header-top .row > .position-static {
    display: flex;
    align-items: center;
    gap: clamp(18px, 3vw, 48px);
    min-width: 0;
  }
  body#index #_desktop_logo { order: 0; flex: 0 0 auto; position: static; transform: none; }
  body#index #_desktop_logo h1 { margin: 0; }
  body#index #_desktop_logo img { max-width: 190px; max-height: 72px; object-fit: contain; }
  body#index #_desktop_search_widget { order: 1; flex: 1 1 380px; min-width: 0; max-width: 580px; position: static; }
  body#index #_desktop_search_widget #searchbox { display: flex; align-items: center; width: 100%; }
  body#index #_desktop_search_widget .search-form-inner { flex: 1 1 auto; min-width: 0; }
  body#index #_desktop_search_widget #input_search { width: 100%; }
  body#index .bon-nav-bar { order: 2; margin-left: auto; display: flex; align-items: center; gap: 12px; flex: 0 0 auto; }
}
/* Final desktop header alignment pass: constrain utility groups and vertical height. */
@media (min-width: 992px) {
  body#index #header .header-banner .header-contact-info {
    display: grid !important;
    grid-template-columns: minmax(260px, 310px) minmax(0, 1fr);
    align-items: center;
    column-gap: clamp(16px, 2vw, 30px);
    min-height: 58px;
    height: auto;
    padding-top: 6px;
    padding-bottom: 6px;
  }
  body#index #header .header-banner .header-contact.left-block {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    width: auto;
    min-width: 0;
    height: auto;
  }
  body#index #header .header-banner .header-contact.right-block {
    display: grid;
    grid-template-columns: minmax(360px, 1fr) minmax(300px, 480px);
    align-items: center;
    justify-content: stretch;
    column-gap: 22px;
    width: auto;
    min-width: 0;
    height: auto;
  }
  body#index #header .header-banner .header-contact.right-block > li:first-child,
  body#index #header .header-banner .header-contact.right-block > li:first-child #btn-boncall,
  body#index #header .header-banner .header-contact.right-block > li:first-child .btn-boncall {
    width: max-content;
    max-width: 100%;
    white-space: nowrap;
  }
  body#index #header .header-banner .header-contact.right-block > li:last-child {
    max-width: 480px;
    line-height: 1.3;
  }
  body#index #header #desktop_bonmm_0 .container,
  body#index #header #top-menu-0 {
    width: min(1280px, calc(100% - 40px));
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 992px) {
  body#index #header #desktop_bonmm_0 #category-6 > .popover {
    left: max(20px, calc((100% - 1140px) / 2)) !important;
    right: auto !important;
    width: min(780px, calc(100vw - 40px)) !important;
    min-width: 0 !important;
    max-width: min(780px, calc(100vw - 40px)) !important;
    max-height: none;
    overflow: visible;
    box-sizing: border-box;
    padding: 14px 18px 50px;
    background: #031b2a !important;
    border: 1px solid #16bce6;
    border-radius: 10px;
    box-shadow: 0 0 12px rgba(28, 200, 243, .45);
  }
  body#index #header #desktop_bonmm_0 #category-6 > .popover > .container,
  body#index #header #desktop_bonmm_0 #category-6 .popover ul[data-bonmm-depth="1"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none;
    padding: 0;
    box-sizing: border-box;
  }
  body#index #header #desktop_bonmm_0 #category-6 .popover ul[data-bonmm-depth="1"] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  body#index #header #desktop_bonmm_0 #category-6 .popover ul[data-bonmm-depth="1"] > li {
    float: none;
    width: auto;
    padding: 0 12px;
    border-left: 1px solid rgba(75, 180, 214, .12);
  }
  body#index #header #desktop_bonmm_0 #category-6 .popover ul[data-bonmm-depth="1"] > li:nth-child(n+25) { display: none; }
  body#index #header #desktop_bonmm_0 #category-6 .popover a {
    color: #e8f6ff;
    text-align: left;
    white-space: normal;
    word-break: normal;
    overflow-wrap: normal;
    padding: 6px 0;
  }
  body#index #header #desktop_bonmm_0 #category-6 .popover a:hover,
  body#index #header #desktop_bonmm_0 #category-6 .popover a:focus-visible { color: #63ddf7; }
  body#index #header #desktop_bonmm_0 #category-6 > .popover > .bess-view-brands {
    display: block !important;
    position: absolute !important;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100% !important;
    padding: 12px 18px;
    border-top: 1px solid rgba(75, 180, 214, .25);
    text-align: center;
    font-weight: 600;
  }
}
/* Responsive sizing for configured Bonpresta content. */
body#index #bonslick .link-bonslick > img {
  width: 100%;
  height: clamp(260px, 28vw, 480px);
  object-fit: cover;
  object-position: center;
}
body#index #bonslick .box-bonslick { max-width: 100%; }
body#index #bonslick .bonslick-caption { max-width: min(580px, 55%); }
body#index #bonbanners .row { display: flex; flex-wrap: wrap; align-items: stretch; }
body#index #bonbanners li { margin-bottom: 16px; }
body#index #bonbanners li > a { height: 100%; }
body#index #bonbanners img { width: 100%; height: clamp(150px, 17vw, 250px); object-fit: cover; }
body#index #bonbanners li > a { background: #112536; display: flex; justify-content: center; align-items: center; }
body#index #bonbanners img { width: 100%; height: auto; max-height: 520px; object-fit: contain; }
body#index .page-home .products { display: flex; flex-wrap: wrap; justify-content: center; }
body#index .page-home .product-miniature { min-width: 0; }
body#index #header img.logo { max-width: 100%; height: auto; }
@media (max-width: 991px) {
  body#index #bonslick .bonslick-caption { max-width: 65%; }
  body#index #bonbanners img { height: clamp(150px, 24vw, 220px); }
}
@media (max-width: 575px) {
  body#index #bonslick .link-bonslick > img { height: clamp(230px, 70vw, 340px); object-position: 65% center; }
  body#index #bonslick .bonslick-caption { max-width: 75%; }
  body#index #bonbanners li { width: 100%; flex: 0 0 100%; max-width: 100%; }
  body#index #bonbanners img { height: auto; max-height: 280px; object-fit: contain; background: #112536; }
  body#index .page-home .product-miniature { flex: 0 1 calc(50% - 16px); max-width: calc(50% - 16px); }
}
body#index .page-home a:focus-visible,
body#index .page-home button:focus-visible,
body#index #header a:focus-visible,
body#index #header button:focus-visible { outline: 3px solid #66e3fa; outline-offset: 3px; }
@media (max-width: 767px) {
  body#index .page-home .product-miniature .thumbnail-container { border-radius: 9px; }
  body#index #header input[type="search"] { min-height: 44px; }
}

/* Reference-inspired category navigation and homepage spacing. */
body#index .bess-category-strip {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 16px;
  max-width: 1440px;
  margin: 22px auto 4px;
  padding: 0 20px;
}
body#index .bess-category-strip a {
  display: flex;
  min-height: 104px;
  padding: 12px 8px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgba(95, 206, 238, .08);
  border-radius: 16px;
  background: linear-gradient(145deg, #142c3e, #0b1b25);
  color: #fff;
  text-align: center;
  font-weight: 600;
  line-height: 1.2;
}
body#index .bess-category-strip a:hover { border-color: #55dcf2; color: #9befff; }
body#index .bess-category-strip span { color: #bcefff; font-size: 30px; line-height: 1; }
body#index .page-home .products-section-title,
body#index .page-home .h1.products-section-title { color: #fff; text-align: left; }
body#index .page-home .products-section-title::before {
  content: '/';
  color: #f078c4;
  margin-right: 12px;
}
body#index #bonbanners li > a { border-color: rgba(104, 199, 255, .3); }
@media (max-width: 991px) {
  body#index .bess-category-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  body#index .bess-category-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 0 15px; }
  body#index .bess-category-strip a { min-height: 88px; }
}

/* Keep configured slider artwork intact and product cards aligned. */
body#index #bonslick .link-bonslick > img {
  object-fit: contain;
  background: #061825;
}
body#index .page-home .products { align-items: stretch; }
body#index .page-home .products > .product-miniature {
  display: flex;
  align-self: stretch;
  animation: none;
  transform: none;
}
body#index .page-home .product-miniature .thumbnail-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
body#index .page-home .product-miniature .thumbnail-container-inner {
  display: flex;
  flex-direction: column;
  flex: 1;
}
body#index .page-home .product-miniature .thumbnail-container-bottom {
  display: flex;
  flex-direction: column;
  flex: 1;
}
body#index .page-home .product-miniature .product-description { flex: 1; }
body#index .page-home .product-miniature .add-to-cart-block {
  top: 0;
  bottom: auto;
  z-index: 2;
}

/* Main storefront styling; existing slider, banners and links stay editable. */
body#index #header .header-top { background: #020a10; border-bottom: 1px solid #124454; }
body#index #desktop_bonmm_0 { background: #031019 !important; border-bottom: 1px solid #14566a; }
body#index #top-menu-0 > li:first-child > a {
  background: linear-gradient(110deg, #f69db0, #d46fdb, #35cfea);
  border-radius: 12px;
  color: #fff;
}
body#index #bonslick { background: radial-gradient(ellipse at 72% 80%, #075782, #071629 48%, #020b12 85%); }
body#index #bonslick .bonslick-caption h1,
body#index #bonslick .bonslick-caption h2,
body#index #bonslick .bonslick-caption h3 { font-weight: 700; line-height: 1.1; }
body#index #bonslick .bonslick-caption a,
body#index #bonslick .bonslick-caption .btn {
  background: linear-gradient(110deg, #f184b3, #d35cc4, #31cfee);
  border: 0;
  border-radius: 999px;
  color: #fff;
}
body#index #bonbanners li > a { background: linear-gradient(135deg, #0a1a31, #12334c); }
body#index .page-home .product-miniature .thumbnail-container-images { background: #fff; }
body#index .page-home .product-miniature .add-to-cart-block {
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s ease;
}
body#index .page-home .product-miniature:hover .add-to-cart-block,
body#index .page-home .product-miniature:focus-within .add-to-cart-block {
  opacity: 1;
  visibility: visible;
}
@media (hover: none) {
  body#index .page-home .product-miniature .add-to-cart-block { opacity: 1; visibility: visible; }
}
/* Override theme's narrow heading and image backgrounds. */
body#index #bonslick .bonslick-caption h3 {
  width: 100%;
  max-width: 100%;
  font-size: clamp(24px, 3vw, 48px);
  overflow-wrap: normal;
}
body#index .page-home .product-miniature .thumbnail-container-images img {
  background-color: #fff;
}
body#index .page-home .product-miniature .thumbnail-container-images {
  flex: 0 0 auto;
  width: 100%;
  aspect-ratio: 1 / 1;
}
/* Landscape banner frames preserve complete poster artwork, including QR codes. */
body#index #bonbanners li > a {
  aspect-ratio: 3 / 1;
  min-height: 150px;
  background: radial-gradient(ellipse at 75% 80%, #164c6b, #0a1a31 70%);
}
body#index #bonbanners li > a img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: contain;
}
@media (max-width: 575px) {
  body#index #bonbanners li > a { min-height: 180px; }
}

/* Header and navigation retain original links and account controls. */
@media (min-width: 992px) {
  body#index .header-top { padding: 16px 0; }
  body#index #header #_desktop_setting-header,
  body#index #header #boncompare { display: none !important; }
  body#index #_desktop_logo img { max-width: 190px; max-height: 72px; }
  body#index #_desktop_search_widget #searchbox { border-radius: 999px; overflow: hidden; background: #fff; }
  body#index #_desktop_search_widget #input_search { border: 0; min-height: 48px; padding-left: 20px; }
  body#index #_desktop_search_widget .search-form-inner { position: relative; display: flex; align-items: center; border: 0 !important; }
  body#index #_desktop_search_widget #input_search { padding-right: 52px; }
  body#index #_desktop_search_widget .bonsearch-microphone {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: transparent;
    color: #526879;
    border: 0 !important;
    box-shadow: none;
  }
  body#index #_desktop_search_widget .bonsearch-microphone i,
  body#index #_desktop_search_widget .bonsearch-microphone i::before { color: #526879 !important; }
  body#index #_desktop_search_widget .bonsearch-microphone::before { content: none !important; }
  body#index #_desktop_search_widget .bonsearch_btn {
    min-width: 54px;
    min-height: 48px;
    background: linear-gradient(120deg, #d1a1f0, #66e2f4);
    border: 0;
    border-radius: 999px;
  }
  body#index #_desktop_search_widget .bonsearch_btn {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    min-width: 48px;
    margin: 0;
    border-radius: 0 999px 999px 0;
    box-shadow: none;
  }
  body#index .bon-nav-bar { gap: 20px; }
  body#index #top-menu-0 { display: flex; align-items: center; gap: 10px; }
  body#index #top-menu-0 > li > a { border: 0; border-radius: 10px; }
  body#index #top-menu-0 > li:first-child > a { padding-left: 20px; padding-right: 20px; }
  body#index #_desktop_user_info .user-info > a.bon-tooltip,
  body#index #bonwishlist .wishlist-tooltip,
  body#index #_desktop_cart .header > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
  }
  body#index #_desktop_user_info .user-info > a.bon-tooltip::after,
  body#index #bonwishlist .wishlist-tooltip::after,
  body#index #_desktop_cart .header > a::after {
    color: #f3f8ff;
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
  }
  body#index #_desktop_user_info .user-info > a.bon-tooltip::after { content: 'My Account'; }
  body#index #_desktop_user_info .user-info > a.bon-tooltip::before { content: none !important; }
  body#index #_desktop_user_info .user-info > a.bon-tooltip {
    position: relative;
    min-width: 65px;
    min-height: 46px;
    justify-content: flex-start;
  }
  body#index #_desktop_user_info .user-info > a.bon-tooltip::after {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    white-space: nowrap;
  }
  body#index #bonwishlist .wishlist-tooltip::after { content: 'Wishlist'; }
  body#index #_desktop_cart .header > a::after { content: 'Cart'; }
}

/* The theme's scroll-reveal animation can leave later cards clipped or hidden. */
body#index .page-home .products > .product-miniature {
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
  transform: none !important;
}
body#index .page-home .product-miniature .thumbnail-container,
body#index .page-home .product-miniature .thumbnail-container-inner {
  min-height: 100%;
}
/* Desktop visual hierarchy inspired by the supplied storefront reference. */
@media (min-width: 992px) {
  body#index #bonslick .box-bonslick h2 { font-size: clamp(25px, 2.2vw, 34px); font-weight: 600; }
  body#index #bonslick .box-bonslick h3 { font-size: clamp(32px, 3.3vw, 52px); }
  body#index #bonslick .box-bonslick h4 { margin-bottom: 24px; }
  body#index .bess-category-strip { gap: 16px; margin-top: 24px; margin-bottom: 12px; }
  body#index .bess-category-strip a { min-height: 112px; font-size: 14px; }
  body#index .page-home .products-section-title { font-size: 26px; font-weight: 700; }
  body#index .page-home .products-section-title span { font-size: 13px; font-weight: 400; }
}
body#index .bess-news, body#index .bess-tiktok { margin: 60px auto; color: #eef8ff; }
body#index .bess-news h2, body#index .bess-tiktok h2 { color: #fff; font-size: 24px; margin-bottom: 20px; }
body#index .bess-news h2::before, body#index .bess-tiktok h2::before { content: '/'; color: #f078c4; margin-right: 12px; }
body#index .bess-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
body#index .bess-news article, body#index .bess-tiktok { background: #102536; border: 1px solid #214b60; border-radius: 14px; padding: 24px; }
body#index .bess-news h3 { color: #fff; font-size: 18px; line-height: 1.35; }
body#index .bess-news p, body#index .bess-tiktok p { color: #c5d6e2; line-height: 1.6; }
body#index .bess-news a, body#index .bess-tiktok a { color: #83e8fa; font-weight: 600; }
body#index .bess-tiktok .tiktok-embed { width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
body#index .bess-social { margin: 60px auto; color: #eef8ff; }
body#index .bess-social > h2 { color: #fff; font-size: 24px; margin-bottom: 20px; }
body#index .bess-social > h2::before { content: '/'; color: #f078c4; margin-right: 12px; }
body#index .bess-social-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
body#index .bess-social-card { background: #102536; border: 1px solid #214b60; border-radius: 14px; padding: 24px; min-width: 0; }
body#index .bess-social-card.bess-tiktok { margin: 0; }
body#index .bess-social-card h3 { color: #fff; font-size: 20px; }
body#index .bess-social-card p { color: #c5d6e2; line-height: 1.6; }
body#index .bess-social-card a { color: #83e8fa; font-weight: 600; }
body#index .bess-instagram-posts { display: grid; gap: 16px; margin-bottom: 16px; }
body#index .bess-instagram-posts .instagram-media { width: 100% !important; min-width: 0 !important; max-width: 100% !important; margin: 0 !important; }
body#index .bess-category-strip a span svg {
  display: block;
  width: 30px;
  height: 30px;
  fill: none;
  stroke: #9bf6ff;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 3px rgba(38, 225, 255, .85)) drop-shadow(0 0 8px rgba(25, 160, 255, .45));
}
body#index .bess-category-strip a:hover span svg,
body#index .bess-category-strip a:focus-visible span svg { stroke: #ffd0f7; filter: drop-shadow(0 0 4px #ec6ce8); }
/* Hide only the theme's floating cart state; retain the normal header cart. */
body#index #_desktop_cart.bon-desktop-sticky-cart { display: none !important; }
/* Neon accents for existing top-bar icons; text and links stay unchanged. */
body#index #header .header-banner .header-contact i,
body#index #header .header-banner .header-contact svg {
  color: #a2f6ff !important;
  text-shadow: 0 0 5px rgba(42, 224, 255, .9), 0 0 11px rgba(27, 164, 255, .55);
  filter: drop-shadow(0 0 3px rgba(38, 220, 255, .65));
}
@media (min-width: 1200px) {
  body#index #header .header-banner {
    background: #03121e;
    border-bottom: 0;
  }
  body#index #header .header-banner .header-contact-info {
    background: linear-gradient(180deg, #03111d, #061c2e);
    border: 1px solid rgba(27, 179, 231, .45);
    border-top: 0;
    border-radius: 0 0 42px 42px;
    box-shadow: 0 4px 12px rgba(0, 175, 239, .28), inset 0 -3px 9px rgba(0, 177, 243, .16);
  }
  body#index #header .header-banner .header-contact a,
  body#index #header .header-banner .header_address,
  body#index #header .header-banner .header_address span { color: #edf8ff; }
  body#index #header .header-banner .header-contact.right-block > li + li {
    border-left: 1px solid rgba(48, 158, 196, .3);
    padding-left: 22px;
  }
}
@media (min-width: 1200px) {
  body#index #header #_desktop_search_widget { flex: 0 1 520px !important; max-width: 520px !important; }
  body#index #header .bon-nav-bar { gap: 6px !important; }
  body#index #header .bon-nav-bar > #_desktop_user_info,
  body#index #header .bon-nav-bar > #bonwishlist,
  body#index #header .bon-nav-bar > #_desktop_cart { height: 66px; align-items: center !important; justify-content: center !important; }
  body#index #header #_desktop_user_info .user-info > a.bon-tooltip,
  body#index #header #bonwishlist .wishlist-tooltip,
  body#index #header #_desktop_cart .header > a {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 65px;
    height: 48px;
    min-height: 48px;
    gap: 0;
  }
  body#index #header #_desktop_user_info .user-info > a.bon-tooltip > i,
  body#index #header #bonwishlist .wishlist-tooltip > i,
  body#index #header #_desktop_cart .header > a > i { display: block; line-height: 28px; height: 28px; }
  body#index #header #_desktop_user_info .user-info > a.bon-tooltip::after,
  body#index #header #bonwishlist .wishlist-tooltip::after,
  body#index #header #_desktop_cart .header > a::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
  }
}
@media (min-width: 1200px) {
  body#index #header .bon-nav-bar {
    align-items: center !important;
    overflow: visible;
    padding-right: 18px !important;
  }
  body#index #header .bon-nav-bar > #_desktop_user_info,
  body#index #header .bon-nav-bar > #bonwishlist,
  body#index #header .bon-nav-bar > #_desktop_cart {
    width: 86px !important;
    min-width: 86px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    overflow: visible;
  }
}
/* Individual neon action tiles, retaining the theme's links and counters. */
@media (min-width: 1200px) {
  body#index #header .bon-nav-bar > #_desktop_user_info,
  body#index #header .bon-nav-bar > #bonwishlist,
  body#index #header .bon-nav-bar > #_desktop_cart {
    background: #061721;
    border: 1px solid rgba(46, 179, 207, .28);
    border-radius: 12px;
    box-shadow: inset 0 0 12px rgba(23, 127, 166, .14);
    padding: 8px 10px !important;
  }
  body#index #header #_desktop_user_info .user-info > a.bon-tooltip i,
  body#index #header #_desktop_cart .header > a i {
    color: #89f5ff;
    text-shadow: 0 0 5px #24d8f4, 0 0 12px rgba(20, 200, 245, .75);
  }
  body#index #header #bonwishlist .wishlist-tooltip i {
    color: #ffd4f7;
    text-shadow: 0 0 5px #fa6ce9, 0 0 12px rgba(242, 68, 221, .75);
  }
  body#index #header .bon-nav-bar > #_desktop_user_info:focus-within,
  body#index #header .bon-nav-bar > #bonwishlist:focus-within,
  body#index #header .bon-nav-bar > #_desktop_cart:focus-within {
    outline: 2px solid #fff;
    outline-offset: 2px;
  }
}
/* Cancel theme child padding inside the compact desktop action group. */
@media (min-width: 1200px) {
  body#index #header .bon-nav-bar {
    justify-content: flex-start !important;
    gap: 12px !important;
    padding: 9px 14px !important;
    width: max-content !important;
  }
  body#index #header .bon-nav-bar > .bess-home-coin-header,
  body#index #header .bon-nav-bar > #bonwishlist,
  body#index #header .bon-nav-bar > #_desktop_cart {
    padding: 0 !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
  }
  body#index #header .bon-nav-bar > #_desktop_user_info {
    padding: 0 10px !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
  }
}
/* Group desktop header actions to match the supplied storefront concept. */
@media (min-width: 1200px) {
  body#index #header .header-top {
    background: radial-gradient(ellipse at 75% 40%, #073345 0, #03141d 50%, #020c13 100%);
    padding: 20px 0;
  }
  body#index #header .bon-nav-bar {
    background: rgba(3, 15, 25, .82);
    border: 1px solid rgba(53, 184, 214, .35);
    border-radius: 18px;
    padding: 9px 15px;
    gap: 12px !important;
  }
  body#index #header #_desktop_user_info { padding: 0 10px; }
  body#index #header .bon-nav-bar > #_desktop_user_info,
  body#index #header .bon-nav-bar > #bonwishlist,
  body#index #header .bon-nav-bar > #_desktop_cart,
  body#index #header .bon-nav-bar > .bess-home-coin-header {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body#index #header #_desktop_search_widget #searchbox {
    box-shadow: 0 0 18px rgba(49, 187, 220, .16);
  }
  body#index #desktop_bonmm_0 {
    background: linear-gradient(90deg, #061923, #082c3b 60%, #061923) !important;
  }
  body#index #top-menu-0 > li > a { border: 0; }
  body#index #top-menu-0 > li:first-child > a {
    background: linear-gradient(105deg, #f472bb, #c56be2, #19cde6);
    border-radius: 999px;
  }
}
/* Reference-inspired desktop header: keep popup content out of the utility row. */
@media (min-width: 1200px) {
  body#index #header .header-banner .header-contact-info {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    max-width: 1280px;
    width: calc(100% - 40px);
    min-height: 72px;
    margin: 0 auto;
    padding: 8px 20px;
    border: 1px solid rgba(54, 179, 215, .3);
    border-radius: 0 0 30px 30px;
    background: #061621;
  }
  body#index #header .header-banner .header-contact.left-block {
    flex: 0 1 auto;
    width: auto;
    min-width: 0;
  }
  body#index #header .header-banner .header-contact.right-block {
    display: flex;
    flex: 1 1 auto;
    justify-content: flex-end;
    gap: clamp(14px, 2vw, 28px);
    width: auto;
    min-width: 0;
  }
  body#index #header .header-banner .header-contact.right-block > li:first-child { flex: 0 0 auto; }
  body#index #header .header-banner .header_address { flex: 0 1 380px; min-width: 0; white-space: normal; }
  body#index #header .header-top { background: #030d16; }
}
@media (min-width: 992px) {
  body#index #header #btn-boncall,
  body#index #header #btn-boncall .block-callback,
  body#index #header #btn-boncall .block-callback-link { width: auto !important; max-width: none; white-space: normal; }
  body#index #header #btn-boncall .btn-boncall { white-space: nowrap; }
  body#index #header #btn-boncall .boncall-wrapper {
    white-space: normal;
    width: min(360px, calc(100vw - 32px)) !important;
    max-width: calc(100vw - 32px);
    box-sizing: border-box;
  }
}
/* Reference-inspired separators and spacing, without changing header links. */
@media (min-width: 1200px) {
  body#index #header .header-top { padding: 30px 0; }
  body#index #header .header-top .row > .position-static { gap: clamp(20px, 2.5vw, 38px) !important; }
  body#index #header #_desktop_logo {
    flex-basis: 220px !important;
    width: 220px !important;
    padding-right: 24px;
    border-right: 1px solid rgba(100, 174, 199, .35);
  }
  body#index #header #_desktop_logo img { max-width: 195px !important; }
  body#index #header #_desktop_search_widget { flex-basis: 420px !important; }
  body#index #header .bon-nav-bar {
    gap: clamp(14px, 1.7vw, 24px) !important;
    padding-left: 20px;
    border-left: 1px solid rgba(100, 174, 199, .35);
  }
  body#index #header #_desktop_user_info { padding: 0 12px; border-right: 1px solid rgba(100, 174, 199, .35); }
  body#index #desktop_bonmm_0 { background: #061722 !important; }
  body#index #top-menu-0 > li:first-child > a { padding-left: 26px; padding-right: 26px; }
}
/* Wide desktop proportions from the supplied header reference. */
@media (min-width: 1500px) {
  body#index #header .header-banner .header-contact-info,
  body#index #header .header-top > .container,
  body#index #header #desktop_bonmm_0 .container {
    width: calc(100% - 64px) !important;
    max-width: none !important;
  }
  body#index #header #top-menu-0 { width: 100%; max-width: none; }
  body#index #header #_desktop_logo { flex-basis: 280px !important; width: 280px !important; }
  body#index #header #_desktop_logo img { max-width: 250px !important; }
  body#index #header #_desktop_search_widget { flex: 0 1 520px !important; max-width: 520px !important; }
  body#index #header .bon-nav-bar { margin-left: auto !important; gap: clamp(20px, 2vw, 38px) !important; }
  body#index #header .bess-home-coin-header .bess-coins-header { padding: 10px 18px; }
  body#index #header .bess-home-coin-header .bess-coin-icon { font-size: 28px; }
  body#index #header .bess-home-coin-header .bess-coin-copy { font-size: 12px; }
}
body#index .bess-home-coin-header:empty { display: none; }
body#index .bess-home-coin-header .bess-coins-header { display: flex; align-items: center; gap: 8px; padding: 7px 12px; border: 1px solid #38ccf3; border-radius: 999px; background: linear-gradient(135deg, #121a36, #071b2b); color: #f3f8ff; text-decoration: none; box-shadow: 0 0 5px rgba(65, 224, 255, .9), 0 0 14px rgba(31, 190, 255, .6), 0 0 23px rgba(184, 77, 255, .35), inset 0 0 8px rgba(164, 98, 255, .25); }
body#index .bess-home-coin-header .bess-coins-header:hover, body#index .bess-home-coin-header .bess-coins-header:focus-visible { border-color: #da91ff; box-shadow: 0 0 7px rgba(91, 229, 255, 1), 0 0 19px rgba(167, 91, 255, .7); }
/* Animated accent surrounds the existing coin link without covering its text. */
@property --bess-neon-angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}
@keyframes bess-neon-flow {
  to { --bess-neon-angle: 360deg; }
}
@keyframes bess-neon-pulse {
  0%, 100% { box-shadow: 0 0 5px rgba(65, 224, 255, .8), 0 0 13px rgba(31, 190, 255, .45), 0 0 21px rgba(184, 77, 255, .25); }
  50% { box-shadow: 0 0 8px rgba(65, 224, 255, 1), 0 0 18px rgba(31, 190, 255, .6), 0 0 28px rgba(184, 77, 255, .4); }
}
body#index .bess-home-coin-header .bess-coins-header {
  border: 2px solid transparent;
  background: linear-gradient(135deg, #121a36, #071b2b) padding-box,
    conic-gradient(from var(--bess-neon-angle, 0deg), #24517e, #35dfff, #d284ff, #24517e, #42e5ff, #24517e) border-box;
  animation: bess-neon-flow 4s linear infinite, bess-neon-pulse 3s ease-in-out infinite;
  transition: box-shadow .2s ease, color .2s ease;
}
body#index .bess-home-coin-header .bess-coins-header:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
  body#index .bess-home-coin-header .bess-coins-header { animation: none; }
}
body#index .bess-home-coin-header .bess-coin-icon { font-size: 24px; line-height: 1; }
body#index .bess-home-coin-header .bess-coin-copy { display: flex; flex-direction: column; font-size: 11px; line-height: 1.25; }
body#index .bess-home-coin-header .bess-coin-label { font-weight: 700; }
body#index .bess-home-coin-header .bess-coin-value { font-weight: 700; }
body#index .bess-home-coin-header .bess-coin-equivalent, body#index .bess-home-coin-header .bess-coin-rate { color: #c5d6e2; font-size: 9px; }
/* Desktop header: compact utility bar and consistent navigation spacing. */
@media (min-width: 992px) {
  body#index #header .header-banner { background: radial-gradient(ellipse at 95% 0, #292044, #071722 48%, #03111a); border-bottom: 1px solid #1b5265; }
  body#index #header .header-top { background: #030d16; }
  body#index #header .header-contact-info { display: grid; grid-template-columns: minmax(300px, auto) minmax(0, 1fr); align-items: center; gap: 36px; min-height: 54px; }
  body#index #header .header-contact.left-block { display: flex; align-items: center; gap: 26px; min-width: 0; }
  body#index #header .header-contact.right-block { display: flex; align-items: center; justify-content: flex-end; gap: 26px; min-width: 0; margin: 0; }
  body#index #header .header-contact.right-block > li { min-width: 0; }
  body#index #header #btn-boncall,
  body#index #header #btn-boncall .block-callback,
  body#index #header #btn-boncall .block-callback-link,
  body#index #header #btn-boncall .btn-boncall { white-space: nowrap; }
  body#index #header .header-contact.right-block > li:first-child { flex: 0 0 auto; }
  body#index #header .header_address { max-width: 480px; line-height: 1.35; }
  body#index #header .header-banner a,
  body#index #header .header_address { color: #b6cbd5; }
  body#index #header .header-top { padding: 20px 0; }
  body#index #header .header-top .row > .position-static { gap: clamp(20px, 2.3vw, 34px); }
  body#index #header #_desktop_logo { width: 205px; }
  body#index #header #_desktop_logo img { width: 205px; max-width: 205px; max-height: 78px; }
  body#index #header #_desktop_search_widget { max-width: none; }
  body#index #header #_desktop_search_widget #searchbox,
  body#index #header #_desktop_search_widget .search-form-inner { height: 50px; }
  body#index #header #_desktop_search_widget #input_search { min-height: 50px; }
  body#index #header #_desktop_search_widget .bonsearch_btn { height: 50px; min-height: 50px; }
  body#index #header .bon-nav-bar { gap: clamp(14px, 1.6vw, 22px); }
  body#index #header .bess-home-coin-header .bess-coins-header { padding: 7px 13px; }
  body#index #desktop_bonmm_0 { background: #091923 !important; border-top: 1px solid #1c3f4b; border-bottom: 1px solid #1b5265; }
  body#index #top-menu-0 { align-items: center; gap: 8px; min-height: 54px; }
  body#index #top-menu-0 > li > a { border-radius: 10px; padding-top: 13px; padding-bottom: 13px; }
  body#index #top-menu-0 > li:first-child > a { background: linear-gradient(110deg, #e795d1, #b36bf0, #20c8e8); border-radius: 999px; color: #fff; }
  body#index #_desktop_search_widget #searchbox { background: #fff; border-radius: 999px; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  body#index #header .header-contact-info { grid-template-columns: minmax(240px, auto) minmax(0, 1fr); gap: 18px; }
  body#index #header .header-contact.right-block { gap: 14px; }
  body#index #header .header_address { max-width: 300px; }
  body#index #header #_desktop_logo,
  body#index #header #_desktop_logo img { width: 170px; max-width: 170px; }
  body#index #header .bon-nav-bar { gap: 12px; }
}
@media (min-width: 992px) {
  body#index .header-top .row > .position-static { gap: clamp(14px, 2vw, 30px); }
  body#index .bon-nav-bar { align-items: center; gap: clamp(12px, 1.5vw, 20px); }
  body#index .bess-home-coin-header { flex: 0 0 auto; }
  body#index .bess-home-coin-header .bess-coins-header { white-space: nowrap; }
  body#index #_desktop_logo img { display: block; }
}
@media (max-width: 991px) { body#index .bess-home-coin-header { display: none; } }
/* Desktop contact bar: rounded cyan-to-violet neon edge. */
@media (min-width: 1200px) {
  body#index #header .header-banner .header-contact-info {
    border: 1px solid transparent;
    border-radius: 999px;
    background: linear-gradient(#041522, #041522) padding-box,
      linear-gradient(100deg, #20d7ff, #147aaf 55%, #ae66f7) border-box;
    box-shadow: 0 0 9px rgba(19, 191, 255, .45), -4px 0 16px rgba(18, 205, 255, .35), 4px 0 16px rgba(154, 82, 255, .3), inset 0 0 12px rgba(14, 102, 147, .18);
  }
  body#index #header .header-banner .header-contact-info a,
  body#index #header .header-banner .header_address { font-weight: 600; }
}
/* Compact desktop search and account actions. */
@media (min-width: 1200px) {
  body#index #header .header-banner .header-contact-info { min-height: 50px; padding-top: 4px; padding-bottom: 4px; }
  body#index #header .header-top { padding: 10px 0; }
  body#index #header .header-top .row > .position-static { gap: 6px !important; }
  body#index #header #_desktop_logo { flex-basis: 195px !important; width: 195px !important; padding-right: 8px; }
  body#index #header .bess-home-coin-header .bess-coins-header { border-radius: 8px; }
  body#index #header #_desktop_search_widget {
    flex: 0 1 340px !important;
    max-width: 340px !important;
  }
  body#index #header .bon-nav-bar { gap: 4px !important; padding: 7px 12px !important; }
  body#index #header .bon-nav-bar > .bess-home-coin-header { margin-right: 12px !important; }
  body#index #header .bon-nav-bar > #_desktop_user_info,
  body#index #header .bon-nav-bar > #bonwishlist,
  body#index #header .bon-nav-bar > #_desktop_cart {
    width: 72px !important;
    min-width: 72px !important;
    height: 60px;
    padding: 5px !important;
  }
  body#index #header #_desktop_user_info .user-info > a.bon-tooltip,
  body#index #header #bonwishlist .wishlist-tooltip,
  body#index #header #_desktop_cart .header > a { width: 60px; }
  body#index #header .header-top .row > .position-static { gap: 12px !important; }
  body#index #header #_desktop_logo { padding-right: 12px; }
  body#index #header #top-menu-0 > li:first-child,
  body#index #header #top-menu-0 > li:first-child > a { border-left: 0 !important; }
  body#index #header #top-menu-0 > li:first-child::before,
  body#index #header #top-menu-0 > li:first-child > a::before { content: none !important; }
}
@media (min-width: 992px) {
  body#index #header .header-top { margin-bottom: 0 !important; }
  body#index #header #desktop_bonmm_0 { margin-top: 0 !important; }
  body#index #header #top-menu-0 > #category-3,
  body#index #header #top-menu-0 > #category-6 { position: relative !important; }
  body#index #header #desktop_bonmm_0 #category-3 > .popover,
  body#index #header #desktop_bonmm_0 #category-6 > .popover {
    left: 0 !important;
    right: auto !important;
    top: 100% !important;
    transform: none !important;
  }
}
/* Keep product imagery contained and make desktop prices easier to scan. */
@media (min-width: 992px) {
  body#index .page-home .product-miniature .thumbnail-container {
    border: 1px solid #d8e9ef;
    transition: box-shadow .2s ease, border-color .2s ease;
  }
  body#index .page-home .product-miniature:hover .thumbnail-container,
  body#index .page-home .product-miniature:focus-within .thumbnail-container {
    border-color: #42cce6;
    box-shadow: 0 10px 28px rgba(0, 174, 216, .22);
  }
  body#index .page-home .product-miniature .thumbnail-container-images img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  body#index .page-home .product-miniature .product-description { padding: 14px 12px; }
  body#index .page-home .product-miniature .product-title a { line-height: 1.4; }
  body#index .page-home .product-miniature .product-price-and-shipping .price {
    color: #075e78;
    font-size: 16px;
    font-weight: 700;
  }
}
@media (max-width: 767px) { body#index .bess-social-grid { grid-template-columns: 1fr; } }
@media (max-width: 767px) { body#index .bess-news-grid { grid-template-columns: 1fr; } }

/* Compose existing slider images into a landscape hero without cropping. */
body#index #bonslick .bonslick-slider .slick-slide {
  background: radial-gradient(ellipse at 72% 85%, #075b84, #07192c 48%, #020b12 100%);
}
body#index #bonslick .link-bonslick > img {
  width: 48%;
  margin-left: 48%;
  height: clamp(260px, 28vw, 480px);
  object-fit: contain;
  object-position: center;
  background: transparent;
}
body#index #bonslick .box-bonslick .bonslick-caption { max-width: min(520px, 48%); }
body#index #bonslick .box-bonslick .bonslick-caption p span {
  background: linear-gradient(110deg, #f087b2, #d268d7, #36cce9);
  border: 0;
  color: #fff;
}
@media (max-width: 767px) {
  body#index #bonslick .link-bonslick > img { width: 52%; margin-left: 48%; height: 260px; }
  body#index #bonslick .box-bonslick .bonslick-caption { max-width: 52%; }
}

/* Give the existing portrait promotions more room without cropping them. */
body#index #bonbanners li > a {
  aspect-ratio: 2 / 1;
  min-height: 210px;
  transition: border-color .2s ease, box-shadow .2s ease;
}
body#index #bonbanners li > a:hover,
body#index #bonbanners li > a:focus-visible {
  border-color: #67ddf4;
  box-shadow: 0 0 20px rgba(53, 207, 234, .18);
}
@media (max-width: 575px) {
  body#index #bonbanners li > a { min-height: 240px; }
}

/* Megamenu dropdowns use a light background; keep their links readable. */
body#index #header #desktop_bonmm_0 .popover a,
body#index #header #desktop_bonmm_0 .popover i {
  color: #26394a;
}
body#index #header #desktop_bonmm_0 .popover a:hover,
body#index #header #desktop_bonmm_0 .popover a:focus-visible {
  color: #007b99;
}
@media (min-width: 992px) {
  body#index #header #desktop_bonmm_0 .popover {
    width: min(900px, calc(100vw - 40px)) !important;
    max-width: calc(100vw - 40px) !important;
    max-height: min(60vh, 420px);
    overflow-y: auto;
    overflow-x: hidden;
    border-radius: 0 0 12px 12px;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .3);
  }
}
/* Dark megamenu inspired by the supplied reference. */
@media (min-width: 992px) {
  body#index #header #desktop_bonmm_0 #category-3 > .popover {
    background: #031b2a !important;
    border: 1px solid #16bce6;
    border-radius: 10px;
    box-shadow: 0 0 12px rgba(28, 200, 243, .45);
    padding: 18px;
    left: max(20px, calc((100% - 1140px) / 2)) !important;
    right: auto !important;
    width: min(780px, calc(100vw - 40px)) !important;
    max-width: min(780px, calc(100vw - 40px)) !important;
    min-width: 0 !important;
    box-sizing: border-box;
    max-height: min(420px, 65vh);
  }
  body#index #header #desktop_bonmm_0 #category-3 > .popover > .container,
  body#index #header #desktop_bonmm_0 #category-3 .popover ul[data-bonmm-depth="1"] {
    width: 100%;
    max-width: none;
    min-width: 0 !important;
    box-sizing: border-box;
    padding: 0;
  }
  body#index #header #desktop_bonmm_0 #category-3 .popover ul[data-bonmm-depth="1"] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
  }
  body#index #header #desktop_bonmm_0 #category-3 .popover ul[data-bonmm-depth="1"] > li {
    float: none;
    width: auto;
    padding: 0 12px;
    border-left: 1px solid rgba(75, 180, 214, .12);
  }
  body#index #header #desktop_bonmm_0 #category-3 .popover a {
    display: block;
    padding: 8px 0;
    color: #e8f6ff;
    text-align: left;
    text-transform: none;
    white-space: normal;
  }
  body#index #header #desktop_bonmm_0 #category-3 .popover a:hover,
  body#index #header #desktop_bonmm_0 #category-3 .popover a:focus-visible { color: #63ddf7; }
  body#index #header #desktop_bonmm_0 #category-3 > .popover {
    max-height: none;
    overflow: visible;
    padding: 14px 18px 0;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
  }
  body#index #header #desktop_bonmm_0 #category-3 > .popover > .container {
    float: none;
    display: block;
    flex: 0 0 auto;
    width: 100% !important;
  }
  body#index #header #desktop_bonmm_0 #category-3 .popover ul[data-bonmm-depth="1"] > li:nth-child(n+25) { display: none; }
  body#index #header #desktop_bonmm_0 #category-3 .popover ul[data-bonmm-depth="1"] > li a {
    padding: 6px 0;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
  }
  body#index #header #desktop_bonmm_0 #category-3 .popover .bess-view-categories {
    display: block !important;
    clear: both;
    float: none;
    position: static;
    width: calc(100% + 36px) !important;
    flex: 0 0 auto;
    max-width: none;
    margin: 10px -18px 0;
    padding: 12px 18px;
    border-top: 1px solid rgba(75, 180, 214, .25);
    text-align: center;
    font-weight: 600;
  }
  body#index #header #desktop_bonmm_0 #category-3 > .popover > .bess-view-categories {
    position: absolute !important;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100% !important;
    margin: 0;
  }
  body#index #header #desktop_bonmm_0 #category-3 > .popover { padding-bottom: 50px; }
}
