/* Migliora visibilità tab puliti */
.nav-tabs-clean .nav-link {
  color: #333 !important; /* testo più scuro */
  font-weight: 500;
  opacity: 0.9;
  transition: color 0.3s ease, opacity 0.3s ease;
}

.nav-tabs-clean .nav-link:hover {
  color: var(--bs-primary) !important; /* blu primario Porto */
  opacity: 1;
}

.nav-tabs-clean .nav-link.active {
  color: var(--bs-primary) !important;
  font-weight: 600;
  border-bottom: 2px solid var(--bs-primary);
  opacity: 1;
}






/* Logo strip – robusto, no buchi */
.logo-strip .logo-viewport{
  overflow:hidden; width:100%;
  min-height:120px;                 /* riserva spazio: img 88px + padding */
}
.logo-strip .logo-track{
  display:flex; align-items:center; gap:56px;
  will-change: transform;
  animation: prolav-marquee-3 45s linear infinite;
}
.logo-strip .logo-item{ flex:0 0 auto; display:flex; align-items:center; justify-content:center; padding:12px 24px; }
.logo-strip .logo-item img{
  display:block; height:88px; width:auto; max-width:none;
  opacity:.9; filter:grayscale(100%);
  pointer-events:none; user-select:none;
}
.logo-strip .logo-item img:hover{ opacity:1; filter:none; }

/* Pausa su hover e rispetto accessibility */
.logo-strip .logo-viewport:hover .logo-track{ animation-play-state: paused; }
@media (prefers-reduced-motion: reduce){
  .logo-strip .logo-track{ animation:none !important; transform:none !important; }
}

/* Tripla sequenza: un ciclo copre sempre la viewport */
@keyframes prolav-marquee-3{
  from{ transform: translateX(0); }
  to  { transform: translateX(-33.333%); }
}

/* Responsive */
@media (max-width: 575.98px){
  .logo-strip .logo-track{ gap:32px; }
  .logo-strip .logo-item img{ height:72px; }
}



.hero-badge-wrapper {
  display: block;          /* obbliga il badge a stare su una propria riga */
}

.hero-badge {
  display: inline-flex;    /* dimensione precisa e pulita */
  white-space: nowrap;     /* evita che spezzetti la frase in due righe */
}










