body {
  font-family: "Barlow", sans-serif;
}

.actual-nav {
  backdrop-filter: blur(5px);
}

.header-phone {
  height: 20px;
}

.hero {
  height: 101vh;

  background-image: url("/assets/images/jpg/foto_header.jpg");
  background-size: cover;
  background-position: center;
  color: white;

  padding: 30vh 0 30vh 0;
}

.hero.lp {
  height: 40vh;

  background-image: url("/assets/images/jpg/campagna-foto-001.jpg");
  background-size: cover;
  background-position: center;
  color: white;

  padding: 10vh 0 30vh 0;
}

.hero.lp.vikey {
  height: 40vh;

  background-image: url("/assets/vikey/vikey-banner-dark.jpg");
  background-size: cover;
  background-position: center;
  color: white;

  padding: 10vh 0 30vh 0;
}

.navbar-brand > img {
  height: 30px !important;
}

.risparmia {
  background-image: url("/assets/images/jpg/foto_center.jpg");
  background-size: cover;
  background-position: center;
  color: white;
}

.card {
  border: none;
  transition: transform 0.2s ease-in-out;
}

#chisiamo {
  position: relative;
}

.chi-siamo {
  transform: translateX(-4vw);
  z-index: 9;
}

.card:hover {
  transform: translateY(-5px);
}

.masked-image {
  height: 500px;
  aspect-ratio: 1 / 1;
  transform: translateX(4vw);
}

.masked-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.masked-image img:nth-child(2) {
  transform: scale(1.004); /* rimuove glitch di <1px attorno alla maschera */
}

.floating-socials {
  position: absolute;
  top: 30px;
  right: 0;

  display: flex;
  flex-direction: column;
  gap: 12px;
}

.floating-socials a {
  width: 50px;
  aspect-ratio: 1 / 1;
}

.floating-socials a img {
  width: 100%;
  height: 100%;
}

.small-head {
  letter-spacing: 0.1rem;
  text-transform: uppercase;
}

footer {
  background-color: #333;
}

@media screen and (max-width: 1000px) {
  .masked-image {
    width: 100%;
    height: auto;
    transform: translateX(0);
  }

  #chi-siamo {
    position: static;
  }

  .chi-siamo {
    transform: translateX(0);
  }

  .floating-socials {
    position: fixed;
    bottom: 20px;
    right: 12px;

    display: flex;
    flex-direction: column;
    justify-content: end;
    gap: 12px;

    z-index: 99;
  }

  .floating-socials a {
    width: 50px;
    aspect-ratio: 1 / 1;
  }

  .floating-socials a img {
    width: 100%;
    height: 100%;
  }
    
  .lph2 {
    font-size:48px;      
    line-height: 3.2rem!important;  
  }
  .lph3 {
    font-size:32px;      
    line-height: 2.4rem!important;  
  }
}

@media screen and (min-width: 1000px) {
  .w-md-50 {
    width: 50% !important;
  }
}
