.category-header {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 1.333333rem;
  padding: 0 .512821rem;
  background: #212121;
}

.category-header__back,
.category-header__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: #ffffff;
}

.category-header__back {
  width: .615385rem;
  height: .615385rem;
  flex: 0 0 .615385rem;
}

.category-header__actions {
  display: inline-flex;
  align-items: center;
  gap: .307692rem;
}

.category-header__action {
  width: .512821rem;
  height: .512821rem;
  flex: 0 0 .512821rem;
}

.category-header__back-icon {
  width: .615385rem;
  height: .615385rem;
  color: #ffffff;
}

.category-header__action-icon {
  display: block;
  width: .512821rem;
  height: .512821rem;
}

.category-page {
  display: flex;
  flex-direction: column;
  padding-bottom: .410256rem;
  background: #ffffff;
}

.category-hero {
  position: relative;
}

.category-hero__media {
  width: 100%;
  height: 5.846154rem;
  overflow: hidden;
  background: #ece6ff;
}

.category-hero__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.category-grid {
  position: relative;
  z-index: 1;
  margin-top: -.512821rem;
  padding: .512821rem 0 0;
  border-radius: .512821rem .512821rem 0 0;
  background: #ffffff;
}

.category-grid__title {
  margin: 0 0 .512821rem;
  padding: 0 .512821rem;
  color: #212121;
  font-family: "Playfair Display", Georgia, serif;
  font-size: .512821rem;
  font-weight: 600;
  line-height: .692308rem;
}

.category-grid__content {
  display: flex;
  flex-direction: column;
  gap: .410256rem;
}

.category-grid__group {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 0 .512821rem;
  column-gap: .25641rem;
  row-gap: .410256rem;
}

.category-event-card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.category-inline-ad {
  margin: 0;
}

.category-event-card__link {
  display: flex;
  flex-direction: column;
  gap: .307692rem;
  width: 100%;
  color: inherit;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
}

.category-event-card__media {
  position: relative;
}

.category-event-card__image-shell {
  width: 100%;
  height: 5.615385rem;
  overflow: hidden;
  border-radius: .205128rem;
  background: #efeafc;
}

.category-event-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.category-event-card__favorite {
  position: absolute;
  top: .307692rem;
  right: .307692rem;
  z-index: 2;
}

.category-event-card__copy {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: .153846rem;
  justify-content: space-between;
}

.category-event-card__title {
  display: -webkit-box;
  overflow: hidden;
  min-height: 1.025642rem;
  margin: 0;
  color: #212121;
  font-family: "PlusJakartaSans", Arial, sans-serif;
  font-size: .410256rem;
  font-weight: 600;
  line-height: .512821rem;
  -webkit-box-orient: vertical;
  line-clamp: 2;
  -webkit-line-clamp: 2;
}

.category-event-card__schedule {
  margin: 0;
  color: #424242;
  font-family: "PlusJakartaSans", Arial, sans-serif;
  font-size: .358974rem;
  line-height: .461538rem;
}

.category-load-more.is-hidden {
  display: none;
}

.category-load-more {
  padding: .512821rem .512821rem .25641rem;
  color: #666666;
  font-family: "PlusJakartaSans", Arial, sans-serif;
  font-size: .333333rem;
  line-height: .461538rem;
  text-align: center;
}

.category-load-more.is-loading {
  color: #212121;
}

.category-empty {
  gap: 0;
  padding: .282051rem .512821rem .307692rem;
  border-radius: 0;
  background: transparent;
}

.category-empty .page-empty__icon {
  display: block;
  width: 2.820513rem;
  height: 2.923077rem;
  margin-bottom: .282051rem;
}

.category-empty .page-empty__title,
.category-empty .page-empty__description {
  max-width: 5.076923rem;
  color: #9e9e9e;
  font-family: "PlusJakartaSans", Arial, sans-serif;
  font-size: .358974rem;
  font-weight: 400;
  line-height: .512821rem;
  text-align: center;
}

.category-empty .page-empty__title {
  margin: 0;
}

.category-empty .page-empty__description {
  margin: .102564rem 0 0;
}

.footer {
  margin-top: 0!important;
}
