@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:wght@400;700&display=swap');

body {
  font-family: 'Libre Baskerville', serif;
  background-color: #f8f4e6;
  color: #333;
}

.navbar-brand { font-family: 'Georgia', serif; }

.hero {
  background: url('../images/panorama.jpg') center/cover no-repeat;
  height: 100vh;
  position: relative;
  filter: sepia(0.4) contrast(1.1) brightness(0.9);
}

.hero-text {
  background: rgba(75,54,33,0.7);
  display: inline-block;
  padding: 1rem 2rem;
  border-radius: .5rem;
  position: absolute;
  top: 30%; left: 50%; transform: translate(-50%, -40%);
  color: #fff;
  max-width: 90%; /* evita overflow laterale */
  text-align: center;
}

/* Responsive typography for hero text */
.hero-text h1 {
  /* min 1.5rem, ideal 5vw, max 3rem */
  font-size: clamp(1.5rem, 5vw, 3rem);
  line-height: 1.1;
  margin: 0;
  white-space: nowrap;      /* rimane su una riga */
  overflow: hidden;
  text-overflow: ellipsis;   /* taglia se troppo lungo */
}

/* If you use a lead paragraph below the heading */
.hero-text p.lead {
  /* min 1rem, ideal 3vw, max 2rem */
  font-size: clamp(1rem, 3vw, 2rem);
  margin-top: 0.5em;
}

.site-header { background-color: #4b3621 !important; }
.site-footer { background-color: #4b3621; }
.site-footer p,
.site-header .navbar-brand,
.site-header .nav-link { color: #f8f4e6 !important; }

.img-zoom {
  transition: transform 0.3s ease;
}
.img-zoom:hover {
  transform: scale(1.05);
}

.btn-primary { background-color: #6b4f4f; border-color: #6b4f4f; }
.btn-primary:hover { background-color: #5a3e3e; border-color: #5a3e3e; }
