/* ===========================
   RESPONSIVE PAGINA FORNITORI
   =========================== */


/* --- DESKTOP MEDIO (max 1200px) --- */
@media (max-width: 1200px) {
    .container {
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }
}


/* --- TABLET ORIZZONTALE (max 992px) --- */
@media (max-width: 992px) {
    .container {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .card.doppia-card {
        grid-column: span 2;
    }
}


/* --- TABLET VERTICALE (max 770px) --- */
@media (max-width: 770px) {

    /* Menu hamburger */
    .hamburger {
        display: block;
    }

    #menu {
        display: none;
        flex-direction: column;
        gap: 15px;
        background-color: #fff;
        padding: 20px;
        border-radius: 10px;
        margin-top: 10px;
    }

    #menu.show {
        display: flex;
    }

    /* Griglia card */
    .container {
        grid-template-columns: 1fr;
        gap: 25px;
        padding: 0 20px;
    }

    .card {
        width: 100%;
    }

    .card-img {
        width: 100%;
        height: auto;
    }

    .card-btn {
        font-size: 16px;
        padding: 10px 20px;
    }

    .doppia-card img {
        margin-bottom: 15px;
    }
}


/* --- MOBILE PICCOLO (max 480px) --- */
@media (max-width: 480px) {

    .siteTitle {
        font-size: 20px;
    }

    .container {
        padding: 0 10px;
        gap: 20px;
    }

    .card-btn {
        font-size: 15px;
        padding: 8px 18px;
    }
}


/* ============================
   MENU PERFETTO TRA 1055px E 601px
============================ */
@media (max-width: 1055px) and (min-width: 601px) {

    /* Barra più larga */
    .barra-superiore {
        width: 90%;
        margin-left: 0;
        margin-right: 5%;
        margin-left: 5%;
    }

    .barra-top,
    .barra-menu {
        padding-left: 10px;
        padding-right: 10px;
        width: 90%;
    }

    /* Menu più compatto */
    #menu {
        gap: 14px;
    }

    #menu li a {
        font-size: 14px;
        font-weight: 500;
    }

    #menu>li {
        padding: 0 8px;
        margin-right: 0;
    }

    #menu>li:not(:last-child)::after {
        height: 14px;
    }

    .siteTitle {
        padding-left: 30px;
    }
}

/* ============================
   MENU DESKTOP SU TUTTI GLI SCHERMI > 600px
============================ */
@media (min-width: 601px) {

    .hamburger {
        display: none !important;
    }

    #menu {
        display: flex !important;
    }
}

/* ============================
   MOBILE (max 600px)
============================ */
@media (max-width: 600px) {

    /* Mostra hamburger */
    .hamburger {
        display: block;
    }

    /* Nasconde menu desktop */
    #menu {
        display: none;
        flex-direction: column;
        width: 100%;
        background: white;
        padding: 20px 0;
        gap: 20px;
        border-top: 1px solid #ccc;
    }

    #menu.show {
        display: flex;
    }

    /* Barra superiore più compatta */
    .barra-top {
        flex-direction: column;
        gap: 8px;
        padding: 10px 0;
    }

    .barra-top img {
        width: 70px;
    }


}

/* ============================
   MOBILE PICCOLI (max 480px)
============================ */
@media (max-width: 480px) {

    .siteTitle {
        font-size: 20px;
    }

    .siteSubtitle {
        font-size: 11px;
    }

}