/* =========================================================================
   GV GOMME & SERVICE — fogli di stile condivisi
   Incluso sia da index.html (sito pubblico) sia da admin/index.html
   (area riservata), così i due file restano visivamente coerenti senza
   duplicare tutto il CSS in entrambe le pagine.
   ========================================================================= */

html { scroll-behavior: smooth; }
body { font-family: 'Barlow', sans-serif; }
h1, h2, h3, h4, .font-display { font-family: 'Oswald', sans-serif; }

::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #0a0a0a; }
::-webkit-scrollbar-thumb { background: #e2131a; border-radius: 10px; }

.glass {
  background: rgba(15, 23, 42, 0.6);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.08);
}

.hero-gradient {
  background: linear-gradient(180deg, rgba(2,6,23,0.55) 0%, rgba(2,6,23,0.85) 55%, rgba(2,6,23,1) 100%);
}

.text-gradient {
  background: linear-gradient(90deg, #fff 0%, #fca5a5 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.card-hover {
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.card-hover:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 40px -15px rgba(226,19,26,0.35);
  border-color: rgba(226,19,26,0.5);
}

.fade-in-up {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .7s ease, transform .7s ease;
}
.fade-in-up.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.marquee-track {
  animation: marquee 28s linear infinite;
}
@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.whatsapp-pulse {
  animation: pulseWA 2.4s infinite;
}
@keyframes pulseWA {
  0% { box-shadow: 0 0 0 0 rgba(34,197,94,0.55); }
  70% { box-shadow: 0 0 0 16px rgba(34,197,94,0); }
  100% { box-shadow: 0 0 0 0 rgba(34,197,94,0); }
}

input[type="date"]::-webkit-calendar-picker-indicator { filter: invert(1); cursor: pointer; }

.star-row { letter-spacing: 2px; }

/* Striscia "pit-lane" — dettaglio di brand ricorrente, ispirato alle
   bande a righe dei box officina, usato come separatore tra sezioni. */
.stripe-divider {
  height: 8px;
  background: repeating-linear-gradient(45deg, #e2131a 0 14px, #0a0a0a 14px 28px);
}

/* Logo ufficiale (assets/logo.svg, variante "reversed" per sfondo scuro
   di assets/logo-official.svg): leggero effetto di sollevamento al
   passaggio del mouse, coerente con le altre card del sito. */
.logo-mark {
  transition: transform .3s ease;
}
.group:hover .logo-mark {
  transform: scale(1.06);
}
