/* Couleurs Pégase - Primary */
.bg-primary-600 { background-color: #00440f !important; }
.bg-primary-700 { background-color: #003309 !important; }
.text-primary-600 { color: #00440f !important; }
.text-primary-700 { color: #003309 !important; }
.border-primary-600 { border-color: #00440f !important; }
.ring-primary-600 { --tw-ring-color: #00440f !important; }
.bg-primary-600\/5 { background-color: rgba(0, 68, 15, 0.05) !important; }
.bg-primary-600\/10 { background-color: rgba(0, 68, 15, 0.1) !important; }
.bg-primary-600\/20 { background-color: rgba(0, 68, 15, 0.2) !important; }

.hover\:bg-primary-600:hover { background-color: #00440f !important; }
.hover\:bg-primary-700:hover { background-color: #003309 !important; }
.hover\:text-primary-600:hover { color: #00440f !important; }
.hover\:border-primary-600:hover { border-color: #00440f !important; }
.hover\:bg-primary-600\/5:hover { background-color: rgba(0, 68, 15, 0.05) !important; }

.focus\:border-primary-600:focus { border-color: #00440f !important; }
.focus\:ring-primary-600:focus { --tw-ring-color: #00440f !important; }
.focus\:ring-primary-600\/20:focus { --tw-ring-color: rgba(0, 68, 15, 0.2) !important; }

.group-hover\:text-primary-600:is(:where(.group):hover *) { color: #00440f !important; }

/* Animation pour les flash notices */
.animate-slide-in {
  animation: slide-in 0.3s ease-out forwards;
}

@keyframes slide-in {
  from {
    opacity: 0;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Font signature pour les fondateurs */
.font-signature {
  font-family: 'Dancing Script', cursive;
  font-weight: 700;
}

/* Appli mobile unifiée — dégradé de marque teal -> bleu (Tailwind v4 ne
   génère pas les stops arbitraires from-[#hex]/to-[#hex], on fige le dégradé) */
.bg-brand-gradient {
  background-image: linear-gradient(135deg, #00C9A7 0%, #0097E6 100%);
}

/* Dégradé sombre (header d'accueil Trajeo : navy -> bleu nuit) */
.bg-brand-gradient-dark {
  background-image: linear-gradient(160deg, #0D1B2A 0%, #1B3A5C 100%);
}

/* Police d'affichage du logo (artefact : Bebas Neue) */
.font-display {
  font-family: 'Bebas Neue', 'Figtree', sans-serif;
}

/* Texte en dégradé de marque (clip) */
.text-brand-gradient {
  background-image: linear-gradient(135deg, #00C9A7 0%, #0097E6 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* Halo bleu des boutons primaires (artefact : box-shadow 0 8px 28px) */
.shadow-brand {
  box-shadow: 0 8px 28px rgba(0, 151, 230, 0.30);
}
.shadow-brand-teal {
  box-shadow: 0 8px 24px rgba(0, 201, 167, 0.30);
}
.shadow-card {
  box-shadow: 0 2px 14px rgba(0, 0, 0, 0.04);
}
