.footer {
   font-family: var(--geologica);
   background: var(--dark-blue);
   position: relative;
   overflow: hidden;
   color: var(--text-gray);
   padding-bottom: 40px;
   z-index: 1;
}

.footer-back {
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   object-fit: cover;
   object-position: bottom;
   z-index: -1;
}

.footer-back img {
   vertical-align: bottom;
   width: 100%;
}

.footer-top {
   padding: 40px 0;
   margin-right: 52px;
}

.footer-top__wrapper {
   display: flex;
   align-items: center;
   flex-wrap: wrap;
}

.footer-top__inner {
   display: flex;
   flex-direction: column;
}

.footer-top__inner-top {
   margin-bottom: 8px;
   display: flex;
   align-items: center;
   padding-right: 11px;
   justify-content: space-between;
   flex-wrap: wrap;
}

.footer-top__inner-bot {
   display: flex;
   align-items: center;
   justify-content: end;
   flex-wrap: wrap;
}

.footer__logo {
   width: 190px;
   height: 44px;
   min-width: 190px;
   min-height: 44px;
}

.footer__logo img {
   width: 100%;
}

.footer-title {
   font-weight: 500;
   font-size: 28px;
   line-height: 120%;
   letter-spacing: 0.02em;
   color: #e4e7ee;
   margin-right: 36px;
}

.footer-top__phone {
   border-radius: 12px;
   padding: 18px 24px 18px 16px;
   font-weight: 500;
   font-size: 16px;
   line-height: 150%;
   letter-spacing: 0.02em;
   display: flex;
   align-items: center;
   transition: all .2s;
   border-radius: 12px;
}

.footer-top__phone-2 {
   margin-right: 30px;
}

.footer-top__phone:hover {
   box-shadow: 0 12px 30px 0 rgba(50, 70, 90, 0.15);
   background: #4b5c6e;
   color: #fff;
}

.footer-top__phone .phone-icon svg path {
   transition: all .2s;
}

.footer-top__phone:hover .phone-icon svg path {
   transition: all .2s;
   fill: white;
}

.footer-top__phone .phone-icon {
   margin-right: 5px;
   display: flex;
   align-items: center;
   justify-content: center;
   width: 24px;
   height: 24px;
   min-width: 24px;
   min-height: 24px;
}

.footer-top__socials {
   display: flex;
   align-items: center;
   width: 214px;
   justify-content: space-between;
}

.footer-top__social-link {
   font-weight: 400;
   font-size: 16px;
   line-height: 150%;
   letter-spacing: 0.02em;
   padding: 7px 11px;
   border: 1px solid rgba(255, 255, 255, 0.2);
   border-radius: 12px;
   transition: all .2s;
}

.footer-top__social-tg:hover {
   border: 1px solid rgba(255, 255, 255, 0.2);
   color: #fff;
   background: linear-gradient(180deg, #2aabee 0%, #229ed9 100%);
}

.footer-top__social-whatsapp:hover {
   border: 1px solid rgba(255, 255, 255, 0.2);
   color: #fff;
   background: #0d9d00;
}

.footer-top__address,
.footer-top__email {
   display: flex;
   align-items: center;
   padding: 18px 24px;
   font-weight: 500;
   font-size: 16px;
   line-height: 150%;
   letter-spacing: 0.02em;
}

.footer-top__address .address-svg,
.footer-top__email .email-svg {
   width: 24px;
   height: 24px;
   min-width: 24px;
   min-height: 24px;
   margin-right: 5px;
   display: flex;
   align-items: center;
   justify-content: center;
}

.footer-mid__title-inner {
   display: flex;
   align-items: center;
   margin-bottom: 40px;
}

.footer-mid__title {
   margin-right: 40px;
}

.footer-mid__title-line {
   background: #6a7989;
   width: 100%;
   height: 1px;
}

.footer-mid__links {
   display: flex;
   flex-wrap: wrap;
   align-items: flex-start;
   gap: 20px 80px;
   position: relative;
   align-self: stretch;
   width: 100%;
   flex: 0 0 auto;
   margin-bottom: 60px;
}

.footer-mid__link {
   width: 250px;
   color: var(--text-gray);
   font-weight: 500;
   font-size: 16px;
   line-height: 150%;
   letter-spacing: 0.02em;
   transition: all .2s;
}

.footer-mid__links-inner {
   margin-right: 15px;
   display: flex;
   flex-direction: column;
   height: 296px;
   justify-content: space-between;
}

.footer-mid__link:hover {
   color: #fff;
}

.footer-mid__line {
   margin-bottom: 30px;
   width: 100%;
   height: 1px;
   background: #6a7989;
}

.footer-bot {
   display: flex;
   align-items: center;
   justify-content: space-between;
   flex-wrap: wrap;
}

.footer-bot__energo-wrapper {
   font-weight: 400;
   font-size: 16px;
   line-height: 150%;
   letter-spacing: 0.02em;
   color: #e4e7ee;
}

.footer-bot__policy-wrapper {
   display: flex;
   max-width: 590px;
   justify-content: space-between;
}

.footer-bot__policy-link {
   color: var(--text-gray);
   font-weight: 400;
   font-size: 16px;
   line-height: 150%;
   letter-spacing: 0.02em;
   transition: all .2s;
   border-radius: 12px;
   padding: 8px 12px;
}

.footer-bot__policy-wrapper .footer-bot__policy-link:first-child {
   margin-right: 40px;
}

.footer-bot__policy-link:hover {
   color: #fff;
   background: #4b5c6e;
}

.footer-bot__ledoffsky-wrapper {
   display: flex;
   flex-direction: column;
   align-items: end;
   text-align: end;
   color: var(--text-gray);
   font-weight: 500;
   font-size: 12px;
   line-height: 133%;
}

.footer-bot__ledoffsky-wrapper a {
   font-weight: 600;
   font-size: 14px;
   line-height: 129%;
}

@media(max-width: 1000px) {
   .footer-bot__ledoffsky-wrapper {
      align-items: center;
      text-align: center;
   }

   .footer-bot__energo-wrapper {
      margin-bottom: 32px;
   }

   .footer-bot__policy-wrapper {
      margin-bottom: 32px;
   }
}

@media(max-width: 768px) {
   .footer-top__wrapper {
      flex-direction: column;
      align-items: flex-start;
   }

   .footer-top__inner-top {
      flex-direction: column;
      align-items: flex-start;
   }

   .footer-top__title,
   .footer-top__phone-2 {
      margin-right: 0;
   }

   .footer-top__inner-bot {
      justify-content: flex-start;
   }

   .footer-top__socials {
      margin: 24px auto;
   }

   .footer-top__social-link {
      flex-grow: 1;
   }

   .footer-top__title {
      margin-bottom: 24px;
   }

   .footer__logo {
      margin-bottom: 40px;
   }

   .footer-mid {
      display: none;
   }

   .footer-bot__policy-wrapper .footer-bot__policy-link:first-child {
      margin-right: 0;
   }
}

@media(max-width: 568px) {
   .footer-top {
      margin-right: 0;
   }

   .footer-top__socials {
      width: 100%;
   }

   .footer-top__social-link {
      flex-grow: 1;
      text-align: center;
   }

   .footer-top__inner-bot {
      justify-content: center;
   }

   .footer-top__inner-top {
      align-items: center;
      padding-right: 0;
   }

   .footer-top__wrapper {
      align-items: center;
      width: 100%;
   }

   .footer-top__social-tg {
      margin-right: 8px;
   }

   .footer-top__address .address-text {
      max-width: 201px;
   }

   .footer-top__address,
   .footer-top__email {
      justify-content: center;
      width: 100%;
   }

   .footer-bot__policy-wrapper {
      flex-direction: column;
   }

   .footer-bot__policy-link {
      text-align: center;
   }

   .footer-bot__policy-wrapper .footer-bot__policy-link:first-child {
      margin-bottom: 24px;
   }

   .footer-bot {
      justify-content: center;
      flex-direction: column;
   }

   .footer-bot__energo-wrapper {
      text-align: center;
   }
}