/* !base style */
body{font-family: 'Inter', sans-serif; font-size: 16px;}

a{text-decoration: none;}

h1{color:#000; padding-top:20px; padding-bottom:20px;}
h2,h3,h4,h5{color:#000; padding-bottom: 15px;}

p{line-height:28px; color: #000; font-weight: 300;}


.big-text{font-size:70px; font-weight: 900;}
.med-text{font-size:40px; font-weight: 300;}
.normal-text{font-size:16px;}
.small-text{font-size:14px;}

.intro-text{font-size:20px; text-transform: uppercase; font-weight:bold;}

.button{padding:15px 25px; background: white; color:black; 
          border: solid #010e30; border-radius: 20px; 
          display:inline-block;}
          
.buttons{padding:15px 25px; background: transparent; color:white; 
          border: solid white; border-radius: 20px; 
          display:inline-block;}
        

@media (max-width:760px) {
  .big-text{font-size:50px;}
  .med-text{font-size:40px;}
  .normal-text{font-size:15px;}
  h4{padding-top:25px;}
  
}

@media (min-width: 768px) and (max-width: 950px){
  h4{padding-top:15px;}
}

/* !Header */
.header{
  width: 100%;
  position: fixed;
  top:0;
  padding: 30px;
  display: flex;
  background: white;
  z-index: 10;
  justify-content: space-between;
}

/* !MENU */
.logo{z-index: 1;
      float: left;
}


.logo img{width: 30%;
      height: auto;
}

.header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 10px;
            background: white;
            z-index: 1000;
        }



.menu-toggle {
    display: none; /* Hide the menu toggle by default */
    cursor: pointer;
    padding: 10px;
    position: relative;
}

.menu-toggle span {
    display: block;
    background: #010e30; 
    height: 3px;
    width: 25px;
    margin: 5px 0;
    transition: transform 0.3s; /* Added transition property */
}

.menu-toggle .active span:nth-child(1) {
    transform: rotate(-45deg) translate(-5px, 6px);
}

.menu-toggle .active span:nth-child(2) {
    opacity: 0;
}

.menu-toggle .active span:nth-child(3) {
    transform: rotate(45deg) translate(-5px, -6px);
}

.menu {
            display: flex; /* Show the menu by default on larger screens */
            list-style: none;
            padding: 0;
            margin: 0;
        }

.menu ul {
            list-style: none;
            padding: 0;
            margin: 0;
            display: flex;
           
        }

.menu li {
            margin: 15px;
        }

.menu a {
            text-decoration: none;
            color:#010e30; 
            font-size: 18px;
        }
        

.language-selector button {
  color: black; /* Colore del testo nero */
  border: solid #010e30; /* Bordo solido blu scuro */
  border-radius: 20px; /* Bordi arrotondati */
  display: inline-block; /* Allineamento inline */
  font-size: 16px; /* Grandezza del testo */
  cursor: pointer;
  transition: background-color 0.3s, transform 0.3s; /* Transizione morbida per il colore e la trasformazione */
}

.language-selector button:hover {
  background-color: #f0f0f0;
  transform: scale(1.05);
}

.language-selector button:focus {
  outline: none;
}

/* Classe per il bottone attivo (quando è selezionato) */
.language-selector button.active {
  background-color: #010e30; /* Colore più scuro */
  color: white; /* Colore del testo bianco per contrasto */
}

/* Effetto hover per il bottone attivo */
.language-selector button.active:hover {
  background-color: #0056b3; /* Un colore più scuro quando è selezionato */
}


/*TITOLO CON BARRA SOTTO*/
.title{
    color: #010e30;
    font-size: 32px;
    text-align: center;
    padding-top: 25px;
}

.title:after{
    background: linear-gradient(45deg, #120a8f, #010e30);
    content: "";
    display: block;
    height: 5px;
    margin: 1rem auto auto;
    width: 100px;
}
/*END*/


@media only screen and (max-width: 768px) {
    .menu {
        display: flex;
        list-style: none;
        flex-direction: column;
        padding: 0;
        margin: 0;
        position: fixed;
        top: 0;
        right: -100%; 
        width: 100%;
        height: 100%;
        background: white;
        transition: right 0.7s ease; 
        align-items: center;
        text-align: center;
        justify-content: center;
    }
    
    .menu ul {
           flex-direction: column
          }
    .menu-open .menu {
                    right: 0; /* Display the menu by setting right to 0 */
                }
    
    .menu-toggle {
                    display: block; 
                }
    
    body.menu-open {
                    overflow: hidden; /* Prevent scrolling when the menu is open */
                }
                
    .logo img {
        width: 75%; 
        height: auto;
    }
    
    .header{
        padding-top: 0;
        padding-bottom: 0;
    }
                
                
            }






.cta{padding-top:15px}


/* !bg-cover*/

.bg-cover{
  display: flex;
  padding: 100px 0;
  background: linear-gradient(0deg, rgba(0,0,0,.1), rgba(0,0,0,0.5)), url("/immagini/home.jpg") no-repeat center center;
  background-size: cover;
}

.bg-cover__text{width:100%; padding: 30px}

@media (max-width:760px) {
  .bg-cover{flex-wrap: wrap; 
            height:auto;
  }
  .bg-cover__text, .bg-cover__title{width:100%}
}



/* !container */
.container{
  background: white no-repeat center center;
  display: flex; 
  width: 100%;
  align-items: center;
  background-size: cover;}

.container__content{
  width: 100%;
  padding-right: 200px;
  padding-left: 200px;
  padding-top: 15px;}

@media (max-width:760px) {
  .container{flex-wrap: wrap; height:auto;}
  .container__content{width:100%; padding-top: 10px;
  padding-right: 50px; padding-left: 50px; margin:auto;
  }
}

@media (min-width: 768px) and (max-width: 950px){
  .container__content{width:100%; padding-top: 10px;
  padding-right: 80px; padding-left: 80px; margin:auto;}
}

/* !Grid*/

.col{float:left;width:100%;}

.grid{width:100%;
  display: flex;
  max-width: 1350px;
  padding: 0 30px;
  margin: 0 auto;
  align-content: baseline;
  align-items: baseline;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-around;
}

@media (max-width: 768px) {
  .grid{flex-wrap:wrap;}
  .col{float:left; width: 100%;}
}

@media (min-width: 768px) and (max-width: 950px){
  .grid{flex-wrap:wrap}
  .col{float:left; width:100%;}
}




/* !footer */
.footer {
  padding: 30px 0px;
  background: #010e30;
}

@media (max-width: 768px){
    .footer{padding: 15px 0px;}
}


.footer-info {
  display: flex;
  justify-content: space-between;
  align-items: center; 
  padding-left: 30px; 
  padding-right: 30px;
  padding-top: 10px;
}



.social-icons {
        display: flex;
}
.social-icons a {
        margin-right: 20px; 
}
    
.social-icons a:last-child {
        margin-right: 0;
}


.terms {
  color: gray;
  font-size: .75rem;
  line-height: 1rem;
}

.developer {
  opacity: 1;
  color: gray;
  font-size: .75rem;
  line-height: 1rem;
}


@media (max-width: 600px) {
    
  .footer-info {
    flex-direction: column;
    align-items: center;
  }

  .terms {
    order: 2; /* Terms and conditions moved after SVG icons */
    margin-bottom: 10px;
  }

  .social-icons {
    order: 1; /* SVG icons moved to be displayed first */
    margin-bottom: 10px;
    padding-top: 10px;
  }

  .developer {
    order: 3;
    text-align: center;
  }
}








/* !helpers */

.mt-1{margin-top:50px;}
.mt-2{margin-top:100px;}
.mt-3{margin-top:150px;}
.tw{color: #fff}
.tb{color: #010e30}


*,
*:before,
*:after{
  -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
      box-sizing: border-box;
}