/*--------------------- Footer ---------------------*/
footer {
  width: 100%;
  background-color: var(--black);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

footer > * {
  color: var(--white);
}

/* Footer Top Container */
footer .top-wrapper {
  width: 80%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  align-items: flex-start;
  margin: 20px;
  padding: 20px 100px;
}

footer .top-wrapper div {
  margin: 20px;
  min-width: 100px;
  max-width: 300px;
}

footer .top-wrapper h1 {
  font-size: 1.5rem;
  font-weight: 400;
  margin-bottom: 20px;
}

footer .top-wrapper ul {
  list-style: none;
}

footer .top-wrapper div:not(.contact) ul li {
  cursor: pointer;
  flex-wrap: nowrap;
}

footer .top-wrapper .social ul li a,
footer .top-wrapper .contact ul li a {
  color: inherit;
  text-decoration: inherit; /* no underline */
}

footer .top-wrapper .contact ul li a:hover {
  text-decoration: underline;
}

footer .top-wrapper ul li,
footer .top-wrapper p {
  font-size: 1.1rem;
  font-weight: 100;
  margin-top: 10px;
}

footer .top-wrapper .social ul li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 15px;
}

footer .top-wrapper ul li img {
  width: 20px;
  height: 20px;
  margin-right: 10px;
}

footer .top-wrapper .newsletter form {
  margin-top: 20px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}

footer .top-wrapper .newsletter form input[type='email'] {
  height: 50px;
  width: 100%;
  padding: 10px 15px;
  border: 1px solid var(--light-grey);
  border-radius: 20px;
}

footer .top-wrapper .newsletter form input[type='submit'] {
  position: absolute;
  /* height: 30px; */
  padding: 10px 15px;
  right: 5px;
  top: 5px;
  border: 1px solid var(--dark-grey);
  color: var(--white);
  background: linear-gradient(to right, #b91372, #991b2a);
  border-radius: 20px;
  font-size: 1rem;
  font-weight: 400;
  cursor: pointer;
}

/* Footer Bottom Container*/
footer .bottom-wrapper {
  width: 80%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  padding: 30px 100px;
  position: relative;
  border-top: 2px solid var(--dark-grey);
}

footer .bottom-wrapper .logo {
  font-weight: bold;
  position: relative;
}

footer .bottom-wrapper .logo img {
  position: absolute;
  left: 0;
  top: -15px;
}

footer .bottom-wrapper .logo h1 {
  font-size: 1.5rem;
  font-family: 'BankGothic', sans-serif;
  margin-left: 70px;
  font-weight: 400;
}

footer .bottom-wrapper .copyright {
  font-size: 1rem;
  font-weight: 100;
  line-height: 1.5;
}

/*--------------------- Media Queries ---------------------*/
/* Tablets */
@media screen and (max-width: 1200px) {
  footer .top-wrapper {
    padding: 0;
    justify-content: flex-start;
  }

  footer .bottom-wrapper {
    padding: 20px 0px;
  }

  footer .bottom-wrapper .logo {
    margin-top: 20px;
  }

  footer .bottom-wrapper .copyright {
    margin-top: 20px;
    text-align: center;
  }
}

/* Smartphones */
@media screen and (max-width: 768px) {
  footer .top-wrapper .newsletter form {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Success Newsletter Subscription */
.success-subscription {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.success-subscription .success-image {
  margin-bottom: 20px;
}

.success-subscription .success-image-active {
  animation: bounce-out-top 2s both 3s;
}

@keyframes bounce-out-top {
  0% {
    transform: translateY(0);
    animation-timing-function: ease-out;
  }
  5% {
    transform: translateY(-30px);
    animation-timing-function: ease-in;
  }
  15% {
    transform: translateY(0);
    animation-timing-function: ease-out;
  }
  25% {
    transform: translateY(-38px);
    animation-timing-function: ease-in;
  }
  38% {
    transform: translateY(0);
    animation-timing-function: ease-out;
  }
  52% {
    transform: translateY(-75px);
    animation-timing-function: ease-in;
  }
  70% {
    transform: translateY(0);
    animation-timing-function: ease-out;
  }
  85% {
    opacity: 1;
  }
  100% {
    transform: translateY(-800px);
    opacity: 0;
  }
}

.success-subscription h1 {
  color: #25ae88;
  z-index: 10000;
  text-align: center;
  animation: slide-in-fwd-center 3s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

@keyframes slide-in-fwd-center {
  0% {
    transform: translateZ(-1400px);
    opacity: 0;
  }
  100% {
    transform: translateZ(0);
    opacity: 1;
  }
}

/* Animate SVG*/
svg .svg-elem-1 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 0.8s;
}

svg.active .svg-elem-1 {
  fill: rgb(51, 77, 92);
}

svg .svg-elem-2 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 0.9s;
}

svg.active .svg-elem-2 {
  fill: rgb(219, 187, 0);
}

svg .svg-elem-3 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1s;
}

svg.active .svg-elem-3 {
  fill: rgb(219, 187, 0);
}

svg .svg-elem-4 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.1s;
}

svg.active .svg-elem-4 {
  fill: rgb(219, 187, 0);
}

svg .svg-elem-5 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.2000000000000002s;
}

svg.active .svg-elem-5 {
  fill: rgb(219, 187, 0);
}

svg .svg-elem-6 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.3s;
}

svg.active .svg-elem-6 {
  fill: rgb(219, 187, 0);
}

svg .svg-elem-7 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.4000000000000001s;
}

svg.active .svg-elem-7 {
  fill: rgb(219, 187, 0);
}

svg .svg-elem-8 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.5s;
}

svg.active .svg-elem-8 {
  fill: rgb(234, 99, 7);
}

svg .svg-elem-9 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.6s;
}

svg.active .svg-elem-9 {
  fill: rgb(223, 234, 220);
}

svg .svg-elem-10 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.7000000000000002s;
}

svg.active .svg-elem-10 {
  fill: rgb(206, 88, 0);
}

svg .svg-elem-11 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.8s;
}

svg.active .svg-elem-11 {
  fill: rgb(234, 99, 7);
}

svg .svg-elem-12 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 1.9000000000000001s;
}

svg.active .svg-elem-12 {
  fill: rgb(219, 187, 0);
}

svg .svg-elem-13 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 2s;
}

svg.active .svg-elem-13 {
  fill: rgb(255, 219, 41);
}

svg .svg-elem-14 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 2.1s;
}

svg.active .svg-elem-14 {
  fill: rgb(255, 227, 110);
}

svg .svg-elem-15 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 2.2s;
}

svg.active .svg-elem-15 {
  fill: rgb(225, 122, 45);
}

svg .svg-elem-16 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 2.3s;
}

svg.active .svg-elem-16 {
  fill: rgb(244, 224, 40);
}

svg .svg-elem-17 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.19, 1, 0.22, 1) 2.4000000000000004s;
}

svg.active .svg-elem-17 {
  fill: rgb(255, 255, 255);
}
