@media (max-width: 1024px) {
    .grid-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .header {
        padding: 1rem;
        flex-wrap: wrap;
        gap: 1rem;
    }

    .header nav {
        width: 100%;
        justify-content: space-between;
    }

    .grid-2,
    .grid-3,
    .grid-4 {
        grid-template-columns: 1fr;
    }

    .section {
        padding: 3rem 0;
    }

    .hero {
        padding: 4rem 0;
    }

    .hero-actions {
        flex-direction: column;
    }

    .btn {
        width: 100%;
    }

    #accountSidebar {
        width: 100%;
        right: -100%;
    }
}

@media (max-width: 480px) {
    .container {
        width: min(100% - 1rem, var(--container));
    }

    .section-title {
        font-size: 1.6rem;
    }

    .card-body {
        padding: 1rem;
    }
}
