.ome-review-scene-marquee {
  --ome-review-gap: 22px;
  overflow: hidden;
  background: #f4f0e8;
  color: #262521;
}

.ome-review-scene-marquee__header {
  margin: 0 auto 28px;
  padding: 24px 20px 0;
}

.ome-review-scene-marquee__subheading,
.ome-review-scene-marquee__heading,
.ome-review-scene-marquee__description {
  margin-left: auto;
  margin-right: auto;
  max-width: 760px;
}

.ome-review-scene-marquee__subheading {
  margin-bottom: 8px;
}

.ome-review-scene-marquee__heading {
  margin-top: 0;
  margin-bottom: 10px;
  color: #262521;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(32px, 4.5vw, 68px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.05;
}

.ome-review-scene-marquee__description {
  margin-top: 0;
  margin-bottom: 0;
  color: #6b6b61;
  font-size: 16px;
}

.ome-review-scene-marquee__desktop {
  display: grid;
  gap: 12px;
}

.ome-review-scene-marquee__mobile {
  display: none;
}

.ome-review-scene-marquee__row {
  display: flex;
  overflow: hidden;
  user-select: none;
}

.ome-review-scene-marquee__group {
  display: flex;
  flex: 0 0 auto;
  gap: var(--ome-review-gap);
  min-width: max-content;
  padding: 4px var(--ome-review-gap) 14px 0;
  animation: ome-review-scroll-left var(--ome-review-speed, 34s) linear infinite;
  will-change: transform;
}

.ome-review-scene-marquee__row--reverse .ome-review-scene-marquee__group {
  animation-name: ome-review-scroll-right;
}

.ome-review-scene-marquee__row:hover .ome-review-scene-marquee__group,
.ome-review-scene-marquee__row.is-paused .ome-review-scene-marquee__group {
  animation-play-state: paused;
}

.ome-review-scene-marquee__card {
  display: block;
  width: clamp(175px, 14.5vw, 240px);
  aspect-ratio: 3 / 4;
  flex: 0 0 auto;
  padding: 8px;
  overflow: hidden;
  background: #fffdf8;
  border: 1px solid rgba(255, 255, 255, 0.9);
  box-shadow: 0 8px 20px rgba(63, 53, 38, 0.12);
  color: inherit;
  text-decoration: none;
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.ome-review-scene-marquee__card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 26px rgba(63, 53, 38, 0.18);
}

.ome-review-scene-marquee__card img,
.ome-review-scene-marquee__card .f-image,
.ome-review-scene-marquee__card .f-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ome-review-scene-marquee__card img {
  opacity: 1 !important;
}

@keyframes ome-review-scroll-left {
  to { transform: translateX(-100%); }
}

@keyframes ome-review-scroll-right {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}

@media (max-width: 767px) {
  .ome-review-scene-marquee {
    --ome-review-gap: 10px;
  }

  .ome-review-scene-marquee__desktop {
    display: none;
  }

  .ome-review-scene-marquee__mobile {
    display: grid;
    gap: 9px;
  }

  .ome-review-scene-marquee__header {
    margin-bottom: 20px;
    padding: 16px 20px 0;
  }

  .ome-review-scene-marquee__group {
    padding-top: 0;
    padding-bottom: 0;
  }

  .ome-review-scene-marquee__card {
    width: 112px;
    padding: 5px;
    box-shadow: 0 6px 14px rgba(63, 53, 38, 0.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ome-review-scene-marquee__group {
    animation-play-state: paused;
  }
}
