.footer {
  position: relative;
  padding-top: 60px;
  color: white;
}

@media screen and (max-width: 1919px) {
  .footer {
    padding-top: 60px;
    margin-top: 30px;
  }
}

.footer-bottom-wrapper {
  z-index: 1;
  position: relative;
  background: rgba(255, 255, 255, 0.03);
  padding: 10px 0;
  margin-top: 16px;
}


.footer-wave-wrapper {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.footer-wave-wrapper svg {margin: 0 auto}

.footer-top {
  display: flex;
  justify-content: space-between;
  padding-top: 30px;
  z-index: 1;
  position: relative;
}

.footer-navs {
  display: flex;
  gap: 40px;
}

.footer-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.footer-list .list-item a {
  padding: 4px 5px;
  display: block;
}


.footer-newsletter__title {
  font-weight: 400;
  font-size: var(--font-size-body-sm);
  margin-bottom: 10px;
}

.newsletter-form {
  display: flex;
  background: white;
  /* padding: 4px; */
  border-radius: 6px;
  overflow: hidden;
}

.newsletter-form .submit-button {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  aspect-ratio: 1;
  flex-shrink: 0;
  width: 30px;
  background: #41639C;
  color: white;
  border-radius: 4px;
  margin: 4px;
}

.newsletter-form .submit-button input {
  width: 0;
  height: 0;
  padding: 0;
  visibility: hidden;
  position: absolute;
}

.newsletter-form input#newsletter {
  border: unset;
  flex: 1;
  display: block;
  width: 100%;
  height: 100%;
  outline: unset;
  padding: 4px 10px;
}

.newsletter-form label {
  flex: 1;
}

.newsletter-form .newsletter-desc {
  margin-top: 4px;
}

.footer-bottom {
  display: flex;
  align-items: center;
  color: white;
  z-index: 1;
  position: relative;
}

.footer-bottom > * {
  flex: 1;
}

.footer .social-icons {
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
  gap: 14px;
}

.footer .social-item a {
  text-decoration: unset;
  background: #112D55;
  color: white;
  width: 32px;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--extra-light-gray);
  border-radius: 6px;
}

.footer-desc {
  text-align: start;
}

.footer .development {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: unset;
  color: inherit;
  justify-content: end;
}


.newsletter-desc {
  margin-top: 4px;
}









/* Horizontal motion */
@keyframes services-drift {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-140px);
  }
}

/* Vertical motion */
@keyframes services-float {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(20px);
  }
}

/* Back layer */
#services-waves-3 {
  animation:
          services-drift 30s linear infinite,
          services-float 14s ease-in-out infinite;
}

/* Middle layer */
#services-waves-2 {
  animation:
          services-drift 22s linear infinite reverse,
          services-float 10s ease-in-out infinite;
}

/* Front layer */
#services-waves-1 {
  animation:
          services-drift 14s linear infinite,
          services-float 7s ease-in-out infinite;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {

  #services-waves-1,
  #services-waves-2,
  #services-waves-3 {
    animation: none;
  }
}



@media (max-width: 767px) {
  .footer-list {display: contents;}
  .footer-navs-item {display: contents;}
  .footer-navs {flex-direction: column;gap: 5px;max-height: 40px;overflow: hidden;transition: .4s;margin-bottom: 20px;/* border: 1px solid; *//* border-radius: var(--radius-1); */padding-bottom: 3px;}
  .footer-top {flex-direction: column;}
  .footer-navs-title.mobile-only {display: flex;align-items: center;justify-content: space-between;padding: 10px;/* border: 1px solid; *//* border-radius: var(--radius-1); *//* padding: 10px; */}
  .footer-navs.active {max-height: 500px;}
  .footer {padding-bottom: 80px;margin-top: 0;}
  .footer-bottom {font-size: 1.1rem;}
  .footer-list .list-item a {padding-inline: 10px}

  .footer .social-item a {
    width: 25px;
    font-size: 12px;
  }

  .footer .social-icons {
    gap: 6px;
  }

  .footer .development img {
    max-width: 36px;
  }

}


@media(max-width:450px) {
  .footer-bottom.app-wrapper {
    flex-wrap: wrap;
    gap: 20px;
}

.footer-desc {
    flex: 1;
    width: 100%;
}

.footer-bottom > * {
    flex: auto;
}

.footer .social-icons {
    justify-content: start;
}
}