

    /* --- page-specific sections (unique per page) --- */
    .tv-eyebrow {
        display: inline-block;
        margin-bottom: 0.5rem;
        color: #0f1f7a;
        font-size: 0.85rem;
        font-weight: 600;
        letter-spacing: 1px;
        text-transform: uppercase;
    }
    .tv-eyebrow-light {
        display: inline-block;
        margin-bottom: 0.5rem;
        color: rgba(255,255,255,0.8);
        font-size: 0.85rem;
        font-weight: 600;
        letter-spacing: 1px;
        text-transform: uppercase;
    }
    .tv-cta {
        padding: 3rem 2rem;
        border-radius: 20px;
    }

    .tv-cta {
        background: linear-gradient(135deg, #0f1f7a 0%, #0056b3 100%);
        color: #fff;
    }

    .tv-count-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 1rem;
    }
    .tv-count-grid > div {
        padding: 1.5rem;
        background: #fff;
        border: 1px solid #e9ecef;
        border-left: 4px solid #0f1f7a;
        border-radius: 4px 15px 15px 4px;
        transition: all 0.3s ease;
    }
    .tv-count-grid > div:hover { box-shadow: 0 10px 30px rgba(0,0,0,0.08); transform: translateY(-4px); }
    .tv-count-when {
        display: inline-block;
        margin-bottom: 0.5rem;
        padding: 0.2rem 0.7rem;
        border-radius: 50px;
        background: #f8f9fa;
        color: #0f1f7a;
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.5px;
        text-transform: uppercase;
    }
    .tv-split { border-radius: 20px; overflow: hidden; border: 1px solid #e9ecef; }
    .tv-split-a { padding: 2.5rem; background: linear-gradient(135deg, #0f1f7a 0%, #0056b3 100%); color: #fff; }
    .tv-split-b { padding: 2.5rem; background: #fff; }
    .tv-docs { margin: 0 0 1.25rem; padding: 0; list-style: none; }
    .tv-docs li { padding: 0.7rem 0; border-bottom: 1px solid #e9ecef; }
    .tv-docs li:last-child { border-bottom: 0; }
    .tv-docs strong { display: block; color: #333; font-size: 0.95rem; }
    .tv-docs span { color: #6c757d; font-size: 0.85rem; }


/* CTA panel: matches the /blog and /pricing treatment */
.tv-cta {
    background: rgb(15 31 122) !important;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
}
.tv-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url(/static/images/pet-bg-pattern.png);
    background-repeat: repeat;
    background-size: 475px;
    filter: invert(1);
    opacity: 0.13;
    pointer-events: none;
    z-index: 0;
}
.tv-cta > * { position: relative; z-index: 1; }
