@media (min-width: 1024px) {
  .service-box {
    padding-bottom: 100px;
  }
  .sezione_menu_desktop {
    transition: transform 0.5s ease-in-out;
  }
  .sezione_menu_desktop.animation-desktop {
    transform: translateY(-100%);
  }
  .first-parag > div {
    transition: opacity 0.5s ease-in-out;
  }
  .first-parag .animation-desktop {
    opacity: 0;
  }

  .background {
    background-color: #fafafa;
    height: 100vh;
    width: 100vw;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
  }
  .background.animation-desktop {
    opacity: 1;
  }
}

@media (max-width: 1023px) {
  .sezione_menu_desktop {
    display: none !important;
  }
  .services-boxes {
    /* height: calc(60vh - 100px); */
    height: max-content;
  }
  .immagine-1 {
    height: 60vh;
  }
  .row_footer_A {
    padding-bottom: 0px;
  }
  footer {
    display: block;
  }
  .footer-logo {
    width: 100%;
  }
  .footer-info {
    width: 100%;
  }
  .footer-info > div:first-child {
    padding-top: clamp(60px, 6.667vw, 128px);
  }
  .nmm-container {
    display: block;
  }
  .nmm-open {
    display: block;
  }
  .footer-last-links {
    width: 50%;
  }

  .over-default {
    height: calc(100vh - 60px);
    top: 60px;
  }
  .container-canvas {
    opacity: 0 !important;
    pointer-events: none !important;
  }
  body {
    overflow: auto !important;
  }
  .helper-animation {
    display: none !important;
  }
  .first-parag {
    height: calc(100% - 60px);
    padding-bottom: 120px;
  }
  .immagine-3 {
    height: 60vh;
  }
}

@media (max-width: 639px) {
  .contenitore_primario {
    width: 90%;
  }
  .blur-grid.mobile {
    display: flex;
  }
  .blur-grid {
    display: none;
  }
  .default-1 {
    display: block;
  }
  .default-1 > div:nth-child(1) {
    width: 100%;
    font-size: clamp(20px, 1.667vw, 32px);
  }
  .default-1 > div:nth-child(2) {
    padding-top: 30px;
    font-size: clamp(16px, 1.771vw, 34px);
    width: 100%;
    padding-bottom: 60px;
  }
  .default-2 > div:nth-child(1) {
    font-size: clamp(20px, 1.667vw, 32px);
    padding-bottom: 50px;
  }
  .default-2 > div:nth-child(2) {
    display: block;
    padding: 0px 0px;
  }
  .default-2 > div:nth-child(2) > div {
    width: 100%;
    font-size: clamp(16px, 1.667vw, 32px);
    padding: 0;
  }
  .over-default {
    top: 60px;
    margin-top: -50px;
  }
  .over-default > div {
    display: block;
  }
  .img-3 {
    margin-bottom: 40px;
  }
  .over-default > div > div {
    width: 100%;
  }
  .over-default .right {
    padding-top: clamp(30px, 6.667vw, 128px);
    font-size: clamp(14px, 1.25vw, 24px) !important;
  }
  .over-default {
    font-size: clamp(40px, 6.667vw, 128px);
  }
  .over-default .title {
    padding-top: 50px;
  }
  .image-animation-1 {
    background-image: url("../img/VPVISION-product-balconies-1.webp");
  }
  #experience .default-1 > div:nth-child(2) {
    padding-bottom: 0px;
  }
  .first .service-box {
    margin-left: 5vw !important;
  }
  .last .service-box {
    margin-right: 5vw !important;
  }
  .service-box {
    width: 80vw;
  }
  .service-box {
    padding: clamp(40px, 2.083vw, 40px);
    margin-right: 10px;
  }
  .services-parag {
    font-size: clamp(16px, 1.771vw, 34px);
  }
  .logo_footer {
    width: clamp(125px, 14.323vw, 275px);
    height: auto;
  }
  .col_footer_B > h4,
  .col_footer_B {
    padding: 0px;
    margin: 0px;
  }
  .sezione_footer {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .col_footer_B {
    padding-top: 50px;
  }
  .col_footer_B p {
    padding: 0px;
  }
  .footer-info-text {
    flex-direction: column;
    gap: 30px;
  }
  .footer-last-links {
    gap: clamp(50px, 7.813vw, 150px);
  }
  .footer-last {
    margin-top: clamp(80px, 13.333vw, 256px);
    display: flex;
    flex-direction: column;
    justify-content: start;
    gap: 20px;
  }
  .vat {
    margin-top: 30px;
  }
  .footer-last-links {
    width: 100%;
    justify-content: start;
  }
  .footer-info-text {
    padding-top: 30px;
  }
  .footer-info > div:first-child {
    padding-top: 30px;
  }
  .default-2 > div:nth-child(2) > div:nth-child(2) {
    padding-bottom: 60px;
  }
  .immagine-3 {
    margin-bottom: 60px;
  }
  .logo_partner {
    padding: 5vw 20vw 5vw 20vw;
  }
  .logo_partner img {
    width: 100%; height: auto;
  }
}
