html {
  scroll-behavior: smooth;
}

/* Blog (Sedestral) overrides */
.sedestral.blog-list.blog-display-grid {
  max-width: none;
  justify-content: flex-start;
}

.sedestral.blog-list.blog-display-grid .blog-post {
  flex: 0 0 calc((100% - (2 * var(--sedestral-cards-gap, 20px))) / 3);
  max-width: calc((100% - (2 * var(--sedestral-cards-gap, 20px))) / 3);
}

@media (max-width: 991px) {
  .sedestral.blog-list.blog-display-grid .blog-post {
    flex-basis: calc((100% - var(--sedestral-cards-gap, 20px)) / 2);
    max-width: calc((100% - var(--sedestral-cards-gap, 20px)) / 2);
  }
}

@media (max-width: 575px) {
  .sedestral.blog-list.blog-display-grid .blog-post {
    flex-basis: 100%;
    max-width: 100%;
  }
}

@media (min-width: 768px) {
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 {
    display: flex;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature {
    display: flex;
    width: 100%;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature:hover .thumbnail-container,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature:focus .thumbnail-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    z-index: auto !important;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .thumbnail-top .product-flags .product-flag.new {
    opacity: 1;
    visibility: visible;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .product-description,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:hover .product-description,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:focus .product-description {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    -webkit-transform: none !important;
    transform: none !important;
    transition: none !important;
    z-index: 2 !important;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .product-description .product-add-to-cart {
    display: flex;
    justify-content: stretch;
    width: 100%;
    margin-top: auto;
    padding-top: 12px;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:hover .highlighted-informations,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:focus .highlighted-informations {
    bottom: auto;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .product-description .product-title a {
    display: -webkit-box;
    overflow: hidden;
    line-clamp: 3;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:hover .product-description .product-add-to-cart,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:focus .product-description .product-add-to-cart,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:hover .product-description .product-title,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:focus .product-description .product-title,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:hover .product-description .product-desc,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:focus .product-description .product-desc,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:hover .product-description .product-price-and-shipping,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container:focus .product-description .product-price-and-shipping {
    -webkit-transform: none !important;
    transform: none !important;
    transition: none !important;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .product-description .product-add-to-cart form,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .product-description .product-add-to-cart .add-to-cart-or-refresh {
    display: block;
    flex: 1 1 100%;
    width: 100%;
  }

  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .product-description .add-to-cart-link,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .product-description .btn-action,
  .products.product-loop:not(.list, .product-list) .product-grid-style-1 .product-miniature .thumbnail-container .product-description .btn.add-to-cart {
    position: static;
    left: auto;
    right: auto;
    bottom: auto;
    display: inline-flex;
    opacity: 1;
    visibility: visible;
    width: 100% !important;
    min-width: 100%;
    max-width: none;
    margin: 0;
    flex: 1 1 100%;
    justify-content: center;
  }
}

.home-category .item-inner .image {
  border: none;
}

.product-wyrob {
  display: block;
  margin: 0 0 18px;
  padding: 10px 14px;
  border-radius: 6px;
  background: #deeaff;;
  color: #284888;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}

.page-product .tabs .product-tab-sections {
  display: block;
}

.page-product .tabs {
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.page-product .tabs .nav.nav-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 18px;
  width: 100%;
  margin: 0 0 34px;
  padding: 22px 22px;
  list-style: none;
  background: #fff;
  border: 1px solid #2B4E94;
  border-radius: 18px;
  /*box-shadow: 0 14px 40px rgba(23, 43, 77, 0.08);*/
}

.page-product .tabs .nav.nav-tabs::before,
.page-product .tabs .nav.nav-tabs::after {
  display: none;
}

.page-product .tabs .nav.nav-tabs .nav-item {
  margin: 0 16px;
}

.page-product .tabs .nav.nav-tabs .nav-link {
  display: inline-flex;
  align-items: center;
  padding: 0;
  color: #284888;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.3;
  text-decoration: none;
  background: transparent;
  border: 0;
  border-radius: 0;
  transition: color 0.2s ease, opacity 0.2s ease;
}

.page-product .tabs .nav.nav-tabs .nav-link:hover,
.page-product .tabs .nav.nav-tabs .nav-link:focus {
  color: #5a6472;
  text-decoration: none;
  opacity: 1;
}

.page-product .tabs .product-tab-section {
  display: block;
  margin-top: 24px;
  scroll-margin-top: 140px;
}

.page-product .tabs .product-tab-section:first-child {
  margin-top: 0;
}

.page-product .tabs .product-tab-title,
#product-comments-section .product-tab-title {
  margin: 0 0 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  text-align: center;
  color: #284888;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.25;
}

.page-product .tabs .product-tab-title::before,
.page-product .tabs .product-tab-title::after,
#product-comments-section .product-tab-title::before,
#product-comments-section .product-tab-title::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  min-width: 24px;
  background-color: currentColor;
}

#product-comments-section {
  margin-top: 24px;
  margin-bottom: 24px;
  scroll-margin-top: 140px;
}

.page-product .product-attachments .h5 {
  margin: 0 0 14px;
  color: #1f2f55;
}

.page-product .product-attachments .attachment {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  padding: 12px 0;
  border-top: 1px solid #e4e8f0;
}

.page-product .product-attachments .attachment:last-child {
  border-bottom: 1px solid #e4e8f0;
}

.page-product .product-attachments .attachment .attachment-link {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  color: #111111;
  text-decoration: none;
}

.page-product .product-attachments .attachment .attachment-link:hover,
.page-product .product-attachments .attachment .attachment-link:focus {
  text-decoration: none;
}

.page-product .product-attachments .attachment .attachment-name {
  line-height: 1.2;
}

.page-product .product-attachments .attachment .attachment-download-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 8px 18px;
  color: #ffffff;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  background-color: #121a63;
  border-radius: 3px;
}

.page-product .product-attachments .attachment .attachment-size {
  color: #2a3553;
  line-height: 1.2;
}

.page-product .product-attachments .attachment p {
  width: 100%;
  margin: 4px 0 0;
}

@media (max-width: 575px) {
  .page-product .product-attachments .attachment {
    align-items: flex-start;
    gap: 10px;
  }

  .page-product .product-attachments .attachment .attachment-link {
    flex-wrap: wrap;
    gap: 10px;
  }

  .page-product .product-attachments .attachment .attachment-download-action {
    min-height: 40px;
    padding: 8px 14px;
  }
}

.page-product .product-features > dl.data-sheet {
  display: grid;
  grid-template-columns: minmax(220px, 0.9fr) minmax(0, 1.4fr);
  margin: 0;
  gap: 0;
  border-top: 1px solid #e4e8f0;
  border-left: 1px solid #e4e8f0;
}

.page-product .product-features > dl.data-sheet dt.name,
.page-product .product-features > dl.data-sheet dd.value {
  margin: 0 !important;
  padding: 16px 18px;
  border-right: 1px solid #e4e8f0;
  border-bottom: 1px solid #e4e8f0;
  min-height: 0;
}

.page-product .product-features > dl.data-sheet dt.name {
  color: #1f2f55;
  font-weight: 600;
}

.page-product .product-features > dl.data-sheet dd.value {
  color: #33415c;
}

.page-product .product-features > dl.data-sheet dt.name:nth-of-type(odd),
.page-product .product-features > dl.data-sheet dt.name:nth-of-type(odd) + dd.value {
  background: #f6f8fc;
}

.page-product .product-features > dl.data-sheet dt.name:nth-of-type(even),
.page-product .product-features > dl.data-sheet dt.name:nth-of-type(even) + dd.value {
  background: #ffffff;
}

.page-product .product-features > dl.data-sheet dt.name:nth-of-type(odd),
.page-product .product-features > dl.data-sheet dt.name:nth-of-type(odd) + dd.value,
.page-product .product-features > dl.data-sheet dt.name:nth-of-type(even),
.page-product .product-features > dl.data-sheet dt.name:nth-of-type(even) + dd.value {
  background-clip: border-box;
}

.page-product .product-features > dl.data-sheet dd.value {
  border-left: 0;
}

@media (max-width: 767px) {
  .page-product .product-features > dl.data-sheet {
    grid-template-columns: minmax(120px, 0.9fr) minmax(0, 1.1fr);
  }

  .page-product .product-features > dl.data-sheet dt.name,
  .page-product .product-features > dl.data-sheet dd.value {
    padding: 14px 16px;
  }

  .page-product .product-features > dl.data-sheet dt.name {
    word-break: break-word;
  }

  .page-product .tabs .nav.nav-tabs {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    gap: 14px 18px;
    padding: 16px 18px;
    border-radius: 14px;
  }

  .page-product .tabs .nav.nav-tabs .nav-item {
    width: 100%;
    margin: 0;
    text-align: center;
  }

  .page-product .tabs .nav.nav-tabs .nav-link {
    justify-content: center;
    font-size: 14px;
  }
}
