.footer {
  background-color: rgba(29, 44, 64, 0.05);
}
.footer__container {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.footer__main {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  grid-template-rows: auto;
  gap: 20px;
}
.footer__main-contacts {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.footer__main-contacts-logo {
  display: flex;
  align-items: end;
  gap: 4px;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease-out;
}
.footer__main-contacts-logo:active {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .footer__main-contacts-logo:hover {
    opacity: 0.7;
  }
}
.footer__main-contacts-logo-main {
  -webkit-user-select: none;
  -webkit-user-drag: none;
  width: 45px;
  height: 48px;
}
.footer__main-contacts-logo-text {
  -webkit-user-select: none;
  -webkit-user-drag: none;
  width: 66px;
  height: 32px;
}
.footer__main-contacts-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.footer__main-contacts-list-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.footer__main-contacts-list-item-title {
  font-family: var(--font-mevermind-compact);
  font-weight: 400;
  font-size: 15px;
  color: black;
  line-height: 135%;
}
.footer__main-contacts-list-item-contacts {
  display: flex;
  gap: 8px;
}
.footer__main-contacts-list-item-contacts-text {
  font-family: var(--font-mevermind-compact);
  font-weight: 500;
  font-size: 22px;
  color: black;
  line-height: 135%;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease-out;
}
.footer__main-contacts-list-item-contacts-text:active {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .footer__main-contacts-list-item-contacts-text:hover {
    opacity: 0.7;
  }
}
.footer__main-contacts-list-item-contacts-text_mail {
  font-size: 17px;
}
.footer__main-contacts-list-item-contacts-messenger {
  box-sizing: border-box;
  padding: 4px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 10px;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.footer__main-contacts-list-item-contacts-messenger_whatsapp:active {
  background-color: rgba(76, 175, 80, 0.1);
}
@media (hover: hover) and (pointer: fine) {
  .footer__main-contacts-list-item-contacts-messenger_whatsapp:hover {
    background-color: rgba(76, 175, 80, 0.1);
  }
}
.footer__main-contacts-list-item-contacts-messenger_telegram:active {
  background-color: rgba(3, 155, 229, 0.1);
}
@media (hover: hover) and (pointer: fine) {
  .footer__main-contacts-list-item-contacts-messenger_telegram:hover {
    background-color: rgba(3, 155, 229, 0.1);
  }
}
.footer__main-contacts-list-item-contacts-messenger-icon {
  -webkit-user-select: none;
  -webkit-user-drag: none;
  width: 32px;
  height: 32px;
}
.footer__main-contacts-list-item-contacts-messenger-name {
  font-family: var(--font-mevermind-compact);
  font-weight: 500;
  font-size: 17px;
  color: black;
  line-height: 100%;
}
.footer__main-nav {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  /* items wrap feature
    grid-template-columns: 2.8fr 1fr 1fr;
    */
  gap: 15px;
}
.footer__main-nav-section {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.footer__main-nav-section_mobile-compact {
  display: none;
  flex-direction: row;
  width: 100%;
}
.footer__main-nav-section-title {
  font-family: var(--font-mevermind-compact);
  font-weight: 500;
  font-size: 17px;
  color: black;
  line-height: 100%;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease-out;
}
.footer__main-nav-section-title:active {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .footer__main-nav-section-title:hover {
    opacity: 0.7;
  }
}
.footer__main-nav-section-links {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: start;
  /* items wrap feature
    flex-wrap: wrap;
    max-height: 220px;
    */
}
.footer__main-nav-section-links-item {
  font-family: var(--font-mevermind-compact);
  font-weight: 400;
  font-size: 15px;
  color: black;
  line-height: 135%;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease-out;
}
.footer__main-nav-section-links-item:active {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .footer__main-nav-section-links-item:hover {
    opacity: 0.7;
  }
}
.footer__main-reviews {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: end;
}
.footer__main-reviews-title {
  font-family: var(--font-mevermind-compact);
  font-weight: 500;
  font-size: 17px;
  color: black;
  line-height: 100%;
}
.footer__main-reviews-services {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: start;
}
.footer__main-reviews-services-item {
  box-sizing: border-box;
  width: 220px;
  padding: 8px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 12px;
  background-color: rgba(29, 44, 64, 0.05);
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease-out;
}
.footer__main-reviews-services-item:active {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .footer__main-reviews-services-item:hover {
    opacity: 0.7;
  }
}
.footer__main-reviews-services-item_2gis-theme {
  background-color: #29b24a;
}
.footer__main-reviews-services-item_yandex-theme {
  background-color: #fc3f1d;
}
.footer__main-reviews-services-item-logo {
  height: 24px;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}
.footer__main-reviews-services-item-rating {
  display: flex;
  flex-direction: column;
  align-items: end;
}
.footer__main-reviews-services-item-rating-rate {
  display: flex;
  gap: 8px;
}
.footer__main-reviews-services-item-rating-rate-icon {
  width: 18px;
  height: 18px;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}
.footer__main-reviews-services-item-rating-rate-value {
  font-family: var(--font-mevermind-compact);
  font-weight: 400;
  font-size: 17px;
  color: white;
  line-height: 135%;
  -webkit-user-select: none;
}
.footer__main-reviews-services-item-rating-reviews-amount {
  font-family: var(--font-mevermind-compact);
  font-weight: 400;
  font-size: 13px;
  color: white;
  line-height: 135%;
  -webkit-user-select: none;
}
.footer__developer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
.footer__developer-copyright {
  display: flex;
  gap: 40px;
}
.footer__developer-copyright-item {
  font-family: var(--font-mevermind-compact);
  font-weight: 400;
  font-size: 15px;
  color: rgba(29, 44, 64, 0.5);
  line-height: 135%;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease-out;
}
.footer__developer-copyright-item:active {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .footer__developer-copyright-item:hover {
    opacity: 0.7;
  }
}
.footer__developer-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease-out;
}
.footer__developer-brand:active {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .footer__developer-brand:hover {
    opacity: 0.7;
  }
}
.footer__developer-brand-preposition {
  font-family: var(--font-mevermind-compact);
  font-weight: 400;
  font-size: 15px;
  color: black;
  line-height: 135%;
  white-space: nowrap;
}
.footer__developer-brand-logo {
  -webkit-user-select: none;
  -webkit-user-drag: none;
}
/* items wrap feature
@media screen and (width <= 1260px) {
    .footer__main-nav-section-links {
        flex-wrap: nowrap;
        max-height: none;
    }
}
*/
@media screen and (width <= 959px) {
  .footer__main {
    grid-template-columns: 1fr;
  }
  .footer__main {
    gap: 48px;
  }
  .footer__main-nav {
    grid-template-columns: 1fr;
  }
  .footer__main-nav-section {
    display: none;
  }
  .footer__main-nav-section_mobile-compact {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (width <= 639px) {
  .footer__developer {
    flex-direction: column;
  }
  .footer .container {
    --container-px: 16px;
  }
  .footer__main {
    gap: 32px;
  }
  .footer__main-nav-section_mobile-compact {
    flex-direction: column;
  }
}