/* Stile generale */
body {
    margin: 0;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji", "Segoe UI Symbol";
    background-color: #ffecb3;
    color: #333;
}

/* Header */
header {
    text-align: center;
    padding: 20px;
}

header .logo img {
    max-width: 120px; /* leggermente più piccolo su mobile */
    margin-bottom: 10px;
}

header h1 {
    color: #ff5722;
    font-size: 2rem; /* leggermente più piccolo su mobile */
    margin: 10px 0;
}

header .hero-image {
    max-width: 80%; /* più piccolo su schermi piccoli */
    height: auto;
    margin-top: 15px;
    margin-bottom: 20px;
    border-radius: 15px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

/* Griglia sezioni */
.grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); /* Da 160px a 140px = 6 colonne */
    gap: 20px;
    padding: 20px;
    max-width: 1000px;
    margin: 0 auto;
}

.grid-item {
    background-color: #fff3e0;
    border: 2px solid #ff5722;
    color: #ff5722;
    text-decoration: none;
    font-size: 1rem;
    font-weight: bold;
    padding: 30px 15px;
    border-radius: 15px;
    text-align: center;
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

/* Emoji più grandi */
.grid-item::before {
    content: attr(data-emoji);
    display: block;
    font-size: 3rem; /* emoji ancora più grandi su mobile */
    margin-bottom: 10px;
}

.grid-item:hover {
    background-color: #ff5722;
    color: #fff;
    transform: scale(1.05);
}


/* Quando l’elemento entra in vista */
.grid-item.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Footer */
footer {
    text-align: center;
    padding: 15px;
    background-color: #ffe0b2;
    margin-top: 30px;
    font-size: 0.85rem;
}

/* MEDIA QUERIES PER MOBILE */
@media only screen and (max-width: 600px) {
    header h1 {
        font-size: 1.8rem;
    }

    header .hero-image {
        max-width: 90%;
    }

    .grid-container {
        grid-template-columns: 1fr; /* una colonna su smartphone */
        gap: 15px;
        padding: 15px;
    }

    .grid-item {
        padding: 25px 10px;
        font-size: 1.2rem;
    }

    .grid-item::before {
        font-size: 3.5rem; /* emoji ancora più visibili su schermo piccolo */
    }
}
