/* ================================================================
   Talk Radio Europe – Footer
   File: assets/css/footer.css
   ================================================================ */
.tre-footer__badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.tre-footer__badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 10px;
    border-radius: 6px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.12);
    color: #fff;
    text-decoration: none;
    line-height: 1;
    white-space: nowrap;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.tre-footer__badge:hover {
    background: rgba(255,255,255,0.10);
    border-color: rgba(255,255,255,0.22);
    transform: translateY(-1px);
}

.tre-footer__badge i {
    font-size: 14px;
    width: 14px;
    text-align: center;
    flex: 0 0 14px;
}

.tre-footer__badge-label {
    font-size: 12px;
    font-weight: 600;
    color: #fff;
}

@media (max-width: 768px) {
    .tre-footer__badges {
        gap: 6px;
    }

    .tre-footer__badge {
        padding: 7px 9px;
    }

    .tre-footer__badge-label {
        font-size: 11px;
    }
}

/* ================================================================
   MAIN FOOTER
   ================================================================ */
.tre-footer {
    font-family: Arial, Helvetica, sans-serif;
}
.tre-footer__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
}
.tre-footer__main {
    background: #111111;
    padding: 40px 0 30px;
    color: #ccc;
}
.tre-footer__main .tre-footer__container {
    display: grid;
    grid-template-columns: 160px repeat(5, 1fr);
    gap: 30px;
    align-items: start;
}

/* Logo */
.tre-footer__logo a { display: inline-block; text-decoration: none; }
.tre-footer__logo img { height: 90px; width: auto; display: block; }
.tre-footer__logo-fallback {
    display: flex; flex-direction: column;
    align-items: center; gap: 6px;
}
.tre-footer__logo-circle {
    width: 80px; height: 80px;
    border: 3px solid #4a5fa0;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: #1a1a2e;
}
.tre-footer__logo-circle span {
    font-size: 28px; font-weight: 900; font-style: italic;
    font-family: Georgia, serif; color: #7a9fd4; letter-spacing: -1px;
}
.tre-footer__logo-fallback small {
    font-size: 10px; color: #aaa; letter-spacing: .5px; text-align: center;
}

/* Column headings */
.tre-footer__heading {
    font-size: 13px;
    font-weight: 700;
    color: #e85113;
    margin: 0 0 14px;
    padding: 0;
    text-transform: none;
    letter-spacing: 0;
}

/* Link lists */
.tre-footer__links {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-direction: column; gap: 7px;
}
.tre-footer__links a {
    color: #ccc; text-decoration: none; font-size: 13px;
    transition: color .2s;
}
.tre-footer__links a:hover { color: #fff; }

/* Noticeboard text */
.tre-footer__notice {
    font-size: 13px; color: #ccc; line-height: 1.55; margin: 0;
}

/* Contact column */
.tre-footer__address {
    font-size: 13px; color: #ccc; font-style: normal;
    line-height: 1.55; margin: 0 0 10px;
}
.tre-footer__email {
    font-size: 13px; color: #ccc; margin: 0 0 8px;
}
.tre-footer__email a {
    color: #e85113; text-decoration: none; transition: opacity .2s;
}
.tre-footer__email a:hover { opacity: .8; }
.tre-footer__tel-label {
    font-size: 13px; color: #ccc; margin: 0 0 5px;
}
.tre-footer__tel {
    list-style: none; margin: 0 0 18px; padding: 0;
    display: flex; flex-direction: column; gap: 4px;
}
.tre-footer__tel li { font-size: 12.5px; color: #ccc; }

/* Apple Podcasts badge */
.tre-footer__podcast-badge {
    display: inline-flex; align-items: center; gap: 7px;
    border: 1px solid #555; border-radius: 7px;
    padding: 6px 12px; text-decoration: none;
    background: #1a1a1a; transition: border-color .2s, background .2s;
}
.tre-footer__podcast-badge:hover {
    border-color: #888; background: #222;
}
.tre-footer__podcast-text {
    display: flex; flex-direction: column; line-height: 1.2;
}
.tre-footer__podcast-sub {
    font-size: 9px; color: #aaa; text-transform: uppercase; letter-spacing: .3px;
}
.tre-footer__podcast-main {
    font-size: 13px; font-weight: 700; color: #fff; white-space: nowrap;
}

/* ================================================================
   BOTTOM BAR
   ================================================================ */
.tre-footer__bottom {
    background: #0a0a0a;
    padding: 14px 0;
    border-top: 1px solid #222;
}
.tre-footer__bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.tre-footer__copy {
    font-size: 13px; color: #888; margin: 0;
}
.tre-footer__social {
    display: flex; align-items: center; gap: 5px;
}
.tre-footer__social-icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 26px; height: 26px;
    background: rgba(255,255,255,0.12); border-radius: 3px;
    text-decoration: none; transition: background .2s;
}
.tre-footer__social-icon:hover { background: rgba(255,255,255,0.28); }
.tre-footer__social-icon svg { display: block; }

/* ================================================================
   TABLET  ≤ 1024px
   ================================================================ */
@media (max-width: 1024px) {
    .tre-footer__main .tre-footer__container {
        grid-template-columns: 140px repeat(3, 1fr);
        gap: 24px;
    }
    .tre-footer__col--contact {
        grid-column: span 2;
    }
}

/* ================================================================
   MOBILE  ≤ 768px
   ================================================================ */
@media (max-width: 768px) {
    .tre-footer__main { padding: 30px 0 24px; }
    .tre-footer__main .tre-footer__container {
        grid-template-columns: 1fr 1fr;
        gap: 28px 20px;
        padding: 0 16px;
    }
    .tre-footer__logo {
        grid-column: span 2;
        display: flex; justify-content: center;
    }
    .tre-footer__logo-circle { width: 68px; height: 68px; }
    .tre-footer__logo-circle span { font-size: 24px; }
    .tre-footer__col--contact {
        grid-column: span 2;
    }
    .tre-footer__bottom { padding: 12px 0; }
    .tre-footer__bottom-inner {
        flex-direction: column;
        align-items: center;
        gap: 10px;
        padding: 0 16px;
        text-align: center;
    }
    .tre-footer__social { flex-wrap: wrap; justify-content: center; }
}

/* ================================================================
   SMALL MOBILE  ≤ 480px
   ================================================================ */
@media (max-width: 480px) {
    .tre-footer__main .tre-footer__container {
        grid-template-columns: 1fr;
    }
    .tre-footer__logo { grid-column: span 1; }
    .tre-footer__col--contact { grid-column: span 1; }
}
