@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto:400,500,700,300");

@font-face {
    font-family: 'Rubik';
    src: url('fonts/Rubik-Regular.eot');
    src: url('fonts/Rubik-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/Rubik-Regular.woff2') format('woff2'),
        url('fonts/Rubik-Regular.woff') format('woff'),
        url('fonts/Rubik-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

body {
	font-family: 'Rubik';
	color: #333;
}

a {
	color: #333;
	outline: none !important;
	text-decoration: none;
}

.text-aopd {
	color: #b61a1c;
}

/* ================= HEADER ================= */
.site-header {
  height: 50px;
  background-color: #b61a1c;
}
.site-header .logo img {
  max-height: 40px;
}

/* ================ HERO ================ */
.hero {
  position: relative;
  width: 100%;
  height: 40vh;               /* regola l’altezza a piacere */
  background-size: cover;
  background-position: center;
  display: flex;              /* per centrare verticalmente il contenuto */
  align-items: center;        /* centrazione verticale */
}

.hero-text {
  max-width: 75%;             /* occupa la metà sinistra */
  padding: 0 2rem;            /* spazio interno su lati */
}

.hero-text h1,
.hero-text p {
  color: #fff;                /* testo bianco */
  text-shadow: 0 1px 4px rgba(0,0,0,0.6); /* migliore leggibilità */
  margin-bottom: 1rem;
}

.hero-text h1 {
  font-size: 2.5rem;
  line-height: 1.2;
}

.hero-text p {
  font-size: 1.125rem;
  line-height: 1.5;
}

/* Responsivo */
@media (max-width: 768px) {
  .hero {
    height: 40vh;
    justify-content: center;  /* testo centrato orizzontalmente su mobile */
    text-align: center;
  }
  .hero-text {
    max-width: 90%;
    padding: 0 1rem;
  }
}

/* ============ GALLERIA UNITÀ ============ */
.units-gallery img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: .25rem;
}
.unit-title {
  text-align: center;
  margin-top: .5rem;
  font-weight: 500;
  text-decoration: none;
}

/* ================= FOOTER ================= */
.site-footer {
  background-color: #f8f9fa;
  padding: 2rem 0;
}
.site-footer .logo img {
  max-height: 50px;
}
