/*
Theme Name: News Room
Theme URI: https://example.com/news-room
Author: High Performance Build Engine
Author URI: https://example.com
Description: Ultra-fast, PageSpeed 95+ WordPress news & magazine theme for News Room with Primary Color #D1001C. Main container width 1280px.
Version: 1.0.0
Text Domain: news-room
Tags: news, magazine, responsive-layout, grid-layout, custom-menu, custom-logo, translation-ready
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

html { scroll-behavior: smooth; }

/* Enforce 1280px Main Container (1200-1320px Range) Globally */
.container {
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.entry-content a { color: #D1001C; text-decoration: underline; }
.alignleft { float: left; margin-right: 1.5rem; margin-bottom: 1rem; }
.alignright { float: right; margin-left: 1.5rem; margin-bottom: 1rem; }
.aligncenter { display: block; margin: 0 auto 1rem; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); position: absolute !important; height: 1px; width: 1px; overflow: hidden; }

/* High Visibility Form Input Styling with Shadow */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
textarea,
select,
.comment-form input,
.comment-form textarea {
    border: 1px solid #cbd5e1 !important;
    border-radius: 0px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1) !important;
    background-color: #ffffff !important;
    color: #0f172a !important;
    padding: 0.625rem 0.875rem !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    outline: 2px solid #D1001C !important;
    box-shadow: 0 10px 15px -3px rgba(209, 0, 28, 0.2) !important;
}

/* Header Search Form Reset & Alignment Fix */
.search-form input[type="search"],
.search-form input {
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    padding: 0.5rem 0.75rem !important;
    outline: none !important;
}
.search-form input[type="search"]:focus {
    outline: none !important;
    box-shadow: none !important;
}

/* Sidebar & Widget Transparent Background (No Background Color) */
.widget,
aside .widget,
.sidebar .widget {
    background-color: transparent !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Sidebar & Widget Link Hover Transition Rules */
.widget a,
.widget-title a,
aside a,
.sidebar a {
    color: #001933;
    transition: color 0.2s ease-in-out;
}

.widget a:hover,
.widget-title a:hover,
aside a:hover,
.sidebar a:hover {
    color: #D1001C !important;
    text-decoration: underline;
}

/* â”€â”€ RICH ENTRY CONTENT TYPOGRAPHY (SINGLE POST & PAGE CONTENT) â”€â”€ */
.entry-content {
    color: #1e293b;
    font-size: 1.0625rem;
    line-height: 1.75;
}

.entry-content p {
    margin-bottom: 1.5rem;
}

.entry-content h2 {
    font-family: 'Georgia', 'Cambria', 'Times New Roman', serif;
    font-weight: 900;
    font-size: 1.75rem;
    line-height: 1.3;
    color: #0f172a;
    margin-top: 2.25rem;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #e2e8f0;
}

.entry-content h3 {
    font-family: 'Georgia', 'Cambria', 'Times New Roman', serif;
    font-weight: 800;
    font-size: 1.375rem;
    line-height: 1.35;
    color: #0f172a;
    margin-top: 1.75rem;
    margin-bottom: 0.75rem;
}

.entry-content h4 {
    font-family: 'Georgia', 'Cambria', 'Times New Roman', serif;
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 1.4;
    color: #1e293b;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
}

.entry-content h5,
.entry-content h6 {
    font-weight: 700;
    font-size: 1rem;
    color: #334155;
    margin-top: 1.25rem;
    margin-bottom: 0.5rem;
}

.entry-content strong,
.entry-content b {
    font-weight: 900;
    color: #0f172a;
}

.entry-content em,
.entry-content i {
    font-style: italic;
}

.entry-content ul {
    list-style-type: disc !important;
    margin-top: 1rem;
    margin-bottom: 1.5rem;
    padding-left: 1.75rem !important;
}

.entry-content ol {
    list-style-type: decimal !important;
    margin-top: 1rem;
    margin-bottom: 1.5rem;
    padding-left: 1.75rem !important;
}

.entry-content li {
    margin-bottom: 0.5rem;
    line-height: 1.65;
}

.entry-content ul li::marker {
    color: #D1001C;
}

.entry-content ol li::marker {
    color: #D1001C;
    font-weight: bold;
}

.entry-content blockquote {
    border-left: 4px solid #D1001C;
    background-color: #f8fafc;
    padding: 1rem 1.25rem;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    font-style: italic;
    color: #334155;
}

.entry-content blockquote p:last-child {
    margin-bottom: 0;
}

.entry-content code {
    background-color: #f1f5f9;
    color: #0f172a;
    padding: 0.2rem 0.4rem;
    border-radius: 0.25rem;
    font-size: 0.875em;
    font-family: monospace;
}

.entry-content pre {
    background-color: #0f172a;
    color: #f8fafc;
    padding: 1rem;
    border-radius: 0.375rem;
    overflow-x: auto;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.entry-content table {
    width: 100%;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    border-collapse: collapse;
}

.entry-content th,
.entry-content td {
    padding: 0.75rem 1rem;
    border: 1px solid #cbd5e1;
    text-align: left;
}

.entry-content th {
    background-color: #f1f5f9;
    font-weight: 700;
    color: #0f172a;
}

/* ── LEAVE A REPLY COMMENT FORM EXACT MATCH STYLING ── */
.comment-form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

@media (min-width: 768px) {
    .comment-form {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1.25rem !important;
    }
    
    .comment-form #reply-title,
    .comment-form .comment-notes,
    .comment-form .comment-form-comment,
    .comment-form .comment-form-cookies-consent,
    .comment-form .form-submit {
        grid-column: span 2 / span 2 !important;
    }
    
    .comment-form-author,
    .comment-form-email {
        grid-column: span 1 / span 1 !important;
    }
}

/* ── DYNAMIC GRADIENT SITE TITLE (BLUE -> PURPLE -> RED) ── */
.site-title-gradient {
    background: linear-gradient(90deg, #3b82f6 0%, #a855f7 50%, #ef4444 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    color: transparent !important;
    display: inline-block !important;
}

/* ── SIDEBAR WIDGET TITLE (MATCHING FOOTER RED BADGE & RED BOTTOM LINE) ── */
.widget {
    background-color: transparent !important;
    background: transparent !important;
    border: none !important;
    margin-bottom: 1.5rem !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.widget .widget-content {
    padding: 1rem !important;
}

.widget ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.widget ul li {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #f3f4f6;
    font-size: 0.875rem;
    color: #111827;
}

.widget ul li:last-child {
    border-bottom: none;
}

.widget ul li a {
    color: #111827;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease;
}

.widget ul li a:hover {
    color: #D1001C;
}

/* ── FOOTER H3 & TITLE BORDER-BOTTOM STYLING ── */
:root {
    --one-newspaper-global-preset-theme-color: #D1001C;
}

footer h3,
footer .widget-title,
#section-9 h3,
#section-9 .widget-title,
.footer-widget h3,
.block-title--layout-one #footer-opinions-section h2.one-newspaper-block-title,
.block-title--layout-one .single-related-posts-section-wrap h2.one-newspaper-block-title,
.block-title--layout-one .widget h2.one-newspaper-block-title,
.block-title--layout-one .section-head {
    border-bottom: 2px solid var(--one-newspaper-global-preset-theme-color, #D1001C) !important;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
}

/* ── FOOTER BLACK BG & RED BADGE TITLE STYLING ── */
#section-9,
footer#section-9 {
    background-color: #0b0b0b !important;
    color: #ffffff !important;
}

#section-9 .widget,
footer#section-9 .widget,
#section-9 .one-newspaper-widget,
footer#section-9 .one-newspaper-widget {
    background-color: transparent !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin-bottom: 1rem !important;
}

#section-9 h2.one-newspaper-widget-title,
#section-9 h2.one-newspaper-block-title,
#section-9 h3,
.one-newspaper-widget-title,
.one-newspaper-block-title {
    border-bottom: 2px solid #D1001C !important;
    padding-bottom: 0 !important;
    margin-bottom: 1rem !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    background: transparent !important;
}

#section-9 h2.one-newspaper-widget-title span,
#section-9 h2.one-newspaper-block-title span,
#section-9 h3 span,
.one-newspaper-widget-title span,
.one-newspaper-block-title span {
    background-color: #D1001C !important;
    color: #ffffff !important;
    padding: 0.375rem 0.875rem !important;
    display: inline-block !important;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-family: var(--font-serif, ui-serif, Georgia, Cambria, "Times New Roman", Times, serif) !important;
    border-radius: 0 !important;
}

/* ── MAIN BOXED CONTAINER & STICKY ENFORCEMENT ── */
html,
body,
body.custom-background {
    background-color: #f1f5f9 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#page.site {
    max-width: 1280px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    background-color: #ffffff !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.18), 0 0 0 1px rgba(0, 0, 0, 0.05) !important;
    width: 100% !important;
    overflow: visible !important;
}

/* STICKY HEADER ENFORCEMENT & BLACK BG */
#section-1,
header#section-1 {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    margin-top: 0 !important;
    background-color: #0b0b0b !important;
    border-bottom: 1px solid #1f2937 !important;
}

/* STICKY SIDEBAR ENFORCEMENT */
@media (min-width: 1024px) {
    #section-8 aside,
    .related-posts + aside,
    aside.sticky {
        position: sticky !important;
        top: 5rem !important;
        align-self: flex-start !important;
        z-index: 40 !important;
    }
}

#section-9 {
    margin-bottom: 0 !important;
}

.container {
    max-width: 100% !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

@media (min-width: 768px) {
    .container {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }
}



