/* Proximo: keep existing Elementor heading typography and hero placement. */
.proximo-hero-rotator {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.proximo-hero-rotator > .pxh-slide {
  grid-area: 1 / 1;
  display: block;
  min-width: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transform: translate3d(0, 25px, 0);
  transition: opacity 700ms ease, transform 700ms ease, visibility 700ms;
  pointer-events: none;
  line-height: inherit;
  font-size: inherit;
  font-family: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

.proximo-hero-rotator:not(.pxh-ready) > .pxh-slide {
  transition: none !important;
}

.proximo-hero-rotator > .pxh-slide.pxh-active {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0);
  z-index: 2;
}

.proximo-hero-rotator > .pxh-slide.pxh-leaving {
  opacity: 0;
  visibility: visible;
  transform: translate3d(0, -25px, 0);
  z-index: 1;
}

/* Two deliberate lines on desktop; line wrapping is flexible on mobiles. */
.proximo-hero-rotator .pxh-line { display: block; white-space: nowrap; }

/* The two specialist course headlines are slightly longer than the others. */
.proximo-hero-rotator > .pxh-slide-3 { font-size: 0.95em; }
.proximo-hero-rotator > .pxh-slide-4 { font-size: 0.92em; }
.proximo-hero-rotator > .pxh-slide-5 { font-size: 0.88em; }

@media (max-width: 767px) {
  .proximo-hero-rotator .pxh-line { display: inline; white-space: normal; }
  .proximo-hero-rotator .pxh-line + .pxh-line::before { content: " "; white-space: pre; }
  .proximo-hero-rotator > .pxh-slide-3,
  .proximo-hero-rotator > .pxh-slide-4,
  .proximo-hero-rotator > .pxh-slide-5 { font-size: 1em; }
}

@media (prefers-reduced-motion: reduce) {
  .proximo-hero-rotator > .pxh-slide { transition: none !important; transform: none !important; }
}
