html {
    font-size: 16px;
    min-height: 100%;
}

body {
    color: #172033;
    background: linear-gradient(180deg, #f7f9fc 0%, #edf3f7 100%);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

main {
    flex: 1 0 auto;
}

footer {
    margin-top: auto;
}

a {
    color: #1666d8;
    text-decoration: none;
    transition: color .16s ease, opacity .16s ease;
}

    a:hover {
        color: #0d47a1;
    }

.tm-header-wrap {
    background: linear-gradient(90deg, rgba(3, 15, 31, .96), rgba(4, 35, 62, .94) 58%, rgba(2, 67, 77, .92)), #06101f;
    border-bottom: 1px solid rgba(70, 211, 255, .18);
    backdrop-filter: blur(20px);
    box-shadow: 0 14px 42px rgba(1, 12, 24, .30);
}

.tm-header {
    background: transparent;
    padding: 6px 0;
}

.tm-brand {
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.tm-logo {
    display: block;
    width: auto;
    height: 64px;
    max-width: 270px;
    object-fit: contain;
    filter: drop-shadow(0 10px 20px rgba(43, 211, 255, .22));
}

.tm-toggler {
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 8px;
    padding: .45rem .65rem;
}

.tm-nav .nav-link {
    border-radius: 999px;
    color: rgba(198, 239, 255, .82);
    font-size: .94rem;
    font-weight: 750;
    padding: .48rem .78rem;
}

    .tm-nav .nav-link:hover,
    .tm-nav .nav-link:focus {
        background: rgba(66, 211, 255, .12);
        color: #eaffff;
        box-shadow: inset 0 0 0 1px rgba(92, 220, 255, .18);
    }

    .tm-nav .nav-link.active {
        background: linear-gradient(135deg, rgba(41, 191, 255, .26), rgba(8, 119, 177, .18));
        color: #ffffff;
        box-shadow: inset 0 0 0 1px rgba(91, 224, 255, .42), 0 8px 22px rgba(0, 191, 255, .12);
    }

.tm-nav-cta {
    border-radius: 999px;
    font-weight: 800;
    background: linear-gradient(135deg, #10b7ff, #1769e8);
    border-color: rgba(92,220,255,.55);
    box-shadow: 0 10px 24px rgba(0, 183, 255, .28);
}

.tm-dropdown {
    background: rgba(7, 20, 36, .98);
    border: 1px solid rgba(77, 211, 255, .22);
    border-radius: 8px;
    box-shadow: 0 26px 64px rgba(0, 10, 24, .35);
    padding: .55rem;
    min-width: 240px;
}

    .tm-dropdown .dropdown-item {
        border-radius: 7px;
        color: #dff7ff;
        font-weight: 700;
        padding: .55rem .75rem;
    }

        .tm-dropdown .dropdown-item:hover {
            background: rgba(41, 191, 255, .15);
            color: #ffffff;
        }

.tm-footer-logo {
    width: auto;
    height: 54px;
    max-width: 220px;
}

.hero {
    background: linear-gradient(135deg, #07111f 0%, #123457 56%, #06756e 100%);
    color: white;
    padding: 88px 0 58px;
}

.hero-home {
    padding: 48px 0 36px;
}

.hero-compact {
    padding: 64px 0 42px;
}

.hero h1 {
    font-size: clamp(2.4rem, 5vw, 4.9rem);
    line-height: 1;
    letter-spacing: 0;
}

.hero p {
    color: rgba(255,255,255,.82);
}

.section-pad {
    padding: 64px 0;
}

.tm-card, .glass-card {
    background: white;
    border: 1px solid rgba(16, 24, 40, .08);
    border-radius: 8px;
    box-shadow: 0 18px 45px rgba(16, 24, 40, .06);
    height: 100%;
    overflow: hidden;
    position: relative;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.glass-card {
    background: rgba(255,255,255,.78);
    backdrop-filter: blur(18px);
    border-color: rgba(255,255,255,.38);
}

    .tm-card:hover, .glass-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 24px 60px rgba(16, 24, 40, .13);
        border-color: rgba(22, 102, 216, .25);
    }

.tm-card:has(a[href]), .search-card, .clickable-card, .tm-card[data-href] {
    cursor: pointer;
}

.tm-card a:not(.btn), .glass-card a:not(.btn) {
    position: relative;
    z-index: 2;
}

.tm-img,
.tm-card img {
    max-width: 100%;
    object-fit: cover;
    display: block;
}

.tm-card img,
.tm-card-img,
.tm-feature-image {
    width: 100%;
    height: 220px;
    object-fit: cover;
    background: linear-gradient(135deg, #d9e7ff, #dff7ef);
}

.tm-feature-image {
    height: auto;
    aspect-ratio: 16/9;
}

.tm-logo,
.tm-footer-logo {
    object-fit: contain;
}

.category-feature {
    margin: 20px 0;
    border-radius: 8px;
    max-height: 360px;
}

.author-hero {
    display: grid;
    grid-template-columns: minmax(120px, 180px) 1fr;
    gap: 24px;
    align-items: center;
}

.author-profile-img {
    width: 180px;
    height: 180px;
    border-radius: 8px;
    background: #071827;
}

.timeline-img {
    width: 100%;
    height: 190px;
    background: #071827;
}

.admin-image-preview {
    width: 100%;
    height: 150px;
    margin: 10px 0 16px;
    border-radius: 8px;
    background: #071827;
    border: 1px solid rgba(16, 24, 40, .10);
}

.knowledge-hero .form-control,
.knowledge-hero .form-select {
    border-color: rgba(74, 213, 255, .28);
}

.knowledge-hub {
    padding: 28px 0 10px;
}

.knowledge-section-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
}

.knowledge-section-grid a,
.knowledge-rail > div {
    border: 1px solid rgba(16, 24, 40, .08);
    border-radius: 8px;
    background: linear-gradient(135deg, #ffffff, #f4fbff);
    box-shadow: 0 16px 38px rgba(16, 24, 40, .06);
}

.knowledge-section-grid a {
    color: #172033;
    padding: 16px;
}

.knowledge-section-grid span {
    display: block;
    color: #0f7a74;
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.knowledge-section-grid strong {
    display: block;
    margin-top: 6px;
    line-height: 1.25;
}

.faq-topic-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 20px;
}

.faq-topic-cloud a {
    border: 1px solid rgba(22, 102, 216, .14);
    border-radius: 999px;
    background: #eef7ff;
    color: #174c87;
    font-weight: 800;
    padding: 8px 12px;
}

.knowledge-rail {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 36px;
}

.knowledge-rail > div {
    padding: 20px;
}

.knowledge-rail h2 {
    font-size: 1.05rem;
    font-weight: 850;
    margin-bottom: 12px;
}

.knowledge-rail a {
    display: block;
    color: #172033;
    padding: 8px 0;
    border-top: 1px solid rgba(16, 24, 40, .07);
}

.faq-category-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
    margin: 28px 0 12px;
}

.knowledge-answer {
    color: #263247;
    font-size: 1.02rem;
    line-height: 1.76;
}

.knowledge-answer ul {
    background: #f4f9ff;
    border: 1px solid rgba(22, 102, 216, .10);
    border-radius: 8px;
    padding: 16px 18px 16px 34px;
}

mark {
    background: #d7fbff;
    color: #082439;
    border-radius: 4px;
    padding: 0 .16em;
}

.contact-hero {
    background:
        radial-gradient(circle at 12% 15%, rgba(19, 188, 255, .15), transparent 30%),
        linear-gradient(180deg, #f7fbff, #eef6f6);
}

.contact-panel,
.contact-form-card {
    height: 100%;
    padding: 28px;
}

.contact-panel {
    border: 1px solid rgba(16, 24, 40, .08);
    border-radius: 8px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 24px 60px rgba(16, 24, 40, .08);
}

.contact-methods {
    display: grid;
    gap: 10px;
    margin: 22px 0;
}

.contact-methods a {
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid rgba(16, 24, 40, .08);
    border-radius: 8px;
    background: #fff;
    color: #172033;
    padding: 12px;
}

.contact-methods span {
    display: inline-grid;
    place-items: center;
    min-width: 42px;
    height: 42px;
    border-radius: 8px;
    background: #e9f8ff;
    color: #0f6b8f;
    font-size: .78rem;
    font-weight: 900;
}

.whatsapp-button svg {
    width: 28px;
    height: 28px;
    color: #0a9f63;
}

.contact-note {
    margin-top: 20px;
    color: #667085;
    font-size: .92rem;
}

.tm-social-icons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.tm-social-link {
    display: inline-grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 999px;
    background: #edf9ff;
    border: 1px solid #b8e2ff;
    color: #0b5f8f;
    font-weight: 900;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.78);
}

.tm-social-link:hover {
    color: #075078;
    background: #e2f5ff;
    border-color: #7fcaff;
    transform: translateY(-1px);
}

.tm-social-link svg {
    width: 21px;
    height: 21px;
    display: block;
    fill: currentColor;
}

@media (max-width: 991.98px) {
    .knowledge-section-grid,
    .knowledge-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .knowledge-section-grid,
    .knowledge-rail {
        grid-template-columns: 1fr;
    }

    .faq-category-heading {
        align-items: start;
        flex-direction: column;
    }
}

@media (max-width: 767.98px) {
    .author-hero {
        grid-template-columns: 1fr;
    }

    .author-profile-img {
        width: 132px;
        height: 132px;
    }
}

.tm-card-body {
    padding: 22px;
}

.tm-card-body > p,
.search-card > p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.eyebrow {
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .75rem;
    font-weight: 800;
    color: #0f7a74;
}

.badge-soft {
    background: #e9f3ff;
    color: #174c87;
    border-radius: 999px;
    padding: .35rem .65rem;
    font-weight: 700;
}

.tm-band {
    background: #eef6f6;
}

.library-panel {
    height: 100%;
    border: 1px solid rgba(16,24,40,.08);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(16,24,40,.07);
    padding: 24px;
}

.wealth-scale {
    display: grid;
    gap: 10px;
    margin: 18px 0;
}

    .wealth-scale a {
        display: block;
        border: 1px solid rgba(34,183,255,.14);
        border-radius: 8px;
        background: linear-gradient(135deg, #f7fbff, #eefafa);
        color: #172033;
        padding: 12px;
    }

    .wealth-scale strong {
        display: block;
        color: #0f6b8f;
    }

    .wealth-scale span {
        display: block;
        color: #657084;
        font-size: .88rem;
    }

.quick-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

    .quick-links a {
        border-radius: 999px;
        background: rgba(8,17,31,.06);
        color: #172033;
        font-size: .82rem;
        font-weight: 800;
        padding: .45rem .7rem;
    }

        .quick-links a:hover {
            background: rgba(34,183,255,.14);
            color: #0f5d83;
        }

.auth-hero {
    background: linear-gradient(135deg, rgba(5, 14, 28, .96), rgba(10, 50, 84, .92) 52%, rgba(4, 111, 118, .92)), #07111f;
    color: white;
}

    .auth-hero .text-muted {
        color: rgba(255,255,255,.72) !important;
    }

.auth-premium {
    min-height: calc(100vh - 84px);
    display: flex;
    align-items: center;
}

.auth-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .8fr);
    gap: 34px;
    align-items: center;
}

.auth-copy h1 {
    max-width: 720px;
    font-size: clamp(2.25rem, 5vw, 4.8rem);
    font-weight: 900;
    line-height: 1;
    margin: .8rem 0 1rem;
}

.auth-copy p {
    max-width: 620px;
    color: rgba(237,249,255,.82);
    font-size: 1.1rem;
}

.auth-proof-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 28px;
}

    .auth-proof-grid div {
        border: 1px solid rgba(90,220,255,.20);
        border-radius: 8px;
        background: rgba(255,255,255,.07);
        padding: 16px;
    }

    .auth-proof-grid strong {
        display: block;
        color: #79e2ff;
        font-size: 1.15rem;
    }

    .auth-proof-grid span {
        color: rgba(237,249,255,.82);
        font-size: .9rem;
    }

.auth-card {
    padding: 30px;
    color: #122033;
    box-shadow: 0 28px 80px rgba(0, 10, 24, .30);
}

    .auth-card h2 {
        font-size: 2rem;
        font-weight: 900;
    }

    .auth-card .form-control,
    .human-check .form-control {
        border-color: rgba(22,102,216,.16);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.4);
    }

        .auth-card .form-control:focus,
        .human-check .form-control:focus {
            border-color: #22b7ff;
            box-shadow: 0 0 0 .22rem rgba(34,183,255,.18);
        }

    .auth-card .human-check {
        border: 1px solid rgba(34,183,255,.14);
        border-radius: 8px;
        background: #f3fbff;
        padding: 12px;
    }

.empty-state {
    background: linear-gradient(135deg, #eef6ff, #eefaf7);
    border: 1px dashed rgba(22, 102, 216, .35);
    border-radius: 8px;
    padding: 32px;
    text-align: center;
    color: #4d5b72;
}

.insight-strip {
    margin-top: -24px;
    position: relative;
    z-index: 2;
}

.tm-stat-card,
.tm-guide-card {
    display: flex;
    flex-direction: column;
    gap: .45rem;
    height: 100%;
    border-radius: 8px;
    border: 1px solid rgba(16,24,40,.08);
    background: #fff;
    color: #172033;
    box-shadow: 0 18px 42px rgba(16,24,40,.09);
    padding: 22px;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

    .tm-stat-card:hover,
    .tm-guide-card:hover,
    .comparison-grid a:hover {
        transform: translateY(-3px);
        border-color: rgba(15,122,116,.28);
        box-shadow: 0 24px 58px rgba(16,24,40,.14);
        color: #172033;
    }

    .tm-stat-card span,
    .tm-guide-card span {
        color: #0f7a74;
        font-size: .78rem;
        font-weight: 850;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .tm-stat-card strong {
        font-size: clamp(1.8rem, 4vw, 2.8rem);
        line-height: 1;
    }

    .tm-stat-card small,
    .tm-guide-card small {
        color: #657084;
    }

.tm-start-here {
    background: #f9fbfd;
}

.partner-strip-section {
    background: #f9fbfd;
    padding: 28px 0 8px;
}

.partner-shell {
    display: grid;
    grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    padding: 22px;
    overflow: hidden;
}

.partner-copy h2 {
    font-size: 1.35rem;
    font-weight: 900;
    margin-bottom: .35rem;
}

.partner-copy p {
    color: #657084;
    margin-bottom: 0;
}

.partner-marquee {
    overflow: hidden;
    mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.partner-track {
    display: flex;
    align-items: center;
    gap: 14px;
    width: max-content;
    animation: partner-scroll 26s linear infinite;
}

.partner-marquee:hover .partner-track {
    animation-play-state: paused;
}

.partner-track a {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 190px;
    height: 112px;
    border: 1px solid rgba(16,24,40,.08);
    border-radius: 8px;
    background: rgba(255,255,255,.82);
    color: #172033;
    font-weight: 850;
    padding: 14px 16px;
    box-shadow: 0 14px 32px rgba(16,24,40,.07);
}

.partner-track a:hover {
    border-color: rgba(34,183,255,.28);
    color: #0f5d83;
}

.partner-track img {
    width: 130px;
    height: 58px;
    object-fit: contain;
}

.partner-track span {
    white-space: nowrap;
    color: #172033;
    font-size: .88rem;
    line-height: 1.1;
    text-align: center;
}

@keyframes partner-scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

.comparison-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

    .comparison-grid a {
        display: flex;
        align-items: center;
        min-height: 64px;
        border: 1px solid rgba(16,24,40,.08);
        border-radius: 8px;
        background: #f7fbfb;
        color: #172033;
        font-weight: 850;
        padding: 16px;
        transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }

.desk-link {
    display: block;
    border: 1px solid rgba(16,24,40,.08);
    border-radius: 8px;
    background: linear-gradient(135deg, #f8fbfd, #eefaff);
    color: #172033;
    margin-top: 12px;
    padding: 12px;
}

.desk-card .tm-card-body {
    padding: 16px;
}

.desk-card .empty-state {
    padding: 16px;
}

.desk-link:hover {
    border-color: rgba(34,183,255,.28);
    box-shadow: 0 12px 30px rgba(16,24,40,.09);
}

.desk-link span {
    display: inline-flex;
    border-radius: 999px;
    background: rgba(15,122,116,.10);
    color: #0f7a74;
    font-size: .72rem;
    font-weight: 900;
    padding: .25rem .55rem;
    margin-bottom: .55rem;
}

.desk-link strong {
    display: block;
}

.desk-link p {
    color: #657084;
    font-size: .88rem;
    margin: .45rem 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.tm-pull-right {
    float: right !important;
}

.newsletter-inline {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: end;
}

    .newsletter-inline .human-check {
        grid-column: 1 / -1;
    }

.human-check .form-label {
    font-size: .8rem;
    font-weight: 800;
    margin-bottom: .35rem;
}

.human-check .input-group-text {
    background: #edf7fb;
    color: #123457;
    font-weight: 800;
}

.detail-page {
    background: #fff;
}

.detail-hero {
    background: linear-gradient(135deg, #06101f, #123457 60%, #066c78);
    color: #fff;
    padding: 42px 0 34px;
}

.detail-breadcrumb,
.detail-breadcrumb a,
.detail-author-line {
    color: rgba(234,249,255,.76);
}

.detail-label-row,
.detail-author-line {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 14px;
}

.detail-hero h1 {
    max-width: 980px;
    font-size: clamp(2rem, 5vw, 4.35rem);
    font-weight: 900;
    line-height: 1.02;
}

.detail-hero .lead {
    max-width: 860px;
    color: rgba(234,249,255,.82);
}

.detail-shell {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 34px;
    padding-top: 34px;
    padding-bottom: 64px;
}

.detail-side {
    position: sticky;
    top: 96px;
    align-self: start;
}

.detail-panel,
.key-takeaways-box,
.newsletter-card,
.detail-prev-next a {
    border: 1px solid rgba(16,24,40,.08);
    border-radius: 8px;
    background: #f8fbfd;
    box-shadow: 0 18px 44px rgba(16,24,40,.06);
    padding: 20px;
}

.detail-toc-list {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
}

    .detail-toc-list li {
        margin: .55rem 0;
    }

    .detail-toc-list .toc-subitem {
        padding-left: 14px;
        font-size: .92rem;
    }

    .detail-toc-list a {
        color: #26364d;
        font-weight: 750;
    }

.detail-main {
    min-width: 0;
    max-width: 930px;
}

.detail-feature {
    border-radius: 8px;
    margin-bottom: 24px;
    box-shadow: 0 24px 60px rgba(16,24,40,.12);
}

.key-takeaways-box {
    background: linear-gradient(135deg, #eefaff, #f7fbfb);
    margin-bottom: 26px;
}

    .key-takeaways-box li {
        margin-bottom: .55rem;
    }

.detail-content {
    color: #243147;
    line-height: 1.78;
}

    .detail-content h2,
    .detail-content h3 {
        color: #101b2d;
        font-weight: 900;
        margin-top: 2rem;
    }

    .detail-content blockquote {
        border-left: 4px solid #22b7ff;
        background: #f3fbff;
        padding: 16px 18px;
        border-radius: 0 8px 8px 0;
    }

.detail-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 28px 0;
}

.newsletter-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    gap: 20px;
    align-items: center;
    background: linear-gradient(135deg, #07111f, #123457);
    color: #fff;
    margin: 34px 0;
}

    .newsletter-card p {
        color: rgba(234,249,255,.78);
    }

.detail-prev-next {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 28px 0;
}

    .detail-prev-next a {
        display: block;
        color: #172033;
    }

    .detail-prev-next span {
        display: block;
        color: #0f7a74;
        font-size: .78rem;
        font-weight: 850;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

.detail-section {
    margin-top: 34px;
}

.topic-chip {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .55rem .85rem;
    border-radius: 999px;
    background: rgba(8, 17, 31, .06);
    color: #172033;
    font-weight: 700;
}

.faq-accordion .accordion-item {
    margin-bottom: 12px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid rgba(16, 24, 40, .08);
}

.faq-accordion .accordion-button {
    font-weight: 800;
}

.tm-footer {
    background: #0b1220;
    color: #d9e3f0;
}

    .tm-footer a {
        display: block;
        color: #d9e3f0;
        margin: .35rem 0;
    }

        .tm-footer a:hover {
            color: #7ddcff;
        }

.tm-footer-brand {
    display: inline-block;
    margin: 0;
}

.tm-footer h6, .tm-footer h5 {
    color: white;
}

.footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

    .footer-bottom a {
        display: inline;
        margin: 0;
        color: #7ddcff;
        font-weight: 800;
    }

.tm-mobile-nav {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1040;
    background: rgba(255,255,255,.96);
    border-top: 1px solid rgba(16,24,40,.12);
    box-shadow: 0 -14px 35px rgba(16,24,40,.12);
}

    .tm-mobile-nav a {
        flex: 1;
        min-width: 0;
        text-align: center;
        padding: 8px 4px 7px;
        color: #243147;
        font-size: .72rem;
        font-weight: 700;
    }

        .tm-mobile-nav a.active {
            color: #0f6b8f;
            background: #eef8fb;
        }

    .tm-mobile-nav span {
        display: block;
        font-size: 1.15rem;
        line-height: 1.1;
    }

.list-toolbar {
    gap: 16px;
}

.pagination-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 32px;
    flex-wrap: wrap;
}

.admin-shell {
    background: #f4f6fb;
    min-height: 100vh;
}

.admin-card {
    background: white;
    border: 1px solid #e6e9f2;
    border-radius: 8px;
    box-shadow: 0 12px 34px rgba(16,24,40,.06);
}

.richtext-preview img {
    max-width: 100%;
    height: auto;
}

@media (max-width: 767.98px) {
    body {
        padding-bottom: 68px;
    }

    .tm-mobile-nav {
        display: flex;
    }

    .hero {
        padding: 62px 0 40px;
    }

    .hero-home {
        padding: 34px 0 28px;
    }

    .section-pad {
        padding: 44px 0;
    }

    .tm-logo {
        height: 50px;
        max-width: 210px;
    }

    .tm-header {
        padding: 5px 0;
    }

    .tm-nav {
        align-items: stretch !important;
        gap: 4px;
        padding: 14px 0 8px;
    }

        .tm-nav .nav-link,
        .tm-nav-cta {
            display: block;
            text-align: center;
            width: 100%;
        }

    .tm-dropdown {
        background: rgba(7, 20, 36, .98);
        margin: 4px 0 8px;
    }

    .list-toolbar {
        align-items: stretch !important;
        flex-direction: column;
    }

        .list-toolbar form,
        .hero form,
        .newsletter-inline {
            display: grid !important;
            grid-template-columns: 1fr;
        }

    .comparison-grid {
        grid-template-columns: 1fr;
    }

    .insight-strip {
        margin-top: 0;
        padding-top: 18px;
        background: #f7f9fc;
    }

    .tm-card-body {
        padding: 18px;
    }

    .desk-card .tm-card-body {
        padding: 14px;
    }

  .footer-bottom {
    align-items: flex-start;
    flex-direction: column;
  }
  .partner-shell {
    grid-template-columns: 1fr;
    padding: 18px;
  }
  .partner-track a {
    min-width: 158px;
    height: 104px;
    padding: 12px;
  }
  .partner-track img {
    width: 108px;
    height: 52px;
  }
  .partner-track span { font-size: .8rem; }

    .human-check .input-group {
        flex-direction: column;
    }

    .human-check .input-group-text,
    .human-check .form-control {
        width: 100%;
        border-radius: 8px !important;
    }

    .human-check .form-control {
        margin-top: 6px;
    }

    .auth-premium {
        min-height: auto;
    }

    .auth-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .auth-proof-grid {
        grid-template-columns: 1fr;
    }

    .auth-card {
        padding: 22px;
    }

    .detail-hero {
        padding: 32px 0 28px;
    }

    .detail-shell {
        display: block;
        padding-top: 24px;
    }

    .detail-side {
        position: static;
        margin-bottom: 22px;
    }

    .newsletter-card,
    .detail-prev-next {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 992px) {
    .navbar .dropdown:hover .dropdown-menu {
        display: block;
        margin-top: 0;
    }
}
