
/* --- ≥ 568px .pure-u-sm-* --- */

@media screen and (min-width: 35.5em) {

}



/* --- ≥ 768px  .pure-u-md-* --- */
@media screen and (min-width: 48em){

  h1{
  font-size: 3.2rem;
  margin-bottom: 1rem;
  }
  h2{
    font-size: 2.7rem;
    margin-bottom: 1rem;
  }
  h3{
    font-size: 2.4rem;
    margin-bottom: 1rem;
  }
  h4{
    font-size: 2.1rem;
    margin-bottom: 0.5rem;
  }
  h5{
    font-size: 1.8rem;
    margin-bottom: 0.5rem;
  }
  h6{
    font-size: 1.8rem;
    margin-bottom: 0.5rem;
  }
  p{
    font-size: 1.8rem;
    margin-bottom: 0.7rem;

  }
  .footer p{
    font-size: 1.2rem;
  }



   
}



/* --- ≥ 1024px .pure-u-lg-* --- */
@media screen and (min-width: 64em){

  section{
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
 
  .header .logo svg{
    width: 137px;
    height: 45px;
  }

  .box1{
    padding: 1rem;
  }
  .box2{
    padding: 2rem;
  }
  .box3{
    padding: 3rem;
  }
  .box4{
    padding: 4rem;
  }


  .box-l{
    padding: 0 2rem;
  }
  .box-r{
    padding: 0 2rem;
  }

  .mini-box-l{
    padding-right: 0.2rem;
    padding-bottom: 0.3rem;
  }
  .mini-box-c{
    padding-right: 0.1rem;
    padding-left: 0.1rem;
    padding-bottom: 0.3rem;
  }
  .mini-box-r{
    padding-left: 0.2rem;
    padding-bottom: 0.3rem;
  }

  .no-l-p{
    padding-right: 6rem;
    padding-left: 0.2rem;
  }
  .no-r-p{
    padding-right: 0.2rem;
    padding-left: 6rem;
  }


  .box-before-masonry{
    padding: 0.3rem;
  }

  .mini-box{
    padding-bottom: 0.3rem;
  }
  .mini-box-all{
    padding-left: 0.15rem;
    padding-right: 0.15rem;
    padding-bottom: 0.3rem;
  }
  .mb-0{
    margin-bottom: 0;
  }
  .mb-1{
    margin-bottom: 1rem;
  }
  .mb-2{
    margin-bottom: 2rem;
  }
  .mb-3{
    margin-bottom: 3rem;
  }
  .mb-4{
    margin-bottom: 4rem;
  }
  .mb-5{
    margin-bottom: 5rem;
  }
  .mb-6{
    margin-bottom: 6rem;
  }
  .mb-7{
    margin-bottom: 7rem;
  }
  .mb-8{
    margin-bottom: 8rem;
  }

  .mt-0{
    margin-top: 0;
  }
  .mt-1{
    margin-top: 1rem;
  }
  .mt-2{
    margin-top: 2rem;
  }
  .mt-3{
    margin-top: 3rem;
  }
  .mt-4{
    margin-top: 4rem;
  }
  .mt-5{
    margin-top: 5rem;
  }
  .mt-6{
    margin-top: 6rem;
  }
  .mt-7{
    margin-top: 7rem;
  }
  .mt-8{
    margin-top: 8rem;
  }

  .pb-0{
    padding-bottom: 0;
  }
  .pb-1{
    padding-bottom: 1rem;
  }
  .pb-2{
    padding-bottom: 2rem;
  }
  .pb-3{
    padding-bottom: 3rem;
  }
  .pb-4{
    padding-bottom: 4rem;
  }
  .pb-5{
    padding-bottom: 5rem;
  }
  .pb-6{
    padding-bottom: 6rem;
  }
  .pb-7{
    padding-bottom: 7rem;
  }
  .pb-8{
    padding-bottom: 8rem;
  }

  .pt-0{
    padding-top: 0;
  }
  .pt-1{
    padding-top: 1rem;
  }
  .pt-2{
    padding-top: 2rem;
  }
  .pt-3{
    padding-top: 3rem;
  }
  .pt-4{
    padding-top: 4rem;
  }
  .pt-5{
    padding-top: 5rem;
  }
  .pt-6{
    padding-top: 6rem;
  }
  .pt-7{
    padding-top: 7rem;
  }
  .pt-8{
    padding-top: 7rem;
  }
  

  .display-mobile{
    display: none;
  }
  .display-desktop{
    display: block;
  }

  .form-contatto .field{
    width: 50%; 
    padding-right: 1em;
  }

  .form-contatto .text-field{
    padding-right: 1em;
  }
  
  .grid-sizer,
  .grid-item {
     width: 33.33%;
  }

  .menu-desktop{
    display: block;
  }
  .top-nav{
    display: none;
  }
  .footer ul.legal{

    float: right;

  }

  .footer ul.legal li{
    margin-left: 1rem;
    margin-right: 0;
  }

  .thumbnail {
    width: 100%;
    width: calc( 50% - 4px);
    height: auto;
    cursor: pointer;
    margin-bottom: 5px;
    margin-left: 4px;
    margin-top: 0;
    float: left;
  }

  .footer ul.fast-contact li{
    font-size: 1.7rem;
    line-height: 1.6rem;
  }

  .logo-client-black{
    padding: 0 2rem 5rem 0;
    max-width: 100%;
  }
  .prev-next{

    margin-top: 0;
  }
  .prev-next span{
    display: inline;
  }
  .prev-next a{
    margin-bottom: 2rem;
    
  }
  .prev-next svg{
    bottom: -20px;
  }
  .black-border-top{
    border-top: 2px solid var(--color-black);
  }
  .black-border-bottom{
    border-bottom: 2px solid var(--color-black);
  }

  .shift1{
    top: -7.5rem;

  }
  .shift2{
    top: -9rem;
  }
  .model-viewer-box{
    max-height: 600px;
  }

  .qr-code-home{
    display: block;
    width: 180px;
    position: relative;
    left: -100px;
    margin-left: 50%
  }

  .model-viewer model-viewer{
    aspect-ratio: 4 / 3;
    margin-top: -20%;
  }


}



/* --- ≥ 1280px .pure-u-xl-* --- */
@media screen and (min-width: 80em){


  .footer .full{
    margin-top: -44rem;
  }


  .boxed-2 {
    margin: 0 8rem;
  }


  .para{
    height: 500px;
    background-attachment: fixed;
  }

  .ar-box > div{
    position: relative;
    left: 2.8rem;
  }
  .ar-box{
    margin-top: 6rem;
  }

  
  .button-ar{
    display: none;
  }




}




@media screen and (max-width: 35.5em){
  #KeyShotXR{
    height: 360px !important;
  }

}


@media screen and (max-width: 48em){
  .pt-0-mob{
    padding-top: 0;
  }
  .pb-0-mob{
    padding-bottom: 0;
  }
  .pt-1-mob{
    padding-top: 1rem;
  }
  .pb-1-mob{
    padding-bottom: 1rem;
  }


}



@media screen and (max-width: 64em){
  .mob-box-0{
    padding: 0;
  }
  .mob-box-1{
    padding: 0 1rem;
  }
  .mob-box-2{
    padding: 0 2rem;
  }

}