/* V5.5.8.1: preserve approved art direction; improve compact information flow. */
/* Match the runtime gate exactly. Touch-only tablets also have no globe. */
@media (max-width: 1023px), (hover: none), (pointer: coarse) {
    [data-sbi-v53-root] #impact .sbi-impact-globe { display: none !important; }
    [data-sbi-v53-root] #impact .sbi-impact-layout {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: auto auto !important;
        grid-template-areas: "intro" "stats" !important;
        min-height: 0 !important;
        row-gap: 1.25rem !important;
    }
    [data-sbi-v53-root] #impact .sbi-impact-intro {
        grid-area: intro !important;
        min-width: 0;
    }
    [data-sbi-v53-root] #impact .sbi-impact-stats {
        grid-area: stats !important;
        min-width: 0;
    }
}

/* Descriptive actions can wrap on narrow screens without losing their target. */
@media (max-width: 767px) {
    [data-sbi-v53-root] :is(.sbi-service-detail-link, .sbi-visual-open) {
        max-width: 100%;
        white-space: normal;
        overflow-wrap: anywhere;
        min-height: 44px;
    }
    [data-sbi-v53-root] #impact .sbi-impact-stats {
        gap: .75rem !important;
    }
}

/* A readable, consistent focus state without changing pointer appearance. */
[data-sbi-v53-root] :is(a, button):focus-visible {
    outline: 2px solid #d8bdff;
    outline-offset: 4px;
}
@media (prefers-reduced-motion: reduce) {
    [data-sbi-v53-root] :is(.sbi-reveal, .sbi-proof-number, .sbi-proof-number::before, .sbi-proof-number::after) {
        animation: none !important;
        transition: none !important;
    }
    [data-sbi-v53-root] .sbi-reveal { opacity: 1 !important; transform: none !important; }
}
