.article-hero { 
    position:relative; 
    height:420px; 
    overflow:hidden; 
    background:#1a1a1a; 
}
.article-hero img { 
    width:100%; 
    height:100%; 
    object-fit:cover; 
    display:block; 
}
.article-hero-overlay { 
    position:absolute; 
    inset:0; 
    background:linear-gradient(to bottom, transparent 30%, rgba(0,0,0,0.7)); 
}
.article-header { 
    max-width:820px; 
    margin:0 auto; 
    padding:2.5rem 1.5rem 0; 
}
.article-meta { 
    display:flex; 
    align-items:center; 
    gap:1rem; 
    margin-bottom:1rem; 
}
.article-meta .news-category { 
    font-size:0.75rem; 
    font-weight:bold; 
    letter-spacing:0.08em; 
    color:#FDB924; 
}
.article-meta .article-date { 
    color:#888; 
    font-size:0.85rem; 
}
.article-header h1 { 
    font-size:2rem; 
    line-height:1.25; 
    color:#1a1a1a; 
    margin-bottom:1rem; 
}
.article-summary { 
    font-size:1.1rem; 
    color:#555; 
    line-height:1.6; 
    margin-bottom:2rem; 
}
.article-body { 
    max-width:820px; 
    margin:0 auto; 
    padding:0 1.5rem 4rem; 
}
.article-body p  { 
    margin-bottom:1.2rem; 
    line-height:1.75; 
    color:#333; 
}
.article-body h2 { 
    font-size:1.3rem; 
    margin:2rem 0 0.8rem; 
}
.article-body h3 { 
    font-size:1.1rem; 
    margin:1.5rem 0 0.6rem; 
}
.article-body ul,
.article-body ol  { 
    margin:0 0 1.2rem 1.5rem; 
    line-height:1.75; 
}
.article-body a   { 
    color:#0055A5; 
    text-decoration:underline; 
}
.article-back { 
    display:inline-block;
    margin:2rem 0 0; 
    color:#0055A5; 
    font-size:0.875rem; 
    text-decoration:none; 
}
.article-back:hover { 
    text-decoration:underline; 
}
.not-found { 
    max-width:600px; 
    margin:6rem auto; 
    text-align:center; 
    color:#666; 
}
.not-found h1 { 
    font-size:1.5rem; 
    color:#1a1a1a; 
    margin-bottom:1rem; 
}
.newsroom-hero { 
    background:#1a1a1a; 
    padding:5rem 1.5rem 3rem; 
    text-align:center; 
}
.newsroom-hero h1 { 
    color:#fff; 
    font-size:2.2rem; 
    letter-spacing:0.05em; 
    margin-bottom:0.5rem; 
}
.newsroom-hero p  { 
    color:#888; 
    font-size:1rem; 
}
.newsroom-grid { 
    max-width:1200px; 
    margin:3rem auto; 
    padding:0 1.5rem; 
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
    gap:2rem; 
}
.empty-state { 
    max-width:600px; 
    margin:6rem auto; 
    text-align:center; 
    color:#888; 
}