.zenvara-carousel {
  color: #fff;
  opacity: 0;
  position: absolute;
  inset: 0;
  z-index: 4;
  overflow: hidden;
  outline-offset: -3px;
  transition: opacity 240ms ease;
}

.zenvara-carousel.is-ready { opacity: 1; }
.home-v2-hero.has-dynamic-carousel > .home-v2-hero-media,
.home-v2-hero.has-dynamic-carousel > .home-v2-hero-inner { visibility: hidden; }

.zenvara-carousel__slide {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  inset: 0;
  transition: opacity 900ms ease;
}

.zenvara-carousel__slide.is-active { opacity: 1; pointer-events: auto; z-index: 1; }
.zenvara-carousel__slide > img { width: 100%; height: 100%; object-fit: cover; }
.zenvara-carousel__shade {
  background: linear-gradient(90deg, #071a22e0, #071a22a8 42%, #071a2229 78%), linear-gradient(#0000 42%, #071a225c);
  position: absolute;
  inset: 0;
}

.zenvara-carousel__inner { position: absolute; inset: 0; }
.zenvara-carousel__controls {
  align-items: center;
  display: flex;
  gap: 12px;
  position: absolute;
  z-index: 4;
  right: max(24px, calc((100vw - 1280px) / 2));
  bottom: 34px;
}

.zenvara-carousel__arrow,
.zenvara-carousel__indicator {
  border: 1px solid #ffffffa3;
  color: #fff;
  background: #0412197a;
  cursor: pointer;
}

.zenvara-carousel__arrow {
  border-radius: 50%;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  font-size: 29px;
  line-height: 1;
}

.zenvara-carousel__indicators { display: flex; gap: 9px; }
.zenvara-carousel__indicator { border-radius: 999px; width: 11px; height: 11px; padding: 0; }
.zenvara-carousel__indicator.is-active { background: #27be68; border-color: #27be68; width: 28px; }
.zenvara-carousel__arrow:focus-visible,
.zenvara-carousel__indicator:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

.zenvara-field-error { color: #ff9e97; font-size: 14px; line-height: 1.4; margin-top: 7px; }
.zenvara-form-status { min-height: 23px; color: #d7e5e2; font-size: 14px; line-height: 1.45; }
.zenvara-form-status.is-error { color: #ff9e97; }
.zenvara-form-status.is-success { color: #63dc98; }
form input[aria-invalid="true"], form textarea[aria-invalid="true"] { outline: 2px solid #ff8078; outline-offset: 2px; }
form button[disabled] { cursor: wait; opacity: .72; }

@media (max-width: 767px) {
  .zenvara-carousel__shade { background: linear-gradient(#071a2247, #071a22a8 33%, #071a22f0 97%); }
  .zenvara-carousel__slide > img { object-position: center; }
  .zenvara-carousel__controls { right: 20px; bottom: 16px; }
  .zenvara-carousel__arrow { width: 38px; height: 38px; }
  .home-v2-hero:not(.has-dynamic-carousel) > .home-v2-hero-inner .hero-title > span > span {
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .zenvara-carousel,
  .zenvara-carousel__slide { transition: none; }
}
