:root {
  --event42-card-width: 91%;
  --event42-card-gap: clamp(6px, 0.93vw, 10px);
  --event42-title-gap-top: clamp(28px, 5.2vw, 56px);
  --event42-title-gap-bottom: clamp(7px, 0.93vw, 10px);
  --event42-hero-padding-top: 106%;
  --event42-checkbox-a-left: clamp(2.5%, calc(0.4373vw + 0.6395%), 4%);
  --event42-checkbox-a-top: clamp(32.3%, calc(0.8749vw + 28.582%), 35.3%);
  --event42-checkbox-b-left: clamp(2.5%, calc(0.4373vw + 0.6395%), 4%);
  --event42-checkbox-b-top: clamp(8%, calc(0.8749vw + 4.282%), 11%);
}

.event-product-section {
  margin: 0 auto;
  padding: 0;
}

.event-product-section:last-of-type {
  margin-bottom: 0;
}

.event-text-display {
  margin: 0px auto 90px auto;
}

.event-section-title {
  margin: 20px auto 16px auto;
}

.event-product-item {
  margin: 0;
}

.event-product-checkbox {
  width: 20px;
  height: 20px;
  min-width: 20px;
  cursor: pointer;
  flex-shrink: 0;
  margin: 6px 8px 6px 6px;
  align-self: flex-start;
  border-radius: 5px;
}

.event-page {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  position: relative;
}

.event-page .event-bg-image {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  max-width: 1080px;
  height: 100%;
  transform: translateX(-50%);
  z-index: 0;
  display: block;
}

.event-image-stack {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: var(--event42-hero-padding-top);
  padding-bottom: 25%;
  gap: 0;
  position: relative;
  z-index: 1;
}

.event-card {
  position: relative;
  width: var(--event42-card-width);
  max-width: 980px;
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
  margin: 0 auto;
  cursor: pointer;
  align-items: center;
}

.event-card + .event-card {
  margin-top: var(--event42-card-gap);
}

.event-card + .event-section-title-img {
  margin-top: var(--event42-title-gap-top);
}

.event-section-title-img + .event-card {
  margin-top: var(--event42-title-gap-bottom);
}

.event-card + .event-note-group {
  margin-top: var(--event42-title-gap-top);
}

.event-card-img {
  display: block;
  width: 100%;
  height: auto;
}

.event-image-checkbox {
  position: absolute;
  width: clamp(16px, 4vw, 35px);
  height: clamp(16px, 4vw, 35px);
  cursor: pointer;
  z-index: 2;
}

.checkbox-pos-a .event-image-checkbox {
  left: var(--event42-checkbox-a-left);
  top: var(--event42-checkbox-a-top);
}

.checkbox-pos-b .event-image-checkbox {
  left: var(--event42-checkbox-b-left);
  top: var(--event42-checkbox-b-top);
}

.event-product-meta {
  display: none;
}

.event-section-title-img {
  display: block;
  height: auto;
  margin: 0 auto;
  width: var(--event42-card-width);
}

.event-note-group {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 0;
  gap: clamp(10px, 2.1vw, 44px);
}

.event-note {
  display: block;
  height: auto;
}

.event-note--short {
  width: 44.4%;
}

.event-note--wide {
  width: 74.4%;
}

.event-bottom-box {
  display: block;
  width: 100%;
  height: auto;
  margin-top: clamp(16px, 3.2vw, 26px);
}

.event-page .event-reservation-button-container {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1080px;
  padding: 0;
  box-sizing: border-box;
  background-color: transparent;
  box-shadow: none;
  z-index: 20;
  display: none;
}

.event-page .event-reservation-button-container.active {
  display: block;
}

.event-page .event-reservation-button {
  background-color: transparent;
  padding: 0;
  border: none;
  width: 100%;
  max-width: 1080px;
  display: block;
}

.event-reservation-button-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}

.floating-event-menu {
  position: fixed;
  bottom: 100px;
  right: calc(50% - min(46vw, 270px) + 10px);
  z-index: 999;
  cursor: pointer;
  transition: transform 0.3s ease;
}

.floating-event-menu img {
  width: auto;
  height: auto;
  max-width: 70px;
  display: block;
  border-radius: 0;
}

.floating-event-menu:hover {
  transform: scale(1.05);
}

@media screen and (min-width: 1080px) {
    :root {
    --event42-checkbox-a-left: 5.5%;
    --event42-checkbox-a-top: clamp(36.3%, calc(-0.2404vw + 39.761%), 37.3%);
    --event42-checkbox-b-left: 5.5%;
    --event42-checkbox-b-top: clamp(12%, calc(-0.2404vw + 15.461%), 13%);
  }

  .event-section-title-img {
    width: 91%;
    margin-top: 40px;
  }

  .event-text-display {
    margin-bottom: 130px;
  }

  .floating-event-menu {
    bottom: 130px;
    right: calc(50% - 450px + 20px);
  }

  .floating-event-menu img {
    width: auto;
    height: auto;
    max-width: 120px;
  }

  .event-page .event-reservation-button {
    max-width: 1080px;
    margin: 0 auto;
  }

}

@media (max-width: 480px) {
  :root {
    --event42-card-gap: clamp(4px, 0.75vw, 8px);
    --event42-title-gap-top: clamp(18px, 3.6vw, 36px);
    --event42-title-gap-bottom: clamp(4px, 0.75vw, 8px);
    --event42-hero-padding-top: clamp(326px, calc(97.78vw + 32.67px), 502px);
  }

}

@media (max-width: 374.98px) {
  :root {
    --event42-checkbox-a-left: clamp(1%, calc(1.8182vw - 4.8182%), 2%);
    --event42-checkbox-a-top: clamp(29.5%, calc(2.7273vw + 20.7727%), 31%);
    --event42-checkbox-b-left: clamp(1%, calc(1.8182vw - 4.8182%), 2%);
    --event42-checkbox-b-top: clamp(5.3%, calc(3.0909vw - 4.5909%), 7%);
  }
}

@media (min-width: 375px) and (max-width: 424.98px) {
  :root {
    --event42-checkbox-a-left: clamp(2%, calc(1vw - 1.75%), 2.5%);
    --event42-checkbox-a-top: clamp(31%, calc(2.6vw + 21.25%), 32.3%);
    --event42-checkbox-b-left: clamp(2%, calc(1vw - 1.75%), 2.5%);
    --event42-checkbox-b-top: clamp(7%, calc(2vw - 0.5%), 8%);
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  :root {
    --event42-checkbox-a-left: clamp(4%, calc(0.5859vw - 0.5%), 5.5%);
    --event42-checkbox-a-top: clamp(35.3%, calc(0.2734vw + 33.2%), 36%);
    --event42-checkbox-b-left: clamp(4%, calc(0.5859vw - 0.5%), 5.5%);
    --event42-checkbox-b-top: clamp(11%, calc(0.3906vw + 8%), 12%);
  }
}

@media (min-width: 1024px) {
  :root {
    --event42-checkbox-a-left: 5.5%;
    --event42-checkbox-a-top: clamp(36%, calc(0.0721vw + 35.262%), 36.3%);
    --event42-checkbox-b-left: 5.5%;
    --event42-checkbox-b-top: 12%;
  }
}
