/* Standalone Topics and Archive routes */
.directory-page {
    min-height: 70vh;
    padding: calc(8.5rem + var(--tnh-announcement-offset, 0px)) 0 6rem;
    background:
        linear-gradient(180deg, rgba(8, 8, 13, 0.72), #08080d 34rem),
        url("../images/podcasts-background-2.webp") center top / cover no-repeat;
}
.directory-page__header { max-width: 780px; margin-bottom: 3rem; }
.directory-page__header--archive {
    display: flex; align-items: end; justify-content: space-between;
    gap: 3rem; max-width: none;
}
.directory-page__header > p {
    max-width: 620px; margin-top: 1rem; color: rgba(255, 255, 255, 0.66);
    font-size: 1rem; line-height: 1.7; letter-spacing: 0;
}
.directory-page__header--archive > p { max-width: 480px; margin: 0 0 0.35rem; }
.topic-directory-grid {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem;
}
.topic-directory-card {
    min-width: 0; overflow: hidden; border: 1px solid var(--glass-border);
    border-radius: 6px; background: rgba(12, 12, 18, 0.9); transition: var(--transition);
}
.topic-directory-card:hover {
    border-color: rgba(212, 175, 55, 0.5); transform: translateY(-3px);
}
.topic-directory-card__link {
    display: flex; min-height: 100%; flex-direction: column; color: inherit;
}
.topic-directory-card__media {
    aspect-ratio: 16 / 9; overflow: hidden; background: #101017;
}
.topic-directory-card__media img {
    width: 100%; height: 100%; object-fit: cover; opacity: 0.82;
    transition: transform 0.45s ease, opacity 0.45s ease;
}
.topic-directory-card:hover .topic-directory-card__media img {
    transform: scale(1.035); opacity: 1;
}
.topic-directory-card__media img.topic-directory-card__logo {
    object-fit: contain; padding: 1rem;
}
.topic-directory-card__body {
    display: flex; flex: 1; flex-direction: column; padding: 1.4rem;
}
.topic-directory-card__count {
    color: var(--noble-gold-light); font-size: 0.72rem; font-weight: 700;
    letter-spacing: 0; text-transform: uppercase;
}
.topic-directory-card h2 {
    margin: 0.55rem 0 0; color: var(--pure-white); font-size: 1.35rem; letter-spacing: 0;
}
.topic-directory-card p {
    margin: 0.65rem 0 0; color: rgba(255, 255, 255, 0.62);
    font-size: 0.88rem; line-height: 1.6; letter-spacing: 0;
}
.topic-directory-card__action {
    margin-top: auto; padding-top: 1.2rem; color: rgba(255, 255, 255, 0.78);
    font-size: 0.78rem; font-weight: 600; letter-spacing: 0;
}
.directory-page__posts { margin-top: 0; }
@media (min-width: 640px) {
    .directory-page__posts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .directory-page__posts > .post-card:last-child:nth-child(odd) {
        grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .directory-page__posts > .post-card:last-child:nth-child(odd) .post-card__image {
        height: 100%; aspect-ratio: auto;
    }
}
.directory-page__posts + .pagination { margin-top: 3rem; }
.directory-page__empty {
    grid-column: 1 / -1; padding: 2rem 0;
    color: rgba(255, 255, 255, 0.62); letter-spacing: 0;
}
@media (max-width: 900px) {
    .topic-directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .directory-page__header--archive { display: block; }
    .directory-page__header--archive > p { margin-top: 1rem; }
}
@media (max-width: 640px) {
    .directory-page {
        padding: calc(7rem + var(--tnh-announcement-offset, 0px)) 0 4rem;
        background-position: 58% top;
    }
    .directory-page__header { margin-bottom: 2rem; }
    .topic-directory-grid { grid-template-columns: minmax(0, 1fr); }
    .topic-directory-card__body { padding: 1.2rem; }
}
