.includes-products {
  max-width: 1930px;
  background-color: white;
  padding-bottom: 8.125rem;
  padding-top: 8.125rem;
  overflow-x: clip;
  margin: auto;
}
@media (max-width: 767.98px) {
  .includes-products {
    padding-bottom: 3.75rem;
    padding-top: 3.75rem;
  }
}
.includes-products .container span,
.includes-products .container h2 {
  text-align: center;
}
.includes-products .container span {
  font-size: calc(1.275rem + 0.3vw);
  margin-bottom: 1.875rem;
  display: block;
}
@media (min-width: 1200px) {
  .includes-products .container span {
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .includes-products .container span {
    font-size: calc(24px - 30%);
  }
}
.includes-products .container h2 {
  font-size: calc(1.35rem + 1.2vw);
  margin-bottom: 3.75rem;
  font-weight: bold;
}
@media (min-width: 1200px) {
  .includes-products .container h2 {
    font-size: 2.25rem;
  }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .includes-products .container h2 {
    font-size: calc(36px - 30%);
  }
}
.includes-products .swiper-products {
  padding-bottom: 0.5rem;
  width: 100%;
}
.includes-products .swiper-products .swiper-slide {
  height: auto;
}
.includes-products .swiper-products .swiper-slide article {
  transition: background-color 0.5s;
  border: 1px solid #c4c4c4;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  padding: 1.875rem;
  display: flex;
  height: 100%;
}
.includes-products .swiper-products .swiper-slide article:hover {
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.2);
  background-color: #000000;
}
.includes-products .swiper-products .swiper-slide article:hover h3,
.includes-products .swiper-products .swiper-slide article:hover p,
.includes-products .swiper-products .swiper-slide article:hover .btn {
  color: white;
}
.includes-products .swiper-products .swiper-slide article:hover .btn svg {
  transform: scale3d(1.7, 1.5, 2) translateX(0.2rem);
}
.includes-products .swiper-products .swiper-slide article img {
  margin-bottom: 1.875rem;
}
.includes-products .swiper-products .swiper-slide article img.lazyloaded {
  height: auto;
  width: 100%;
}
.includes-products .swiper-products .swiper-slide article h3,
.includes-products .swiper-products .swiper-slide article p,
.includes-products .swiper-products .swiper-slide article .btn {
  transition: color 0.5s;
}
.includes-products .swiper-products .swiper-slide article h3 {
  font-size: calc(1.275rem + 0.3vw);
  margin-bottom: 1.875rem;
  font-weight: bold;
}
@media (min-width: 1200px) {
  .includes-products .swiper-products .swiper-slide article h3 {
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .includes-products .swiper-products .swiper-slide article h3 {
    font-size: calc(24px - 30%);
  }
}
.includes-products .swiper-products .swiper-slide article p {
  font-size: 1rem;
  margin-bottom: 1.875rem;
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .includes-products .swiper-products .swiper-slide article p {
    font-size: calc(16px - 30%);
  }
}
.includes-products .swiper-products .swiper-slide article .btn {
  font-size: 1rem;
  margin: auto auto 0;
  height: auto;
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .includes-products .swiper-products .swiper-slide article .btn {
    font-size: calc(16px - 30%);
  }
}
.includes-products .swiper-products .swiper-slide article .btn svg {
  transition: transform 0.5s;
  margin-left: 0.5rem;
}
.includes-products .swiper-products-prev, .includes-products .swiper-products-next {
  transition: opacity 0.5s;
}
.includes-products .swiper-products-prev.swiper-button-disabled, .includes-products .swiper-products-next.swiper-button-disabled {
  cursor: default;
  opacity: 0;
}
.includes-products .swiper-products-prev svg, .includes-products .swiper-products-next svg {
  transition: transform 0.5s;
  height: 4.429rem;
  width: 4.429rem;
}
.includes-products .swiper-products-prev:hover svg {
  transform: scale3d(1.2, 1.1, 1) translateX(-0.2rem);
}
.includes-products .swiper-products-next:hover svg {
  transform: scale3d(1.2, 1.1, 1) translateX(0.2rem);
}

.segment {
  max-width: 1920px;
  overflow-x: clip;
  margin: auto;
}
@media (max-width: 767.98px) {
  .segment {
    background: #f7f7f8;
  }
}
.segment.descriptions {
  background: linear-gradient(white 0 40%, #f7f7f8 40%);
  padding-bottom: 8.125rem;
}
@media (max-width: 767.98px) {
  .segment.descriptions {
    padding-bottom: 3.75rem;
    background: #f7f7f8;
  }
}
@media (max-width: 767.98px) {
  .segment.descriptions .container {
    text-align: center;
  }
}
.segment.descriptions .container .text {
  padding-top: 8.125rem;
}
@media (max-width: 767.98px) {
  .segment.descriptions .container .text {
    padding-top: 3.75rem;
  }
}
.segment.descriptions .container .text h1 {
  font-size: calc(1.275rem + 0.3vw);
  margin-bottom: 3.75rem;
}
@media (min-width: 1200px) {
  .segment.descriptions .container .text h1 {
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .segment.descriptions .container .text h1 {
    font-size: calc(24px - 30%);
  }
}
@media (max-width: 767.98px) {
  .segment.descriptions .container .text h1 {
    margin-bottom: 1.875rem;
  }
}
.segment.descriptions .container .text h2 {
  font-size: calc(1.4625rem + 2.55vw);
  font-weight: bold;
  margin-bottom: 0;
}
@media (min-width: 1200px) {
  .segment.descriptions .container .text h2 {
    font-size: 3.375rem;
  }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .segment.descriptions .container .text h2 {
    font-size: calc(54px - 30%);
  }
}
@media (max-width: 1199.98px) {
  .segment.descriptions .container .text h2 {
    font-size: calc(1.4rem + 1.8vw);
  }
}
@media (max-width: 1199.98px) and (min-width: 1200px) {
  .segment.descriptions .container .text h2 {
    font-size: 2.75rem;
  }
}
@media (max-width: 1199.98px) and (min-width: 768px) and (max-width: 1399.98px) {
  .segment.descriptions .container .text h2 {
    font-size: calc(44px - 30%);
  }
}
.segment.descriptions .container h3 {
  font-size: calc(1.35rem + 1.2vw);
  margin-bottom: 1.875rem;
  font-weight: bold;
}
@media (min-width: 1200px) {
  .segment.descriptions .container h3 {
    font-size: 2.25rem;
  }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .segment.descriptions .container h3 {
    font-size: calc(36px - 30%);
  }
}
.segment.descriptions .container p {
  font-size: 1rem;
  margin-bottom: 0;
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .segment.descriptions .container p {
    font-size: calc(16px - 30%);
  }
}
@media (max-width: 767.98px) {
  .segment.descriptions .container p {
    margin-bottom: 1.875rem;
  }
}
.segment.descriptions .container .first {
  margin-bottom: 8.125rem;
}
@media (max-width: 767.98px) {
  .segment.descriptions .container .first {
    margin-bottom: 3.75rem;
  }
}
@media (max-width: 767.98px) {
  .segment.descriptions .container .first-image {
    margin-top: 1.875rem;
    height: auto;
    width: 100%;
  }
}
.segment.descriptions .container .second-image {
  float: right;
}
@media (max-width: 767.98px) {
  .segment.descriptions .container .second-image {
    margin-top: 1.875rem;
    height: auto;
    width: 100%;
  }
}
.segment.descriptions .container .btn {
  margin-top: 1.875rem;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 767.98px) {
  .segment.descriptions .container .btn {
    margin: auto;
  }
}
.segment.cards {
  background: url("/images/web/pages/products/segment/background.webp") center no-repeat;
  padding-bottom: 8.125rem;
  background-size: cover;
  padding-top: 8.125rem;
}
@media (max-width: 767.98px) {
  .segment.cards {
    padding-bottom: 3.75rem;
    padding-top: 3.75rem;
  }
}
.segment.cards .container article {
  transition: background-color 0.5s;
  background-color: white;
  padding-bottom: 3.75rem;
  padding-top: 3.75rem;
  height: 100%;
}
@media (max-width: 1199.98px) {
  .segment.cards .container article {
    padding: 0 1rem 1.875rem 1rem;
    text-align: center;
  }
}
.segment.cards .container article:hover {
  background-color: black;
}
.segment.cards .container article:hover h2,
.segment.cards .container article:hover p {
  color: white;
}
.segment.cards .container article .bg-primary {
  justify-content: center;
  align-items: center;
  height: 8.188rem;
  width: 7.188rem;
  display: flex;
}
@media (max-width: 1199.98px) {
  .segment.cards .container article .bg-primary {
    margin: auto;
  }
}
.segment.cards .container article .bg-primary svg {
  font-size: 3.769rem;
  color: white;
}
.segment.cards .container article h2,
.segment.cards .container article p {
  transition: color 0.5s;
}
.segment.cards .container article h2 {
  font-size: calc(1.275rem + 0.3vw);
  margin-bottom: 1.875rem;
  padding-right: 1rem;
  font-weight: bold;
}
@media (min-width: 1200px) {
  .segment.cards .container article h2 {
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .segment.cards .container article h2 {
    font-size: calc(24px - 30%);
  }
}
@media (max-width: 1199.98px) {
  .segment.cards .container article h2 {
    margin-top: 1.875rem;
    padding: 0;
  }
}
.segment.cards .container article p {
  font-size: 1rem;
  padding-right: 1rem;
  margin-bottom: 0;
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .segment.cards .container article p {
    font-size: calc(16px - 30%);
  }
}
@media (max-width: 1199.98px) {
  .segment.cards .container article p {
    padding: 0;
  }
}
