dialog.a5-dialog {
  width: min(640px, calc(100vw - 36px));
  max-height: calc(100dvh - 36px);
  color: #111;
  background: white;
  border: 0;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 15px 60px #0003;
}
dialog.a5-dialog::backdrop { background: #0008; }
.a5-dialog-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.a5-dialog-heading h2 { margin: 0; font-size: 26px; }
.a5-dialog-heading button { border: 0; padding: 4px 10px; background: transparent; font-size: 28px; }
.a5-dialog-body { margin-top: 15px; }
dialog.a5-mobile-menu { margin: 0; min-height: 100dvh; max-height: 100dvh; border-radius: 0; width: min(380px, 90vw); }
.a5-mobile-links { display: grid; }
.a5-mobile-links a { padding: 9px 6px 9px 22px; border-bottom: 1px solid #eee; }
.a5-mobile-links a.a5-mobile-main { padding-left: 6px; font-weight: 700; }
.a5-utility { min-height: 44vh; margin: 50px auto 80px; padding: 0 24px; }
.a5-search { margin: 0 0 25px; }
.a5-search > div { display: flex; gap: 10px; max-width: 600px; }
.a5-search input { flex: 1; min-width: 0; }
.a5-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 20px; margin: 24px 0; padding: 0; }
.a5-results li { list-style: none; display: grid; gap: 10px; padding: 16px; border: 1px solid #e5e5e5; border-radius: 8px; }
.a5-results a { display: grid; gap: 8px; }
.a5-results img { width: 100%; height: 160px; object-fit: contain; }
.a5-results input { max-width: 100px; }
.a5-toast { position: fixed; z-index: 999; inset: auto 18px 18px auto; max-width: min(420px, calc(100% - 36px)); background: #181818; color: white; padding: 16px 20px; border-radius: 8px; display: none; }
.a5-toast.a5-visible { display: block; }
.a5-toast a { color: white; display: block; text-decoration: underline; margin-top: 5px; }
.a5-slider .slick-list { overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; }
.a5-slider .slick-list::-webkit-scrollbar { display: none; }
.a5-slider .slick-track { width: auto !important; display: flex !important; transform: none !important; margin: 0 !important; }
.a5-slider .slick-track::before, .a5-slider .slick-track::after { display: none; }
.a5-slider .slick-slide { flex: 0 0 25%; min-width: 0; scroll-snap-align: start; }
.a5-slider.widget-category-thumbnail-image-slider .slick-slide { flex-basis: 20%; }
.a5-slider.widget-blog-post-slider .slick-slide { flex-basis: 33.333%; }
.a5-slider-button { color: #111; }
.a5-gallery-image { display: block; width: 100%; max-height: 68dvh; object-fit: contain; }
.a5-gallery-button { border: 0; padding: 0; width: 100%; background: none; }
.a5-thumbnails { display: flex; overflow: auto; gap: 8px; margin-top: 12px; }
.a5-thumbnails button { flex: 0 0 70px; padding: 2px; border: 1px solid #ddd; background: white; }
.a5-thumbnails button[aria-pressed=true] { border-color: #111; }
.a5-thumbnails img { width: 64px; height: 56px; object-fit: contain; }
.a5-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -1; }
@media (max-width: 991px) {
  .a5-slider .slick-slide, .a5-slider.widget-category-thumbnail-image-slider .slick-slide { flex-basis: 33.333%; }
  .a5-slider.widget-blog-post-slider .slick-slide { flex-basis: 50%; }
}
@media (max-width: 575px) {
  .a5-slider .slick-slide, .a5-slider.widget-category-thumbnail-image-slider .slick-slide { flex-basis: 50%; }
  .a5-slider.widget-blog-post-slider .slick-slide { flex-basis: 100%; }
}

@media (max-width: 767px) {
  .a5-hero-video { display: none; }
}
.a5-gallery { display: block !important; min-width: 0; width: 100%; }
.a5-gallery-parent .gallery-thumb,
.a5-gallery-parent .gallery-thumbs,
.a5-gallery-parent .p-thumb-bottom { display: none !important; }
.a5-gallery .a5-gallery-button { display: block; }
header .header__logo .logo { flex-shrink: 0; }
header .header__logo .logo img { width: 170px; max-width: 100%; }
header .header__action .header-icon .text,
header .header__action .header-icon .header-search-form { display: none; }
@media (max-width: 1199px) {
  header .header__logo .logo img { width: 126px; }
}
.a5-hero { position: relative; isolation: isolate; overflow: hidden; }
.a5-hero > [id^="jarallax-container"] { z-index: -1 !important; }
.a5-hero-video { z-index: 0; }
header .header__action a.link-account:not(:has(svg)) { display: none; }
header .navigation .level0.menu-item-has-children > a::after {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-left: 6px;
  border: solid currentColor;
  border-width: 0 1px 1px 0;
  transform: translateY(-2px) rotate(45deg);
}
.a5-gallery-parent .group_btns { display: none; }
.qty-up i::before { content: '+'; font: 17px/1 sans-serif; }
.qty-down i::before { content: '−'; font: 17px/1 sans-serif; }
@media (min-width: 1200px) {
  header .header__logo { flex: 0 0 170px; }
  header .header__logo a.logo { display: block; width: 170px; max-width: none; }
}
@media (max-width: 1199px) {
  header .header_middle { min-height: 60px; }
  header .header__logo a.logo { width: 126px; max-width: none; }
}
.a5-product-media .col_nav { display: none !important; }
.a5-hero > .row-full-width-inner { position: relative; z-index: 1; }
@media (min-width: 768px) {
  #html-body .a5-hero { background: center / cover no-repeat url("/assets/hero.webp"); }
}
@media (min-width: 1200px) {
  header .header__menu { flex: 1; min-width: 0; }
  header .navigation .mobile-menu-content > ul {
    display: flex; flex-wrap: nowrap; align-items: center; justify-content: center;
    gap: clamp(15px, 2.1vw, 30px); margin: 0;
  }
  header .navigation .mobile-menu-content > ul > li.level0 { flex: 0 0 auto; margin: 0; }
  header .navigation .mobile-menu-content > ul > li.level0 > a.level-top { padding-inline: 0; }
}
@media (max-width: 1199px) {
  header .header__logo a.logo img { width: 126px; max-width: none; }
}
.a5-inline-video { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 16/9; background: #111; }
#html-body [data-a5-background] { background-image: var(--a5-desktop-bg); }
@media (max-width: 767px) {
  #html-body [data-a5-background] { background-image: var(--a5-mobile-bg); }
}
@media (min-width: 1200px) {
  #html-body header .navigation .mobile-menu-content > ul.horizontal-list { display: flex !important; flex-flow: row nowrap !important; gap: clamp(10px, 1.5vw, 24px); }
  #html-body header .navigation .mobile-menu-content > ul.horizontal-list > li.level0 { flex: 0 0 auto; float: none; padding-inline: 0; }
  #html-body header .navigation .mobile-menu-content > ul.horizontal-list > li.level0 > a.level-top { padding-inline: 0 !important; white-space: nowrap; }
  #html-body header .navigation .mobile-menu-content > ul.horizontal-list > li.append-content { display: none !important; }
}
.a5-optional-phone { text-align: center; padding: 12px; }
.a5-quote { display: inline-flex; align-items: center; justify-content: center; }
#html-body header .header__logo img { height: auto; object-fit: contain; }
@media (min-width: 1200px) {
  #html-body header .header_middle {
    display: grid !important;
    grid-template-columns: clamp(155px, 13vw, 205px) minmax(0, 1fr) auto;
    align-items: center;
    column-gap: clamp(16px, 2vw, 32px);
    min-height: 76px;
    position: relative;
  }
  #html-body header .header_middle > :is(.header__logo, .header__menu, .header__action) {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    margin: 0 !important;
    max-width: none !important;
  }
  #html-body header .header_middle > .header__logo { grid-area: 1 / 1; width: 100% !important; }
  #html-body header .header__logo a.logo,
  #html-body header .header__logo a.logo img { width: 100%; }
  #html-body header .header_middle > .header__menu { grid-area: 1 / 2; width: 100% !important; min-width: 0; }
  #html-body header .header__menu :is(.horizontal-menu-container, .navigation, .mobile-menu-content) {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    margin: 0 !important;
  }
  #html-body header .navigation .mobile-menu-content > ul.horizontal-list {
    justify-content: center;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    padding: 0;
    gap: clamp(10px, 1.2vw, 24px);
  }
  #html-body header .navigation .mobile-menu-content > ul.horizontal-list > li.header-links { display: none !important; }
  #html-body header .header_middle > .header__action { grid-area: 1 / 3; width: auto !important; justify-self: end; }
}
