@media (max-width: 1100px) {
    .grid-4 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .spiritual-hero-grid,
    .hero-grid,
    .two-col,
    .feature-columns,
    .closing-banner {
        grid-template-columns: 1fr;
        display: grid;
    }
    .footer-grid, .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .nav-wrap {
        grid-template-columns: 1fr;
        padding: .95rem 0 1rem;
    }
    .main-nav { justify-content: flex-start; }
    .nav-tools {
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

@media (max-width: 900px) {
    .filter-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .filter-form .wide { grid-column: span 2; }
    .grid-4, .grid-3, .grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-shell { grid-template-columns: 1fr; }
    .admin-sidebar { position: sticky; top: 0; z-index: 20; }
    .admin-form-grid { grid-template-columns: 1fr; }
    .hero-stat-grid, .hero-metrics { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
    .grid-4, .grid-3, .grid-2,
    .footer-grid, .stats-grid, .hero-metrics,
    .hero-stat-grid, .filter-form {
        grid-template-columns: 1fr;
    }
    .filter-form .wide { grid-column: span 1; }
    .spiritual-hero-copy,
    .spiritual-hero-side,
    .hero-card,
    .hero-side,
    .panel,
    .card-body,
    .closing-banner {
        padding: 1rem;
    }
    .section-header,
    .closing-banner {
        display: block;
    }
    .nav-search,
    .nav-search input {
        width: 100%;
    }
    .main-nav {
        overflow-x: auto;
        padding-bottom: .2rem;
    }
    .quick-links-strip {
        flex-direction: column;
    }
    .quick-links-strip a,
    .family-link {
        width: 100%;
    }
}
