.index-place-event {
  padding: 0 var(--spacing-2xl);
}

.index-place-event__inner {
  display: flex;
  width: 100%;
  max-width: 1280px;
  flex-direction: column;
  gap: var(--spacing-xl);
  margin: 0 auto;
  padding: var(--spacing-xl) 0;
}

.index-place-event__heading {
  display: flex;
  align-items: center;
  gap: var(--spacing-lg);
  color: inherit;
  text-decoration: none;
}

.index-place-event__heading-text {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--spacing-3xs);
}

.index-place-event__heading-text h2 {
  margin: 0;
  color: var(--neutral-tx1-hero);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-28);
}

.index-place-event__heading-text > span {
  color: var(--neutral-tx2-title);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-20);
}

.index-place-event__heading-arrow {
  display: flex;
  width: 10px;
  height: 20px;
  flex: 0 0 10px;
  align-items: center;
  justify-content: center;
}

.index-place-event__heading-arrow img {
  width: 10px;
}

.index-place-event__carousel {
  width: 100%;
  padding-bottom: var(--spacing-3xl);
}

.index-place-event__card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--spacing-md);
}

.index-place-event__thumb {
  position: relative;
  width: 100%;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: var(--radius-sm);
}

.index-place-event__thumb > a {
  display: block;
  width: 100%;
  height: 100%;
}

.index-place-event__thumb > a > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.index-place-event__heart {
  position: absolute;
  top: var(--spacing-xs);
  right: var(--spacing-xs);
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.index-place-event__heart img {
  width: 30px;
}

.index-place-event__info {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--spacing-xs);
  padding: 0 var(--spacing-3xs);
  color: var(--neutral-tx2-title);
  text-decoration: none;
}

.index-place-event__name {
  overflow: hidden;
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-20);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.index-place-event__price {
  display: flex;
  align-items: center;
  gap: var(--spacing-2xs);
  white-space: nowrap;
}

.index-place-event__price strong,
.index-place-event__price b {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-24);
}

.index-place-event__price strong {
  color: var(--brand-accent-dark);
}

.index-place-event__next {
  position: absolute;
  z-index: 2;
  top: calc(50% - 20px);
  right: var(--spacing-base);
  display: flex;
  width: 64px;
  height: 64px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  transform: translateY(-50%);
}

.index-place-event__next::before {
  position: absolute;
  width: 37px;
  height: 37px;
  border-radius: var(--radius-xs);
  background: var(--badge-alpha-b-10);
  content: '';
}

.index-place-event__next img {
  position: relative;
  width: 8px;
}

.index-place-event__scrollbar {
  display: none;
}

@media (min-width: 1024px) {
  .index-place-event__next {
    display: none;
  }
}

@media (max-width: 767px) {
  .index-place-event {
    overflow: hidden;
    padding: 0 20px;
  }

  .index-place-event__inner {
    gap: var(--spacing-base);
    padding: var(--spacing-base) 0 var(--spacing-xl);
  }

  .index-place-event__carousel {
    overflow: visible;
    padding-bottom: 30px;
  }

  .index-place-event__info {
    gap: var(--spacing-xs);
  }

  .index-place-event__name {
    white-space: normal;
  }

  .index-place-event__next {
    top: calc(50% - 15px);
    right: var(--spacing-base);
  }

  .index-place-event__scrollbar {
    position: absolute;
    bottom: 6px;
    left: 0;
    display: block;
    width: 100%;
    height: var(--stroke-1);
    background: var(--badge-alpha-b-10);
  }

  .index-place-event__scrollbar .swiper-scrollbar-drag {
    width: 33.333% !important;
    height: var(--stroke-1);
    border-radius: 0;
    background: var(--badge-alpha-b-60);
  }
}
