@charset "UTF-8";
/* CSS ПОДВАЛА САЙТА footer */

/* Футер */
.footer {
   background: linear-gradient(135deg, #1a2640 0%, #0f1829 100%);
   color: #e8eaf0;
   padding: 60px 0 0;
   position: relative;
   overflow: hidden;
   z-index: 10;
   width: inherit;
}

.footer::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 1px;
   background: linear-gradient(90deg, transparent, rgba(94, 125, 225, 0.5), transparent);
}

.footer-container {
   /* max-width: 1400px; */
   margin: 0 auto;
   padding: 0 20px;
}

/* Основной блок */
.footer-main {
   display: grid;
   grid-template-columns: 2fr 1.5fr 1.5fr 1fr;
   gap: 50px;
   padding-bottom: 50px;
   border-bottom: 1px solid rgba(94, 125, 225, 0.2);
}

.footer-main:has(> *:nth-child(3):last-child) {
   grid-template-columns: 2fr 1.5fr 1fr;
}

/* Секции */
.footer-section {
   display: flex;
   flex-direction: column;
   gap: 20px;
}

.footer-title {
   margin: 0 0 10px 0;
   font-size: 16px;
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: 0.5px;
   color: #5e7de1;
   position: relative;
   padding-bottom: 10px;
}

.footer-title::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   width: 40px;
   height: 2px;
   background: linear-gradient(90deg, #5e7de1, transparent);
}

/* О компании */
.footer-company-name {
   margin: 0;
   font-size: 18px;
   font-weight: 600;
   color: #fff;
}

.footer-description {
   margin: 0;
   font-size: 14px;
   line-height: 1.6;
   color: #b8c1d9;
}

.footer-rating {
   margin-top: 10px;
}

/* Контакты */
.footer-contact-group {
   display: flex;
   flex-direction: column;
   gap: 16px;
}

.footer-contact-item {
   display: flex;
   align-items: center;
   gap: 12px;
   flex-wrap: wrap;
}

.footer-icon {
   flex-shrink: 0;
   color: #5e7de1;
   opacity: 0.8;
}

.footer-link {
   color: #e8eaf0;
   text-decoration: none;
   transition: color 0.2s ease;
   font-size: 15px;
}

.footer-link:hover {
   color: #5e7de1;
}

.footer-text {
   font-size: 14px;
   color: #b8c1d9;
}

.footer-note {
   font-size: 12px;
   color: #7a8aa8;
   font-style: italic;
}

.footer-messengers {
   display: flex;
   gap: 12px;
   margin-top: 10px;
}

.footer-messenger {
   display: flex;
   align-items: center;
   gap: 8px;
   padding: 8px 16px;
   background: rgba(94, 125, 225, 0.1);
   border: 1px solid rgba(94, 125, 225, 0.3);
   border-radius: 8px;
   color: #e8eaf0;
   text-decoration: none;
   font-size: 13px;
   transition: all 0.2s ease;
}

.footer-messenger:hover {
   background: rgba(94, 125, 225, 0.2);
   border-color: #5e7de1;
   transform: translateY(-2px);
}

.footer-messenger img {
   width: 20px;
   height: 20px;
}

/* Офисы */
.footer-office {
   padding: 16px;
   background: rgba(255, 255, 255, 0.03);
   border-left: 3px solid #5e7de1;
   border-radius: 4px;
   transition: all 0.2s ease;
}

.footer-office:hover {
   background: rgba(255, 255, 255, 0.05);
   transform: translateX(4px);
}

.footer-office-header {
   display: flex;
   align-items: center;
   gap: 8px;
   margin-bottom: 12px;
   color: #fff;
   font-size: 15px;
}

.footer-address {
   font-style: normal;
   font-size: 14px;
   line-height: 1.6;
   color: #b8c1d9;
   margin-bottom: 8px;
}

.footer-phone {
   color: #5e7de1;
   text-decoration: none;
   font-size: 15px;
   font-weight: 500;
   transition: color 0.2s ease;
}

.footer-phone:hover {
   color: #7a9ef5;
}

/* Навигация */
.footer-links {
   list-style: none;
   padding: 0;
   margin: 0;
   display: flex;
   flex-direction: column;
   gap: 12px;
}

.footer-nav-link {
   color: #b8c1d9;
   text-decoration: none;
   font-size: 14px;
   transition: all 0.2s ease;
   display: inline-flex;
   align-items: center;
   position: relative;
   padding-left: 16px;
}

.footer-nav-link::before {
   content: '→';
   position: absolute;
   left: 0;
   opacity: 0;
   transition: all 0.2s ease;
   color: #5e7de1;
}

.footer-nav-link:hover {
   color: #fff;
   padding-left: 20px;
}

.footer-nav-link:hover::before {
   opacity: 1;
   left: 0;
}

/* Нижняя часть */
.footer-bottom {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 30px 0;
   gap: 30px;
}

.footer-bottom-left,
.footer-bottom-right {
   display: flex;
   flex-direction: column;
   gap: 8px;
}

.footer-legal {
   margin: 0;
   font-size: 13px;
   color: #b8c1d9;
}

.footer-copyright {
   margin: 0;
   font-size: 12px;
   color: #7a8aa8;
}

.footer-update {
   margin: 0;
   font-size: 12px;
   color: #7a8aa8;
   text-align: right;
}

.footer-update time {
   color: #5e7de1;
}

.footer-note-small {
   margin: 0;
   font-size: 11px;
   color: #5a6a88;
   text-align: right;
   max-width: 400px;
}

/* Адаптивность */
@media (max-width: 1200px) {
   .footer-main {
      grid-template-columns: repeat(2, 1fr);
      gap: 40px;
   }
}

@media (max-width: 768px) {
   .footer {
      padding: 40px 0 0;
   }

   .footer-main {
      grid-template-columns: 1fr;
      gap: 35px;
      padding-bottom: 30px;
   }

   .footer-bottom {
      flex-direction: column;
      align-items: flex-start;
      padding: 20px 0;
   }

   .footer-update,
   .footer-note-small {
      text-align: left;
   }

   .footer-messengers {
      flex-direction: column;
      width: 100%;
   }

   .footer-messenger {
      justify-content: center;
   }
}

@media (max-width: 480px) {
   .footer-container {
      padding: 0 16px;
   }

   .footer-title {
      font-size: 14px;
   }

   .footer-company-name {
      font-size: 16px;
   }

   .footer-contact-item {
      flex-direction: column;
      align-items: flex-start;
   }
}