.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic { width: 100%; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__inner { padding-top: 3.5rem; padding-bottom: 3.5rem; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__header { max-width: 48rem; margin: 0 auto 2rem; text-align: center; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__eyebrow { margin: 0 0 0.75rem; letter-spacing: 0.22em; text-transform: uppercase; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__title { margin: 0; letter-spacing: -0.025em; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.75rem; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card {
  position: relative;
  display: block;
  min-height: 18rem;
  overflow: hidden;
  border-radius: 2px;
  color: var(--kombos-white);
  background: var(--kombos-gray-200);
  text-decoration: none;
  isolation: isolate;
}

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card--featured { min-height: 0; aspect-ratio: 4 / 3; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__image, .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__placeholder, .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__shade { position: absolute; inset: 0; width: 100%; height: 100%; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__image { object-fit: cover; transition: transform 700ms cubic-bezier(0.2, 0.65, 0.3, 1); }

/* Keep the supplied mattress photo's bed in frame without altering the source. */
.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card--featured .category-mosaic__image { object-position: 64% 60%; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__placeholder {
  background:
    radial-gradient(circle at 72% 24%, rgba(255, 255, 255, 0.9), transparent 30%),
    linear-gradient(135deg, var(--kombos-gray-100), var(--kombos-gray-300));
}

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__shade { background: linear-gradient(180deg, rgba(7, 26, 46, 0.02) 28%, rgba(7, 26, 46, 0.72) 100%); }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__content {
  position: absolute;
  right: 1.5rem;
  bottom: 1.5rem;
  left: 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
}

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card-title { color: var(--kombos-white); letter-spacing: 0.08em; text-transform: uppercase; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding-bottom: 0.25rem;
  color: var(--kombos-white);
  border-bottom: 1px solid rgba(255, 255, 255, 0.75);
}

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__arrow { display: inline-block; transition: transform 250ms ease; }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card:hover .category-mosaic__image, .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card:focus-visible .category-mosaic__image { transform: scale(1.045); }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card:hover .category-mosaic__arrow, .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card:focus-visible .category-mosaic__arrow { transform: translateX(0.25rem); }

.cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card:focus-visible { outline: 2px solid var(--kombos-gray-900); outline-offset: 2px; }

@media (min-width: 640px) {
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__inner { padding-top: 4.5rem; padding-bottom: 4.5rem; }
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__header { margin-bottom: 2.5rem; }
}

@media (min-width: 1024px) {
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__inner { padding-top: 6rem; padding-bottom: 6rem; }
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__header { margin-bottom: 3rem; }
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__grid { grid-template-columns: minmax(0, 1.35fr) minmax(20rem, 1fr); gap: 1rem; }
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card, .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card--featured { min-height: 34rem; }
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__card--featured { aspect-ratio: auto; }
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__content { right: 2rem; bottom: 2rem; left: 2rem; }
}

@media (prefers-reduced-motion: reduce) {
  .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__image, .cc_wF5ZVAIFYT_IJ0f61qOQN .category-mosaic__arrow { transition: none; }
}
