:root {
    --sticky-header-offset: 96px;
}

html {
    scroll-padding-top: calc(var(--sticky-header-offset) + 14px);
    scrollbar-gutter: stable;
}

:where(section, article, aside, nav, div, h1, h2, h3, h4, h5, h6)[id],
:target {
    scroll-margin-top: calc(var(--sticky-header-offset) + 18px);
}

body.is-ready .site-main > .container:first-child {
    transition:
        opacity 420ms ease,
        transform 420ms cubic-bezier(0.22, 0.61, 0.36, 1);
}

@supports (content-visibility: auto) {
    body:not(.admin-page) :is(
        .article-card,
        .search-result,
        .archive-pdf-item,
        .archive-article-item,
        .pdf-card,
        .related-item,
        .widget,
        .stat-card,
        .stat-box,
        .editorial-pill,
        .heritage-card,
        .achievement-card,
        .bhajan-track-item
    ) {
        content-visibility: auto;
        contain-intrinsic-size: 280px;
    }

    body:not(.admin-page) :is(
        .archive-section,
        .live-widgets-section,
        .about-section,
        .contact-section,
        .bhajan-playlist-shell
    ) {
        content-visibility: auto;
        contain-intrinsic-size: 420px;
    }
}

body.motion-rich .hero-banner,
body.motion-rich .article-card,
body.motion-rich .search-result,
body.motion-rich .archive-pdf-item,
body.motion-rich .archive-article-item,
body.motion-rich .pdf-card,
body.motion-rich .related-item,
body.motion-rich .widget,
body.motion-rich .stat-card,
body.motion-rich .stat-box {
    transform-origin: center center;
    backface-visibility: hidden;
}

body.motion-rich .hero-banner::after,
body.motion-rich .article-card,
body.motion-rich .search-result,
body.motion-rich .archive-pdf-item,
body.motion-rich .archive-article-item,
body.motion-rich .pdf-card,
body.motion-rich .related-item,
body.motion-rich .widget,
body.motion-rich .stat-card,
body.motion-rich .stat-box {
    transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-padding-top: 0;
    }
}
