/* === SLIDE BASICS === */
.swiper.jomi-slider {
  position: relative; /* positions button & logo */
  /* background-color: var(--jomi-color-surface); */
  height: 100dvh;
  overflow: hidden; /* just in case */
}

/* === LOGO + INFO === */
.plura-wp-component .logo-info {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}

/* === LOGO === */
.plura-wp-component .logo-info #jomi25-logo {
	visibility: hidden; /* initial hidden state for animation */
}

.plura-wp-component .logo-info #jomi25-logo {
  display: block;
  width: min(700px, 80dvw);
  max-height: 60dvh; /* prevent overflow on short screens */
}

/* === INFO === */
.plura-wp-component .logo-info .info {
  color: var(--jomi-color-primary);
}

.plura-wp-component .logo-info .info .dates {
  color: var(--jomi-color-accent);
}

@media (max-width: 767px) {
  .plura-wp-component .logo-info .info {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
  }

  .plura-wp-component .logo-info :is(.dates, .location) {
    display: block;
    text-align: center;
  }
}

/* === SCROLL-DOWN === */

/* Position the control at the bottom center of the slide; wrapper gets the GSAP float */
.scroll-down-wrap {
  position: absolute;
  left: 50%;
  bottom: clamp(1.25rem, 2vw, 2rem);
  transform: translateX(-50%);
  will-change: transform;
  z-index: 2; /* keep above logo */
}

/* The button itself: no transforms; text centered */
.scroll-down {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 1rem; /* compact spacing */
  min-width: 140px;
  height: 48px; /* matches SVG viewBox height */
  color: var(--jomi-color-text);
  text-decoration: none;
  font-family: var(--jomi-font-family);
  font-size: var(--jomi-font-size-small);
  line-height: var(--jomi-line-height-small);
  -webkit-tap-highlight-color: transparent;
}

/* Keyboard accessibility: show focus ring on the anchor */
.scroll-down:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px var(--jomi-focus-ring);
  border-radius: 999px; /* matches capsule stroke shape */
}

/* Text label */
.scroll-down__text {
  position: relative;
  z-index: 1; /* sits over the stroke */
  font-weight: var(--jomi-font-weight-semibold);
}

/* SVG stroke covers the whole button box */
.scroll-down__stroke {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

/* Stroke style (animated via GSAP) */
.scroll-down__stroke rect {
  stroke: var(--jomi-color-primary);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  shape-rendering: geometricPrecision; /* crisper edges on many browsers */
}

/* Optional hover for text color change */
.scroll-down:hover .scroll-down__text {
  color: var(--jomi-color-primary);
}

/* === BACKGROUND === */
.plura-wp-component .jomi-images {
  height: 100%;
  position: relative;
}

.plura-wp-component .jomi-images::before,
.plura-wp-component .jomi-images .jomi-image {
  position: absolute;
}

.plura-wp-component .jomi-images::before {
  background: linear-gradient(
    to right,
    var(--jomi-color-surface) 50%,
    color-mix(in srgb, var(--jomi-color-surface) 0%, transparent) 75%
  );
  content: "";
  height: 100%;
  width: 100%;
  z-index: 2;
}

.plura-wp-component .jomi-images .jomi-image {
  height: auto;
  left: 50%;
  top: 50%;
  transform: translateY(-50%);
  width: 50%;
  z-index: auto;
}


@media (max-width: 980.999px) {

	.plura-wp-component .jomi-images {
		display: none;
	}

}



/* === STRUCTURE 'ORDER' === */
.plura-wp-component .jomi-images {
  z-index: 0;
}

.plura-wp-component .scroll-down {
  z-index: 1;
}

.plura-wp-component .logo-info {
  z-index: 2;
}


