/* =====================================================
   Base Styles
   ===================================================== */

body {
    font-family: var(--font-family-sans);
    background: var(--page-background);
    -webkit-font-smoothing: antialiased;
    color: var(--text-strong);
    line-height: 1.6;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.news-main {
    flex: 1;
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(20px, 3vw, 32px) clamp(16px, 4vw, 32px);
    padding-bottom: clamp(32px, 6vh, 48px);
    width: 100%;
    box-sizing: border-box;
}