/**
 * CV Hero Slider — fill the viewport by dropping Breakdance's boxed
 * .section-container box (display:contents) so the slider is a child of the section.
 */
.breakdance section.bde-section:has(.cv-hero-slider),
.breakdance .bde-section:has(.cv-hero-slider) {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.breakdance section.bde-section:has(.cv-hero-slider) > .section-container,
.breakdance .bde-section:has(.cv-hero-slider) > .section-container,
.breakdance .section-container:has(> .cv-hero-slider) {
  display: contents !important;
}

.breakdance .cv-hero-slider,
.cv-hero-slider {
  display: block !important;
  flex: none !important;
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

.breakdance .cv-hero-slider .cv-hero-slider__wrap,
.breakdance .cv-hero-slider .breakdance-swiper-wrapper {
  --swiper-padding-h: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.breakdance .cv-hero-slider .cv-hero-slider__wrap,
.breakdance .cv-hero-slider .breakdance-swiper-wrapper,
.breakdance .cv-hero-slider .swiper,
.breakdance .cv-hero-slider .swiper-slide,
.breakdance .cv-hero-slider .cv-hero-slide__inner,
.breakdance .cv-hero-slider .cv-hero-slide__media,
.breakdance .cv-hero-slider .cv-hero-slide__image {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* Phone + iPad: ignore desktop offsets / width / alignment — always center in the slide. */
@media (max-width: 1024px) {
  .breakdance .cv-hero-slider .cv-hero-slide__inner,
  .breakdance .cv-hero-slider .swiper-slide,
  .cv-hero-slider .cv-hero-slide__inner,
  .cv-hero-slider .swiper-slide {
    overflow: hidden !important;
  }
  .breakdance .cv-hero-slider .cv-hero-slide__shell,
  .cv-hero-slider .cv-hero-slide__shell {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    overflow: hidden !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
  .breakdance .cv-hero-slider .swiper-slide .cv-hero-slide__inner .cv-hero-slide__shell .cv-hero-slide__content,
  .breakdance .cv-hero-slider .cv-hero-slide__content,
  .breakdance .cv-hero-slider .cv-hero-slide__content[data-block-align],
  .cv-hero-slider .cv-hero-slide__content,
  .cv-hero-slider .cv-hero-slide__content[data-block-align] {
    --cv-hero-content-width: 100% !important;
    --cv-hero-ox: 0px !important;
    --cv-hero-oy: 0px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-self: center !important;
    align-items: center !important;
    text-align: center !important;
    transform: none !important;
    box-sizing: border-box !important;
  }
  .breakdance .cv-hero-slider .swiper-slide .cv-hero-slide__title,
  .breakdance .cv-hero-slider .swiper-slide .cv-hero-slide__description,
  .breakdance .cv-hero-slider .swiper-slide .cv-hero-slide__description p,
  .breakdance .cv-hero-slider .swiper-slide .cv-hero-slide__actions,
  .breakdance .cv-hero-slider .cv-hero-slide__title,
  .breakdance .cv-hero-slider .cv-hero-slide__description,
  .breakdance .cv-hero-slider .cv-hero-slide__description p,
  .breakdance .cv-hero-slider .cv-hero-slide__actions,
  .breakdance .cv-hero-slider [data-align],
  .cv-hero-slider .cv-hero-slide__title,
  .cv-hero-slider .cv-hero-slide__description,
  .cv-hero-slider .cv-hero-slide__description p,
  .cv-hero-slider .cv-hero-slide__actions,
  .cv-hero-slider [data-align] {
    --cv-hero-title-ox: 0px !important;
    --cv-hero-title-oy: 0px !important;
    --cv-hero-desc-ox: 0px !important;
    --cv-hero-desc-oy: 0px !important;
    --cv-hero-btn-ox: 0px !important;
    --cv-hero-btn-oy: 0px !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    box-sizing: border-box !important;
  }
  .breakdance .cv-hero-slider .cv-hero-slide__actions,
  .cv-hero-slider .cv-hero-slide__actions {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
  }
  .breakdance .cv-hero-slider .cv-hero-slide__button,
  .breakdance .cv-hero-slider .cv-hero-slide__description a,
  .cv-hero-slider .cv-hero-slide__button,
  .cv-hero-slider .cv-hero-slide__description a {
    width: auto !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    white-space: normal !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}

/* Hide nav arrows on mobile — Breakdance caches element CSS, so keep this in theme. */
@media (max-width: 1023.98px) {
  .breakdance .cv-hero-slider .cv-hero-slider__prev,
  .breakdance .cv-hero-slider .cv-hero-slider__next,
  .cv-hero-slider .cv-hero-slider__prev,
  .cv-hero-slider .cv-hero-slider__next,
  button.cv-hero-slider__prev,
  button.cv-hero-slider__next {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}

