/** @format */

.tcgi-related-products-wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 60px 0 120px;
}

.tcgi-related-products-wrapper.desktop {
  display: none;
}

@media (min-width: 768px) {
  .tcgi-related-products-wrapper.desktop {
    display: flex;
  }

  .tcgi-related-products-wrapper.mobile {
    display: none;
  }
}

.tcgi-related-products-wrapper h2 {
  color: #000;
  font-size: 36px;
  font-weight: 300;
  line-height: 120%; /* 43.2px */
  letter-spacing: -0.72px;
}

.tcgi-related-products-wrapper .carousel-navigation1 {
  bottom: 40px;
}

.tcgi-related-products-wrapper .carousel-panel .dots-container {
  bottom: 60px;
  justify-content: center;
}

@media (min-width: 768px) {
  .tcgi-related-products-wrapper h2 {
    font-size: 44px;
    line-height: 120%; /* 52.8px */
    letter-spacing: -0.88px;
  }

  .tcgi-related-products-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
}

.tcgi-related-products-grid {
  display: grid;
}

.tcgi-related-product-item {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: 28px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid #ccc;
  background: #fff;
  position: relative;
  padding-bottom: 146px;
}

@media (min-width: 768px) {
  .tcgi-related-product-item {
    padding-bottom: 76px;
  }
}

.tcgi-product-image,
.tcgi-product-image a {
  display: block;
  width: 100%;
}

.tcgi-product-image img {
  width: 100%;
  border-radius: 14px;
  aspect-ratio: 316/140;
  object-fit: cover;
}

.tcgi-product-tag {
  display: flex;
  padding: 6px 12px 6px 8px;
  justify-content: center;
  min-height: 28px;
  gap: 4px;
  color: #fff;
  text-align: center;
  font-family: "Atlas Grotesk Medium";
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  border-radius: 100px;
  /* 14.4px */
}

.tag-most-popular {
  background: linear-gradient(90deg, #1d082a 0%, #631b90 100%);
}

.tag-new {
  border: 2px solid var(--Brand-Secondary-palette-TCGI_Yellow, #edb308);
  background: #fbecc1;
}

.tag-popular {
  background: #006eb8;
}

.tcgi-title-wrapper {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tcgi-product-levels {
  display: flex;
  gap: 8px;
  align-items: center;
  color: #49146a;
  font-family: "Atlas Grotesk Medium";
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
}

.tcgi-product-levels span {
  display: flex;
  align-items: center;
}

.tcgi-product-title {
  color: #000;
  font-family: "Atlas Grotesk Medium";
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 140%;
  letter-spacing: -0.4px;
}

.tcgi-product-price-details {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.tcgi-product-price-item {
  display: flex;
  gap: 12px;
}

.tcgi-product-price-item-content {
  display: flex;
  flex-direction: column;
  gap: 3px;
  color: #666;
  font-family: "Atlas Grotesk regular";
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;
}

.tcgi-product-price,
.tcgi-product-hours {
  color: #000;
  font-family: "Atlas Grotesk Medium";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
}

.tcgi-product-excerpt {
  color: #333;
  font-family: "Atlas Grotesk regular";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 24px */
}

.tcgi-product-buttons {
  display: flex;
  flex-wrap: wrap;
  flex-basis: 1 1;
  gap: 16px;
  position: absolute;
  bottom: 16px;
  right: 16px;
  left: 16px;
}

.tcgi-product-buttons .button__blue {
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 12px;
  border-radius: 40px;
  background: #006eb8;
  color: var(--White, #fff);
  font-family: "Atlas Grotesk Medium";
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  flex-wrap: nowrap;
  /* 16.8px */
}

.tcgi-product-buttons span {
  white-space: nowrap;
}

.tcgi-product-buttons .button__outline {
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 12px;
  border-radius: 40px;
  border: 1px solid #006eb8;
  background: #fff;
  font-family: "Atlas Grotesk Medium";
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  flex-wrap: nowrap;
  color: #006eb8;
}
