@media screen and (max-width: 1024px) {
    
    .modal-foto img {width: 65%;height: 70%;}
    .modal-foto span {font-size: 26px;right: 15px;top: 5px;}
    .modal-foto .prev,
    .modal-foto .next {padding: 6px;}
    .modal-foto .prev {left: 20px;}
    .modal-foto .next {right: 20px;}
    nav img {width: 6%; height: 10vh;}
    nav ul li a {font-size: 32px;}
    nav button {width: 15%;margin-right: 10px;}
    .hero-text h1 {font-size: 28px;}
    .hero-text h2 {font-size: 24px;}
    .hero-text button {width: 35%;}
    .boxCall {text-align: center;}
    .boxCall button {padding: 10px;width: 25%;}

}

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

    nav ul {gap: 10px;}
    nav ul li a {font-size: 20px;}
    nav button {width: 20%;margin-right: 0px;}
    .modal-foto img {width: 65%;height: 50%;}
    .modal-foto span {font-size: 26px;right: 15px;top: 5px;}
    .modal-foto .prev,
    .modal-foto .next {padding: 6px;}
    .modal-foto .prev {left: 20px;}
    .modal-foto .next {right: 20px;}
    .hero-text {top: 25%;left: 5%;width: 60%;}
    .hero-text h1 {font-size: 28px;}
    .hero-text h2 {font-size: 24px;}
    .hero-text button {width: 40%;}
    .boxCall {text-align: center;}
    .boxCall h2 {font-size: 26px;}
    .boxCall p {font-size: 16px;}
    .boxCall button {padding: 10px;width: 40%;}
    /* Footer */
    .footer-container { flex-direction: column; text-align: center; }
    .footer-section { margin-bottom: 40px; }
    .social-icons, .payment-methods { justify-content: center; }
    
}

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

    .modal-foto img {width: 65%;height: 40%;}
    .modal-foto span {font-size: 26px;right: 15px;top: 5px;}
    .modal-foto .prev,
    .modal-foto .next {padding: 6px;}
    .modal-foto .prev {left: 20px;}
    .modal-foto .next {right: 20px;}
    nav {flex-direction: row;justify-content: space-between;align-items: center;}
    nav img {width: 12%;}
    nav ul {display: none;text-align: center;flex-direction: column;background-color: #000;position: absolute;top: 60px;right: 0;width: 100%;z-index: 999;padding: 20px 0;}
    nav ul.show {display: flex;}
    .hamburger {display: flex;}
    nav button {display: none;}
    .hero-text {top: 26%;left: 2%;width: 60%;}
    .hero-text h1 {font-size: 24px;}
    .hero-text h2 {font-size: 18px;}
    .hero-text button {width: 50%;}
    .hero img {width: 100%;height: 90vh;object-fit: cover;object-position: 75% center;}
    #sezioneGallery h2 {font-size: 36px;}
    #sezioneGallery p {font-size: 20px;}
    .grid-container {grid-template-columns: repeat(2, 1fr);gap: 5px;width: 90%;max-width: 1000px;margin-bottom: 3vh;}
    #sezioneCall img {object-fit: cover;}
    .boxCall {text-align: center;}
    .boxCall h2 {font-size: 26px;}
    .boxCall p {font-size: 16px;}
    .boxCall button {padding: 10px;width: 60%;}
    
}

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

    .hero-text {
        top: 28%;
        left: 5%;
        width: 75%;
    }

    .hero-text h1 {
        font-size: 2.2rem;
    }

    .hero-text h1 em {
        font-size: 1.8rem;
    }

    .hero-text button {
        padding: 10px 20px;
    }

}

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

    .hero-text {
        top: 30%;
        left: 5%;
        width: 65%;
    }

    .hero-text h1 {
        font-size: 1.8rem;
        line-height: 1.2;
    }

    .hero-text h1 em {
        font-size: 1.5rem;
    }

    .hero-text button {
        width: auto;
        padding: 10px 18px;
    }

}