/* One alignment and typography system for all homepage slides. */
.page-home .banner.mySwiper {
  --home-hero-title-size: 36px;
  --home-hero-eyebrow-size: 16px;
  --home-hero-body-size: 18px;
  height: 520px !important;
}
.page-home .banner.mySwiper .item.swiper-slide {
  height: 100% !important;
  box-sizing: border-box;
  /* Reserve space for navigation and pagination, then center actual content. */
  padding: 96px 0 48px !important;
  display: flex;
  align-items: center;
  background-position: center !important;
}
@media (min-width: 1101px) {
  /* Slide 2: retain the existing 2560×724 background's scale and lower its focus. */
  .page-home .banner.mySwiper .item.index-3.swiper-slide {
    background-size: auto;
    background-position: center calc(50% + 36px) !important;
  }
}
.page-home .banner.mySwiper .item > .fecify-home-hero__layout {
  position: relative;
  z-index: 1;
  height: auto;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 48px;
  align-items: center;
}
.fecify-home-hero__copy {
  position: relative;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.page-home .banner.mySwiper .fecify-saas-hero__modes {
  grid-auto-rows: 1fr;
}
.page-home .banner.mySwiper .fecify-home-hero__title {
  margin: 0; max-width: none;
  font-size: var(--home-hero-title-size); line-height: 1.35; font-weight: 600; color: #fff;
  text-wrap: balance;
}
.page-home .banner.mySwiper .fecify-home-hero__eyebrow {
  margin: 0;
  font-size: var(--home-hero-eyebrow-size); line-height: 1.5; font-weight: 500; color: #fff;
}
.page-home .banner.mySwiper .fecify-home-hero__description {
  margin: 0; max-width: 520px;
  font-size: var(--home-hero-body-size); line-height: 1.75; font-weight: 400; color: #fff;
  text-wrap: pretty;
}
@media (max-width: 1100px) {
  .page-home .banner.mySwiper { --home-hero-title-size: 32px; --home-hero-body-size: 17px; height: 560px !important; }
  .page-home .banner.mySwiper .item > .fecify-home-hero__layout { grid-template-columns: minmax(0, 1fr) 330px; gap: 28px; }
  /* Keep copy above the existing illustration when the background is cropped. */
  .page-home .banner.mySwiper .item:not(.fecify-saas-hero) {
    align-items: flex-start;
    padding-top: 112px !important;
  }
}
@media (max-width: 900px) {
  .page-home .banner.mySwiper { height: 660px !important; }
  .page-home .banner.mySwiper .item > .fecify-home-hero__layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 767px) {
  .page-home .banner.mySwiper { --home-hero-title-size: 28px; --home-hero-eyebrow-size: 14px; --home-hero-body-size: 16px; height: 660px !important; }
}
