@media (min-width: 768px) {
    .hero { padding: 5rem 0 4rem; }
    .site-nav { gap: 0.6rem; }
    .page-section { padding: 2rem 2rem 2.25rem; }
    .split-grid,
    .card-grid,
    .metric-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .split-grid { grid-template-columns: 1.15fr 0.85fr; align-items: center; }
    .about-media { max-width: 380px; margin-left: auto; }
    .card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .metric-row { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .contact-layout { grid-template-columns: 1.05fr 0.95fr; align-items: start; }
    .admin-shell { grid-template-columns: 280px 1fr; align-items: start; }
    .footer-grid { grid-template-columns: 1.4fr 1fr 1fr 1.1fr; align-items: start; }
    .program-detail-grid { grid-template-columns: 1.6fr 1fr; align-items: start; }
    .faq-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
    .point-grid-wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
    .header-inner {
        flex-direction: column;
        align-items: flex-start;
    }
    .header-actions {
        flex-wrap: wrap;
        width: 100%;
    }
    .site-nav {
        width: 100%;
        justify-content: flex-start;
    }
    .hero-copy {
        padding: 1.25rem;
    }
    .brand-logo {
        height: 42px;
    }
    .impressum-row {
        grid-template-columns: 1fr;
        gap: 0.25rem;
    }
    .cookie-banner-inner {
        flex-direction: column;
        align-items: flex-start;
    }
}
