
/* space-grotesk-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/space-grotesk/space-grotesk-v16-latin-regular.woff2') format('woff2');
  
}

/* space-grotesk-600 - latin */
@font-face {
  font-display: swap;
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/space-grotesk/space-grotesk-v16-latin-600.woff2') format('woff2');
  
}

/* Ramona */
@font-face {
  font-display: swap;
  font-family: 'Ramona';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/Ramona/Ramona-Bold.woff2') format('woff2');
  
}

:root {
    --font-space-grotesk-regular: 'Space Grotesk', sans-serif;
    --font-ramona-bold: 'Ramona', sans-serif;
    --color-red:#EB0000;
    --color-blue: #010444;
    --color-grey:#F4F4F4;
    --color-yellow: #FDA228;
  }

body {
  margin: 0;
  background-color: var(--color-grey);
  overflow-x: hidden;
  color: var(--color-grey);
  font-family: var(--font-space-grotesk-regular);
  font-weight: 600;
  font-size: clamp(16px, 5vw, 20px);

}
.intro-text {
    font-family:var(--font-ramona-bold);
    font-size: clamp(26px, 5vw, 54px);
}

.h2 {
    font-family:var(--font-ramona-bold);
    font-size: clamp(26px, 5vw, 40px);
    margin-top: 0;
    margin-bottom: 0;
}

.bg-red {
    background-color: var(--color-red);
}
.bg-blue {
    background-color: var(--color-blue);
}
.color-blue {
    color: var(--color-blue);
}
.color-red {
    color: var(--color-red);
}
section {
    position: relative;
    padding-top: 50px;
    padding-bottom: 50px;
}
.curva {
    position: absolute;
    top: -150px;
    width: 150px;
    height: 150px;
}
.main-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  background-color: #fff;
  justify-content: center;
}

.logo {
    width: 100%;
    height: auto;
    max-width: 130px;
    padding: 20px;
}

.button {
  padding: 10px 45px 20px 35px;
  font-size: 18px;
  color: white;
  background-color: var(--color-yellow);
  border: none;
  border-radius: 0 50px 50px 0;
  text-decoration: none;
  cursor: pointer;
  transition: background-color ease-in-out 0.3s;
  position: relative;
  font-family: var(--font-ramona-bold);
  
}

.button::before {
  content: "";
  width: 100%;
  position: absolute;
  height: 100%;
  left: -6px;
  top: -6px;
  border: 3px solid #EB0000;
  border-radius: 0 50px 50px 0;
  box-sizing: border-box;
  transition: all ease-in-out 0.3s;

}

.button:hover {
  background-color: var(--color-red);
}

.button:hover::before {
  border: 3px solid var(--color-yellow);
}

.image {
    display: block;
    width: 90%;
    margin: auto;
}

.logo-bva-family {
  width: 100%;
  max-width: 132px;
}
.container-btn {
    display: flex;
    justify-content: center;
}

/* .cta .columns .column:first-child{
    flex-basis: 70%;
}*/
.cta .columns .column:last-child{
    justify-content: center;
    display: flex;
    flex-direction: column;
} 

.footer {
    padding: 30px 0;
    position: relative;
}

.footer .columns .column:first-child {
    flex-basis: 20%;
    border-right: 3px dashed #010444;
} 
.footer .columns .column:last-child {
    flex-basis: 76%;
    font-size: 13px;
    font-family: var(--font-space-grotesk-regular);
    font-weight: 400;
    justify-content: center;
    display: flex;
    flex-direction: column;
} 

.footer .columns .column:last-child a{
    color: #EB0000;
    text-decoration: none;
    font-size: 12px;
    padding-left: 5px;
    padding-right: 5px;
} 

/* griglia flexbox */
/* Stile base per la sezione */
.columns {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; /* Spaziatura tra le colonne */
    max-width: 1600px; /* Larghezza massima del contenitore */
    margin: 0 auto; /* Centra il contenitore */
    padding: 0 20px; /* Spaziatura interna */
    width: 90%; /* Larghezza relativa al 90% */
    box-sizing: border-box; /* Include il padding nella larghezza */
}
  /* Colonna base */
  .column {
    flex: 1;
    padding: 10px;
    box-sizing: border-box;
    /* Flessibilità per il numero di colonne, con larghezza minima e massima */
    flex-basis: calc(33.333% - 20px); /* Per 3 colonne su schermo grande */
  }
  
/* Contenitore delle colonne interne */
.nested-columns {
    display: flex;
    gap: 20px; /* Spaziatura tra le colonne interne */
  }
  
  /* Colonne interne */
  .nested-column {
    flex: 1;
    padding: 10px;
    box-sizing: border-box;
  }
  
  /* La prima colonna interna occupa il 30% della larghezza */
  .nested-column:first-child {
    flex-basis: 30%;
  }
  
  /* La seconda colonna occupa il 70% */
  .nested-column:last-child {
    flex-basis: 70%;
  }
  
  /* popup */

.popup-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.768);
      display: flex;
      justify-content: center;
      align-items: center;
      z-index: 9999;
    }

    .popup-content {
      background-color: var(--color-blue);
      padding: 50px;
      border-radius: 0px 0px 50px 0px;
      text-align: center;
      max-width: 650px;
      box-shadow: 0 0 10px rgba(0,0,0,0.3);
      position: relative;
      border: 8px solid var(--color-grey);
      
    }

    .popup-content h1{
      font-family: var(--font-ramona-bold);
      color: var(--color-grey);
      margin-bottom: 30px;
      font-size: 30px;
    }

    .popup-content p {
      color: var(--color-grey);
      font-size: 16px;
      margin-bottom: 30px;
    }
    .btn-popup {
      display: flex;
      justify-content: space-around;
    }

    .close-btn {
      position: absolute;
      top: -8px;
      right: -8px;
      font-size: 18px;
      background: var(--color-red);
      border: none;
      cursor: pointer;
      color: var(--color-grey);
      padding: 4px 9px;
    }


  /* Layout responsive */
  @media (max-width: 1024px) {
    .column {
      flex-basis: calc(50% - 20px);
    }
    .nested-column {
      flex-basis: 100%; /* Le colonne interne occupano tutta la larghezza */
    }
  }
  
  @media (max-width: 768px) {

    .sezione-intro {
        padding-top: 0;
    }
    .sezione-about,
    .footer,
    .cta {
        text-align: center;
    }

    .footer .columns .column:first-child {
        border-right: 0;
    }
    .image {
        width: 50%;
    }
    .columns {
      flex-direction: column; /* Disposizione verticale per colonne principali */
    }
  
    .column {
      flex-basis: 100%; /* Le colonne principali occupano tutta la larghezza */
    }
  
    .nested-columns {
      flex-direction: column; /* Le colonne interne si allineano verticalmente */
    }
  
    .nested-column {
      flex-basis: 100%; /* Le colonne interne occupano tutta la larghezza */
    }
  }

@media (max-width: 650px) {
      .btn-popup {
      display: flex;
      justify-content: space-around;
      flex-direction: column;
    }  

      .container-btn {
      margin-bottom: 30px;
      }
  
}

