.index-hero__slide {
  height: 34.25em;
}
@media (max-width: 1024px) {
  .index-hero__slide {
    height: 23.75em;
  }
}
@media (max-width: 767px) {
  .index-hero__slide {
    height: auto;
  }
}
.index-hero__slide-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}
.index-hero__slide-color-bg {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}
.index-hero__slide-color-bg_green {
  background-color: #004D47;
}
.index-hero__slide-img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center bottom;
}
@media (max-width: 1024px) {
  .index-hero__slide-img {
    object-position: right bottom;
  }
}
@media (max-width: 767px) {
  .index-hero__slide-img {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
  }
}
.index-hero__slide-img_left {
  display: none;
}
@media (max-width: 1024px) {
  .index-hero__slide-img_left {
    display: block;
    object-position: left bottom;
  }
}
@media (max-width: 767px) {
  .index-hero__slide-img_left {
    display: none;
  }
}
.index-hero__container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
}
@media (max-width: 1024px) {
  .index-hero__container {
    padding: 0 1.5em;
  }
}
@media (max-width: 767px) {
  .index-hero__container {
    padding: 0 1em 2.3125em;
  }
}
.index-hero__slide:nth-child(3) .index-hero__container {
  align-items: center;
  text-align: center;
}
@media (max-width: 1024px) {
  .index-hero__title {
    font-size: 3em;
    line-height: 1.2;
  }
}
@media (max-width: 767px) {
  .index-hero__title {
    font-size: 2.5em;
    line-height: 1.3;
  }
}
.index-hero__title_green {
  color: #004D47;
}
.index-hero__title_gold {
  color: #EFB666;
}
.index-hero__slide:first-child .index-hero__title {
  margin-top: 0.8906em;
}
@media (max-width: 1024px) {
  .index-hero__slide:first-child .index-hero__title {
    margin-top: 0.5em;
  }
}
@media (max-width: 767px) {
  .index-hero__slide:first-child .index-hero__title {
    margin-top: -3.15em;
  }
}
.index-hero__slide:nth-child(2) .index-hero__title {
  margin-top: 1.0313em;
}
@media (max-width: 1024px) {
  .index-hero__slide:nth-child(2) .index-hero__title {
    margin-top: 0.5em;
  }
}
@media (max-width: 767px) {
  .index-hero__slide:nth-child(2) .index-hero__title {
    margin-top: -2.7em;
  }
}
.index-hero__slide:nth-child(3) .index-hero__title {
  margin-top: 1.4063em;
}
@media (max-width: 1024px) {
  .index-hero__slide:nth-child(3) .index-hero__title {
    margin-top: 0.375em;
    max-width: 8.3333em;
  }
  .index-hero__slide:nth-child(3) .index-hero__title br {
    display: none;
  }
}
@media (max-width: 767px) {
  .index-hero__slide:nth-child(3) .index-hero__title {
    margin-top: -2.55em;
  }
}
.index-hero__description {
  font-size: 1.125em;
  max-width: 23em;
  color: #191A1D;
}
@media (max-width: 1024px) {
  .index-hero__description {
    font-size: 1em;
  }
}
@media (max-width: 767px) {
  .index-hero__description {
    font-size: 1.125em;
  }
}
.index-hero__slide:first-child .index-hero__description {
  margin-top: 1.2222em;
}
@media (max-width: 1024px) {
  .index-hero__slide:first-child .index-hero__description {
    margin-top: 1em;
  }
}
@media (max-width: 767px) {
  .index-hero__slide:first-child .index-hero__description {
    font-size: 1em;
  }
}
.index-hero__slide:nth-child(2) .index-hero__description {
  margin-top: 1.7778em;
}
@media (max-width: 1024px) {
  .index-hero__slide:nth-child(2) .index-hero__description {
    margin-top: 1.5em;
    max-width: 19em;
  }
}
@media (max-width: 767px) {
  .index-hero__slide:nth-child(2) .index-hero__description {
    margin-top: 0.8889em;
  }
}
.index-hero__slide:nth-child(3) .index-hero__description {
  font-size: 1.25em;
  margin-top: 1.1em;
  color: #FFFFFF;
  font-weight: 500;
}
@media (max-width: 1024px) {
  .index-hero__slide:nth-child(3) .index-hero__description {
    font-weight: 400;
    font-size: 1em;
    margin-top: 1.5em;
    max-width: 16.25em;
  }
}
@media (max-width: 767px) {
  .index-hero__slide:nth-child(3) .index-hero__description {
    font-size: 1em;
    margin-top: 1em;
    max-width: 19em;
  }
}
.index-hero__description strong {
  font-weight: 700;
}
.index-hero__button {
  margin: 2em 0 0;
}
@media (max-width: 1024px) {
  .index-hero__button {
    margin: 1.5em 0 0;
  }
}
@media (max-width: 767px) {
  .index-hero__button {
    margin: 1em 0 0;
    width: 100%;
  }
}
.index-hero .swiper-pagination-bullet {
  width: 0.375rem;
  height: 0.375rem;
  background: #E9E2D2;
  opacity: 1;
  position: relative;
}
.index-hero .swiper-pagination-bullet::before {
  content: "";
  position: absolute;
  inset: -0.4375rem;
}
.index-hero .swiper-pagination-bullet-active {
  width: 2.125rem;
  background: #EFB666;
  border-radius: 0.375rem;
}
.index-hero .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.index-hero .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.5rem;
}
.index-hero .swiper-horizontal > .swiper-pagination-bullets,
.index-hero .swiper-pagination-bullets.swiper-pagination-horizontal,
.index-hero .swiper-pagination-custom,
.index-hero .swiper-pagination-fraction {
  bottom: 1.5625em;
}
@media (max-width: 1024px) {
  .index-hero .swiper-horizontal > .swiper-pagination-bullets,
  .index-hero .swiper-pagination-bullets.swiper-pagination-horizontal,
  .index-hero .swiper-pagination-custom,
  .index-hero .swiper-pagination-fraction {
    bottom: 0.5em;
  }
}
@media (max-width: 767px) {
  .index-hero .swiper-horizontal > .swiper-pagination-bullets,
  .index-hero .swiper-pagination-bullets.swiper-pagination-horizontal,
  .index-hero .swiper-pagination-custom,
  .index-hero .swiper-pagination-fraction {
    bottom: 0.625em;
  }
}

.index-features {
  background-color: #FAF7EE;
  padding: 4em 0 5em;
}
@media (max-width: 1024px) {
  .index-features {
    padding: 3.4375em 0;
  }
}
@media (max-width: 767px) {
  .index-features {
    padding: 2.5em 0;
  }
}
.index-features__title {
  color: #004D47;
  text-align: center;
}
@media (max-width: 1024px) {
  .index-features__title {
    font-size: 2em;
  }
}
.index-features__list {
  display: flex;
  justify-content: space-between;
  margin: 4.5625em 0 0;
}
@media (max-width: 1024px) {
  .index-features__list {
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 3em 0;
    margin: 3.1875em 0 0;
  }
}
@media (max-width: 767px) {
  .index-features__list {
    margin: 2em 0 0;
  }
}
.index-features__item {
  flex: 0 0 31.24%;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (max-width: 1024px) {
  .index-features__item {
    flex: 0 0 45%;
  }
}
@media (max-width: 767px) {
  .index-features__item {
    flex: 0 0 100%;
  }
}
.index-features__image-wrapper {
  width: 77.1941%;
  position: relative;
  margin: 0.8em 0 0;
}
.index-features__image-wrapper::after {
  content: "";
  display: block;
  padding-bottom: 100%;
}
@media (max-width: 1024px) {
  .index-features__image-wrapper {
    width: 90%;
    margin: 0.5em 0 0;
  }
}
.index-features__image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.index-features__item-title {
  color: #191A1D;
}
.index-features__description {
  color: #373A3F;
  margin: 0.875em 0 0;
  flex: 1;
  display: flex;
  align-items: center;
}
.index-features__button {
  margin: 1.5em 0 0;
}

.index-running-line {
  width: 100%;
  overflow: hidden;
  background-color: #FAF7EE;
  border-width: 1px 0;
  border-style: solid;
  border-color: #555960;
  padding: 1.5em 0;
  position: relative;
}
.index-running-line__track {
  display: flex;
}
.index-running-line__content {
  display: flex;
  gap: 1.25em;
  list-style: none;
  padding: 0;
  margin: 0;
  white-space: nowrap;
  animation: running-line 10s infinite linear;
}
.index-running-line__item {
  text-transform: uppercase;
  color: #555960;
  margin-bottom: 0;
}

.index-network {
  background-color: #FAF7EE;
  padding: 6.75em 0 5.8em;
}
@media (max-width: 1024px) {
  .index-network {
    padding: 3.4375em 0 22.2em;
  }
}
@media (max-width: 767px) {
  .index-network {
    padding: 2.5em 0 21.5em;
  }
}
.index-network__container {
  position: relative;
}
@media (max-width: 1024px) {
  .index-network__container {
    display: flex;
    flex-direction: column-reverse;
  }
}
.index-network__image-wrap {
  width: 36.2015%;
  position: absolute;
  bottom: 0;
  left: 8%;
  transform: translateY(10em);
}
@media (max-width: 1024px) {
  .index-network__image-wrap {
    width: 30em;
    left: 5.5em;
    transform: translateY(101.5%);
  }
}
@media (max-width: 767px) {
  .index-network__image-wrap {
    width: 20em;
    left: 1.75em;
    transform: translateY(110%);
  }
}
.index-network__image {
  width: 100%;
  display: block;
}
.index-network__content {
  width: 43.5%;
  margin-left: calc(43.5% + 3em);
}
@media (max-width: 1024px) {
  .index-network__content {
    width: 100%;
    margin-left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}
.index-network__title {
  color: #004D47;
  margin: 0;
}
@media (max-width: 1024px) {
  .index-network__title {
    font-size: 2em;
  }
}
.index-network__subtitle {
  color: #BA874C;
  margin: 0.8em 0 0;
}
.index-network__description {
  font-size: 1.125em;
  color: #373A3F;
  margin: 0.8889em 0 0;
}
@media (max-width: 1024px) {
  .index-network__description {
    max-width: 94%;
  }
}
.index-network__button {
  margin: 1.85em 0 0;
}
@media (max-width: 1024px) {
  .index-network__button {
    margin: 2em 0 0;
  }
}

.index-businesses {
  padding: 10.125em 0 4.85em;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .index-businesses {
    padding: 16em 0 3.5em;
  }
}
@media (max-width: 767px) {
  .index-businesses {
    padding: 4.5em 0 2.5em;
  }
}
.index-businesses__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.index-businesses__title-wrap {
  position: relative;
}
.index-businesses__title {
  color: #004D47;
  margin: 0;
}
@media (max-width: 1024px) {
  .index-businesses__title {
    max-width: 12.0625em;
    font-size: 2em;
  }
}
@media (max-width: 767px) {
  .index-businesses__title {
    max-width: 10em;
  }
}
.index-businesses__hearts, .index-businesses__sun {
  position: absolute;
}
@media (max-width: 767px) {
  .index-businesses__hearts, .index-businesses__sun {
    display: none;
  }
}
.index-businesses__hearts {
  width: 5.75em;
  top: -39%;
  left: -24%;
}
@media (max-width: 1439px) {
  .index-businesses__hearts {
    left: -20%;
  }
}
@media (max-width: 1024px) {
  .index-businesses__hearts {
    left: -32%;
    top: -26%;
  }
}
@media (max-width: 767px) {
  .index-businesses__hearts {
    left: -2em;
    top: -4em;
    transform: scale(0.5);
  }
}
.index-businesses__sun {
  width: 10.4375em;
  top: -112%;
  right: -33.5%;
}
@media (max-width: 1439px) {
  .index-businesses__sun {
    right: -29.5%;
  }
}
@media (max-width: 1024px) {
  .index-businesses__sun {
    right: -44.5%;
    top: -82%;
  }
}
@media (max-width: 767px) {
  .index-businesses__sun {
    right: -4.5em;
    top: -8em;
    transform: scale(0.5);
  }
}
.index-businesses__description {
  font-size: 1.375em;
  color: #373A3F;
  margin: 1.4545em 0 0;
}
@media (max-width: 1024px) {
  .index-businesses__description {
    max-width: 29.0909em;
    margin: 1.8181em 0 0;
  }
  .index-businesses__description br {
    display: none;
  }
}
@media (max-width: 767px) {
  .index-businesses__description {
    font-size: 1.125em;
    margin: 1.375em 0 0;
  }
}
.index-businesses__list {
  margin: 4em 0 0;
  display: flex;
  width: 100%;
  justify-content: space-between;
  gap: 1.5em;
}
@media (max-width: 1024px) {
  .index-businesses__list {
    flex-wrap: wrap;
    max-width: 36.75em;
    margin: 2em 0 0;
  }
}
@media (max-width: 767px) {
  .index-businesses__list {
    gap: 1em;
    margin: 1.375em 0 0;
  }
}
.index-businesses__item {
  flex: 1;
  position: relative;
}
@media (max-width: 1024px) {
  .index-businesses__item {
    flex: 0 0 calc(33.3333% - 1em);
  }
}
@media (max-width: 767px) {
  .index-businesses__item {
    flex: 0 0 calc(50% - 0.5em);
  }
}
.index-businesses__item::after {
  content: "";
  display: block;
  padding-bottom: 100%;
}
.index-businesses__logo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.index-blog {
  padding: 5em 0 4.95em;
}
@media (max-width: 1024px) {
  .index-blog {
    padding: 3.5em 0;
  }
}
@media (max-width: 767px) {
  .index-blog {
    padding: 2.875em 0 2.625em;
  }
}

.index-instagram {
  background-color: #E5BEA0;
  padding: 3.875em 0 4em;
}
@media (max-width: 1024px) {
  .index-instagram {
    padding: 3.5em 0 0;
  }
}
@media (max-width: 767px) {
  .index-instagram {
    padding: 1.875em 0 0;
  }
}
@media (max-width: 1024px) {
  .index-instagram__container {
    padding: 0;
  }
}
.index-instagram__title {
  color: #004D47;
  text-transform: uppercase;
}
@media (max-width: 1024px) {
  .index-instagram__title {
    padding: 0 2rem;
  }
}
@media (max-width: 767px) {
  .index-instagram__title {
    padding: 0 1rem;
    font-size: 1.5em;
  }
}
.index-instagram__posts {
  margin: 1.5em 0 0;
  display: flex;
  justify-content: space-between;
  gap: 1.5em;
}
@media (max-width: 1024px) {
  .index-instagram__posts {
    overflow: auto;
    padding: 0 2em 3.5em;
  }
}
@media (max-width: 767px) {
  .index-instagram__posts {
    padding: 0 1em 1.375em;
    margin: 1.3125em 0 0;
    gap: 1em;
  }
}
.index-instagram__post {
  border-radius: 0.5rem;
  overflow: hidden;
  flex: 1;
}
@media (max-width: 1024px) {
  .index-instagram__post {
    flex: 0 0 calc(41.75% - 0.75em);
  }
}
@media (max-width: 767px) {
  .index-instagram__post {
    flex: 0 0 calc(85% - 0.5em);
  }
}
@media (max-height: 450px) and (orientation: landscape) {
  .index-instagram__post {
    flex: 0 0 calc(50% - 0.75em);
  }
}
.index-instagram__post-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  aspect-ratio: 1;
}

@keyframes running-line {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
