.cc_o1q2vula_Lx3z5SS55G .bbcat {
  display: block;
  width: 100%;
  box-sizing: border-box;
  background: var(--bb-cream);
  color: var(--bb-ink);
  font-family: var(--bb-font-body);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__inner {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--bb-max-width);
  margin: 0 auto;
  padding: var(--bb-section-gap) var(--bb-gutter) 0;
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__heading {
  margin-bottom: var(--bb-space-6);
}

/* Mobile 2 columns · 768px 3 · 1024px 6 (7-8 tiles: 2 · 4 · 4) */
.cc_o1q2vula_Lx3z5SS55G .bbcat__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--bb-space-5) var(--bb-space-3);
  margin: 0;
  padding: 0;
  list-style: none;
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__item {
  min-width: 0;
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__card {
  display: flex;
  flex-direction: column;
  gap: var(--bb-space-3);
  border-radius: var(--bb-radius-lg);
  color: var(--bb-ink);
  text-decoration: none;
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__card:focus-visible {
  outline: none;
  box-shadow: var(--bb-focus-ring);
}

/* Pastel surface; the photo (if any) covers it */
.cc_o1q2vula_Lx3z5SS55G .bbcat__media {
  position: relative;
  display: block;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: var(--bb-radius-lg);
  background: var(--bbcat-bg);
  --bbcat-bg: var(--bb-pink-soft);
  --bb-img-bg: var(--bbcat-bg);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media .bb-img__el {
  transition: transform var(--bb-transition);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__card:hover .bb-img__el {
  transform: scale(1.03);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--pink {
  --bbcat-bg: var(--bb-pink);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--oat {
  --bbcat-bg: var(--bb-tint-oat);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--sage {
  --bbcat-bg: var(--bb-tint-sage);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--blush {
  --bbcat-bg: var(--bb-tint-blush);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--butter {
  --bbcat-bg: var(--bb-tint-butter);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--peach {
  --bbcat-bg: var(--bb-tint-peach);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--lilac {
  --bbcat-bg: var(--bb-tint-lilac);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--mint {
  --bbcat-bg: var(--bb-tint-mint);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--sand {
  --bbcat-bg: var(--bb-tint-sand);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__media--sky {
  --bbcat-bg: var(--bb-tint-sky);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--bb-space-2);
  padding: 0 var(--bb-space-1);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__name {
  min-width: 0;
  font-family: var(--bb-font-display);
  font-variant-numeric: lining-nums;
  font-size: var(--bb-text-lg);
  font-weight: var(--bb-weight-semibold);
  line-height: 1.2;
  letter-spacing: -0.01em;
  overflow-wrap: break-word;
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__label .bb-icon {
  flex: none;
  font-size: 1.125rem;
  transition: transform var(--bb-transition);
}

.cc_o1q2vula_Lx3z5SS55G .bbcat__card:hover .bbcat__label .bb-icon {
  transform: translate(2px, -2px);
}

@media (min-width: 768px) {
  .cc_o1q2vula_Lx3z5SS55G .bbcat__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--bb-space-6) var(--bb-grid-gap);
  }

  .cc_o1q2vula_Lx3z5SS55G .bbcat__grid--wide {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .cc_o1q2vula_Lx3z5SS55G .bbcat__heading {
    margin-bottom: var(--bb-space-8);
  }

  .cc_o1q2vula_Lx3z5SS55G .bbcat__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .cc_o1q2vula_Lx3z5SS55G .bbcat__grid--wide {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .cc_o1q2vula_Lx3z5SS55G .bbcat__card {
    gap: 0.875rem;
  }

  .cc_o1q2vula_Lx3z5SS55G .bbcat__name {
    font-size: var(--bb-text-xl);
  }
}
