/* --- FIX OVERLAY IMMAGINI HERO E HEADER --- */

/* Il tema originale usava il colore di sfondo (che ora è panna) per scurire le immagini.   Rimettiamo il nero trasparente per far risaltare bene le foto del Palazzo */

.hero::before, .page-header::before, .our-testimonial:before {
  background: #000000;
  opacity: 0.6;
}

/* --- FIX GRADIENTI HARDCODED --- */

/* Il template aveva dei gradienti neri scritti a mano ignorando le variabili. Li sovrascriviamo. */

.intro-video-box::before {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 80%);
}

.our-ingredients-img figure::before, .team-image figure::before {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
}

/* --- FIX BOTTONI (Tema Tufo e Nero) --- */

/* Forza il testo a rimanere nero sempre, sia sul bottone base che su quello highlighted, sia a riposo che in hover */

.btn-default, .btn-default:hover, .btn-default.btn-highlighted, .btn-default.btn-highlighted:hover {
  color: #000000 !important;
  font-weight: 800;
}

/* Forza la piccola freccetta a destra (se presente) a rimanere sempre nera,    annullando i filtri di inversione colore originali del template */

.btn-default::after, .btn-default:hover::after, .btn-default.btn-highlighted::after, .btn-default.btn-highlighted:hover::after {
  filter: brightness(0) invert(0) !important;
}

/* --- FIX SPECIFICO BOTTONE PRENOTAZIONE --- */

/* A riposo (Sfondo Giallo Tufo): il testo deve essere Nero */

.reserve-table-btn .btn-default {
  color: #000000 !important;
}

/* In Hover (Il template forza lo sfondo a diventare Nero): il testo deve diventare Giallo Tufo */

.reserve-table-btn .btn-default:hover {
  color: #ffffff !important;
}

/* --- FIX DIMENSIONI LOGO PNG --- */

/* Impostazioni per Desktop */

.navbar-brand img {
  max-width: 200px !important;
  height: auto !important;
  display: block;
}

/* Impostazioni per Mobile (sotto i 991px, quando compare l'hamburger menu) */

@media only screen and (max-width: 991px) {
  .navbar-brand img {
    max-width: 200px !important;
  }
}

/* --- FIX SPECIFICO BOTTONE CTA --- */

.cta-contact-btn .btn-default:hover {
  color: #ffffff !important;
}

/* --- FIX CSS GALLERIA --- */

/* --- STILI CUSTOM PER LE CARD DELLA GALLERIA --- */

.custom-gallery-wrapper {
  padding: 50px 0;
}

.room-card-link {
  text-decoration: none !important;
  display: block;
  height: 100%;
  cursor: pointer;
}

.room-card {
  background-color: var(--secondary-color, #121212);
  border: 1px solid var(--divider-color, rgba(255,255,255,0.1));
  border-radius: 14px;
  overflow: hidden;
  transition: all 0.4s ease-in-out;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.room-card:hover {
  transform: translateY(-8px);
  border-color: var(--accent-color, #f5ae44);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.6);
}

.room-card-image {
  position: relative;
  width: 100%;
  padding-top: 75%;
  overflow: hidden;
}

.room-card-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.room-card:hover .room-card-image img {
  transform: scale(1.08);
}

.room-card-content {
  padding: 30px 25px;
  text-align: center;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.room-card-content h3 {
  font-size: 22px;
  font-weight: 700;
  color: var(--primary-color, #ffffff);
  margin-bottom: 8px;
  transition: color 0.3s ease;
}

.room-card-content p {
  font-size: 15px;
  color: var(--text-color, #cccccc);
  margin-bottom: 20px;
}

.room-card:hover .room-card-content h3 {
  color: var(--accent-color, #f5ae44);
}

/* Stile per replicare il pulsante del template */

.custom-readmore {
  display: inline-flex;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  color: var(--accent-color, #f5ae44);
  text-transform: capitalize;
  transition: all 0.3s ease;
}

.custom-readmore i {
  margin-left: 8px;
  font-size: 14px;
  transition: transform 0.3s ease;
}

.room-card:hover .custom-readmore {
  color: var(--primary-color, #ffffff);
}

.room-card:hover .custom-readmore i {
  transform: translateX(5px);
}

/* Quadrato Company-experience */

.company-experience .icon-box img {
  color: white !important;
}

/* Fix tendina contact form */

#contactForm select#person-1 option {
  color: #ffffff !important;
  background-color: #212529;
}

/* Fix icone */

.icona-stelle {
  position: relative;
  width: 100%;
  max-width: 40px;
  transition: all 0.5s ease-in-out;
  z-index: 1;
}

.company-experience:hover .icona-stelle {
  filter: brightness(0) invert(0);
}

.booking {
  stroke: white;
  transition: stroke 0.3s ease;
}

/* Colore al passaggio del mouse sul link genitore: Nero */

a:hover .booking {
  stroke: black;
}

.booking a:hover {
  color: var(--dark-divider-color);
}

