/* Chargement de la police Fontello */
@font-face {
  font-family: 'fontello';
  src: url('../font/fontello.woff2') format('woff2'),
       url('../font/fontello.woff') format('woff'),
       url('../font/fontello.ttf') format('truetype'),
       url('../font/fontello.svg#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: swap; /* Améliore le rendu */
}

/* Surcharges pour toutes les icônes Font Awesome */
.fa-address-book::before,
.fa-address-book-o::before {
  font-family: 'fontello' !important;
  content: '\f2bc' !important; /* icon-address-card-o */
}

.fa-bookmark::before,
.fa-solid.fa-bookmark::before {
  font-family: 'fontello' !important;
  content: '\e805' !important; /* icon-bookmark (solid) */
}

.fa-bookmark-o::before,
.fa-regular.fa-bookmark::before {
  font-family: 'fontello' !important;
  content: '\f097' !important; /* icon-bookmark-empty (regular) */
}

.fa-bullhorn::before {
  font-family: 'fontello' !important;
  content: '\e803' !important; /* icon-megaphone */
}

.fa-calendar-alt::before,
.fa-calendar::before {
  font-family: 'fontello' !important;
  content: '\e815' !important; /* icon-calendar-outlilne */
}

.fa-chart-bar::before,
.fa-bar-chart::before,
.fa-bar-chart-o::before {
  font-family: 'fontello' !important;
  content: '\e809' !important; /* icon-chart-bar */
}

.fa-circle-dot::before,
.fa-dot-circle-o::before {
  font-family: 'fontello' !important;
  content: '\f192' !important; /* icon-dot-circled (même Unicode) */
}

.fa-circle-exclamation::before,
.fa-exclamation-circle::before {
  font-family: 'fontello' !important;
  content: '\e806' !important; /* icon-exclamation */
}

.fa-comment::before {
  font-family: 'fontello' !important;
  content: '\e808' !important; /* icon-comment (solid) */
}

.fa-comment-o::before {
  font-family: 'fontello' !important;
  content: '\f0e5' !important; /* icon-comment-empty (regular) */
}

.fa-comments::before,
.fa-comments-o::before {
  font-family: 'fontello' !important;
  content: '\f211' !important; /* icon-forumbee */
}

.fa-envelope::before,
.fa-envelope-o::before {
  font-family: 'fontello' !important;
  content: '\e804' !important; /* icon-mail */
}

.fa-external-link::before,
.fa-external-link-square::before {
  font-family: 'fontello' !important;
  content: '\f08e' !important; /* icon-link-ext (même Unicode) */
}

.fa-heart::before {
  font-family: 'fontello' !important;
  content: '\e811' !important; /* icon-heart (solid) */
}

.fa-heart-o::before {
  font-family: 'fontello' !important;
  content: '\e810' !important; /* icon-heart-empty (regular) */
}

.fa-inbox::before {
  font-family: 'fontello' !important;
  content: '\e813' !important; /* icon-inbox */
}

.fa-info::before,
.fa-info-circle::before {
  font-family: 'fontello' !important;
  content: '\f129' !important; /* icon-info (même Unicode) */
}

.fa-key::before {
  font-family: 'fontello' !important;
  content: '\e80b' !important; /* icon-key */
}

.fa-list-check::before,
.fa-check-square::before,
.fa-check-square-o::before {
  font-family: 'fontello' !important;
  content: '\e807' !important; /* icon-ok */
}

.fa-location-dot::before,
.fa-map-marker::before {
  font-family: 'fontello' !important;
  content: '\e800' !important; /* icon-location */
}

.fa-magnifying-glass::before,
.fa-search::before {
  font-family: 'fontello' !important;
  content: '\e80c' !important; /* icon-search */
}

.fa-map::before {
  font-family: 'fontello' !important;
  content: '\f278' !important; /* icon-map-o */
}

.fa-newspaper::before,
.fa-newspaper-o::before {
  font-family: 'fontello' !important;
  content: '\f4f0' !important; /* icon-newspaper */
}

.fa-pen::before,
.fa-pencil::before,
.fa-pencil-square-o::before {
  font-family: 'fontello' !important;
  content: '\e814' !important; /* icon-vector-pencil */
}

.fa-people-group::before,
.fa-users::before {
  font-family: 'fontello' !important;
  content: '\e801' !important; /* icon-users */
}

.fa-plus::before,
.fa-plus-square::before,
.fa-plus-square-o::before {
  font-family: 'fontello' !important;
  content: '\e812' !important; /* icon-plus */
}

.fa-podcast::before {
  font-family: 'fontello' !important;
  content: '\f2ce' !important; /* icon-podcast (même Unicode) */
}

.fa-right-from-bracket::before,
.fa-sign-out::before {
  font-family: 'fontello' !important;
  content: '\f02d' !important; /* icon-logout */
}

.fa-rss::before,
.fa-rss-square::before {
  font-family: 'fontello' !important;
  content: '\f09e' !important; /* icon-rss (même Unicode) */
}

.fa-tag::before,
.fa-solid.fa-tag::before {
  font-family: 'fontello' !important;
  content: '\e802' !important; /* icon-tag */
}

.fa-user::before,
.fa-user-o::before {
  font-family: 'fontello' !important;
  content: '\e80a' !important; /* icon-user */
}

.fa-user-plus::before {
  font-family: 'fontello' !important;
  content: '\e80f' !important; /* icon-user-add-1 */
}

.fa-video::before,
.fa-video-camera::before {
  font-family: 'fontello' !important;
  content: '\e80e' !important; /* icon-videocam */
}

.fas.fa-bell::before,
.fa-bell::before,
.fa-solid.fa-bell::before {
  font-family: 'fontello' !important;
  content: '\f0f3' !important; /* icon-bell-alt */
}

/* Surcharge générale pour .fa si aucune icône spécifique n'est définie */
.fa::before {
  font-family: 'fontello' !important;
}

/* Assure que les icônes s'affichent correctement (styles de base inspirés de Fontello) */
[class^="fa-"]::before,
[class*=" fa-"]::before {
  font-family: 'fontello' !important;
  font-style: normal !important;
  font-weight: normal !important;
  speak: none !important;
  display: inline-block !important;
  text-decoration: inherit !important;
  width: 1em !important;
  margin-right: .2em !important;
  text-align: center !important;
  font-variant: normal !important;
  text-transform: none !important;
  line-height: 1em !important;
  margin-left: .2em !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

/* Animation équivalente à fa-beat-fade pour Fontello */
.icon-beat-fade {
  animation: icon-beat-fade 2s infinite linear;
}

@keyframes icon-beat-fade {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}
