/* ==========================================
   Responsive dashboard / homepagina
========================================== */

@media screen and (max-width: 900px) {

    .landing-page {
        min-height: calc(100vh - 60px);
        padding: 24px 16px 40px;
        box-sizing: border-box;
    }

    .hero {
        width: 100%;
        margin: 0 auto 24px;
        padding: 30px 22px;
        box-sizing: border-box;
        border-radius: 20px;
    }

    .hero-badge {
        margin-bottom: 16px;
        font-size: 11px;
        line-height: 1.4;
    }

    .hero h1 {
        margin-bottom: 16px;
        font-size: clamp(38px, 11vw, 52px);
        line-height: 1.05;
        overflow-wrap: anywhere;
    }

    .hero-text {
        max-width: none;
        margin: 0;
        font-size: 17px;
        line-height: 1.6;
    }

    .hero-buttons {
        width: 100%;
        margin-top: 24px;
        flex-direction: column;
        gap: 12px;
    }

    .btn-primary,
    .btn-secondary {
        width: 100%;
        padding: 15px 18px;
        box-sizing: border-box;
        text-align: center;
    }

    .dashboard-grid {
        width: 100%;
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .dashboard-card {
        width: 100%;
        min-height: 0;
        padding: 22px;
        box-sizing: border-box;
        border-radius: 18px;
    }

    .dashboard-card .icon {
        margin-bottom: 14px;
        font-size: 30px;
    }

    .dashboard-card h2 {
        margin-bottom: 10px;
        font-size: 21px;
    }

    .dashboard-card p {
        margin-bottom: 0;
        font-size: 16px;
        line-height: 1.55;
    }

}

@media screen and (max-width: 420px) {

    .landing-page {
        padding-right: 12px;
        padding-left: 12px;
    }

    .hero {
        padding: 26px 18px;
    }

    .hero h1 {
        font-size: 36px;
    }

    .hero-text {
        font-size: 16px;
    }

    .dashboard-card {
        padding: 20px 18px;
    }
}
