.tt-footer { line-height: 1.5; display: flex; flex-direction: column; align-items: center; width: 100%; padding: 56px 40px 28px; background: var(--tt-footer-bg); }
.tt-footer__inner { display: flex; flex-direction: column; gap: 40px; width: 100%; max-width: 1180px; }
.tt-footer__top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 48px; width: 100%; }
.tt-footer__brand { display: flex; flex-direction: column; gap: 14px; max-width: 320px; }
.tt-footer__name { color: #ffffff; font-size: 18px; font-weight: 800; letter-spacing: -0.02em; text-decoration: none; }
.tt-footer__about { color: var(--tt-footer-muted); font-size: 14px; line-height: 1.65; }
.tt-footer__about p { margin: 0; }
.tt-footer__cols { display: flex; flex-wrap: wrap; gap: 56px; }
.tt-footer__col { display: flex; flex-direction: column; gap: 2px; }
.tt-footer__head { margin: 0 0 10px; line-height: 1.5; color: var(--tt-footer-head); font-size: 16px; font-weight: 600; letter-spacing: normal; text-transform: none; }
.tt-footer__link { color: var(--tt-footer-link); font-size: 14px; font-weight: 400; line-height: 2.1; text-decoration: none; }
.tt-footer__link:hover { color: #ffffff; }
.tt-footer__rule { width: 100%; height: 1px; background: rgba(255,255,255,0.12); }
.tt-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; width: 100%; }
.tt-footer__social { display: flex; flex-wrap: wrap; gap: 4px; margin: 4px 0 0; padding: 0; list-style: none; }
.tt-footer__social-link { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; color: var(--tt-footer-link); }
.tt-footer__social-link .tt-social-icon { width: 18px; height: 18px; }
.tt-footer__policies { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 0; padding: 0; list-style: none; }
.tt-footer__policy { color: #7a7a7a; font-size: 12.5px; text-decoration: none; }
.tt-footer__policy:hover { color: var(--tt-footer-link); }
.tt-footer__copy, .tt-footer__powered { margin: 0; color: #7a7a7a; font-size: 12.5px; text-decoration: none; }
@media (max-width: 640px) { .tt-footer { padding-left: 24px; padding-right: 24px; } }
