.glow-category-grid {
  padding-top: var(--glow-category-padding-top);
  padding-bottom: var(--glow-category-padding-bottom);
  background: rgb(var(--color-background));
}

.glow-category-grid__inner {
  padding-inline: min(3rem, 5%);
}

.glow-category-grid__header {
  max-width: 760px;
  margin: 0 auto 40px;
  text-align: center;
}

.glow-category-grid__eyebrow,
.glow-category-card__eyebrow {
  margin: 0;
  font-size: var(--glow-global-label-size);
  font-weight: 700;
  letter-spacing: var(--glow-label-tracking);
  text-transform: uppercase;
  color: rgb(var(--color-light-text));
}

.glow-category-grid__heading {
  margin: 0;
  font-family: var(--sort-title-font);
  font-size: var(--glow-category-heading-size);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
}

.glow-category-grid__eyebrow + .glow-category-grid__heading {
  margin-top: 10px;
}

.glow-category-grid__intro {
  max-width: 620px;
  margin: 18px auto 0;
  font-size: var(--glow-category-intro-size);
  line-height: 1.5;
  color: rgb(var(--color-light-text));
}

.glow-category-grid__cards {
  display: grid;
  grid-template-columns: repeat(var(--glow-category-columns), minmax(0, 1fr));
  gap: var(--glow-category-gap);
}

.glow-category-card {
  min-width: 0;
  text-align: center;
  scroll-snap-align: center;
}

.glow-category-card__link {
  position: relative;
  display: block;
  height: 100%;
  color: rgb(var(--color-text));
}

.glow-category-card__media {
  position: relative;
  aspect-ratio: var(--glow-category-ratio);
  overflow: hidden;
  border-radius: var(--glow-category-radius);
  background: rgb(var(--color-media-background));
}

.glow-category-grid[data-image-shape="circle"] .glow-category-card__media {
  border-radius: 50%;
}

.glow-category-grid[data-image-shape="square"] .glow-category-card__media {
  border-radius: 0;
}

.glow-category-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 600ms ease;
}

.glow-category-card__placeholder {
  color: rgb(var(--color-light-text) / 22%);
  background: #202125;
}

.glow-category-card__link:hover .glow-category-card__image {
  transform: scale(1.035);
}

.glow-category-card__badge {
  position: absolute;
  top: 16px;
  left: 16px;
  padding: 7px 12px;
  font-size: var(--glow-global-label-size);
  font-weight: 700;
  letter-spacing: 0.09em;
  color: #202125;
  text-transform: uppercase;
  background: #eeeeee;
  border-radius: 999px;
}

.glow-category-card__content {
  padding: 18px 2px 2px;
}

.glow-category-card__heading {
  margin: 0;
  font-family: var(--sort-title-font);
  font-size: var(--glow-category-card-heading-size);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
}

.glow-category-card__eyebrow + .glow-category-card__heading {
  margin-top: 7px;
}

.glow-category-card__text {
  margin: 10px 0 0;
  font-size: var(--glow-category-card-text-size);
  line-height: 1.5;
  color: rgb(var(--color-light-text));
}

.glow-category-card__button,
.glow-category-grid__footer a {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  margin-top: 14px;
  font-size: var(--glow-global-link-size);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
}

.glow-category-grid[data-card-style="overlay"] .glow-category-card__link {
  overflow: hidden;
  border-radius: var(--glow-category-radius);
}

.glow-category-grid[data-card-style="overlay"] .glow-category-card__media::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(0deg, rgb(19 18 15 / 72%), transparent 64%);
}

.glow-category-grid[data-card-style="overlay"] .glow-category-card__content {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  padding: 28px;
  color: #ffffff;
}

.glow-category-grid__footer {
  margin-top: 40px;
  text-align: center;
}

@media (max-width: 991px) {
  .glow-category-grid {
    padding-top: min(var(--glow-category-padding-top), 56px);
    padding-bottom: min(var(--glow-category-padding-bottom), 56px);
  }

  .glow-category-grid__inner {
    padding-inline: 20px;
  }

  .glow-category-grid__header {
    margin-bottom: 30px;
  }

  .glow-category-grid__heading {
    font-size: var(--glow-category-heading-size-mobile);
  }

  .glow-category-grid__cards {
    grid-template-columns: repeat(var(--glow-category-columns-mobile), minmax(0, 1fr));
    gap: 24px 16px;
  }

  .glow-category-grid[data-mobile-layout="slider"] .glow-category-grid__cards {
    grid-auto-columns: var(--glow-category-mobile-width);
    grid-auto-flow: column;
    grid-template-columns: none;
    gap: 16px;
    padding-bottom: 15px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory;
    scrollbar-color: currentColor transparent;
    scrollbar-width: thin;
  }

  .glow-category-grid[data-mobile-layout="slider"] .glow-category-grid__cards::-webkit-scrollbar {
    height: 6px;
  }

  .glow-category-grid[data-mobile-layout="slider"] .glow-category-grid__cards::-webkit-scrollbar-thumb {
    background: currentColor;
  }

  .glow-category-card__heading {
    font-size: var(--glow-category-card-heading-size-mobile);
  }
}
