/* ============================================
   IMAGES — Hero & Article
   ============================================ */
.hero-image {
    display: block;
    width: 100%;
    max-width: var(--wide-width, 960px);
    height: auto;
    margin: var(--sp-lg, 2.5rem) auto 0;
    aspect-ratio: 21 / 9;
    object-fit: cover;
    border-radius: var(--radius-lg, 10px);
    border: 1px solid var(--c-border, #2a2d35);
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0,0,0,0.35), 0 6px 20px rgba(0,0,0,0.25));
    transition: box-shadow var(--transition-med, 0.3s) ease, transform var(--transition-med, 0.3s) ease;
}

.hero-image:hover {
    box-shadow: var(--shadow-elevated, 0 4px 12px rgba(0,0,0,0.4), 0 12px 40px rgba(0,0,0,0.3));
    transform: translateY(-2px);
}

.article-image {
    max-width: var(--content-width, 720px);
    margin: var(--sp-xl, 4rem) auto;
    text-align: center;
}

.article-image img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: var(--radius-md, 6px);
    border: 1px solid var(--c-border, #2a2d35);
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0,0,0,0.35), 0 6px 20px rgba(0,0,0,0.25));
    transition: box-shadow var(--transition-med, 0.3s) ease, transform var(--transition-med, 0.3s) ease;
}

.article-image img:hover {
    box-shadow: var(--shadow-elevated, 0 4px 12px rgba(0,0,0,0.4), 0 12px 40px rgba(0,0,0,0.3));
    transform: translateY(-2px);
}

/* ============================================
   FOOTER — Disclaimer
   ============================================ */


.footer-disclaimer {
    max-width: var(--content-width, 720px);
    margin: 0 auto;
    padding: var(--sp-md, 1.5rem) var(--sp-lg, 2.5rem);
    background: var(--c-bg-raised, #16171b);
    border: 1px solid var(--c-border, #2a2d35);
    border-radius: var(--radius-md, 6px);
}

.footer-disclaimer p {
    font-family: var(--f-mono, 'JetBrains Mono', monospace);
    font-size: var(--fs-caption, 0.8rem);
    line-height: 1.6;
    color: var(--c-text-muted, #7d818c);
    margin: 0;
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 640px) {
    .hero-image {
        aspect-ratio: 16 / 9;
        border-radius: var(--radius-md, 6px);
        margin: var(--sp-md, 1.5rem) auto var(--sp-lg, 2.5rem);
    }

    .article-image {
        margin: var(--sp-lg, 2.5rem) auto;
    }

    .footer-disclaimer {
        padding: var(--sp-sm, 0.75rem) var(--sp-md, 1.5rem);
    }
}

/* ============================================
   PRINT
   ============================================ */
@media print {
    .hero-image,
    .article-image img {
        box-shadow: none;
        border-color: #ccc;
    }

    .footer-disclaimer {
        background: #f5f5f5;
        border-color: #ccc;
    }

    .footer-disclaimer p {
        color: #555;
    }
}
