@font-face {
  font-family: 'Amniotic';
  src: url('materials/Amniotic-Regular.ttf') format('truetype');
}

body {
  background-image: url('materials/sfondowilma.jpg');
  background-attachment: fixed;
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  background-color: #000000;
}
.symbol {
  display: block;
  margin: 10px auto 0 auto;
  width: 150px;
}

h1 {
  font-family: 'Amniotic', serif;
  font-weight: normal;
  color: #ffffff;
  text-align: center;
  font-size: 4rem;
  margin-top: 5px;
}
.nav-icons {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 150px;
  margin-top: 60px;
}

.icon-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: #ffffff;
  font-family: 'Amniotic', serif;
  max-width: 140px;
}

.icon-link img {
  width: 50px;
  height: auto;
  transition: transform 0.2s ease;
}

.icon-link:hover img {
  transform: scale(1.1);
}

.icon-link span {
  margin-top: 8px;
  font-size: 1.5rem;
  letter-spacing: 1px;
  text-align: center;
}

.nav-icons img {
  width: 100px;
  height: auto;
  transition: transform 0.2s ease;
}

.nav-icons img:hover {
  transform: scale(1.1);
}

/* SFONDO RUOTATO: solo telefoni in verticale */
@media (max-width: 768px) and (orientation: portrait) {
  body {
    background-image: none;
  }

  body::before {
    content: "";
    position: fixed;
    top: 50%;
    left: 50%;
    width: 100vh;
    height: 100vw;
    background-image: url('materials/sfondowilma.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transform: translate(-50%, -50%) rotate(-90deg);
    z-index: -1;
  }
}

/* HOME SU MOBILE (solo body.home-page)
   Le righe doppie sono volute: la prima è il valore massimo attuale
   (fallback), la seconda si adatta all'altezza dello schermo (svh)
   senza mai superare il valore massimo. */
@media (max-width: 768px) {
  body.home-page {
    box-sizing: border-box;
    margin: 0;
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding-top: 28px;
    padding-top: clamp(16px, 3svh, 28px);
  }

  body.home-page .symbol {
    width: 150px;
    width: clamp(100px, 15.7svh, 150px);
  }

  body.home-page h1 {
    font-size: 4rem;
    font-size: clamp(2.75rem, 6.7svh, 4rem);
    margin-bottom: 43px;
    margin-bottom: clamp(0px, 4.5svh, 43px);
  }

  body.home-page .nav-icons {
    gap: 60px;
    margin-top: 60px;
    margin-top: clamp(20px, 6.3svh, 60px);
  }

  /* Social nel flusso della pagina: in fondo se c'è spazio,
     sotto il contenuto se lo schermo è basso. Mai sovrapposte. */
  body.home-page .social-links {
    position: static;
    width: 100%;
    margin-top: auto;
    padding: 24px 0 20px;
  }
}

/* TABLET IN VERTICALE: schermata "ruota il dispositivo".
   Solo dispositivi touch (hover: none, pointer: coarse) con schermo
   largo almeno 600px: i telefoni e i desktop non sono toccati. */
@media (orientation: portrait) and (min-width: 600px) and (hover: none) and (pointer: coarse) {
  body::after {
    content: "ROTATE YOUR DEVICE";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 0 10vw;
    text-align: center;
    background: #000000;
    color: #ffffff;
    font-family: 'Amniotic', serif;
    font-size: 2.5rem;
    letter-spacing: 2px;
  }
}

.social-links {
  position: fixed;
  bottom: 20px;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 20px;
  z-index: 15;
}

.social-icon img {
  width: 45px;
  height: 45px;
  object-fit: cover;
  border-radius: 50%;
  border: 2px solid #ffffff;
  transition: transform 0.2s ease;
}

.social-icon:hover img {
  transform: scale(1.1);
}
.no-download {
  -webkit-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
  pointer-events: none;
}

/* SFONDO SU TABLET (iPad in orizzontale)
   Safari su iPad ignora "background-attachment: fixed", quindi qui lo sfondo
   è un elemento fisso a schermo intero. Solo dispositivi touch con schermo
   largo e alto: telefoni e desktop non sono toccati. */
@media (hover: none) and (pointer: coarse) and (min-width: 769px) and (min-height: 550px) {
  body {
    background-image: none;
  }

  body::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('materials/sfondowilma.jpg');
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    z-index: -1;
  }
}