/*
Theme Name: The Liberty Ledger Pro
Author: Michael Peabody
Description: Premium Newspaper theme for Legal Archives. Inspired by The Hill.
Version: 2.5
Text Domain: liberty-ledger
*/

:root { --ink: #1a1a1a; --paper: #ffffff; --hill-blue: #004b7d; --border: #ececec; }
body { background: var(--paper); color: var(--ink); font-family: 'Georgia', serif; margin: 0; line-height: 1.6; }

/* Header & Nav */
.site-header { border-bottom: 6px double var(--ink); text-align: center; padding: 40px 0; }
.site-title { font-size: 4rem; font-weight: 900; text-transform: uppercase; letter-spacing: -2px; margin: 0; }
.main-nav { border-bottom: 3px solid var(--ink); background: #fff; padding: 10px 0; text-align: center; position: sticky; top: 0; z-index: 100; }
.main-nav ul { list-style: none; padding: 0; display: inline-flex; }
.main-nav li { margin: 0 15px; }
.main-nav a { font-family: sans-serif; font-weight: 700; text-transform: uppercase; font-size: 13px; text-decoration: none; color: var(--ink); }

/* The Hill Grid */
.hill-grid { max-width: 1400px; margin: 30px auto; display: grid; grid-template-columns: 2fr 1.2fr 1fr; gap: 30px; padding: 0 20px; }
.article-card { border-bottom: 1px solid var(--border); padding-bottom: 25px; margin-bottom: 25px; }
.article-card h2 { font-family: 'Arial Black', sans-serif; font-size: 1.8rem; line-height: 1.1; margin: 10px 0; }
.label { background: var(--hill-blue); color: #fff; padding: 3px 8px; font-size: 11px; text-transform: uppercase; font-family: sans-serif; font-weight: bold; }

/* Single Post View */
.content-view { max-width: 800px; margin: 50px auto; padding: 0 20px; }
.content-view h1 { font-size: 3.2rem; line-height: 1; margin-bottom: 20px; }
.entry-content { font-size: 1.25rem; }
.entry-content img { max-width: 100%; height: auto; }

/* THE HILL GRID LOGIC */
.hill-grid { 
    max-width: 1400px; 
    margin: 30px auto; 
    display: grid; 
    /* This creates 3 columns: 1 wide, 1 medium, 1 narrow */
    grid-template-columns: 2fr 1.2fr 1fr; 
    gap: 30px; 
    padding: 0 20px; 
}

/* Ensure images don't break the columns */
img { max-width: 100%; height: auto; }

/* Mobile Responsive: If screen is less than 1000px, stack them */
@media (max-width: 1000px) {
    .hill-grid {
        grid-template-columns: 1fr;
    }
}