.featured-collections {
  position: relative;
  overflow: hidden;
  padding-block: clamp(7rem, 12vw, 12rem);
  background:
    radial-gradient(circle at 92% 18%, rgb(7 58 55 / 25%), transparent 34rem),
    #0a0e0e;
}

.featured-collections__header {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(18rem, 0.65fr);
  align-items: end;
  gap: clamp(3rem, 8vw, 9rem);
  margin-bottom: clamp(4rem, 8vw, 7rem);
}

.featured-collections__header h2 {
  max-width: 12ch;
  margin-top: 1.2rem;
}

.featured-collections__intro {
  display: grid;
  justify-items: start;
  gap: 1.6rem;
  color: rgb(242 234 221 / 62%);
}

.featured-collections__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(1.25rem, 2.6vw, 2.75rem);
}

.featured-collections__card {
  --collection-depth-x: 0px;
  --collection-depth-y: 0px;

  grid-column: span 6;
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.featured-collections__card:nth-child(1) {
  grid-column: 1 / span 7;
}

.featured-collections__card:nth-child(2) {
  grid-column: 9 / span 4;
  margin-top: 8rem;
}

.featured-collections__card:nth-child(3) {
  grid-column: 2 / span 4;
  margin-top: 2rem;
}

.featured-collections__card:nth-child(4) {
  grid-column: 7 / span 6;
  margin-top: 0;
}

.featured-collections__card:nth-child(5) {
  grid-column: 1 / span 7;
  margin-top: 4rem;
}

.featured-collections__card:nth-child(6) {
  grid-column: 9 / span 4;
  margin-top: 10rem;
}

.featured-collections__media {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--color-ink-900);
  border: 1px solid rgb(213 179 106 / 16%);
  transform: translate3d(
    var(--collection-depth-x),
    var(--collection-depth-y),
    0
  );
  transition:
    border-color var(--duration-base) var(--ease-standard),
    transform var(--duration-base) var(--ease-luxury);
}

.featured-collections__card:nth-child(2) .featured-collections__media,
.featured-collections__card:nth-child(3) .featured-collections__media,
.featured-collections__card:nth-child(6) .featured-collections__media {
  aspect-ratio: 4 / 5;
}

.featured-collections__card:nth-child(4) .featured-collections__media {
  aspect-ratio: 16 / 11;
}

.featured-collections__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.82) contrast(1.05);
  transform: scale(1.08);
  transition:
    transform 1100ms var(--ease-luxury),
    filter 700ms var(--ease-standard);
}

.featured-collections__curtain {
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(135deg, #071b1a, #0b0d0d 62%, #241a0f);
  transform: translateY(-102%);
}

.featured-collections.is-motion-ready .featured-collections__card {
  opacity: 0;
  transform: translate3d(0, 3rem, 0);
}

.featured-collections__card.is-motion-ready {
  opacity: 0;
  transform: translate3d(0, 3rem, 0);
}

.featured-collections.is-motion-ready .featured-collections__curtain {
  transform: translateY(0);
}

.featured-collections__card.is-motion-ready .featured-collections__curtain {
  transform: translateY(0);
}

.featured-collections__index {
  position: absolute;
  top: 1.25rem;
  right: 1.4rem;
  z-index: 3;
  color: rgb(242 234 221 / 68%);
  font-family: var(--font-brand);
  font-size: 0.58rem;
  letter-spacing: 0.22em;
}

.featured-collections__caption {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding-top: 1.35rem;
  border-top: 1px solid transparent;
}

.featured-collections__name {
  font-size: clamp(1.55rem, 2.2vw, 2.55rem);
}

.featured-collections__description {
  margin-top: 0.65rem;
  color: rgb(242 234 221 / 54%);
  font-size: 0.88rem;
}

.featured-collections__arrow {
  display: grid;
  width: 2.75rem;
  flex: 0 0 2.75rem;
  aspect-ratio: 1;
  place-items: center;
  color: var(--color-champagne-500);
  border: 1px solid rgb(213 179 106 / 34%);
  border-radius: 50%;
  transition:
    color var(--duration-fast) var(--ease-standard),
    background-color var(--duration-fast) var(--ease-standard),
    transform var(--duration-base) var(--ease-luxury);
}

.featured-collections__link:hover .featured-collections__media,
.featured-collections__link:focus-visible .featured-collections__media {
  border-color: rgb(213 179 106 / 54%);
}

.featured-collections__link:hover .featured-collections__image,
.featured-collections__link:focus-visible .featured-collections__image {
  filter: saturate(0.95) contrast(1.08);
  transform: scale(1.02);
}

.featured-collections__link:hover .featured-collections__arrow,
.featured-collections__link:focus-visible .featured-collections__arrow {
  color: var(--color-obsidian-950);
  background: var(--color-champagne-500);
  transform: rotate(45deg);
}

.featured-collections.is-collection-visible .featured-collections__card {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition:
    opacity 760ms var(--ease-luxury),
    transform 940ms var(--ease-luxury);
  transition-delay: calc(var(--collection-index) * 90ms);
}

.featured-collections__card.is-collection-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition:
    opacity 760ms var(--ease-luxury),
    transform 940ms var(--ease-luxury);
  transition-delay: calc(var(--collection-index) * 90ms);
}

.featured-collections.is-collection-visible .featured-collections__curtain {
  transform: translateY(-102%);
  transition: transform 1100ms var(--ease-luxury);
  transition-delay: calc(160ms + var(--collection-index) * 90ms);
}

.featured-collections__card.is-collection-visible
  .featured-collections__curtain {
  transform: translateY(-102%);
  transition: transform 1100ms var(--ease-luxury);
  transition-delay: calc(160ms + var(--collection-index) * 90ms);
}

.featured-collections__media--coming-soon {
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 48%, rgb(7 82 76 / 34%), transparent 36%),
    linear-gradient(145deg, #07110f, #092522 72%, #1a1209);
}

.featured-collections__future-cube {
  position: relative;
  width: 28%;
  aspect-ratio: 1;
  border: 1px solid rgb(213 179 106 / 58%);
  transform: rotate(45deg);
}

.featured-collections__future-cube::before,
.featured-collections__future-cube::after,
.featured-collections__future-cube span {
  position: absolute;
  content: "";
  border: 1px solid rgb(213 179 106 / 28%);
}

.featured-collections__future-cube::before {
  inset: 18%;
}

.featured-collections__future-cube::after {
  inset: 35%;
  background: rgb(213 179 106 / 9%);
}

.featured-collections__future-cube span {
  inset: -34%;
  border-color: rgb(7 101 94 / 28%);
}

.featured-collections__future-orbit {
  position: absolute;
  width: 52%;
  aspect-ratio: 1;
  border: 1px solid rgb(213 179 106 / 12%);
  border-radius: 50%;
}

.featured-collections__future-mark {
  display: grid;
  width: 2.75rem;
  flex: 0 0 2.75rem;
  aspect-ratio: 1;
  place-items: center;
  color: var(--color-champagne-500);
  border: 1px solid rgb(213 179 106 / 34%);
  border-radius: 50%;
  font-family: var(--font-brand);
  font-size: 1rem;
}

@media (max-width: 1119px) {
  .featured-collections__header {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .featured-collections__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .featured-collections__card,
  .featured-collections__card:nth-child(n) {
    grid-column: auto;
    margin-top: 0;
  }

  .featured-collections__card:nth-child(3n + 1) {
    grid-column: 1 / -1;
  }

  .featured-collections__card:nth-child(3n + 1) .featured-collections__media {
    aspect-ratio: 16 / 9;
  }
}

@media (max-width: 639px) {
  .featured-collections__grid {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .featured-collections__card:nth-child(n) {
    grid-column: auto;
  }

  .featured-collections__card:nth-child(n) .featured-collections__media {
    aspect-ratio: 4 / 5;
  }
}

@media (hover: none) {
  .featured-collections__arrow {
    color: var(--color-obsidian-950);
    background: var(--color-champagne-500);
  }
}

@media (prefers-reduced-motion: reduce) {
  .featured-collections__card {
    opacity: 1;
    transform: none;
  }

  .featured-collections__curtain {
    display: none;
  }
}
