/*
Theme Name: Janamat Pro
Theme URI: https://janamatnews.in/
Author: Sceneverse Studios
Author URI: https://janamatnews.in/
Requires at least: 4.0
Requires PHP: 5.6
Tested up to: 7.0
Description: Janamat Pro is a custom newsroom theme for Janamat News, designed for a sharper red-gradient identity, stronger homepage hierarchy, animated text reveals, and cleaner professional alignment across desktop and mobile.
Template: covernews
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: janamat-pro
Tags: news, blog, entertainment, one-column, two-columns, three-columns, four-columns, grid-layout, block-patterns, block-styles, left-sidebar, right-sidebar, custom-header, flexible-header, custom-background, custom-logo, custom-menu, custom-colors, featured-images, full-width-template, post-formats, rtl-language-support, footer-widgets, translation-ready, theme-options, threaded-comments, wide-blocks

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Janamat Pro WordPress Theme, Copyright 2026 Sceneverse Studios
Janamat Pro is distributed under the terms of the GNU GPL v2 or later.
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+Bengali:wght@400;500;600;700;800&display=swap');

html,
body,
button,
input,
select,
optgroup,
textarea,
.site,
.site * {
    font-family: "Noto Serif Bengali", serif;
}

.header-layout-3 .site-header .site-branding .site-title {
    text-transform: none;
}

.widget-title,
.widget-title span,
.covernews-heading-style,
.em-reated-posts .related-title,
.wp-block-group .wp-block-search__label,
.wp-block-group .wp-block-heading,
.widget_block .wp-block-search__label,
.widget_block .wp-block-heading,
#secondary .widget-title span,
span.header-after {
    font-size: 16px;
}

.af-tabs.nav-tabs>li>a,
.af-tabs.nav-tabs>li.active>a,
.af-tabs.nav-tabs>li.active>a:focus,
.af-tabs.nav-tabs>li.active>a:hover {
    color: #000000;
}

.wp-element-button,
.wp-block-button.is-style-fill a,
.woocommerce a.button:hover,
:is(.woocommerce, .woocommerce-page) :is(#content input.button, #respond input#submit, a.button, button.button, input.button),
.woocommerce nav.woocommerce-pagination ul li :is(a:hover, a:focus, span.current),
:is(.woocommerce, .woocommerce-page) :is(#content input.button.alt:hover, #respond input#submit.alt:hover,
    a.button.alt:hover, button.button.alt:hover, input.button.alt:hover),
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #review_form #respond .form-submit input#submit:hover,
.covernews-reaction-button .reaction-percentage,
.wc-block-checkout .wp-block-button__link,
:root .wc-block-featured-product__link :where(.wp-element-button, .wp-block-button__link),
:root .wc-block-featured-category__link :where(.wp-element-button, .wp-block-button__link),
.woocommerce-notices-wrapper .button,
.wc-block-grid .wp-block-button__link,
.wp-block-button.wc-block-components-product-button .wp-block-button__link,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link,
body a.sidr-class-sidr-button-close,
#infinite-handle span,
.wp-block-search__button,
body .wc-block-components-button,
body .wc-block-components-button:hover,
body .secondary-color,
body nav.main-navigation,
body :is(button, input[type="button"], input[type="reset"], input[type="submit"]),
body .aft-affiliate-button,
body .site-content .search-form .search-submit,
body .site-footer .search-form .search-submit,
body .em-post-format i,
.widget-title span::before,
.em-reated-posts .related-title::before,
.wp-block-group .wp-block-search__label::before,
.wp-block-group .wp-block-heading::before,
.widget_block .wp-block-search__label::before,
.widget_block .wp-block-heading::before,
body span.header-after:after,
body #secondary .widget-title span:after,
body .af-tabs.nav-tabs>li>a.active:after,
body .af-tabs.nav-tabs>li>a:hover:after,
body .exclusive-posts .exclusive-now,
body span.trending-no,
body .wp-block-tag-cloud.is-style-outline a:hover,
body .tagcloud a:hover {
    background: #B31942;
}

body.dark.aft-main-banner-slider-grid-2 .slider-with-2-editors-picks .categorized-story .grid-item-metadata .posts-author a:hover,
body.dark.aft-main-banner-slider-grid-2 .slider-with-2-editors-picks .categorized-story span.item-metadata.posts-date a:hover,
body.default.aft-main-banner-slider-grid-2 .slider-with-2-editors-picks .categorized-story span.author-links a:hover i,
body.default.aft-main-banner-slider-grid-2 .slider-with-2-editors-picks .categorized-story span.author-links a:hover,
body.dark.aft-main-banner-slider-full .main-slider.aft-banner-slider .slider-figcaption .slide-title a:hover,
body.default.aft-main-banner-slider-full .main-slider.aft-banner-slider .slider-figcaption .slide-title a:hover,
body.dark.aft-main-banner-slider-grid-2 .slider-with-2-editors-picks .spotlight-post .title-heading .article-title-2 a:hover,
body.default.aft-main-banner-slider-grid-2 .slider-with-2-editors-picks .spotlight-post .title-heading .article-title-2 a:hover,
body.dark .entry-content>[class*="wp-block-"] .wp-block-post-title a:not([class]):hover,
body.default .entry-content>[class*="wp-block-"] .wp-block-post-title a:not([class]):hover,
body.dark .entry-content>[class*="wp-block-"] .taxonomy-category a:not([class]),
body.default .entry-content>[class*="wp-block-"] .taxonomy-category a:not([class]),
body.default .entry-content>[class*="wp-block-"] .wp-block-categories-list.wp-block-categories a:not([class]):hover,
body.dark .latest-posts-full .header-details-wrapper .entry-title a:hover,
body.dark .entry-title a:hover,
body.dark.archive article .entry-title a:hover,
body.dark h3.article-title a:hover,
body.dark .trending-posts-carousel h3.article-title a:hover,
#wp-calendar caption,
#wp-calendar td#today,
.wp-calendar-nav a,
.entry-title a:hover,
.comments-area .comment-author a:hover,
.comment .comment-reply-link:hover,
.comments-area .reply .comment-reply-link:hover,
.comment-meta a:visited:hover,
body.default.archive article .entry-title a:hover,
body:is(.default, .dark) h3.article-title.article-title-1 a:hover,
body:is(.default, .dark) .article-title.article-title-1 a:hover,
body:is(.default, .dark) .article-title a:hover,
body:is(.default, .dark) .wc-block-components-product-name:hover,
body:is(.default, .dark) .covernews-toc-list a:hover,
body:is(.default, .dark) .covernews-sponsor a:hover,
body:is(.default, .dark) .covernews-source a:hover,
a.author-website:hover,
.author-box-content a.author-posts-link:hover,
.trending-posts-carousel h3.article-title a:hover,
.product_meta>span a:hover,
.wp-block-button.is-style-outline a,
.entry-content>[class*="wp-block-"] a.wc-block-grid__product-link:hover,
body .entry-content ul.wc-block-product-categories-list a:not([class]):hover,
body .entry-content>[class*="wp-block-"] .wc-block-review-list-item__product a:hover,

.default .wp-block-latest-comments a:hover,
.default .wp-block-page-list li a:hover,
.default .wp-block-latest-posts li a:hover,
.default .wp-block-archives li a:hover,
.default .widget_recent_comments li a:hover,
.default .widget_pages li a:hover,
.default .widget_archive li a:hover,
.default .widget_meta li a:hover,
.default .widget_nav_menu li a:hover,
.default .widget_recent_entries li a:hover,

body:is(.default, .dark) .exclusive-slides a:hover,
body:is(.default, .dark).aft-main-banner-slider-full .main-slider .slider-figcaption .grid-item-metadata .author-links a:hover,
body:is(.default, .dark).aft-main-banner-slider-full .main-slider .slider-figcaption .grid-item-metadata .author-links a:hover i,
body .hentry .entry-header-details .post-excerpt a.aft-readmore:hover,
body:is(.default, .dark) .post-description .aft-readmore-wrapper a.aft-readmore:hover,
body:is(.default, .dark) .item-metadata.posts-date a:hover,
body:is(.default, .dark) .hentry .header-details-wrapper .posts-author a:hover,
body:is(.default, .dark) .grid-item-metadata .posts-date a:hover,
body:is(.default, .dark) .grid-item-metadata .posts-author a:hover,
body:is(.default, .dark) .aft-full-title-first .author-links a:hover,
body:is(.default, .dark) .aft-comment-count a:hover,
body:is(.default, .dark) .aft-view-count a:hover,
body :is(a:visited:hover, a:hover, a:focus, a:active),
body .figure-categories-2 .cat-links a {
    color: #B31942;
}

body h3.covernews-subtitle,
body .sp-thumbnail-container.sp-selected-thumbnail:before,
body #loader:after {
    border-left-color: #B31942;
}
span.menu-description{
    background: #B31942;
}

#scroll-up::after {
    border-bottom-color: #B31942;
}

.wp-element-button,
.wp-block-button.is-style-fill a,
.wp-block-button.is-style-outline a,
body .covernews-post-badge {
    border-color: #B31942;
}

.aft-main-banner-slider-grid .trending-story .figure-categories .cat-links a.covernews-categories,
.full-plus-list .spotlight-post:first-of-type .figure-categories .cat-links a.covernews-categories,
.figure-categories .cat-links a.covernews-categories {
    background-color: #B31942;
}

.aft-main-banner-slider-list-tabbed .af-main-banner-editors-picks .figure-categories .cat-links a.covernews-categories,
.aft-main-banner-slider-list .af-main-banner-editors-picks .figure-categories .cat-links a.covernews-categories,
.tabbed-story .figure-categories .cat-links a.covernews-categories,
.covernews_tabbed_posts_widget .figure-categories .cat-links a.covernews-categories,
.list .spotlight-post .figure-categories .cat-links a.covernews-categories,
.full-plus-list .spotlight-post .figure-categories .cat-links a.covernews-categories,
.trending-posts-vertical-carousel .figure-categories .cat-links a.covernews-categories,
.trending-story .figure-categories .cat-links a.covernews-categories {
    color: #B31942;
}


body .figure-categories .cat-links a.category-color-1 {
    background-color: #B31942;
}

.aft-main-banner-slider-list-tabbed .af-main-banner-editors-picks .figure-categories .cat-links a.covernews-categories,
.aft-main-banner-slider-list .af-main-banner-editors-picks .figure-categories .cat-links a.covernews-categories,
body .tabbed-story .figure-categories .cat-links a.covernews-categories,
body .tabbed-container .figure-categories .cat-links a.covernews-categories.category-color-1,
body .trending-story .figure-categories .cat-links a.covernews-categories.category-color-1,
body .list .spotlight-post .figure-categories .cat-links a.covernews-categories.category-color-1,
body .full-plus-list .spotlight-post .figure-categories .cat-links a.covernews-categories.category-color-1,
body .covernews_tabbed_posts_widget .figure-categories .cat-links a.covernews-categories.category-color-1,
body .trending-posts-vertical-carousel .figure-categories .cat-links a.covernews-categories.category-color-1 {
    color: #B31942;
}

body.aft-main-banner-slider-grid .trending-story .figure-categories .cat-links a.covernews-categories,
body .full-plus-list .spotlight-post:first-of-type .figure-categories .cat-links a.covernews-categories.category-color-1,
body .full-plus-list .spotlight-post:first-of-type .figure-categories .cat-links a.covernews-categories,
body .figure-categories .cat-links a.covernews-categories {
    color: #ffffff;
    background-color: #B31942;
}

body span.header-after.category-color-1:after {
    background: #B31942;
}



body .figure-categories .cat-links a.category-color-2 {
    background-color: #002868;
    
}

body .tabbed-container .figure-categories .cat-links a.covernews-categories.category-color-2,
body .trending-story .figure-categories .cat-links a.covernews-categories.category-color-2,
body .list .spotlight-post .figure-categories .cat-links a.covernews-categories.category-color-2,
body .full-plus-list .spotlight-post .figure-categories .cat-links a.covernews-categories.category-color-2,
body .covernews_tabbed_posts_widget .figure-categories .cat-links a.covernews-categories.category-color-2,
body .trending-posts-vertical-carousel .figure-categories .cat-links a.covernews-categories.category-color-2 {
    color: #002868;
    
}

body.aft-main-banner-slider-grid .trending-story .figure-categories .cat-links a.covernews-categories.category-color-2,
body .full-plus-list .spotlight-post:first-of-type .figure-categories .cat-links a.covernews-categories.category-color-2 {
    color: #ffffff;
    background-color: #002868;
    
}

body span.header-after.category-color-2:after {
    background: #002868;
    
}

/*
 * Janamat News corporate polish
 */
:root {
    --jm-accent: #a51222;
    --jm-accent-dark: #7d0e1a;
    --jm-accent-soft: #f3d7db;
    --jm-ink: #111827;
    --jm-muted: #5b6576;
    --jm-border: #e5e7eb;
    --jm-surface: #ffffff;
    --jm-soft: #f6f8fc;
    --jm-footer: #0f172a;
    --jm-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
    --jm-radius: 18px;
}

body,
button,
input,
select,
textarea {
    color: var(--jm-ink);
}

body {
    background: linear-gradient(180deg, #f4f7fb 0%, #ffffff 320px);
}

body .site {
    background: transparent;
}

body .navigation-container {
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(12px);
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

body .main-navigation {
    border-top: 1px solid rgba(165, 18, 34, 0.08);
}

body .main-navigation a,
body #site-navigation ul li a {
    font-weight: 700;
    letter-spacing: 0.01em;
}

body .main-navigation .current-menu-item > a,
body .main-navigation a:hover,
body .main-navigation a:focus {
    color: var(--jm-accent);
}

body .banner-exclusive-posts-wrapper,
body .exclusive-posts {
    background: linear-gradient(90deg, #7d0e1a 0%, #a51222 45%, #d12d3f 100%);
}

body .banner-exclusive-posts-wrapper .exclusive-now,
body .banner-exclusive-posts-wrapper a,
body .banner-exclusive-posts-wrapper .marquee-nav {
    color: #ffffff;
}

body .aft-main-banner-wrapper,
body .main-slider-wrapper,
body .latest-posts-grid,
body .full-item-masonry,
body .grid-layout,
body .missed-posts-area,
body #secondary .widget,
body .primary-footer {
    background: var(--jm-surface);
    border: 1px solid var(--jm-border);
    border-radius: var(--jm-radius);
    box-shadow: var(--jm-shadow);
    overflow: hidden;
}

body .site-content .post,
body .site-content article,
body.archive article,
body.search article {
    background: #ffffff;
    border: 1px solid var(--jm-border);
    border-radius: 16px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

body .site-content .post:hover,
body .site-content article:hover,
body.archive article:hover,
body.search article:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 38px rgba(15, 23, 42, 0.10);
}

body .widget-title,
body .widget-title-1,
body .header-after1,
body .font-family-1.widget-title {
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body .widget-title span::before,
body span.header-after:after,
body #secondary .widget-title span:after,
body .header-after1:after {
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--jm-accent) 0%, #f97316 100%);
}

body .entry-title a,
body .post-title a,
body .af-title a {
    color: var(--jm-ink);
}

body .entry-title a:hover,
body .post-title a:hover,
body .af-title a:hover {
    color: var(--jm-accent);
}

body .entry-meta,
body .post-date,
body .author-links,
body .site-description,
body .widget p,
body .widget li,
body .site-info,
body .secondary-footer,
body .archive-content,
body .excerpt {
    color: var(--jm-muted);
}

body .aft-readmore,
body .read-img a,
body .wp-element-button,
body .wp-block-button.is-style-fill a,
body :is(button, input[type="button"], input[type="reset"], input[type="submit"]),
body .site-content .search-form .search-submit,
body .site-footer .search-form .search-submit {
    background: linear-gradient(135deg, var(--jm-accent) 0%, #d12d3f 100%);
    color: #ffffff;
    border: none;
    border-radius: 999px;
    box-shadow: 0 10px 20px rgba(165, 18, 34, 0.20);
}

body .aft-readmore:hover,
body .read-img a:hover,
body .wp-element-button:hover,
body .wp-block-button.is-style-fill a:hover,
body :is(button, input[type="button"], input[type="reset"], input[type="submit"]):hover {
    background: linear-gradient(135deg, var(--jm-accent-dark) 0%, var(--jm-accent) 100%);
    color: #ffffff;
}

body .primary-footer {
    background: linear-gradient(180deg, #111827 0%, #1f2937 100%);
}

body .primary-footer,
body .primary-footer a,
body .primary-footer .widget-title,
body .primary-footer p,
body .primary-footer li {
    color: #f8fafc;
}

body .secondary-footer {
    background: var(--jm-footer);
    color: #cbd5e1;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

body .secondary-footer a,
body .site-info a {
    color: #ffffff;
}

body #scroll-up {
    background: var(--jm-accent);
    border-radius: 999px;
    box-shadow: 0 12px 24px rgba(165, 18, 34, 0.25);
}

body .figure-categories .cat-links a {
    border-radius: 999px;
    padding-left: 10px;
    padding-right: 10px;
}

body .search-form input[type="search"] {
    border-radius: 999px;
    border: 1px solid var(--jm-border);
    background: #ffffff;
}

body #secondary .widget,
body .widget {
    padding-top: 6px;
}

@media (max-width: 991px) {
    body .aft-main-banner-wrapper,
    body .main-slider-wrapper,
    body .latest-posts-grid,
    body .full-item-masonry,
    body .grid-layout,
    body .missed-posts-area,
    body #secondary .widget,
    body .primary-footer {
        border-radius: 14px;
    }

    body .main-navigation {
        border-top: none;
    }
}

@media (max-width: 767px) {
    body {
        background: #f8fafc;
    }

    body .navigation-container {
        backdrop-filter: none;
    }

    body .widget-title,
    body .widget-title-1,
    body .header-after1,
    body .font-family-1.widget-title {
        font-size: 15px;
    }
}

body .figure-categories .cat-links a.category-color-3 {
    background-color: #0f4cc5;
    
}

body .tabbed-container .figure-categories .cat-links a.covernews-categories.category-color-3,
body .trending-story .figure-categories .cat-links a.covernews-categories.category-color-3,
body .list .spotlight-post .figure-categories .cat-links a.covernews-categories.category-color-3,
body .full-plus-list .spotlight-post .figure-categories .cat-links a.covernews-categories.category-color-3,
body .covernews_tabbed_posts_widget .figure-categories .cat-links a.covernews-categories.category-color-3,
body .trending-posts-vertical-carousel .figure-categories .cat-links a.covernews-categories.category-color-3 {
    color: #0f4cc5;
}

body.aft-main-banner-slider-grid .trending-story .figure-categories .cat-links a.covernews-categories.category-color-3,
body .full-plus-list .spotlight-post:first-of-type .figure-categories .cat-links a.covernews-categories.category-color-3 {
    color: #ffffff;
    background-color: #0f4cc5;
}

body span.header-after.category-color-3:after {
    background: #0f4cc5;
}



body nav span.topbar-date,
body .header-layout-2 .site-header nav.main-navigation.aft-sticky-navigation .site-title a,
body nav.main-navigation.aft-sticky-navigation span.af-mobile-site-title-wrap .site-title a,
body nav.main-navigation .menu ul.menu-desktop>li>a>button,
body nav.main-navigation .menu ul.menu-desktop>li>a .angle-down,
body nav.main-navigation .menu ul.menu-desktop>li>a,
body nav :is(.search-icon:visited, .search-icon:hover, .search-icon:focus, .search-icon:active, .search-icon) {
    color: #fff;
}

nav.main-navigation .search-overlay.reveal-search .search-icon i.covernews-icon-search:before,
nav.main-navigation .search-overlay.reveal-search .search-icon i.covernews-icon-search:after,
body nav .offcanvas-menu span,
body .search-overlay.reveal-search .search-icon i.fa.fa-search:after,
body .search-overlay.reveal-search .search-icon i.fa.fa-search:before,
body .search-overlay.reveal-search .search-icon i.fa.search:after,
body nav .ham:before,
body nav .ham:after,
body nav .ham,
body .main-navigation .navigation-container ul>li>a:after,
body nav.main-navigation .menu .menu-mobile li a button:before,
body nav.main-navigation .menu .menu-mobile li a button:after,
body .navigation-container nav.main-navigation ul>li>a:after {
    background-color: #fff;
}

body:is(.default, .dark) figcaption.slider-figcaption-1 .article-title a:hover,
body:is(.default, .dark) figcaption.slider-figcaption-1 .slide-title a:hover
 {
    color: #ffffff;
}

@media only screen and (max-width: 991px) {
    nav .navigation-container ul li :is(a, a:visited) {
        color: #fff;
    }

    nav.main-navigation .menu .menu-mobile li a button:before,
    nav.main-navigation .menu .menu-mobile li a button:after {
        background-color: #fff;
    }
}

@media only screen and (min-width: 992px) {
    .main-navigation .menu ul li .children li a {
        display: flex;
        align-items: center;
        color: #fff;
    }
}

#scroll-up:focus::after {
    border-bottom-color: #373737;
}

body nav.main-navigation {
    background: #002868;
}

@media only screen and (max-width: 991px) {
    body nav.main-navigation .menu .menu-mobile {
        background: #002868;
    }
}

/* .wp-block-archives-list li a{
    display: table;
} */

.wp-block-code code, .wp-block-code .editor-plain-text{
    background-color: transparent;
}

/*
 * Janamat News pro newsroom pass 2
 */
body {
    --jm-hero-shadow: 0 30px 60px rgba(15, 23, 42, 0.18);
}

body .site-header {
    position: relative;
    z-index: 20;
}

body .site-branding {
    position: relative;
    padding: 18px 26px;
    border-radius: 24px;
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.32), transparent 34%),
        linear-gradient(135deg, #7d0e1a 0%, #a51222 48%, #dd4b5d 100%);
    box-shadow: 0 24px 60px rgba(165, 18, 34, 0.22);
    overflow: hidden;
}

body .site-branding:before {
    content: '';
    position: absolute;
    inset: auto -10% -55% auto;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
    filter: blur(6px);
}

body .site-branding .site-title a,
body .site-branding .site-description,
body .site-branding .custom-logo-link + .site-title a {
    color: #ffffff;
}

body .site-branding .site-description {
    opacity: 0.92;
    letter-spacing: 0.03em;
}

body .banner-exclusive-posts-wrapper {
    margin-top: 18px;
    border-radius: 18px;
    box-shadow: 0 18px 44px rgba(165, 18, 34, 0.16);
    overflow: hidden;
}

body .main-slider-wrapper,
body .aft-main-banner-wrapper {
    position: relative;
    border: 0;
    box-shadow: var(--jm-hero-shadow);
}

body .main-slider-wrapper:before,
body .aft-main-banner-wrapper:before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(15, 23, 42, 0.00) 0%, rgba(15, 23, 42, 0.08) 46%, rgba(15, 23, 42, 0.72) 100%);
    z-index: 1;
}

body .main-slider-wrapper .slick-list,
body .main-slider-wrapper .slick-track,
body .main-slider-wrapper .slick-slide,
body .main-slider-wrapper .af-banner-slider-thumbnail,
body .main-slider-wrapper figure {
    position: relative;
}

body .main-slider-wrapper .slider-figcaption,
body .main-slider-wrapper .slider-figcaption-1 {
    position: relative;
    z-index: 3;
    max-width: 78%;
    padding: 22px 26px 30px;
}

body .main-slider-wrapper .slide-title a,
body .main-slider-wrapper .article-title a {
    color: #ffffff;
    text-shadow: 0 10px 28px rgba(15, 23, 42, 0.38);
}

body .article-title,
body .article-title-1,
body .slide-title,
body .entry-title,
body .post-title,
body .af-title,
body .widget-title,
body .header-after1,
body .site-branding,
body .grid-item-metadata,
body .entry-meta,
body .post-excerpt,
body .excerpt,
body .wp-block-latest-posts__post-title {
    animation: jmFadeLift 0.9s cubic-bezier(.2, .8, .2, 1) both;
}

body .latest-posts-grid:nth-child(2n) .article-title,
body .latest-posts-grid:nth-child(2n) .entry-meta,
body .latest-posts-grid:nth-child(2n) .post-excerpt {
    animation-delay: 0.08s;
}

body .latest-posts-grid:nth-child(3n) .article-title,
body .latest-posts-grid:nth-child(3n) .entry-meta,
body .latest-posts-grid:nth-child(3n) .post-excerpt {
    animation-delay: 0.16s;
}

body .grid-item-metadata,
body .entry-meta,
body .post-excerpt,
body .excerpt {
    animation-duration: 1.05s;
}

body .latest-posts-grid,
body .full-item-masonry article,
body .grid-layout article,
body .trending-posts-vertical-carousel .spotlight-post,
body .tabbed-container .tab-content .tabbed-story {
    border: 1px solid rgba(226, 232, 240, 0.9);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 252, 0.98) 100%);
}

body .latest-posts-grid:hover,
body .full-item-masonry article:hover,
body .grid-layout article:hover,
body .trending-posts-vertical-carousel .spotlight-post:hover,
body .tabbed-container .tab-content .tabbed-story:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 54px rgba(15, 23, 42, 0.12);
}

body .figure-categories .cat-links a,
body .exclusive-posts .exclusive-now,
body span.trending-no {
    background: linear-gradient(135deg, #8f1020 0%, #c91c31 100%);
    box-shadow: 0 10px 24px rgba(165, 18, 34, 0.18);
}

body .figure-categories .cat-links a {
    color: #ffffff !important;
    font-weight: 700;
    letter-spacing: 0.02em;
}

body .widget-title-section,
body .editor-posts-tabbed-panel {
    position: relative;
}

body .widget-title-section:after,
body .editor-posts-tabbed-panel:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -12px;
    height: 1px;
    background: linear-gradient(90deg, rgba(165, 18, 34, 0.24), rgba(165, 18, 34, 0));
}

body #secondary .widget,
body .primary-footer .widget,
body .widget_block {
    backdrop-filter: saturate(120%);
}

body .primary-footer {
    position: relative;
    background:
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.08), transparent 28%),
        linear-gradient(180deg, #101827 0%, #182234 100%);
}

body .primary-footer:before {
    content: '';
    position: absolute;
    inset: 0 0 auto 0;
    height: 3px;
    background: linear-gradient(90deg, #d12d3f 0%, #ff8358 50%, #ffd36b 100%);
}

body .wp-block-latest-posts__post-title,
body .widget_recent_entries a,
body .widget_categories a,
body .tagcloud a {
    transition: color 0.25s ease, transform 0.25s ease;
}

body .wp-block-latest-posts__post-title:hover,
body .widget_recent_entries a:hover,
body .widget_categories a:hover,
body .tagcloud a:hover {
    color: var(--jm-accent);
    transform: translateX(3px);
}

body .tagcloud a {
    border-radius: 999px;
    padding: 8px 12px;
    background: #fff5f6;
    border: 1px solid rgba(165, 18, 34, 0.10);
}

body .af-tabs.nav-tabs {
    gap: 10px;
}

body .af-tabs.nav-tabs > li > a {
    border-radius: 999px;
    padding: 10px 18px;
    background: #fff5f6;
    transition: all 0.25s ease;
}

body .af-tabs.nav-tabs > li.active > a,
body .af-tabs.nav-tabs > li > a:hover {
    background: linear-gradient(135deg, #a51222 0%, #d12d3f 100%);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(165, 18, 34, 0.18);
}

body .af-tabs.nav-tabs > li.active > a:after,
body .af-tabs.nav-tabs > li > a:hover:after {
    background-color: transparent;
}

@keyframes jmFadeLift {
    0% {
        opacity: 0;
        transform: translateY(22px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    body .article-title,
    body .article-title-1,
    body .slide-title,
    body .entry-title,
    body .post-title,
    body .af-title,
    body .widget-title,
    body .header-after1,
    body .site-branding,
    body .grid-item-metadata,
    body .entry-meta,
    body .post-excerpt,
    body .excerpt,
    body .wp-block-latest-posts__post-title {
        animation: none;
    }
}

@media (max-width: 991px) {
    body .site-branding {
        padding: 16px 18px;
        border-radius: 18px;
    }

    body .main-slider-wrapper .slider-figcaption,
    body .main-slider-wrapper .slider-figcaption-1 {
        max-width: 100%;
        padding: 18px 18px 24px;
    }
}

/*
 * Janamat News pro newsroom pass 3
 */
body .wrapper {
    max-width: 1380px;
}

body.home .site-main,
body.blog .site-main {
    padding-top: 12px;
}

body .site-branding {
    min-height: 118px;
    display: flex;
    align-items: center;
}

body .site-title {
    font-size: clamp(28px, 4vw, 46px);
    font-weight: 800;
    letter-spacing: 0.01em;
}

body .site-description {
    font-size: 13px;
    text-transform: uppercase;
}

body .banner-exclusive-posts-wrapper {
    border: 1px solid rgba(255, 255, 255, 0.08);
}

body .exclusive-posts .exclusive-now {
    position: relative;
    padding-inline: 18px;
    font-weight: 800;
    letter-spacing: 0.04em;
}

body .exclusive-posts .exclusive-now:after {
    content: '';
    position: absolute;
    top: 50%;
    right: -8px;
    width: 16px;
    height: 16px;
    background: inherit;
    transform: translateY(-50%) rotate(45deg);
    border-radius: 3px;
}

body .main-slider-wrapper {
    background:
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.14), transparent 30%),
        linear-gradient(180deg, #111827 0%, #182131 100%);
}

body .main-slider.full-slider-mode.aft-banner-slider .slick-slide img,
body .main-slider.full-slider-mode.aft-banner-slider .data-bg {
    transform: scale(1.02);
    transition: transform 1.8s ease;
}

body .main-slider.full-slider-mode.aft-banner-slider .slick-current img,
body .main-slider.full-slider-mode.aft-banner-slider .slick-current .data-bg {
    transform: scale(1.08);
}

body .main-slider-wrapper .slider-figcaption,
body .main-slider-wrapper .slider-figcaption-1 {
    background: linear-gradient(180deg, rgba(10, 15, 25, 0.08) 0%, rgba(10, 15, 25, 0.58) 100%);
    border-radius: 22px;
    backdrop-filter: blur(4px);
    margin: 0 0 18px 18px;
}

body .main-slider-wrapper .slide-title,
body .main-slider-wrapper .article-title.slide-title {
    font-size: clamp(24px, 3vw, 42px);
    line-height: 1.08;
    font-weight: 800;
}

body .main-slider-wrapper .grid-item-metadata,
body .main-slider-wrapper .posts-date a,
body .main-slider-wrapper .author-links a {
    color: rgba(255, 255, 255, 0.86);
}

body .latest-posts-grid,
body .grid-layout article,
body .full-item-masonry article,
body .trending-posts-vertical-carousel .spotlight-post,
body .tabbed-container .tab-content .tabbed-story {
    padding-bottom: 6px;
}

body .latest-posts-grid .post-item-details,
body .grid-layout article .post-item-details,
body .full-item-masonry article .post-item-details,
body .tabbed-story .post-item-details {
    padding: 14px 16px 18px;
}

body .article-title.article-title-1,
body .article-title,
body .entry-title {
    font-size: clamp(18px, 2vw, 24px);
    line-height: 1.24;
    font-weight: 800;
}

body .entry-meta,
body .grid-item-metadata,
body .posts-date,
body .author-links {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

body .widget,
body .widget_block,
body #secondary .widget {
    border-radius: 20px;
    padding-bottom: 10px;
}

body .widget-title-section,
body .widget-title,
body .widget-title-1,
body .header-after1,
body .font-family-1.widget-title {
    padding-inline: 4px;
}

body .widget-title-section {
    margin-bottom: 18px;
}

body .widget-title .header-after,
body .widget-title-1 .header-after,
body .header-after1 {
    font-size: 17px;
    font-weight: 800;
}

body .af-tabs.nav-tabs {
    padding: 0 2px 10px;
    border-bottom: 1px solid rgba(165, 18, 34, 0.10);
}

body .af-tabs.nav-tabs > li {
    margin-right: 8px;
}

body .af-tabs.nav-tabs > li > a {
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

body .tabbed-container .tab-content .tabbed-story {
    margin-bottom: 14px;
}

body .tabbed-container .tab-content .tabbed-story:last-child {
    margin-bottom: 0;
}

body .wp-block-latest-posts__list li,
body .widget_recent_entries li,
body .widget_categories li {
    padding: 10px 0;
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}

body .wp-block-latest-posts__list li:last-child,
body .widget_recent_entries li:last-child,
body .widget_categories li:last-child {
    border-bottom: 0;
}

body .wp-block-latest-posts__post-title,
body .widget_recent_entries a,
body .widget_categories a {
    font-weight: 700;
    line-height: 1.45;
}

body .primary-footer {
    margin-top: 28px;
}

body .primary-footer .widget-title,
body .primary-footer .widget-title-1,
body .primary-footer .wp-block-heading {
    font-size: 16px;
    font-weight: 800;
}

body .primary-footer .widget li,
body .primary-footer p,
body .primary-footer a {
    opacity: 0.94;
}

body .secondary-footer {
    padding-top: 14px;
    padding-bottom: 14px;
}

body .tagcloud {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

body .tagcloud a {
    margin: 0;
    font-size: 12px !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body .figure-categories {
    margin-bottom: 10px;
}

body .figure-categories .cat-links a {
    padding: 8px 12px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

body .latest-posts-grid .read-single:after,
body .grid-layout .read-single:after,
body .full-item-masonry .read-single:after {
    display: none;
}

body .aft-readmore {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 12px 18px;
}

@media (min-width: 1200px) {
    body .main-slider-wrapper .slider-figcaption,
    body .main-slider-wrapper .slider-figcaption-1 {
        max-width: 70%;
    }
}

@media (max-width: 991px) {
    body .site-title {
        font-size: 28px;
    }

    body .main-slider-wrapper .slide-title,
    body .main-slider-wrapper .article-title.slide-title {
        font-size: 24px;
    }
}

/*
 * Janamat Pro exact alignment pass
 */
body.home .aft-main-banner-wrapper > .container-wrapper,
body.home .latest-posts-area > .container-wrapper,
body.home .aft-blocks-wrapper > .container-wrapper,
body.home .missed-posts-area > .container-wrapper,
body.home .widget-area > .container-wrapper,
body.home .site-content > .container {
    max-width: 1360px;
}

body.home .row,
body.blog .row {
    align-items: stretch;
}

body .aft-main-banner-wrapper .col-sm-66,
body .aft-main-banner-wrapper .col-sm-34,
body .latest-posts-area .col-lg-4,
body .latest-posts-area .col-sm-4,
body .latest-posts-area .col-md-4,
body .latest-posts-area .col-sm-15,
body .site-content .col-lg-8,
body .site-content .col-lg-4 {
    display: flex;
}

body .aft-main-banner-wrapper .col-sm-66 > *,
body .aft-main-banner-wrapper .col-sm-34 > *,
body .latest-posts-area .col-lg-4 > *,
body .latest-posts-area .col-sm-4 > *,
body .latest-posts-area .col-md-4 > *,
body .latest-posts-area .col-sm-15 > *,
body .site-content .col-lg-8 > *,
body .site-content .col-lg-4 > * {
    width: 100%;
}

body .latest-posts-grid,
body .latest-posts-grid.post,
body article.latest-posts-grid,
body .grid-layout article,
body .full-item-masonry article {
    height: 100%;
    display: flex;
    flex-direction: column;
}

body .latest-posts-grid .post-item-image,
body .grid-layout article .post-item-image,
body .full-item-masonry article .post-item-image {
    overflow: hidden;
    border-radius: 18px 18px 0 0;
}

body .latest-posts-grid .post-item-details,
body .grid-layout article .post-item-details,
body .full-item-masonry article .post-item-details {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 10px;
}

body .post-excerpt,
body .excerpt,
body .entry-content {
    margin-top: auto;
}

body #secondary {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

body #secondary .widget {
    margin-bottom: 0;
}

body .widget,
body .widget_block,
body #secondary .widget,
body .latest-posts-grid,
body .main-slider-wrapper,
body .aft-main-banner-wrapper,
body .primary-footer {
    box-sizing: border-box;
}

body .main-navigation-container-items-wrapper,
body .site-branding-section {
    max-width: 1360px;
    margin-inline: auto;
}

body .site-branding-section,
body .navigation-container {
    padding-inline: 12px;
}

body .primary-footer .row {
    align-items: flex-start;
}

body .primary-footer-area {
    margin-bottom: 22px;
}

body .widget-title,
body .widget-title-1,
body .header-after1,
body .article-title,
body .article-title-1,
body .entry-title {
    word-break: break-word;
}

body .main-slider-wrapper .slider-figcaption,
body .main-slider-wrapper .slider-figcaption-1,
body .main-slider-wrapper .slide-title,
body .main-slider-wrapper .article-title.slide-title {
    text-align: left;
}

body .main-slider-wrapper .slider-figcaption,
body .main-slider-wrapper .slider-figcaption-1 {
    width: calc(100% - 36px);
}

body .widget-title .header-after:after,
body .widget-title-1 .header-after:after,
body .header-after1:after,
body span.header-after:after {
    margin-top: 8px;
}

body .wp-block-latest-posts__list,
body .widget_recent_entries ul,
body .widget_categories ul {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    body .aft-main-banner-wrapper .col-sm-66 {
        padding-right: 10px;
    }

    body .aft-main-banner-wrapper .col-sm-34 {
        padding-left: 10px;
    }

    body .main-slider-wrapper {
        min-height: 580px;
    }

    body .main-slider-wrapper .slick-list,
    body .main-slider-wrapper .slick-track,
    body .main-slider-wrapper .slick-slide,
    body .main-slider-wrapper .single-item {
        min-height: 580px;
    }

    body .main-slider-wrapper .af-banner-slider-thumbnail,
    body .main-slider-wrapper figure,
    body .main-slider-wrapper img {
        min-height: 580px;
        object-fit: cover;
    }
}

@media (max-width: 991px) {
    body .aft-main-banner-wrapper .col-sm-66,
    body .aft-main-banner-wrapper .col-sm-34,
    body .latest-posts-area .col-lg-4,
    body .latest-posts-area .col-sm-4,
    body .latest-posts-area .col-md-4,
    body .latest-posts-area .col-sm-15,
    body .site-content .col-lg-8,
    body .site-content .col-lg-4 {
        display: block;
    }

    body .main-slider-wrapper,
    body .aft-main-banner-wrapper,
    body .latest-posts-grid,
    body #secondary .widget {
        height: auto;
    }

    body .main-slider-wrapper .slider-figcaption,
    body .main-slider-wrapper .slider-figcaption-1 {
        width: calc(100% - 18px);
        margin: 0 0 12px 9px;
    }
}

/*
 * Janamat Pro custom portal layout
 */
.jm-homepage {
    background:
        radial-gradient(circle at top right, rgba(255, 107, 53, 0.12), transparent 26%),
        linear-gradient(180deg, #09111f 0%, #0d1525 100%);
    padding-bottom: 48px;
}

.jm-homepage .container-wrapper {
    width: min(1380px, calc(100% - 28px));
    margin-inline: auto;
}

.jm-topbar-shell {
    padding-top: 18px;
}

.jm-breaking-bar {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 14px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    padding: 14px 18px;
    background: linear-gradient(90deg, #7d0e1a 0%, #a51222 48%, #da4d31 100%);
    box-shadow: 0 20px 50px rgba(165, 18, 34, 0.18);
}

.jm-breaking-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    padding: 10px 16px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #fff;
}

.jm-breaking-track {
    display: flex;
    gap: 32px;
    white-space: nowrap;
    overflow: hidden;
    color: #fff;
    font-weight: 700;
}

.jm-breaking-track a {
    animation: jmTicker 18s linear infinite;
}

.jm-hero-shell {
    padding-top: 22px;
}

.jm-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(320px, 0.95fr);
    gap: 22px;
}

.jm-hero-lead {
    min-height: 620px;
    display: flex;
    align-items: flex-end;
    padding: 30px;
    border-radius: 30px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    box-shadow: 0 32px 70px rgba(9, 15, 25, 0.25);
}

.jm-hero-copy {
    max-width: 70%;
}

.jm-chip {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 8px 12px;
    background: linear-gradient(135deg, #a51222 0%, #ff6b35 100%);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    box-shadow: 0 10px 24px rgba(165, 18, 34, 0.22);
}

.jm-hero-copy h1 {
    margin-top: 18px;
    margin-bottom: 14px;
    font-size: clamp(34px, 4.3vw, 62px);
    line-height: 1.02;
    font-weight: 800;
    color: #fff;
}

.jm-hero-copy p {
    max-width: 760px;
    font-size: 18px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.82);
}

.jm-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 16px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.78);
}

.jm-hero-side {
    display: grid;
    gap: 18px;
}

.jm-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 26px;
    overflow: hidden;
    background: linear-gradient(180deg, #141f32 0%, #0f1827 100%);
    box-shadow: 0 24px 60px rgba(8, 14, 24, 0.22);
    transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.jm-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 28px 64px rgba(8, 14, 24, 0.28);
}

.jm-card-media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
}

.jm-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.jm-card:hover .jm-card-media img {
    transform: scale(1.06);
}

.jm-card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 12px;
    padding: 18px;
}

.jm-card-title {
    margin: 0;
    font-size: 24px;
    line-height: 1.22;
    font-weight: 800;
    color: #fff;
}

.jm-card-compact .jm-card-title {
    font-size: 20px;
}

.jm-card-excerpt {
    margin: 0;
    color: #a8b5c7;
    line-height: 1.7;
}

.jm-section-shell {
    padding-top: 26px;
}

.jm-two-column {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(300px, 0.9fr);
    gap: 24px;
}

.jm-main-column,
.jm-side-column {
    display: grid;
    gap: 24px;
}

.jm-section-box {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 28px;
    padding: 22px;
    background: linear-gradient(180deg, #101b2c 0%, #0c1625 100%);
    box-shadow: 0 24px 60px rgba(8, 14, 24, 0.2);
}

.jm-section-head {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.jm-section-kicker {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #ff9f77;
}

.jm-section-head h2 {
    margin: 0;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 800;
    color: #fff;
}

.jm-live-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.8fr);
    gap: 20px;
}

.jm-live-player {
    overflow: hidden;
    border-radius: 24px;
    aspect-ratio: 16 / 9;
    background: #000;
}

.jm-live-player iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.jm-live-notes {
    display: grid;
    gap: 18px;
}

.jm-note-card,
.jm-widget-card {
    border-radius: 22px;
    padding: 20px;
    background: linear-gradient(180deg, #18253b 0%, #111b2d 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.jm-note-card h3,
.jm-widget-card h3 {
    margin: 0 0 10px;
    font-size: 20px;
    font-weight: 800;
    color: #fff;
}

.jm-note-card p,
.jm-widget-card p,
.jm-widget-card li {
    margin: 0;
    color: #a8b5c7;
    line-height: 1.7;
}

.jm-widget-card ul {
    margin: 12px 0 0;
    padding-left: 18px;
}

.jm-card-grid {
    display: grid;
    gap: 20px;
}

.jm-card-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.jm-card-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.jm-widget-stack,
.jm-widget-list {
    display: grid;
    gap: 16px;
}

.jm-widget-list a {
    display: block;
    padding: 14px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 17px;
    line-height: 1.5;
    font-weight: 700;
    transition: color 0.2s ease, transform 0.2s ease;
}

.jm-widget-list a:last-child {
    border-bottom: 0;
}

.jm-widget-list a:hover {
    color: #ffb295;
    transform: translateX(4px);
}

.jm-ad-card {
    display: grid;
    place-items: center;
    min-height: 250px;
    border-style: dashed;
    text-align: center;
}

.jm-ad-card span,
.jm-ad-card strong {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.18em;
}

@keyframes jmTicker {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}

@media (max-width: 1200px) {
    .jm-card-grid-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .jm-hero-grid,
    .jm-two-column,
    .jm-live-grid,
    .jm-card-grid-3,
    .jm-card-grid-2 {
        grid-template-columns: 1fr;
    }

    .jm-hero-lead {
        min-height: 460px;
        padding: 22px;
    }

    .jm-hero-copy {
        max-width: 100%;
    }

    .jm-hero-copy h1 {
        font-size: 34px;
    }

    .jm-section-head h2 {
        font-size: 24px;
    }
}

/* Janamat Pro custom header */
.jm-header-shell {
    position: sticky;
    top: 0;
    z-index: 999;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(21, 16, 17, 0.08);
}

.jm-topbar {
    background: linear-gradient(90deg, #5d0307 0%, #7d0b10 48%, #5b0206 100%);
    color: #fff4f1;
}

.jm-topbar-inner,
.jm-mainbar-inner,
.jm-search-inner {
    width: min(1320px, calc(100% - 48px));
    margin: 0 auto;
}

.jm-topbar-inner {
    min-height: 52px;
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto minmax(260px, 1fr);
    align-items: center;
    gap: 20px;
}

.jm-topbar-date {
    font-size: 14px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.jm-topbar-languages {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

.jm-topbar-languages a,
.jm-ad-link {
    color: #fff7f4;
    font-size: 14px;
    line-height: 1;
    font-weight: 700;
    transition: opacity 0.2s ease, transform 0.2s ease, color 0.2s ease;
}

.jm-topbar-languages a.is-active {
    color: #ffd760;
}

.jm-topbar-languages a:hover,
.jm-ad-link:hover {
    color: #ffffff;
    opacity: 1;
    transform: translateY(-1px);
}

.jm-topbar-social {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    white-space: nowrap;
}

.jm-topbar-social a:not(.jm-ad-link) {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
}

.jm-topbar-social svg,
.jm-header-icon svg,
.jm-primary-menu .menu-item-has-children > a::after {
    width: 18px;
    height: 18px;
}

.jm-ad-link {
    margin-left: 12px;
    white-space: nowrap;
    opacity: 0.92;
}

.jm-mainbar {
    background: linear-gradient(180deg, #ffffff 0%, #fff7f2 100%);
    border-bottom: 1px solid rgba(117, 9, 14, 0.08);
}

.jm-mainbar-inner {
    min-height: 86px;
    display: grid;
    grid-template-columns: minmax(300px, auto) minmax(0, 1fr) auto;
    align-items: center;
    gap: 34px;
}

.jm-brandmark a {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #6a0910;
}

.jm-brandmark a.custom-logo-link img,
.jm-brandmark .custom-logo-link img {
    max-height: 58px;
    width: auto;
    display: block;
}

.jm-brandmark-badge {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: linear-gradient(135deg, #ea1d2c 0%, #8f060c 100%);
    color: #fff;
    font-size: 30px;
    font-weight: 800;
}

.jm-brandmark-text {
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
}

.jm-brandmark-text strong {
    color: #73080d;
    font-size: 26px;
    line-height: 1;
    font-weight: 800;
}

.jm-brandmark-text em {
    color: #7f6d6c;
    font-size: 13px;
    line-height: 1;
    font-style: normal;
}

.jm-primary-nav {
    min-width: 0;
    display: flex;
    justify-content: center;
}

.jm-primary-menu,
.jm-primary-menu > ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 14px;
}

.jm-primary-menu > li,
.jm-primary-menu > ul > li {
    position: relative;
}

.jm-primary-menu a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 24px 6px;
    color: #171717;
    font-size: 15px;
    line-height: 1;
    font-weight: 700;
    transition: color 0.2s ease;
    white-space: nowrap;
}

.jm-primary-menu .menu-item-has-children > a::after {
    content: "";
    display: inline-block;
    background: currentColor;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 10 5 5 5-5' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E") no-repeat center / contain;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 10 5 5 5-5' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E") no-repeat center / contain;
}

.jm-primary-menu li:hover > a,
.jm-primary-menu .current-menu-item > a,
.jm-primary-menu .current-menu-ancestor > a {
    color: #bf131e;
}

.jm-primary-menu .sub-menu {
    position: absolute;
    top: calc(100% - 10px);
    left: 0;
    min-width: 240px;
    margin: 0;
    padding: 14px 0;
    list-style: none;
    background: #ffffff;
    border-radius: 18px;
    border: 1px solid rgba(117, 9, 14, 0.08);
    box-shadow: 0 20px 45px rgba(20, 15, 16, 0.12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
}

.jm-primary-menu .sub-menu li {
    position: relative;
}

.jm-primary-menu .sub-menu a {
    width: 100%;
    justify-content: space-between;
    padding: 10px 18px;
    font-size: 15px;
    font-weight: 600;
}

.jm-primary-menu li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.jm-header-tools {
    display: flex;
    align-items: center;
    gap: 14px;
    justify-self: end;
}

.jm-header-icon {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(117, 9, 14, 0.12);
    background: #fff;
    color: #2f2324;
    transition: transform 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

button.jm-header-icon {
    padding: 0;
}

.jm-header-icon:hover {
    color: #bf131e;
    border-color: rgba(191, 19, 30, 0.25);
    box-shadow: 0 12px 24px rgba(191, 19, 30, 0.12);
    transform: translateY(-1px);
}

.jm-search-shell {
    max-height: 0;
    overflow: hidden;
    background: #fff;
    transition: max-height 0.25s ease, border-top-color 0.25s ease;
}

.jm-search-shell.is-open {
    max-height: 120px;
    border-top: 1px solid rgba(117, 9, 14, 0.08);
}

.jm-search-inner {
    padding: 18px 0 20px;
}

.jm-search-inner .search-form {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px;
}

.jm-search-inner input[type="search"] {
    min-height: 52px;
    border-radius: 16px;
    border: 1px solid rgba(117, 9, 14, 0.15);
    background: #fffaf8;
    padding: 0 18px;
    color: #1c1516;
    font-size: 16px;
}

.jm-search-inner .search-submit {
    min-width: 140px;
    min-height: 52px;
    border-radius: 16px;
    border: 0;
    background: linear-gradient(135deg, #d81322 0%, #8f060c 100%);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
}

body.admin-bar .jm-header-shell {
    top: 32px;
}

@media (max-width: 1200px) {
    .jm-topbar-inner,
    .jm-mainbar-inner,
    .jm-search-inner {
        width: min(1320px, calc(100% - 28px));
    }

    .jm-mainbar-inner {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 16px 0;
    }

    .jm-brandmark,
    .jm-header-tools {
        justify-self: center;
    }

    .jm-primary-menu {
        justify-content: center;
        flex-wrap: wrap;
    }

    .jm-primary-menu a {
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

@media (max-width: 991px) {
    .jm-topbar-inner {
        grid-template-columns: 1fr;
        justify-items: center;
        padding: 10px 0 12px;
    }

    .jm-topbar-date,
    .jm-topbar-social {
        justify-content: center;
        text-align: center;
    }

    .jm-topbar-languages {
        gap: 10px 14px;
    }

    .jm-primary-menu,
    .jm-primary-menu > ul {
        justify-content: center;
        gap: 4px;
    }

    .jm-primary-menu a {
        padding: 8px 10px;
        font-size: 15px;
    }

    .jm-primary-menu .sub-menu {
        display: none;
    }
}

@media (max-width: 782px) {
    body.admin-bar .jm-header-shell {
        top: 46px;
    }

    .jm-brandmark a.custom-logo-link img,
    .jm-brandmark .custom-logo-link img {
        max-height: 48px;
    }

    .jm-brandmark-text strong {
        font-size: 22px;
    }

    .jm-header-tools {
        gap: 10px;
    }

    .jm-header-icon {
        width: 42px;
        height: 42px;
    }

    .jm-search-inner .search-form {
        grid-template-columns: 1fr;
    }

    .jm-search-inner .search-submit {
        min-width: 100%;
    }
}

.jm-homepage-blank {
    min-height: calc(100vh - 138px);
    background: linear-gradient(180deg, #fffdfa 0%, #ffffff 100%);
}

.jm-first-screen-page {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    clear: both;
    padding: 0 !important;
    margin: 0 !important;
    background: linear-gradient(180deg, #fffdfa 0%, #ffffff 100%);
}

.jm-first-screen-wrap {
    width: min(1280px, calc(100% - 32px));
    margin: 0 auto;
    padding: 20px 0 12px;
}

.jm-breaking-strip {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    padding: 10px 14px;
    border-radius: 999px;
    background: linear-gradient(90deg, #fff4f0 0%, #fffaf8 100%);
    border: 1px solid rgba(191, 19, 30, 0.12);
    overflow: hidden;
}

.jm-breaking-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 16px;
    border-radius: 999px;
    background: linear-gradient(135deg, #db1623 0%, #94070d 100%);
    color: #fff;
    font-size: 13px;
    line-height: 1;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    white-space: nowrap;
}

.jm-breaking-marquee {
    overflow: hidden;
}

.jm-breaking-scroll {
    display: flex;
    align-items: center;
    gap: 28px;
    width: max-content;
    animation: jmBreakingScroll 56s linear infinite;
}

.jm-breaking-scroll a {
    position: relative;
    color: #4a1316;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 700;
    white-space: nowrap;
}

.jm-breaking-scroll a::before {
    content: "";
    width: 8px;
    height: 8px;
    display: inline-block;
    margin-right: 10px;
    border-radius: 999px;
    background: #d3131d;
}

.jm-first-screen-grid {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.jm-quickrail {
    position: sticky;
    top: 144px;
    display: grid;
    justify-items: center;
    gap: 12px;
    padding-top: 20px;
}

.jm-quickrail-badge {
    width: 58px;
    height: 58px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 5px;
    padding: 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, #c90f1a 0%, #8f060c 100%);
    box-shadow: 0 18px 32px rgba(176, 10, 22, 0.24);
}

.jm-quickrail-badge span {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #fff;
}

.jm-quickrail-title {
    color: #cf1b26;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.jm-quickrail-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 4px;
    width: 100%;
}

.jm-quickrail-list a {
    display: grid;
    justify-items: center;
    gap: 5px;
    padding: 7px 3px;
    border-radius: 14px;
    color: #2a2424;
    font-size: 12px;
    line-height: 1.35;
    text-align: center;
    font-weight: 700;
    transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.jm-quickrail-list a:hover,
.jm-quickrail-list a:focus-visible {
    color: #b20e17;
    background: #fff3f3;
    box-shadow: 0 12px 24px rgba(176, 10, 22, 0.12);
    transform: translateY(-2px);
}

.jm-quickrail-icon {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #2f2a2a;
}

.jm-quickrail-icon svg {
    width: 22px;
    height: 22px;
}

.jm-quickrail-text {
    display: block;
}

.jm-hero-stage {
    display: grid;
    gap: 16px;
    min-width: 0;
}

.jm-hero-panel {
    display: grid;
    grid-template-columns: minmax(0, 2.25fr) minmax(290px, 0.9fr);
    height: 410px;
    background: linear-gradient(135deg, #d3131d 0%, #a10811 100%);
    border-radius: 12px;
    overflow: hidden;
    align-items: stretch;
    box-shadow: 0 22px 52px rgba(132, 8, 16, 0.18);
}

.jm-hero-leadcard {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(270px, 1fr);
    height: 410px;
    min-width: 0;
    min-height: 0;
}

.jm-hero-image {
    display: block;
    min-width: 0;
    height: 410px;
    overflow: hidden;
}

.jm-hero-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.jm-hero-copyblock {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 12px;
    min-width: 0;
    height: 410px;
    padding: 24px 22px;
    overflow: hidden;
}

.jm-hero-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 7px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    color: #fff6f6;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.jm-hero-copyblock h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(30px, 2.7vw, 40px);
    line-height: 1.2;
    font-weight: 800;
}

.jm-hero-copyblock h1 a,
.jm-bullet-item a {
    color: inherit;
}

.jm-hero-copyblock h1 a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

.jm-hero-copyblock p {
    margin: 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: 15px;
    line-height: 1.55;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.jm-hero-readmore {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 999px;
    background: #ffffff;
    color: #990610;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.jm-hero-readmore:hover,
.jm-hero-readmore:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.18);
}

.jm-hero-bulletin {
    display: grid;
    align-content: start;
    gap: 0;
    height: 410px;
    min-width: 0;
    padding: 22px 20px;
    overflow: hidden;
}

.jm-hero-bulletin-head {
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.jm-hero-bulletin-head span {
    color: #fff8f8;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.jm-bullet-item {
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.jm-bullet-item:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.jm-bullet-item a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    color: #fff;
    font-size: 15px;
    line-height: 1.38;
    font-weight: 700;
}

.jm-bullet-item a::before {
    content: "\25B8";
    margin-right: 8px;
}

.jm-thumb-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.jm-thumb-card {
    display: grid;
    gap: 10px;
    min-width: 0;
    padding: 0 0 12px;
    border: 1px solid #eee4e2;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 12px 26px rgba(53, 42, 42, 0.07);
}

.jm-thumb-image {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
}

.jm-thumb-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.25s ease;
}

.jm-thumb-card:hover .jm-thumb-image img,
.jm-thumb-card:focus-within .jm-thumb-image img {
    transform: scale(1.04);
}

.jm-thumb-card h3 {
    margin: 0;
    padding: 0 12px;
    color: #1f1818;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 700;
}

.jm-thumb-card h3 a {
    color: inherit;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.jm-first-screen-city {
    display: grid;
    gap: 12px;
    margin-top: 16px;
}

.jm-city-heading {
    margin-bottom: 0;
}

.jm-city-heading h2 {
    font-size: clamp(22px, 2.1vw, 28px);
}

.jm-city-pulse-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.jm-city-pulse-card {
    display: grid;
    gap: 10px;
    min-width: 0;
    padding: 14px;
    border: 1px solid #eee4e2;
    border-top: 3px solid var(--jm-red);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 26px rgba(53, 42, 42, 0.07);
}

.jm-city-pulse-head span {
    display: block;
    color: var(--jm-red);
    font-size: 10px;
    line-height: 1.3;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.jm-city-pulse-head h3 {
    margin: 2px 0 0;
    color: #1f1818;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 800;
}

.jm-city-pulse-card .jm-portal-card-compact {
    box-shadow: none;
    border-color: #efe8e6;
    border-radius: 10px;
}

.jm-city-pulse-caption {
    margin: 0;
    color: #5d1217;
    font-size: 13px;
    line-height: 1.65;
}

.jm-weather-section {
    margin-top: 28px;
    padding: 26px 28px 30px;
    border-radius: 24px;
    background: linear-gradient(180deg, #fff8f5 0%, #ffffff 100%);
    border: 1px solid rgba(191, 19, 30, 0.1);
    box-shadow: 0 18px 44px rgba(80, 24, 20, 0.08);
}

.jm-weather-head {
    display: grid;
    gap: 8px;
    margin-bottom: 20px;
}

.jm-weather-kicker {
    color: #bf131e;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.jm-weather-head h2 {
    margin: 0;
    color: #1f1818;
    font-size: 30px;
    line-height: 1.15;
    font-weight: 800;
}

.jm-weather-head p {
    margin: 0;
    color: #615353;
    font-size: 15px;
    line-height: 1.7;
}

.jm-weather-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.jm-weather-card {
    display: grid;
    gap: 10px;
    padding: 22px 20px;
    border-radius: 20px;
    background: linear-gradient(135deg, #aa0912 0%, #d71924 100%);
    color: #fff;
    box-shadow: 0 20px 36px rgba(161, 16, 26, 0.18);
}

.jm-weather-city {
    display: inline-flex;
    width: fit-content;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    font-size: 12px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.jm-weather-card strong {
    font-size: 22px;
    line-height: 1.35;
    font-weight: 800;
}

.jm-weather-card p {
    margin: 0;
    color: rgba(255, 255, 255, 0.9);
    font-size: 15px;
    line-height: 1.7;
}

.home .site-content,
.blog .site-content {
    padding-top: 0;
}

.home .site-footer,
.blog .site-footer,
.front-page .site-footer,
.home .af-main-banner-latest-posts,
.blog .af-main-banner-latest-posts,
.front-page .af-main-banner-latest-posts,
.home .missed-posts-area,
.blog .missed-posts-area,
.front-page .missed-posts-area,
.home .widget-area,
.blog .widget-area,
.front-page .widget-area,
.home .af-main-banner-featured-posts,
.blog .af-main-banner-featured-posts,
.front-page .af-main-banner-featured-posts,
.home .af-widget-carousel,
.blog .af-widget-carousel,
.front-page .af-widget-carousel,
.home .aft-main-banner-section,
.blog .aft-main-banner-section,
.front-page .aft-main-banner-section {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.home .jm-first-screen-page ~ .af-main-banner-latest-posts,
.blog .jm-first-screen-page ~ .af-main-banner-latest-posts,
.front-page .jm-first-screen-page ~ .af-main-banner-latest-posts,
.home .jm-first-screen-page ~ .site-footer,
.blog .jm-first-screen-page ~ .site-footer,
.front-page .jm-first-screen-page ~ .site-footer {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 1200px) {
    .jm-first-screen-wrap {
        width: min(100%, calc(100% - 28px));
    }

    .jm-first-screen-grid {
        grid-template-columns: 88px minmax(0, 1fr);
        gap: 14px;
    }

    .jm-hero-panel {
        grid-template-columns: minmax(0, 2fr) minmax(260px, 0.82fr);
    }

    .jm-hero-leadcard {
        grid-template-columns: minmax(0, 1.35fr) minmax(245px, 1fr);
    }

    .jm-hero-copyblock {
        padding: 22px 18px;
    }

    .jm-hero-copyblock h1 {
        font-size: 30px;
    }

    .jm-hero-bulletin {
        padding-left: 16px;
        padding-right: 16px;
    }

    .jm-bullet-item a {
        font-size: 14px;
    }
}

@media (max-width: 991px) {
    .jm-breaking-strip {
        grid-template-columns: 1fr;
        gap: 10px;
        border-radius: 20px;
    }

    .jm-first-screen-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .jm-quickrail {
        position: static;
        grid-template-columns: 60px 1fr;
        justify-items: start;
        align-items: center;
        padding-top: 0;
    }

    .jm-quickrail-badge {
        width: 50px;
        height: 50px;
        padding: 12px;
    }

    .jm-quickrail-title {
        grid-column: 2;
    }

    .jm-quickrail-list {
        grid-column: 1 / -1;
        display: flex;
        gap: 8px;
        width: 100%;
        padding: 4px 0 8px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
    }

    .jm-quickrail-list li {
        flex: 0 0 92px;
    }

    .jm-hero-panel {
        grid-template-columns: 1fr;
        height: auto;
    }

    .jm-hero-leadcard {
        grid-template-columns: minmax(0, 1.35fr) minmax(250px, 1fr);
        height: 390px;
    }

    .jm-hero-image,
    .jm-hero-copyblock {
        height: 390px;
    }

    .jm-hero-bulletin {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 20px;
        height: auto;
        padding: 18px 20px 20px;
    }

    .jm-hero-bulletin-head {
        grid-column: 1 / -1;
    }

    .jm-hero-copyblock h1 {
        font-size: 32px;
    }

    .jm-thumb-row {
        gap: 12px;
    }

    .jm-city-pulse-grid {
        grid-template-columns: 1fr;
    }

    .jm-weather-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 782px) {
    .jm-first-screen-wrap {
        width: min(100%, calc(100% - 20px));
        padding-top: 12px;
    }

    .jm-breaking-pill {
        justify-self: start;
    }

    .jm-breaking-scroll a {
        font-size: 14px;
    }

    .jm-hero-copyblock h1 {
        font-size: 28px;
    }

    .jm-bullet-item a,
    .jm-thumb-card h3 {
        font-size: 16px;
    }

    .jm-weather-section {
        padding: 20px 16px 22px;
        border-radius: 20px;
    }

    .jm-weather-head h2 {
        font-size: 24px;
    }

    .jm-weather-card strong {
        font-size: 20px;
    }

    .jm-thumb-row {
        grid-template-columns: 1fr 1fr;
    }

    .jm-first-screen-city {
        margin-top: 14px;
    }

    .jm-city-pulse-card {
        padding: 12px;
    }

    .jm-city-pulse-head h3 {
        font-size: 18px;
    }

    .jm-hero-leadcard {
        grid-template-columns: 1fr;
        height: auto;
    }

    .jm-hero-image {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
    }

    .jm-hero-copyblock {
        height: auto;
        min-height: 280px;
    }

    .jm-hero-copyblock,
    .jm-hero-bulletin {
        padding-left: 14px;
        padding-right: 14px;
    }

    .jm-hero-copyblock p {
        font-size: 15px;
    }
}

@media (max-width: 640px) {
    .jm-thumb-row {
        grid-template-columns: 1fr;
    }

    .jm-city-pulse-grid {
        grid-template-columns: 1fr;
    }

    .jm-quickrail {
        grid-template-columns: 52px 1fr;
        justify-items: start;
    }

    .jm-quickrail-title {
        grid-column: 2;
    }

    .jm-quickrail-list {
        grid-column: 1 / -1;
        max-width: none;
    }

    .jm-hero-copyblock {
        min-height: 250px;
    }

    .jm-hero-copyblock h1 {
        font-size: 27px;
    }

    .jm-hero-copyblock h1 a {
        -webkit-line-clamp: 4;
    }

    .jm-hero-bulletin {
        grid-template-columns: 1fr;
    }

    .jm-breaking-strip {
        padding: 9px 10px;
    }

    .jm-breaking-pill {
        min-height: 32px;
        padding: 0 13px;
        font-size: 11px;
    }
}

@keyframes jmBreakingScroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* Janamat News dynamic editorial homepage */
.jm-first-screen-wrap {
    width: min(1200px, calc(100% - 32px));
}

.jm-first-screen-wrap > .jm-weather-section {
    display: none !important;
}

.jm-portal-home {
    --jm-red: #b40814;
    --jm-red-dark: #75040a;
    --jm-ink: #171414;
    --jm-muted: #6f6666;
    --jm-line: #e8dddd;
    --jm-surface: #ffffff;
    --jm-canvas: #f5f3f2;
    width: 100%;
    clear: both;
    overflow: clip;
    background:
        radial-gradient(circle at 8% 3%, rgba(180, 8, 20, 0.05), transparent 28%),
        var(--jm-canvas);
    color: var(--jm-ink);
}

.jm-portal-home [id] {
    scroll-margin-top: 150px;
}

.jm-portal-container {
    width: min(1200px, calc(100% - 32px));
    margin-inline: auto;
}

.jm-topic-nav {
    border-top: 1px solid var(--jm-line);
    border-bottom: 1px solid var(--jm-line);
    background: rgba(255, 255, 255, 0.94);
}

.jm-topic-scroll {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px 0;
    overflow-x: auto;
    scrollbar-width: none;
}

.jm-topic-scroll::-webkit-scrollbar {
    display: none;
}

.jm-topic-scroll a {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 16px;
    border: 1px solid #e9dede;
    border-radius: 999px;
    background: #fff;
    color: #362e2e;
    font-size: 14px;
    font-weight: 700;
    transition: 0.2s ease;
}

.jm-topic-scroll a:hover,
.jm-topic-scroll a:focus-visible {
    border-color: var(--jm-red);
    background: var(--jm-red);
    color: #fff;
    transform: translateY(-2px);
}

.jm-topic-scroll a span {
    font-size: 20px;
    line-height: 1;
}

.jm-portal-section {
    padding: 34px 0;
}

.jm-portal-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 18px;
}

.jm-portal-heading > div {
    position: relative;
    padding-left: 17px;
}

.jm-portal-heading > div::before {
    content: "";
    position: absolute;
    inset: 3px auto 2px 0;
    width: 5px;
    border-radius: 999px;
    background: linear-gradient(180deg, #e01925, #80040b);
}

.jm-portal-heading span {
    display: block;
    margin-bottom: 2px;
    color: var(--jm-red);
    font-size: 11px;
    line-height: 1.3;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.jm-portal-heading h2 {
    margin: 0;
    color: var(--jm-ink);
    font-size: clamp(25px, 2.2vw, 32px);
    line-height: 1.18;
    font-weight: 800;
}

.jm-portal-heading > a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(180, 8, 20, 0.28);
    color: var(--jm-red);
    font-size: 13px;
    font-weight: 800;
}

.jm-portal-heading > a span {
    margin: 0;
    color: inherit;
    font-size: 16px;
    letter-spacing: 0;
}

.jm-latest-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 24px;
    align-items: start;
}

.jm-latest-main,
.jm-news-sidebar {
    min-width: 0;
}

.jm-latest-main {
    display: grid;
    gap: 18px;
}

.jm-portal-card {
    min-width: 0;
    border: 1px solid var(--jm-line);
    border-radius: 8px;
    background: var(--jm-surface);
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(42, 24, 24, 0.055);
}

.jm-portal-card-media {
    position: relative;
    display: block;
    min-width: 0;
    overflow: hidden;
    background: linear-gradient(135deg, #ebe6e5, #d8cdcb);
}

.jm-portal-card-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.jm-portal-card:hover .jm-portal-card-media img,
.jm-portal-card:focus-within .jm-portal-card-media img {
    transform: scale(1.035);
}

.jm-portal-media-fallback {
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 150px;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background:
        linear-gradient(135deg, rgba(117, 4, 10, 0.92), rgba(204, 18, 30, 0.9)),
        #990912;
    color: #fff;
    font-family: Georgia, serif;
    font-size: 19px;
    font-style: italic;
    font-weight: 800;
    letter-spacing: -0.03em;
    text-align: center;
}

.jm-portal-card-body {
    min-width: 0;
    padding: 15px 16px 17px;
}

.jm-portal-category {
    display: block;
    margin-bottom: 5px;
    color: var(--jm-red);
    font-size: 11px;
    line-height: 1.3;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.jm-portal-card h3 {
    margin: 0;
    color: var(--jm-ink);
    font-size: 18px;
    line-height: 1.42;
    font-weight: 800;
}

.jm-portal-card h3 a {
    display: -webkit-box;
    overflow: hidden;
    color: inherit;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.jm-portal-card p {
    margin: 10px 0 0;
    color: var(--jm-muted);
    font-size: 14px;
    line-height: 1.65;
}

.jm-portal-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-top: 10px;
    color: #8a7e7e;
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
}

.jm-portal-card-lead {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.8fr);
    min-height: 350px;
}

.jm-portal-card-lead .jm-portal-card-media {
    min-height: 350px;
}

.jm-portal-card-lead .jm-portal-card-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 28px 25px;
}

.jm-portal-card-lead h3 {
    font-size: clamp(25px, 2.4vw, 34px);
    line-height: 1.28;
}

.jm-portal-card-lead h3 a {
    -webkit-line-clamp: 5;
}

.jm-latest-feed {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.jm-portal-card-compact {
    display: grid;
    grid-template-columns: 142px minmax(0, 1fr);
    min-height: 126px;
}

.jm-portal-card-compact .jm-portal-card-media {
    min-height: 126px;
}

.jm-portal-card-compact .jm-portal-card-body {
    padding: 12px 13px;
}

.jm-portal-card-compact h3 {
    font-size: 15px;
}

.jm-portal-card-compact .jm-portal-meta span:last-child {
    display: none;
}

.jm-load-more {
    justify-self: center;
    min-width: 190px;
    min-height: 44px;
    padding: 0 20px;
    border: 1px solid rgba(180, 8, 20, 0.25);
    border-radius: 999px;
    background: #fff;
    color: var(--jm-red);
    font-size: 13px;
    font-weight: 800;
    transition: 0.2s ease;
}

.jm-load-more:hover:not(:disabled),
.jm-load-more:focus-visible {
    border-color: var(--jm-red);
    background: var(--jm-red);
    color: #fff;
}

.jm-load-more:disabled {
    opacity: 0.65;
    cursor: default;
}

.jm-news-sidebar {
    display: grid;
    gap: 16px;
}

.jm-sidebar-panel {
    border: 1px solid var(--jm-line);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(42, 24, 24, 0.05);
}

.jm-sidebar-title {
    padding: 16px 18px 13px;
    border-bottom: 1px solid var(--jm-line);
}

.jm-sidebar-title span {
    color: var(--jm-red);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.jm-sidebar-title h3 {
    margin: 2px 0 0;
    color: var(--jm-ink);
    font-size: 21px;
    line-height: 1.3;
    font-weight: 800;
}

.jm-ranked-list {
    list-style: none;
    margin: 0;
    padding: 4px 18px 10px;
}

.jm-ranked-list li {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 12px 0;
    border-bottom: 1px solid #eee7e6;
}

.jm-ranked-list li:last-child {
    border-bottom: 0;
}

.jm-ranked-list li > span {
    color: #c8bbbb;
    font-family: Georgia, serif;
    font-size: 19px;
    font-style: italic;
    font-weight: 800;
}

.jm-ranked-list a {
    display: -webkit-box;
    overflow: hidden;
    color: #2b2424;
    font-size: 14px;
    line-height: 1.48;
    font-weight: 700;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.jm-weather-live {
    padding-bottom: 16px;
    background:
        radial-gradient(circle at 90% 10%, rgba(255, 255, 255, 0.2), transparent 28%),
        linear-gradient(145deg, #7f0710, #c41320);
    color: #fff;
}

.jm-weather-live .jm-sidebar-title {
    border-color: rgba(255, 255, 255, 0.15);
}

.jm-weather-live .jm-sidebar-title span,
.jm-weather-live .jm-sidebar-title h3 {
    color: #fff;
}

.jm-weather-summary {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 18px;
}

.jm-weather-summary > strong {
    font-size: 48px;
    line-height: 1;
    font-weight: 800;
}

.jm-weather-summary div {
    display: grid;
    gap: 3px;
}

.jm-weather-summary span {
    font-size: 16px;
    font-weight: 700;
}

.jm-weather-summary small {
    color: rgba(255, 255, 255, 0.75);
}

.jm-weather-details {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    margin: 0 18px;
    overflow: hidden;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.16);
}

.jm-weather-details > span {
    display: grid;
    gap: 2px;
    padding: 10px 12px;
    background: rgba(81, 0, 7, 0.22);
    color: rgba(255, 255, 255, 0.76);
    font-size: 11px;
}

.jm-weather-details strong {
    color: #fff;
    font-size: 13px;
}

.jm-poll-panel {
    padding-bottom: 17px;
}

.jm-poll-panel > p,
.jm-poll-panel form {
    margin: 0;
    padding-inline: 18px;
}

.jm-poll-panel > p {
    padding-top: 15px;
    color: #433a3a;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 700;
}

.jm-poll-options {
    display: grid;
    gap: 8px;
    padding: 14px 0;
}

.jm-poll-options label {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 38px;
    padding: 7px 10px;
    border: 1px solid #eadfdd;
    border-radius: 6px;
    cursor: pointer;
}

.jm-poll-options input {
    accent-color: var(--jm-red);
}

.jm-poll-options span {
    font-size: 13px;
    font-weight: 700;
}

.jm-poll-panel button {
    min-height: 39px;
    padding: 0 18px;
    border-radius: 999px;
    background: var(--jm-red);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.jm-poll-status {
    min-height: 18px;
    margin-top: 9px !important;
    padding: 0 !important;
    color: var(--jm-muted);
    font-size: 11px;
}

.jm-poll-results {
    display: none;
    gap: 8px;
    margin-top: 11px;
}

.has-results .jm-poll-results {
    display: grid;
}

.jm-poll-results > div {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) 34px;
    gap: 7px;
    align-items: center;
    font-size: 10px;
}

.jm-poll-result-bar {
    height: 5px;
    overflow: hidden;
    border-radius: 999px;
    background: #eadfdd;
}

.jm-poll-result-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--jm-red);
    transition: width 0.45s ease;
}

.jm-ad-panel {
    display: grid;
    place-items: center;
    min-height: 210px;
    padding: 12px;
    background: #edeae9;
}

.jm-ad-panel > span {
    color: #938989;
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.jm-ad-panel img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 250px;
    object-fit: contain;
}

.jm-ad-panel strong {
    color: #a39999;
    font-size: 24px;
}

.jm-video-section,
.jm-gallery-section {
    position: relative;
    padding: 36px 0 40px;
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 20%, rgba(207, 24, 36, 0.22), transparent 30%),
        #171313;
}

.jm-portal-heading-light h2,
.jm-portal-heading-light > a,
.jm-portal-heading-light > a span {
    color: #fff;
}

.jm-portal-heading-light span {
    color: #ff7f88;
}

.jm-video-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(320px, 0.8fr);
    gap: 18px;
}

.jm-video-lead {
    position: relative;
}

.jm-video-section .jm-portal-card {
    border-color: rgba(255, 255, 255, 0.1);
    background: #211c1c;
    color: #fff;
    box-shadow: none;
}

.jm-video-section .jm-portal-card-media {
    aspect-ratio: 16 / 9;
}

.jm-video-section .jm-portal-card h3,
.jm-video-section .jm-portal-category {
    color: #fff;
}

.jm-video-section .jm-portal-card p,
.jm-video-section .jm-portal-meta {
    color: rgba(255, 255, 255, 0.66);
}

.jm-video-section .jm-portal-card-feature h3 {
    font-size: clamp(24px, 2.2vw, 33px);
}

.jm-video-list {
    display: grid;
    gap: 12px;
}

.jm-portal-card-video {
    display: grid;
    grid-template-columns: 148px minmax(0, 1fr);
}

.jm-portal-card-video .jm-portal-card-media {
    min-height: 118px;
}

.jm-portal-card-video .jm-portal-card-body {
    padding: 13px;
}

.jm-portal-card-video h3 {
    font-size: 15px;
}

.jm-portal-play {
    position: absolute;
    inset: 50% auto auto 50%;
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border: 2px solid rgba(255, 255, 255, 0.85);
    border-radius: 50%;
    background: rgba(180, 8, 20, 0.86);
    color: #fff;
    transform: translate(-50%, -50%);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.28);
}

.jm-portal-play svg {
    width: 25px;
    height: 25px;
}

.jm-portal-card-video .jm-portal-play {
    width: 38px;
    height: 38px;
}

.jm-portal-card-video .jm-portal-play svg {
    width: 19px;
    height: 19px;
}

.jm-live-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #fff;
    color: #8b0710;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.jm-live-badge i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #e11623;
    box-shadow: 0 0 0 4px rgba(225, 22, 35, 0.15);
}

.jm-regional-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
}

.jm-regional-grid .jm-portal-card-media {
    aspect-ratio: 16 / 10;
}

.jm-regional-grid .jm-portal-card-body {
    padding: 12px;
}

.jm-regional-grid .jm-portal-card h3 {
    font-size: 15px;
}

.jm-category-section {
    padding-top: 6px;
}

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

.jm-category-block {
    min-width: 0;
    padding: 20px;
    border: 1px solid var(--jm-line);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(42, 24, 24, 0.045);
}

.jm-portal-heading-compact {
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 2px solid #221b1b;
}

.jm-portal-heading-compact h2 {
    font-size: 25px;
}

.jm-portal-heading-compact > a {
    min-width: 35px;
    height: 35px;
    justify-content: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f6eeee;
    font-size: 18px;
}

.jm-portal-card-category-lead {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(210px, 0.9fr);
    margin-bottom: 12px;
    border: 0;
    border-radius: 6px;
    background: #f8f5f4;
    box-shadow: none;
}

.jm-portal-card-category-lead .jm-portal-card-media {
    min-height: 210px;
}

.jm-portal-card-category-lead h3 {
    font-size: 21px;
}

.jm-category-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.jm-portal-card-horizontal {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    min-height: 90px;
    border: 0;
    border-top: 1px solid #ede4e2;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.jm-portal-card-horizontal .jm-portal-card-media {
    min-height: 82px;
    margin-top: 8px;
    border-radius: 5px;
}

.jm-portal-card-horizontal .jm-portal-card-body {
    padding: 9px 0 7px 10px;
}

.jm-portal-card-horizontal h3 {
    font-size: 13px;
    line-height: 1.42;
}

.jm-portal-card-horizontal h3 a {
    -webkit-line-clamp: 3;
}

.jm-portal-card-horizontal .jm-portal-category,
.jm-portal-card-horizontal .jm-portal-meta {
    display: none;
}

.jm-gallery-section {
    background:
        linear-gradient(115deg, rgba(118, 4, 10, 0.93), rgba(28, 14, 15, 0.98)),
        #2d1517;
}

.jm-gallery-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    grid-template-rows: 220px 220px;
    gap: 12px;
}

.jm-gallery-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border-radius: 8px;
    background: #3d2425;
}

.jm-gallery-card.is-featured {
    grid-row: 1 / 3;
}

.jm-gallery-card a,
.jm-gallery-card img {
    display: block;
    width: 100%;
    height: 100%;
}

.jm-gallery-card img {
    object-fit: cover;
    transition: transform 0.35s ease;
}

.jm-gallery-card a::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 35%, rgba(17, 6, 7, 0.92) 100%);
}

.jm-gallery-card:hover img,
.jm-gallery-card:focus-within img {
    transform: scale(1.04);
}

.jm-gallery-card h3 {
    position: absolute;
    z-index: 2;
    right: 16px;
    bottom: 15px;
    left: 16px;
    margin: 0;
    color: #fff;
    font-size: 16px;
    line-height: 1.45;
    font-weight: 800;
}

.jm-gallery-card.is-featured h3 {
    font-size: 25px;
}

.jm-gallery-count {
    position: absolute;
    z-index: 2;
    top: 12px;
    left: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(180, 8, 20, 0.9);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
}

.jm-gallery-count svg {
    width: 16px;
    height: 16px;
}

.jm-opinion-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(350px, 0.75fr);
    gap: 18px;
}

.jm-portal-card-opinion-lead {
    position: relative;
    min-height: 430px;
}

.jm-portal-card-opinion-lead .jm-portal-card-media {
    height: 430px;
}

.jm-portal-card-opinion-lead .jm-portal-card-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 30%, rgba(22, 8, 9, 0.92) 100%);
}

.jm-portal-card-opinion-lead .jm-portal-card-body {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 26px;
}

.jm-portal-card-opinion-lead h3 {
    color: #fff;
    font-size: clamp(24px, 2.4vw, 34px);
}

.jm-portal-card-opinion-lead .jm-portal-meta,
.jm-portal-card-opinion-lead .jm-portal-category {
    color: rgba(255, 255, 255, 0.78);
}

.jm-opinion-list {
    display: grid;
    gap: 12px;
}

.jm-portal-card-opinion {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    min-height: 98px;
}

.jm-portal-card-opinion .jm-portal-card-media {
    min-height: 98px;
}

.jm-portal-card-opinion .jm-portal-card-body {
    padding: 11px 13px;
}

.jm-portal-card-opinion h3 {
    font-size: 14px;
}

.jm-newsletter-section {
    padding: 18px 0 36px;
}

.jm-newsletter-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(380px, 0.75fr);
    gap: 40px;
    align-items: center;
    padding: 34px 38px;
    overflow: hidden;
    border-radius: 12px;
    background:
        radial-gradient(circle at 90% 15%, rgba(255, 255, 255, 0.14), transparent 28%),
        linear-gradient(135deg, #7b040a, #c40f1c);
    color: #fff;
    box-shadow: 0 20px 42px rgba(104, 3, 9, 0.18);
}

.jm-newsletter-card > div > span {
    color: #ffb9be;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.jm-newsletter-card h2 {
    margin: 5px 0 8px;
    color: #fff;
    font-size: clamp(25px, 2.5vw, 36px);
    line-height: 1.2;
    font-weight: 800;
}

.jm-newsletter-card p {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 14px;
    line-height: 1.6;
}

.jm-newsletter-card form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.jm-newsletter-card input[type="email"] {
    min-width: 0;
    height: 48px;
    padding: 0 16px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.96);
    color: #251e1e;
    font-size: 14px;
}

.jm-newsletter-card button {
    min-height: 48px;
    padding: 0 18px;
    border-radius: 6px;
    background: #211617;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.jm-newsletter-card form small {
    grid-column: 1 / -1;
    color: #fff;
}

.jm-newsletter-honeypot {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
}

.jm-portal-footer {
    padding: 46px 0 20px;
    background:
        radial-gradient(circle at 20% 0, rgba(180, 8, 20, 0.18), transparent 30%),
        #171313;
    color: rgba(255, 255, 255, 0.72);
}

.jm-footer-top {
    display: grid;
    grid-template-columns: minmax(270px, 1.5fr) repeat(3, minmax(130px, 0.65fr));
    gap: 42px;
    padding-bottom: 34px;
}

.jm-footer-brand > a {
    display: inline-flex;
    padding: 7px 10px;
    background: #080606;
    color: #ffc42d;
    font-family: Georgia, serif;
    font-size: 28px;
    font-style: italic;
    font-weight: 900;
    line-height: 1;
}

.jm-footer-brand > a strong {
    margin-left: 5px;
    padding-inline: 5px;
    background: #e11623;
    color: #fff;
}

.jm-footer-brand p {
    max-width: 340px;
    margin: 15px 0 0;
    color: rgba(255, 255, 255, 0.62);
    font-size: 13px;
    line-height: 1.7;
}

.jm-footer-top h3 {
    margin: 0 0 13px;
    color: #fff;
    font-size: 15px;
    font-weight: 800;
}

.jm-footer-top > div:not(.jm-footer-brand) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.jm-footer-top > div:not(.jm-footer-brand) a {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.66);
    font-size: 13px;
}

.jm-footer-top a:hover,
.jm-footer-top a:focus-visible {
    color: #fff;
}

.jm-footer-bottom {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 11px;
}

.jm-back-top {
    position: fixed;
    z-index: 900;
    right: 18px;
    bottom: 18px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--jm-red);
    color: #fff;
    font-size: 20px;
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px);
    transition: 0.2s ease;
    box-shadow: 0 12px 26px rgba(117, 4, 10, 0.25);
}

.jm-back-top.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.jm-js [data-jm-reveal] {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.55s ease, transform 0.55s ease;
}

.jm-js [data-jm-reveal].is-visible {
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 1200px) {
    .jm-first-screen-wrap,
    .jm-portal-container {
        width: min(100%, calc(100% - 28px));
    }

    .jm-latest-layout {
        grid-template-columns: minmax(0, 1fr) 320px;
        gap: 18px;
    }

    .jm-portal-card-compact {
        grid-template-columns: 125px minmax(0, 1fr);
    }

    .jm-portal-card-category-lead {
        grid-template-columns: 1fr;
    }

    .jm-portal-card-category-lead .jm-portal-card-media {
        min-height: 220px;
        aspect-ratio: 16 / 9;
    }
}

@media (max-width: 1024px) {
    .jm-latest-layout {
        grid-template-columns: 1fr;
    }

    .jm-news-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
    }

    .jm-ad-panel {
        min-height: 240px;
    }

    .jm-video-grid {
        grid-template-columns: 1fr;
    }

    .jm-video-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .jm-portal-card-video {
        display: block;
    }

    .jm-portal-card-video .jm-portal-card-media {
        min-height: auto;
    }

    .jm-regional-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .jm-category-list {
        grid-template-columns: 1fr;
    }

    .jm-opinion-layout {
        grid-template-columns: 1fr 1fr;
    }

    .jm-newsletter-card {
        grid-template-columns: 1fr;
        gap: 22px;
    }
}

@media (max-width: 782px) {
    .jm-portal-home [id] {
        scroll-margin-top: 340px;
    }

    .jm-first-screen-wrap,
    .jm-portal-container {
        width: min(100%, calc(100% - 20px));
    }

    .jm-portal-section {
        padding: 27px 0;
    }

    .jm-topic-scroll {
        padding-block: 11px;
    }

    .jm-portal-heading {
        margin-bottom: 14px;
    }

    .jm-portal-heading h2 {
        font-size: 25px;
    }

    .jm-portal-card-lead {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .jm-portal-card-lead .jm-portal-card-media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .jm-portal-card-lead .jm-portal-card-body {
        padding: 20px;
    }

    .jm-latest-feed {
        grid-template-columns: 1fr;
    }

    .jm-portal-card-compact {
        grid-template-columns: 145px minmax(0, 1fr);
    }

    .jm-news-sidebar {
        grid-template-columns: 1fr;
    }

    .jm-video-section,
    .jm-gallery-section {
        padding: 28px 0 30px;
    }

    .jm-video-list {
        grid-template-columns: 1fr;
    }

    .jm-portal-card-video {
        display: grid;
        grid-template-columns: 145px minmax(0, 1fr);
    }

    .jm-regional-grid {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        padding-bottom: 8px;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }

    .jm-regional-grid::-webkit-scrollbar {
        display: none;
    }

    .jm-regional-grid .jm-portal-card {
        flex: 0 0 260px;
        scroll-snap-align: start;
    }

    .jm-category-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .jm-category-list {
        grid-template-columns: 1fr 1fr;
    }

    .jm-gallery-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 300px 190px 190px;
    }

    .jm-gallery-card.is-featured {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    .jm-opinion-layout {
        grid-template-columns: 1fr;
    }

    .jm-newsletter-card {
        padding: 27px 22px;
    }

    .jm-footer-top {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }

    .jm-footer-brand {
        grid-column: 1 / -1;
    }

    .jm-footer-bottom {
        flex-direction: column;
        gap: 7px;
    }
}

@media (max-width: 560px) {
    .jm-portal-heading {
        align-items: center;
    }

    .jm-portal-heading > a {
        font-size: 0;
    }

    .jm-portal-heading > a span,
    .jm-portal-heading-compact > a {
        font-size: 18px;
    }

    .jm-portal-card-lead h3 {
        font-size: 25px;
    }

    .jm-portal-card-compact {
        grid-template-columns: 112px minmax(0, 1fr);
        min-height: 112px;
    }

    .jm-portal-card-compact .jm-portal-card-media {
        min-height: 112px;
    }

    .jm-portal-card-compact .jm-portal-card-body {
        padding: 10px;
    }

    .jm-portal-card-compact h3 {
        font-size: 14px;
    }

    .jm-video-section .jm-portal-card-feature h3 {
        font-size: 23px;
    }

    .jm-portal-card-video {
        grid-template-columns: 120px minmax(0, 1fr);
    }

    .jm-category-block {
        padding: 15px;
    }

    .jm-portal-card-category-lead {
        display: block;
    }

    .jm-category-list {
        grid-template-columns: 1fr;
    }

    .jm-gallery-grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: none;
    }

    .jm-gallery-card,
    .jm-gallery-card.is-featured {
        min-height: 230px;
        grid-column: auto;
    }

    .jm-portal-card-opinion-lead,
    .jm-portal-card-opinion-lead .jm-portal-card-media {
        min-height: 360px;
        height: 360px;
    }

    .jm-portal-card-opinion {
        grid-template-columns: 112px minmax(0, 1fr);
    }

    .jm-newsletter-card form {
        grid-template-columns: 1fr;
    }

    .jm-newsletter-card form button {
        width: 100%;
    }

    .jm-footer-top {
        grid-template-columns: 1fr;
    }

    .jm-footer-brand {
        grid-column: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .jm-js [data-jm-reveal],
    .jm-portal-card-media img,
    .jm-topic-scroll a,
    .jm-back-top {
        transition: none;
    }

    .jm-breaking-scroll {
        animation-duration: 90s;
    }
}

/* Reference-led editorial flow: original Janamat implementation */
@media (min-width: 992px) {
    .jm-first-screen-grid {
        position: relative;
        display: block;
        min-height: 0;
        padding-left: 118px;
    }

    .jm-quickrail {
        position: absolute;
        top: 0;
        left: 0;
        width: 100px;
        padding-top: 0;
    }
}

.jm-first-screen-page,
.jm-portal-home {
    font-family: "Noto Serif Bengali", "Noto Serif", Georgia, serif;
}

.home .gt_switcher_wrapper,
.blog .gt_switcher_wrapper,
.front-page .gt_switcher_wrapper {
    display: none !important;
}

.jm-hero-panel {
    border-radius: 4px;
    box-shadow: 0 8px 22px rgba(90, 7, 13, 0.12);
}

.jm-thumb-row {
    gap: 12px;
}

.jm-thumb-card {
    gap: 8px;
    padding-bottom: 8px;
    border-radius: 4px;
    box-shadow: none;
}

.jm-thumb-card h3 {
    padding-inline: 8px;
    font-size: 14px;
    line-height: 1.42;
}

.jm-portal-home {
    background: #f5f5f5;
}

.jm-topic-scroll {
    padding-block: 12px;
}

.jm-topic-scroll a {
    min-height: 34px;
    padding-inline: 14px;
    border-radius: 18px;
    font-size: 12px;
}

.jm-editorial-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 20px;
    align-items: start;
    padding: 28px 0 38px;
}

.jm-editorial-main,
.jm-editorial-sidebar {
    min-width: 0;
}

.jm-editorial-main {
    display: grid;
    gap: 0;
}

.jm-editorial-sidebar {
    display: grid;
    gap: 16px;
}

.jm-home-section {
    min-width: 0;
    padding: 0 0 34px;
}

.jm-home-section + .jm-home-section {
    padding-top: 2px;
}

.jm-portal-heading {
    align-items: center;
    margin-bottom: 14px;
}

.jm-portal-heading > div {
    padding-left: 14px;
}

.jm-portal-heading > div::before {
    width: 4px;
}

.jm-portal-heading h2 {
    font-size: 27px;
}

.jm-portal-heading > a {
    font-size: 12px;
}

.jm-portal-card {
    border-color: #e6e1df;
    border-radius: 3px;
    box-shadow: none;
}

.jm-portal-card-body {
    padding: 12px 13px 14px;
}

.jm-portal-card h3 {
    font-size: 16px;
    line-height: 1.42;
}

.jm-portal-meta {
    margin-top: 7px;
}

.jm-headline-deck {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(260px, 0.75fr);
    gap: 12px;
}

.jm-portal-card-headline-lead .jm-portal-card-media {
    aspect-ratio: 16 / 9;
}

.jm-portal-card-headline-lead h3 {
    font-size: 26px;
    line-height: 1.3;
}

.jm-headline-stack {
    display: grid;
    gap: 10px;
}

.jm-portal-card-headline-side {
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    min-height: 116px;
}

.jm-portal-card-headline-side .jm-portal-card-media {
    min-height: 116px;
}

.jm-portal-card-headline-side .jm-portal-card-body {
    padding: 10px;
}

.jm-portal-card-headline-side h3 {
    font-size: 14px;
}

.jm-portal-card-headline-side .jm-portal-meta {
    display: none;
}

.jm-headline-row {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.jm-portal-card-headline-tile .jm-portal-card-media {
    aspect-ratio: 16 / 9;
}

.jm-portal-card-headline-tile .jm-portal-card-body {
    padding: 9px 10px 11px;
}

.jm-portal-card-headline-tile h3 {
    font-size: 14px;
}

.jm-post-tabs-shell {
    overflow: hidden;
    border: 1px solid #e4ddda;
    border-top: 3px solid var(--jm-red);
    border-radius: 3px;
    background: #fff;
}

.jm-post-tablist {
    display: flex;
    align-items: stretch;
    overflow-x: auto;
    border-bottom: 1px solid #e6dfdd;
    background:
        linear-gradient(90deg, rgba(180, 8, 20, 0.035), transparent 55%),
        #faf8f7;
    scrollbar-width: none;
}

.jm-post-tablist::-webkit-scrollbar {
    display: none;
}

.jm-post-tab {
    position: relative;
    display: inline-flex;
    flex: 1 0 auto;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 112px;
    min-height: 50px;
    padding: 0 14px;
    border: 0;
    border-right: 1px solid #e8e1df;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #322b2b !important;
    font-family: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: color 0.2s ease, background-color 0.2s ease;
}

.jm-post-tab:last-child {
    border-right: 0;
}

.jm-post-tab > span {
    position: relative;
    z-index: 1;
    display: grid;
    width: 23px;
    height: 23px;
    place-items: center;
    border-radius: 50%;
    background: #eee7e5;
    color: #8a7e7d;
    font-family: Georgia, serif;
    font-size: 9px;
    font-style: italic;
    transition: 0.2s ease;
}

.jm-post-tab > strong {
    position: relative;
    z-index: 1;
    color: inherit;
    font: inherit;
}

.jm-post-tab::after {
    content: "";
    position: absolute;
    right: 12px;
    bottom: 0;
    left: 12px;
    height: 3px;
    background: var(--jm-red);
    opacity: 0;
    transform: scaleX(0.45);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.jm-post-tab:hover,
.jm-post-tab:focus-visible {
    background: #f7eeee !important;
    color: var(--jm-red) !important;
    outline: 0;
}

.jm-post-tab.is-active {
    background: linear-gradient(135deg, #8c050c, #c5121e) !important;
    color: #fff !important;
}

.jm-post-tab.is-active > span {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
}

.jm-post-tab.is-active::after {
    background: #fff;
    opacity: 1;
    transform: scaleX(1);
}

.jm-post-tabpanels {
    min-height: 390px;
}

.jm-post-tabpanel {
    padding: 14px;
}

.jm-post-tabpanel[hidden] {
    display: none !important;
}

.jm-post-tabpanel.is-active {
    animation: jmTabPanelIn 0.32s ease both;
}

.jm-post-tab-content {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(310px, 0.75fr);
    gap: 12px;
}

.jm-portal-card-tab-lead {
    position: relative;
    min-height: 350px;
    border: 0;
    background: #211a1b;
}

.jm-portal-card-tab-lead .jm-portal-card-media {
    height: 350px;
}

.jm-portal-card-tab-lead .jm-portal-card-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, transparent 28%, rgba(13, 5, 6, 0.94) 100%),
        linear-gradient(90deg, rgba(92, 0, 7, 0.1), transparent);
}

.jm-portal-card-tab-lead .jm-portal-card-body {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 24px 22px 21px;
}

.jm-portal-card-tab-lead .jm-portal-category {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 8px;
    padding: 5px 8px;
    border-radius: 2px;
    background: var(--jm-red);
    color: #fff;
}

.jm-portal-card-tab-lead h3 {
    color: #fff;
    font-size: 25px;
    line-height: 1.32;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
}

.jm-portal-card-tab-lead .jm-portal-meta {
    color: rgba(255, 255, 255, 0.72);
}

.jm-post-tab-list {
    display: grid;
    align-content: stretch;
}

.jm-portal-card-tab-row {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    min-height: 86px;
    border: 0;
    border-bottom: 1px solid #e8e1df;
    border-radius: 0;
}

.jm-portal-card-tab-row:last-child {
    border-bottom: 0;
}

.jm-portal-card-tab-row .jm-portal-card-media {
    min-height: 80px;
    margin-block: 6px;
    border-radius: 2px;
}

.jm-portal-card-tab-row .jm-portal-card-body {
    padding: 8px 0 8px 10px;
}

.jm-portal-card-tab-row .jm-portal-category {
    margin-bottom: 3px;
    font-size: 9px;
}

.jm-portal-card-tab-row h3 {
    font-size: 13px;
    line-height: 1.38;
}

.jm-portal-card-tab-row .jm-portal-meta {
    margin-top: 5px;
    font-size: 9px;
}

.jm-portal-card-tab-row .jm-portal-meta span:last-child {
    display: none;
}

.jm-post-tab-more {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    min-height: 38px;
    margin-top: 10px;
    padding-top: 9px;
    border-top: 1px solid #eee8e6;
    color: var(--jm-red);
    font-size: 11px;
    font-weight: 900;
}

.jm-post-tab-more span {
    font-size: 16px;
}

.jm-city-spotlight {
    padding-top: 4px;
}

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

.jm-city-panel {
    min-width: 0;
    padding: 14px;
    border: 1px solid #e7e1df;
    border-top: 3px solid var(--jm-red);
    background: #fff;
    box-shadow: 0 10px 26px rgba(44, 18, 18, 0.04);
}

.jm-city-panel[data-city="agartala"] {
    border-top-color: #9f0814;
}

.jm-city-panel-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e7e1df;
}

.jm-city-panel-head span {
    display: block;
    color: var(--jm-red);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.jm-city-panel-head h3 {
    margin: 2px 0 0;
    color: #171313;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 800;
}

.jm-city-panel-head > a {
    display: grid;
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #f4eceb;
    color: var(--jm-red);
    font-size: 17px;
    font-weight: 900;
}

.jm-city-panel-lead {
    margin-bottom: 10px;
}

.jm-city-panel-caption {
    margin: 0 0 12px;
    padding: 11px 12px;
    border-left: 4px solid var(--jm-red);
    border-radius: 3px;
    background: linear-gradient(135deg, #fff5f5, #fff);
    color: #5d1217;
    font-size: 13px;
    line-height: 1.65;
}

.jm-city-panel-feed {
    display: grid;
    gap: 10px;
}

@keyframes jmTabPanelIn {
    from {
        opacity: 0;
        transform: translateY(7px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.jm-latest-compact {
    padding-top: 4px;
}

.jm-latest-feed {
    gap: 10px;
}

.jm-portal-card-compact {
    grid-template-columns: 118px minmax(0, 1fr);
    min-height: 104px;
}

.jm-portal-card-compact .jm-portal-card-media {
    min-height: 104px;
}

.jm-portal-card-compact .jm-portal-card-body {
    padding: 9px 10px;
}

.jm-portal-card-compact h3 {
    font-size: 14px;
}

.jm-latest-compact .jm-load-more {
    display: flex;
    margin: 18px auto 0;
    align-items: center;
    justify-content: center;
}

.jm-sidebar-panel {
    border-radius: 3px;
    box-shadow: none;
}

.jm-sidebar-title {
    padding: 13px 14px 11px;
}

.jm-sidebar-title h2 {
    margin: 2px 0 0;
    color: var(--jm-ink);
    font-size: 20px;
    line-height: 1.3;
    font-weight: 800;
}

.jm-weather-live .jm-sidebar-title h2 {
    color: #fff;
}

.jm-ranked-list {
    padding-inline: 14px;
}

.jm-ranked-list li {
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 7px;
    padding: 10px 0;
}

.jm-ranked-list a {
    font-size: 13px;
}

.jm-weather-summary {
    gap: 12px;
    padding: 16px 14px;
}

.jm-weather-summary > strong {
    font-size: 40px;
}

.jm-weather-details {
    margin-inline: 14px;
}

.jm-side-story-list {
    display: grid;
    gap: 0;
    padding: 2px 14px 9px;
}

.jm-side-story {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #ece6e4;
}

.jm-side-story:last-child {
    border-bottom: 0;
}

.jm-side-story-media {
    display: block;
    height: 62px;
    overflow: hidden;
    border-radius: 2px;
    background: #8c0911;
}

.jm-side-story-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.jm-side-story-media > span {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
    color: #fff;
    font-weight: 900;
}

.jm-side-story > div > span {
    color: var(--jm-red);
    font-size: 9px;
    font-weight: 800;
}

.jm-side-story h3 {
    margin: 2px 0 0;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 800;
}

.jm-side-story h3 a {
    display: -webkit-box;
    overflow: hidden;
    color: #211b1b;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.jm-side-gallery > a {
    position: relative;
    display: block;
    min-height: 270px;
    overflow: hidden;
    background: #221d1d;
}

.jm-side-gallery > a::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 35%, rgba(12, 6, 6, 0.94) 100%);
}

.jm-side-gallery img,
.jm-side-gallery .jm-portal-media-fallback {
    display: block;
    width: 100%;
    height: 270px;
    min-height: 0;
    object-fit: cover;
}

.jm-side-gallery > a > span:not(.jm-portal-media-fallback) {
    position: absolute;
    z-index: 2;
    top: 12px;
    left: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 2px;
    background: rgba(180, 8, 20, 0.92);
    color: #fff;
    font-size: 9px;
    font-weight: 900;
}

.jm-side-gallery > a > span svg {
    width: 15px;
    height: 15px;
}

.jm-side-gallery h3 {
    position: absolute;
    z-index: 2;
    right: 14px;
    bottom: 13px;
    left: 14px;
    margin: 0;
    color: #fff;
    font-size: 16px;
    line-height: 1.42;
    font-weight: 800;
}

.jm-live-cta {
    padding: 20px 18px;
    background:
        radial-gradient(circle at 95% 0, rgba(255, 255, 255, 0.14), transparent 35%),
        linear-gradient(145deg, #850710, #c2101c);
    color: #fff;
}

.jm-live-cta > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #ffced1;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.jm-live-cta > span i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.12);
}

.jm-live-cta h2 {
    margin: 8px 0 4px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 800;
}

.jm-live-cta p {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 12px;
    line-height: 1.55;
}

.jm-live-cta > a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 37px;
    margin-top: 15px;
    padding: 0 12px;
    border-radius: 2px;
    background: #fff;
    color: #8c0710;
    font-size: 11px;
    font-weight: 900;
}

.jm-live-cta > a svg {
    width: 17px;
    height: 17px;
}

.jm-side-category-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 7px 14px 13px;
}

.jm-side-category-links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 5px;
    min-width: 0;
    padding: 9px 5px;
    border-bottom: 1px solid #ece6e4;
    color: #2d2626;
    font-size: 11px;
    font-weight: 800;
}

.jm-side-category-links a:nth-last-child(-n + 2) {
    border-bottom: 0;
}

.jm-side-category-links a span {
    flex: 0 0 auto;
    color: var(--jm-red);
}

.jm-follow-panel {
    padding-bottom: 10px;
}

.jm-follow-panel > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 44px;
    margin: 0 14px;
    border-bottom: 1px solid #ece6e4;
    color: #2b2424;
    font-size: 12px;
    font-weight: 800;
}

.jm-follow-panel > a:last-child {
    border-bottom: 0;
}

.jm-follow-panel > a span {
    color: var(--jm-red);
}

.jm-contained-dark,
.jm-editorial-main .jm-gallery-section {
    padding: 20px;
    overflow: hidden;
    border-radius: 3px;
    background:
        radial-gradient(circle at 82% 18%, rgba(195, 18, 30, 0.22), transparent 30%),
        #1d1d1d;
}

.jm-contained-dark {
    padding-bottom: 18px;
}

.jm-video-grid {
    grid-template-columns: minmax(0, 1.45fr) minmax(255px, 0.75fr);
    gap: 12px;
}

.jm-video-list {
    gap: 8px;
}

.jm-portal-card-video {
    grid-template-columns: 106px minmax(0, 1fr);
}

.jm-portal-card-video .jm-portal-card-media {
    min-height: 86px;
}

.jm-portal-card-video .jm-portal-card-body {
    padding: 8px 9px;
}

.jm-portal-card-video h3 {
    font-size: 12px;
}

.jm-video-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.jm-portal-card-video-tile {
    border-color: rgba(255, 255, 255, 0.1);
    background: #282525;
}

.jm-portal-card-video-tile .jm-portal-card-media {
    aspect-ratio: 16 / 9;
}

.jm-portal-card-video-tile .jm-portal-card-body {
    padding: 9px 10px;
}

.jm-portal-card-video-tile h3,
.jm-portal-card-video-tile .jm-portal-category {
    color: #fff;
}

.jm-portal-card-video-tile h3 {
    font-size: 13px;
}

.jm-portal-card-video-tile .jm-portal-meta {
    display: none;
}

.jm-reel-section {
    margin-top: -34px;
    margin-bottom: 34px;
    padding: 18px 20px 22px;
    overflow: hidden;
    border-radius: 0 0 3px 3px;
    background: #1d1d1d;
}

.jm-reel-section .jm-portal-heading h2,
.jm-reel-section .jm-portal-heading > a,
.jm-reel-section .jm-portal-heading > a span {
    color: #fff;
}

.jm-reel-section .jm-portal-heading > div::before {
    background: #e22531;
}

.jm-reel-track {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding-bottom: 4px;
    scrollbar-width: thin;
    scrollbar-color: #7e7373 transparent;
}

.jm-reel-card {
    flex: 0 0 145px;
    min-width: 0;
}

.jm-reel-card > a {
    position: relative;
    display: block;
    height: 228px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 3px;
    background: #292525;
}

.jm-reel-card img,
.jm-reel-card .jm-portal-media-fallback {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
}

.jm-reel-card > a::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.02) 30%, rgba(0, 0, 0, 0.92) 100%);
}

.jm-reel-card h3 {
    position: absolute;
    z-index: 2;
    right: 10px;
    bottom: 10px;
    left: 10px;
    margin: 0;
    color: #fff;
    font-size: 12px;
    line-height: 1.35;
    font-weight: 800;
}

.jm-reel-label {
    position: absolute;
    z-index: 2;
    top: 9px;
    left: 9px;
    padding: 4px 6px;
    border-radius: 2px;
    background: var(--jm-red);
    color: #fff;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.05em;
}

.jm-reel-play {
    position: absolute;
    z-index: 2;
    top: 10px;
    right: 9px;
    display: grid;
    width: 27px;
    height: 27px;
    place-items: center;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.62);
    color: #fff;
}

.jm-reel-play svg {
    width: 14px;
    height: 14px;
}

.jm-region-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(330px, 0.95fr);
    gap: 14px;
}

.jm-portal-card-region-lead .jm-portal-card-media {
    aspect-ratio: 16 / 10;
}

.jm-portal-card-region-lead h3 {
    font-size: 23px;
}

.jm-region-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    gap: 0 12px;
}

.jm-portal-card-region-row {
    border: 0;
    border-top: 1px solid #ddd7d5;
    border-radius: 0;
    background: transparent;
}

.jm-portal-card-region-row .jm-portal-card-media {
    display: none;
}

.jm-portal-card-region-row .jm-portal-card-body {
    padding: 10px 0;
}

.jm-portal-card-region-row h3 {
    font-size: 13px;
}

.jm-portal-card-region-row .jm-portal-meta {
    display: none;
}

.jm-editorial-main .jm-gallery-section {
    margin-bottom: 34px;
}

.jm-editorial-main .jm-gallery-grid {
    grid-template-rows: 160px 160px;
    gap: 9px;
}

.jm-gallery-card {
    border-radius: 3px;
}

.jm-gallery-card h3 {
    right: 11px;
    bottom: 10px;
    left: 11px;
    font-size: 13px;
}

.jm-gallery-card.is-featured h3 {
    font-size: 21px;
}

.jm-opinion-layout {
    grid-template-columns: minmax(0, 1.35fr) minmax(290px, 0.65fr);
    gap: 13px;
}

.jm-portal-card-opinion-lead,
.jm-portal-card-opinion-lead .jm-portal-card-media {
    min-height: 330px;
    height: 330px;
}

.jm-portal-card-opinion-lead .jm-portal-card-body {
    padding: 20px;
}

.jm-portal-card-opinion {
    grid-template-columns: 104px minmax(0, 1fr);
    min-height: 92px;
}

.jm-portal-card-opinion .jm-portal-card-media {
    min-height: 92px;
}

.jm-portal-card-opinion .jm-portal-card-body {
    padding: 9px 10px;
}

.jm-portal-card-opinion h3 {
    font-size: 13px;
}

.jm-category-directory {
    padding: 34px 0 42px;
    border-top: 1px solid #e6e0de;
    background: #fff;
}

.jm-desk-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px 16px;
}

.jm-desk-block {
    min-width: 0;
    padding: 14px;
    border: 1px solid #e7e1df;
    border-top: 3px solid var(--jm-red);
    background: #fff;
}

.jm-desk-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 11px;
    padding-bottom: 9px;
    border-bottom: 1px solid #e7e1df;
}

.jm-desk-header span {
    display: block;
    color: var(--jm-red);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.jm-desk-header h2 {
    margin: 1px 0 0;
    color: #171313;
    font-size: 21px;
    line-height: 1.2;
    font-weight: 800;
}

.jm-desk-header > a {
    display: grid;
    width: 31px;
    height: 31px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: #f4eceb;
    color: var(--jm-red);
    font-size: 17px;
    font-weight: 900;
}

.jm-portal-card-desk-lead {
    border: 0;
}

.jm-portal-card-desk-lead .jm-portal-card-media {
    aspect-ratio: 16 / 9;
}

.jm-portal-card-desk-lead .jm-portal-card-body {
    padding: 9px 0 10px;
}

.jm-portal-card-desk-lead h3 {
    font-size: 17px;
}

.jm-desk-list {
    display: grid;
}

.jm-portal-card-desk-row {
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr);
    min-height: 76px;
    border: 0;
    border-top: 1px solid #e9e3e1;
    border-radius: 0;
}

.jm-portal-card-desk-row .jm-portal-card-media {
    min-height: 68px;
    margin-top: 7px;
}

.jm-portal-card-desk-row .jm-portal-card-body {
    padding: 8px 0 7px 9px;
}

.jm-portal-card-desk-row h3 {
    font-size: 12px;
}

.jm-portal-card-desk-row .jm-portal-category,
.jm-portal-card-desk-row .jm-portal-meta {
    display: none;
}

.jm-newsletter-section {
    padding: 30px 0;
    background: #f4f1f0;
}

.jm-newsletter-card {
    border-radius: 3px;
    box-shadow: none;
}

.jm-portal-footer {
    padding: 42px 0 0;
    background:
        radial-gradient(circle at 16% 0, rgba(217, 27, 39, 0.18), transparent 28%),
        #580006;
}

.jm-footer-top {
    grid-template-columns: minmax(230px, 1.3fr) repeat(4, minmax(120px, 0.65fr));
    gap: 28px;
    padding-bottom: 38px;
}

.jm-footer-legal {
    background: #111;
}

.jm-footer-bottom {
    padding-block: 18px;
    border-top: 0;
}

@media (max-width: 1050px) {
    .jm-editorial-layout {
        grid-template-columns: 1fr;
    }

    .jm-editorial-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .jm-desk-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .jm-footer-top {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .jm-footer-brand {
        grid-column: 1 / -1;
    }
}

@media (max-width: 991px) {
    .jm-first-screen-grid {
        display: grid;
        grid-template-columns: 1fr;
        padding-left: 0;
    }

    .jm-quickrail {
        position: static;
        width: auto;
    }
}

@media (max-width: 782px) {
    .jm-editorial-layout {
        padding-block: 22px 30px;
    }

    .jm-headline-deck {
        grid-template-columns: 1fr;
    }

    .jm-headline-stack {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .jm-headline-row {
        grid-column: auto;
    }

    .jm-post-tab-content {
        grid-template-columns: 1fr;
    }

    .jm-post-tab-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .jm-city-grid {
        grid-template-columns: 1fr;
    }

    .jm-portal-card-tab-row {
        display: block;
        border: 1px solid #e8e1df;
        border-radius: 2px;
    }

    .jm-portal-card-tab-row .jm-portal-card-media {
        min-height: 0;
        margin: 0;
        aspect-ratio: 16 / 9;
    }

    .jm-portal-card-tab-row .jm-portal-card-body {
        padding: 9px 10px 10px;
    }

    .jm-latest-feed {
        grid-template-columns: 1fr;
    }

    .jm-editorial-sidebar {
        grid-template-columns: 1fr;
    }

    .jm-video-grid {
        grid-template-columns: 1fr;
    }

    .jm-video-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .jm-portal-card-video {
        display: grid;
        grid-template-columns: 105px minmax(0, 1fr);
    }

    .jm-video-strip {
        display: flex;
        overflow-x: auto;
        padding-bottom: 5px;
    }

    .jm-video-strip .jm-portal-card {
        flex: 0 0 220px;
    }

    .jm-region-layout {
        grid-template-columns: 1fr;
    }

    .jm-opinion-layout {
        grid-template-columns: 1fr;
    }

    .jm-desk-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 13px;
    }

    .jm-footer-top {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .jm-portal-heading h2 {
        font-size: 24px;
    }

    .jm-headline-stack,
    .jm-headline-row,
    .jm-video-list,
    .jm-region-list,
    .jm-desk-grid {
        grid-template-columns: 1fr;
    }

    .jm-portal-card-headline-lead h3 {
        font-size: 23px;
    }

    .jm-portal-card-headline-side {
        grid-template-columns: 110px minmax(0, 1fr);
    }

    .jm-post-tab {
        min-width: 108px;
        min-height: 46px;
        padding-inline: 10px;
        font-size: 12px;
    }

    .jm-post-tabpanels {
        min-height: 0;
    }

    .jm-post-tabpanel {
        padding: 10px;
    }

    .jm-portal-card-tab-lead,
    .jm-portal-card-tab-lead .jm-portal-card-media {
        min-height: 280px;
        height: 280px;
    }

    .jm-portal-card-tab-lead .jm-portal-card-body {
        padding: 18px 16px;
    }

    .jm-portal-card-tab-lead h3 {
        font-size: 21px;
    }

    .jm-post-tab-list {
        grid-template-columns: 1fr;
    }

    .jm-portal-card-tab-row {
        display: grid;
        grid-template-columns: 108px minmax(0, 1fr);
        min-height: 98px;
    }

    .jm-city-panel {
        padding: 12px;
    }

    .jm-city-panel-head {
        margin-bottom: 10px;
        padding-bottom: 8px;
    }

    .jm-city-panel-head h3 {
        font-size: 19px;
    }

    .jm-city-panel-caption {
        padding: 10px 11px;
        font-size: 12px;
    }

    .jm-city-panel-feed {
        gap: 8px;
    }

    .jm-portal-card-tab-row .jm-portal-card-media {
        min-height: 98px;
        aspect-ratio: auto;
    }

    .jm-contained-dark,
    .jm-editorial-main .jm-gallery-section {
        padding: 16px;
    }

    .jm-reel-section {
        padding-inline: 16px;
    }

    .jm-reel-card {
        flex-basis: 138px;
    }

    .jm-editorial-main .jm-gallery-grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: none;
    }

    .jm-editorial-main .jm-gallery-card,
    .jm-editorial-main .jm-gallery-card.is-featured {
        min-height: 230px;
        grid-column: auto;
        grid-row: auto;
    }

    .jm-desk-block {
        padding: 12px;
    }

    .jm-footer-top {
        grid-template-columns: 1fr;
    }

    .jm-footer-brand {
        grid-column: auto;
    }
}
