.ecom .header {
  padding-bottom: 3rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.ecom .header__right {
  padding-bottom: 3rem;
}
.ecom .header__right-bottom {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1.3rem;
}
.ecom__homepage-top-text {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3rem;
  margin-bottom: 3rem;
}
.ecom__homepage-second-text {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 3rem;
  margin-bottom: 3rem;
}
.ecom__homepage-second-text > div:first-child {
  font-family: "Cabin", sans-serif !important;
  font-weight: 700 !important;
  font-size: 3.5rem;
  line-height: 4rem;
  text-align: center;
  text-transform: uppercase;
}
.ecom__homepage-second-text > div:first-child h4 {
  font-size: 2.3rem;
  line-height: 3rem;
}
.ecom__homepage-second-text > div:first-child .border-yellow {
  display: inline-block;
  background-color: #1e73b3;
  width: 30px;
  height: 10px;
  line-height: 0;
}
.ecom__homepage-yellow-box {
  background-color: #1e73b3;
  border-radius: 0.4rem;
  padding: 3rem;
  margin-bottom: 3rem;
  text-align: center;
  color: #fff;
}
.ecom__homepage-yellow-box p, .ecom__homepage-yellow-box div {
  font-family: "Cabin", sans-serif !important;
  font-weight: 700 !important;
}
.ecom__categories {
  background-color: #eee;
  padding: 3rem;
  border-radius: 0.4rem;
  margin-bottom: 3rem;
}
.ecom__categories-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 1.5rem;
}
.ecom__categories-link {
  display: block;
  min-width: 10rem;
  background-color: #fff;
  border: 2px solid #1e73b3;
  border-radius: 0.4rem;
  padding: 0.8rem 1.7rem;
  color: inherit;
  font-family: "Cabin", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
}
.ecom__categories-link.active {
  background-color: #1e73b3;
  color: #fff;
}
.ecom .info-page .page__title--h1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
.ecom .category-page .page__title {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin-bottom: 2.5rem;
}
.ecom .category-page .page__title span {
  display: block;
  background-color: #fff;
  padding: 0 3rem;
  z-index: 2;
}
.ecom .category-page .page__title hr {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  border-color: #2e2d2c;
  margin: 0;
  z-index: 1;
}
.ecom .category-page__products {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 3rem;
  margin-bottom: 3rem;
}
.ecom .category-page__products-item {
  position: relative;
  display: block;
  background-color: #f8f8f8;
  border-radius: 0.4rem;
  padding: 2rem;
  color: inherit;
  text-transform: uppercase;
  text-decoration: none;
  font-family: "Cabin", sans-serif;
  font-weight: 700;
}
.ecom .category-page__products-item .thumbnail {
  margin-bottom: 1rem;
}
.ecom .category-page__products-item .thumbnail img {
  width: 100%;
  height: auto;
  display: block;
}
.ecom .category-page__products-item .sku {
  font-size: 1.3rem;
  line-height: 1.6rem;
  margin-bottom: 1rem;
}
.ecom .category-page__products-item .price {
  font-size: 1.3rem;
  line-height: 1.6rem;
  margin-bottom: 2rem;
}
.ecom .category-page__products-item .title {
  font-size: 1.6rem;
  line-height: 2rem;
  height: 4rem;
  overflow: hidden;
  margin-bottom: 1rem;
}
.ecom .category-page__products-item .is-new {
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
  background-color: #1e73b3;
  width: 5rem;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  color: #fff;
  font-family: "Cabin", sans-serif;
  font-weight: 700;
}
.ecom .category-page__products-item .online-only {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: #eee;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #1e73b3;
  font-family: "Cabin", sans-serif;
  font-weight: 700;
  font-size: 1.3rem;
}
.ecom .category-page .sort-wrapper {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 3rem;
}
.ecom .product-page {
  display: grid;
  grid-template-columns: 40% 1fr;
  gap: 3rem;
  margin-bottom: 3rem;
}
.ecom .product-page .title {
  margin-bottom: 1rem;
}
.ecom .product-page .info {
  margin-bottom: 1rem;
  text-transform: uppercase;
  text-decoration: none;
  font-family: "Cabin", sans-serif;
  font-weight: 700;
}
.ecom .product-page hr {
  margin: 1.5rem 0;
  border-color: rgba(0, 0, 0, 0.4);
}
.ecom .product-page .form {
  width: 50%;
}
.ecom .product-page .form label {
  font-family: "Cabin", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  text-decoration: none;
}
.ecom .product-page .form-group--with-submit {
  display: flex;
  gap: 1rem;
}
.ecom .product-page .form-group--with-submit > * {
  flex-shrink: 0;
}
.ecom .product-page .form-group--with-submit input {
  flex: 1 1 auto;
}
.ecom-modal-cart .table-responsive {
  margin-bottom: 3rem;
}
.ecom-modal-cart .modal-body {
  padding: 3rem;
}
.ecom-modal-cart .modal-body img {
  border-radius: 0.4rem;
}
.ecom-modal-cart .modal-body .title {
  font-family: "Cabin", sans-serif;
  font-weight: 400;
}
.ecom-modal-cart .modal-body tbody td {
  vertical-align: middle;
  padding: 1rem;
}
.ecom-modal-cart .modal-body tfoot td, .ecom-modal-cart .modal-body tfoot th {
  border-bottom: none;
  padding-bottom: 0;
}
.ecom-modal-cart .cart-desc {
  display: flex;
  justify-content: center;
  align-items: center;
}
.ecom-modal-cart .cart-desc * {
  text-transform: uppercase;
  text-align: center;
  font-family: "Cabin", sans-serif;
  font-weight: 400;
  font-size: 1.7rem;
  line-height: 2.4rem;
}
.ecom-modal-cart .cart-desc--empty {
  padding: 5rem 0;
}
.ecom-modal-cart .cart-desc--empty * {
  text-transform: none;
  font-weight: 400;
}
.ecom .card .form-control {
  border-color: #ced4da;
}
.ecom .btn-more-menu .btn {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  padding: 0;
  margin: 0;
}
.ecom .btn-more-menu .btn span {
  display: block;
  width: 3.5rem;
  height: 2px;
  background-color: #000;
}
.ecom .btn-more-menu .dropdown-menu {
  background-color: #1e73b3;
  border-color: #1e73b3;
}
.ecom .btn-more-menu .dropdown-menu a {
  color: #fff;
  font-size: 1.8rem;
  padding: 0.5rem 1.5rem;
}
.ecom .btn-more-menu .dropdown-menu a:hover {
  background-color: inherit;
}
.ecom .btn-cart {
  position: relative;
  border: none;
  background-color: transparent;
}
.ecom .btn-cart .ecom-quantity-header {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  right: -0.7rem;
  top: -0.7rem;
  background-color: #1e73b3;
  color: #fff;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  font-family: "Cabin", sans-serif;
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1.3rem;
}
.ecom__faq-block {
  margin-bottom: 3rem;
}
.ecom__faq-item {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 1rem;
  margin-bottom: 1.5rem;
}
.ecom__faq-item-question {
  color: #989eaa;
  display: block;
  padding: 1.5rem;
  background-color: rgba(0, 0, 0, 0.03);
  font-family: "Cabin", sans-serif;
  font-weight: 700;
  font-size: 1.6rem;
}
.ecom__faq-item-answer {
  display: block;
  padding: 1.5rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.ecom__faq-item:has(.collapse.show) .ecom__faq-item-question {
  color: #2e2d2c;
}
.ecom .pagination .page-link {
  font-size: 1.5rem;
  padding: 0.5rem 1.5rem;
}

@media (max-width: 991.98px) {
  .ecom .product-page .form {
    width: 70%;
  }
}
@media (max-width: 767.98px) {
  .ecom .header__logo img {
    height: 12rem;
  }
  .ecom .product-page {
    grid-template-columns: 1fr;
  }
  .ecom .product-page .form {
    width: 50%;
  }
  .ecom .category-page__products {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 575.98px) {
  .ecom .category-page__products {
    grid-template-columns: 1fr 1fr;
  }
  .ecom .product-page {
    grid-template-columns: 1fr;
  }
  .ecom .product-page .form {
    width: 100%;
  }
  .ecom__homepage-top-text {
    grid-template-columns: 1fr;
  }
  .ecom__homepage-second-text {
    grid-template-columns: 1fr;
  }
}