/* =========================
   LARGE TABLET / SMALL LAPTOP
========================= */
@media (max-width: 992px) {
    #main-content {
        padding: 32px 18px 40px;
    }

    .home-section {
        padding: 22px;
        border-radius: 22px;
    }

    .section-heading h2 {
        font-size: 24px;
    }

    .cards-grid.two-col {
        gap: 18px;
    }

    .cards-grid.single-project-grid {
        max-width: 680px;
    }

    .home-card {
        min-height: 230px;
        padding: 24px 20px;
        border-radius: 24px;
    }

    .project-card {
        min-height: 290px;
        padding: 32px 24px;
    }

    .card-icon {
        margin-bottom: 16px;
    }

    .icon-badge {
        width: 78px;
        height: 78px;
    }

    .icon-svg {
        width: 40px;
        height: 40px;
    }

    .project-card .icon-badge {
        width: 92px;
        height: 92px;
    }

    .project-card .icon-svg {
        width: 46px;
        height: 46px;
    }

    .home-card h3 {
        font-size: 24px;
    }

    .project-card h3 {
        font-size: 30px;
    }

    .card-text {
        max-width: 500px;
        gap: 8px;
    }

    .card-text p {
        font-size: 15px;
        line-height: 1.55;
    }
}

/* =========================
   TABLET
========================= */
@media (max-width: 768px) {
    .loading-row {
        width: min(100%, 320px);
    }

    .progress-meta {
        font-size: 13px;
    }

    .loading-note {
        font-size: 12px;
    }

    #main-content {
        padding: 24px 14px 32px;
    }

    .home-section {
        padding: 18px;
        border-radius: 20px;
    }

    .section-heading {
        gap: 10px;
        margin-bottom: 18px;
    }

    .section-heading h2 {
        font-size: 21px;
    }

    .cards-grid.two-col {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .cards-grid.single-project-grid {
        max-width: 100%;
    }

    .home-card {
        min-height: 180px;
        padding: 18px 12px;
        border-radius: 22px;
    }

    .project-card {
        min-height: 260px;
        padding: 26px 18px;
        border-radius: 24px;
    }

    .card-icon {
        margin-bottom: 12px;
    }

    .icon-badge {
        width: 68px;
        height: 68px;
    }

    .icon-svg {
        width: 34px;
        height: 34px;
    }

    .project-card .icon-badge {
        width: 82px;
        height: 82px;
    }

    .project-card .icon-svg {
        width: 40px;
        height: 40px;
    }

    .home-card h3 {
        font-size: 18px;
        line-height: 1.3;
    }

    .project-card h3 {
        font-size: 26px;
    }

    .card-text {
        max-width: 100%;
        gap: 8px;
    }

    .card-text p {
        font-size: 14px;
        line-height: 1.55;
        max-width: 420px;
    }
}

/* =========================
   MOBILE
========================= */
@media (max-width: 480px) {
    .loader-box {
        width: min(94%, 420px);
        padding: 20px 14px;
    }

    .project-tag {
        font-size: 11px;
        letter-spacing: 2.2px;
        margin-bottom: 14px;
    }

    .loading-row {
        width: min(100%, 280px);
        margin-top: 24px;
    }

    #main-content {
        padding: 16px 10px 24px;
    }

    .home-section {
        padding: 14px;
        border-radius: 18px;
    }

    .section-heading {
        gap: 8px;
        margin-bottom: 14px;
    }

    .section-heading h2 {
        font-size: 17px;
    }

    .section-line {
        height: 1px;
    }

    .cards-grid.two-col {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .cards-grid.single-project-grid {
        max-width: 100%;
    }

    .home-card {
        min-height: 145px;
        padding: 14px 8px;
        border-radius: 20px;
    }

    .project-card {
        min-height: 220px;
        padding: 22px 14px;
        border-radius: 22px;
    }

    .card-icon {
        margin-bottom: 10px;
    }

    .icon-badge {
        width: 64px;
        height: 64px;
    }

    .icon-svg {
        width: 34px;
        height: 34px;
    }

    .project-card .icon-badge {
        width: 74px;
        height: 74px;
    }

    .project-card .icon-svg {
        width: 36px;
        height: 36px;
    }

    .home-card h3 {
        font-size: 14px;
        line-height: 1.35;
        max-width: 110px;
        margin: 0 auto;
    }

    .project-card h3 {
        font-size: 22px;
        max-width: none;
    }

    .card-text {
        gap: 6px;
    }

    .card-text p {
        font-size: 13px;
        line-height: 1.5;
        max-width: 260px;
    }
}