/* Gemeinsamer Seitenabschluss im Stil der globalen Navigation. */
.tt-footer { clear: both; margin-top: 32px; border-top: 1px solid #e3e6ec; background: #f7f8fc; color: #202536; }
.tt-footer, .tt-footer * { box-sizing: border-box; }
.tt-footer-inner { width: 90%; max-width: 1600px; margin: 0 auto; padding: 28px 15px 16px; }
.tt-footer-main { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.tt-footer .tt-footer-brand { display: inline-flex; align-items: center; gap: 12px; min-width: 0; min-height: 44px; color: #202536; text-decoration: none; }
.tt-footer-brand img { flex-shrink: 0; object-fit: contain; }
.tt-footer-brand > span { min-width: 0; overflow-wrap: anywhere; }
.tt-footer-brand strong { display: block; font-size: 17px; line-height: 1.5; }
.tt-footer-brand small { display: block; color: #60687a; font-size: 12px; line-height: 1.6; }
.tt-footer-links { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; height: auto; }
.tt-footer .tt-footer-link, .tt-footer .tt-footer-top { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 12px; border: 1px solid transparent; border-radius: 8px; color: #60687a; font-size: 13px; font-weight: 500; line-height: 1.5; text-decoration: none; }
.tt-footer .tt-footer-link:hover, .tt-footer .tt-footer-top:hover { background: #fff; border-color: #d8dce8; color: #ac012c; }
.tt-footer .material-icons { flex-shrink: 0; font-size: 18px; }
.tt-footer a:focus-visible { outline: 3px solid #6376ff; outline-offset: 2px; border-radius: 8px; }
.tt-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 20px; padding-top: 12px; border-top: 1px solid #e3e6ec; }
.tt-footer-bottom > small { color: #60687a; font-size: 12px; line-height: 1.6; }
.tt-footer .tt-footer-top { padding-right: 8px; }
.tt-footer-top .material-icons { display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border: 1px solid #d8dce8; border-radius: 8px; background: #fff; color: #ac012c; }
@media (max-width: 1200px) {
    .tt-footer-inner { width: 100%; }
}
@media (max-width: 640px) {
    .tt-footer-inner { padding: 24px 15px 12px; }
    .tt-footer-main { align-items: stretch; flex-direction: column; gap: 20px; }
    .tt-footer-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tt-footer .tt-footer-link { border-color: #e3e6ec; background: #fff; }
    .tt-footer-home { grid-column: 1 / -1; }
    .tt-footer-bottom { flex-wrap: wrap; margin-top: 20px; gap: 8px; }
    .tt-footer .tt-footer-link { overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: no-preference) {
    .tt-footer-link, .tt-footer-top { transition: background-color .15s ease, border-color .15s ease, color .15s ease; }
}
@media print {
    .tt-footer { display: none; }
}
