    html, body {
        height: 100%;
        margin: 4px !important;
        padding: 4px !important;
    }

    /* Standard wide layout for home, lists, and normal pages */
    @media (min-width: 992px) {
        html, body {
            margin: 20px auto !important;
            padding: 10px 40px !important;
            max-width: 1920px;
        }
        
        /* OVERRIDE: Targets the body ONLY when the news detail plugin container is present */
        body:has(.news-single), 
        body:has([class*="news-detail"]) {
            max-width: 800px !important;
        }
    }

    /* Strict 42px Logo Safety Override */
    .logo, .navbar-brand img, #logo, img.logo, .header-logo img, [class*="logo"] img {
        height: 42px !important;
        max-height: 42px !important;
        width: auto !important;
    }


    
    /* Root Flex Container for Sticky Footer */
    #justice-gauge-root-scope {
        display: flex;
        flex-direction: column;
        min-height: 100vh;
        position: relative;
    }

    #justice-gauge-root-scope .top-accent-bar {
        position: fixed !important;
        top: 0; left: 0; right: 0;
        height: 6px;
        background: #e63946;
        z-index: 10000;
    }

    /* Isolated Sticky Header */
    #justice-gauge-root-scope .sticky-header {
        position: fixed !important;
        top: 6px !important;
        left: 0; right: 0;
        z-index: 1050 !important;
        background: #212121;
        box-shadow: 0 2px 8px rgba(0,0,0,0.3);
        transition: background 0.3s ease;
    }

    #justice-gauge-root-scope .sticky-header.sticky-scrolled {
        background: #1a1a1a !important;
    }

    /* Separate Main Content Wrapper with Dynamic Padding Safety */
    #justice-gauge-root-scope .main-content-wrapper {
        flex: 1 0 auto;  /* Pushes footer down */
        padding-top: 90px !important; /* Offsets the fixed header height */
        padding-bottom: 40px;
    }

    /* Scoped Logo & Branding Isolation */
    #justice-gauge-root-scope .logo-wrap img,
    #justice-gauge-root-scope .navbar-brand img {
        height: 52px !important;
        width: auto !important;
        max-height: 52px !important;
    }

    /* Isolated Footer Scope */
    #justice-gauge-root-scope .site-footer {
        background: #212121;
        color: #ffffff;
        padding: 3rem 0 1.5rem;
        margin-top: auto;
    }    .news-list-view .article-title a, 
    .news-list-view h3 a { 
        text-decoration: none !important; 
    }    /* 1. Ensure the individual text containers preserve their standard block-level format */
    .news-single .news-text-wrap > p,
    .news-single [itemprop="articleBody"] > p,
    .news-single .bodytext > p,
    .news-single [itemprop="articleBody"] > div {
        display: block !important; /* This fixes the flex block error and re-enables first-letter */
    }

    /* 2. Target the true first letter of the first block-level string inside the body */
    .news-single .news-text-wrap > p:first-of-type::first-letter,
    .news-single [itemprop="articleBody"] > p:first-of-type::first-letter,
    .news-single .bodytext > p:first-of-type::first-letter,
    .news-single [itemprop="articleBody"] > div:first-of-type::first-letter {
        font-size: 4.2rem !important;
        font-weight: 800 !important;
        float: left !important;
        line-height: 0.85 !important;
        margin: 4px 10px 0 0 !important;
        color: #212121 !important; /* Update this hex code to your preferred branding color */
        font-family: Georgia, serif !important;
    }        /* Hide Teaser / Description Variations (Already Working) */
        [itemprop="description"],
        [itemprop="abstract"],
        .teaser,
        .news-teaser,
        .lead,
        .news-list-item p:not(.news-meta p):not([class*="category"]),
        .description {
            display: none !important;
        }

        /* Hide Read More Buttons (Already Working) */
        .news-list-item a[href*="detail"],
        .news-list-view a.more,
        .news-list-view .more-link,
        .news-list-item .more,
        .news-list-view .btn-primary,
        a.news-read-more {
            display: none !important;
        }        .news-list-item .divider,
        .news-list-item .separator,
        .news-list-item span[class*="divider"],
        .news-list-item span[class*="split"] {
            display: none !important;
        }