/* ================================================================
   ICONES ORPHELINES « ekiticons » -> FONT AWESOME 6 FREE
   ----------------------------------------------------------------
   Voir mu-plugins/mu-icons-compat.php pour le contexte complet et
   l'inventaire. En deux phrases : la bibliotheque d'icones
   « ekiticons » appartient a ElementsKit, extension ABSENTE du site
   (aucun dossier plugins/*elementskit*). Elementor imprime malgre
   tout <i class="icon icon-XXX"></i>, mais AUCUNE feuille du site ne
   definit ces classes -> le ::before n'a pas de `content`, l'icone
   est VIDE. On redefinit donc ces 16 classes sur Font Awesome 6
   Free, deja chargee par le theme parent.

   ⚠️ TROIS PIEGES CONTOURNES ICI (mesures, pas supposes) :

   1. L'ELEMENT NE PORTE AUCUNE CLASSE .fa / .fas / .fab.
      Le balisage reel est <i aria-hidden="true" class="icon icon-message-2">.
      Rien ne lui applique donc la base Font Awesome
      (themes/histudy/assets/css/plugins/all.min.css :
       `.fa-solid,.fab,.far,.fas{font-style:normal;font-variant:normal;
        line-height:1;text-rendering:auto;...}`).
      Il faut TOUT redire a la main, sinon :
        - c'est un <i> : `font-style: italic` par defaut -> glyphe penche ;
        - un `text-transform: uppercase` herite d'un titre deforme le glyphe ;
        - les ligatures peuvent avaler la sequence.
      -> bloc « socle commun » ci-dessous.

   2. SPECIFICITE : DEUX CLASSES OBLIGATOIRES.
      Le kit Elementor repeint tous les liens du site :
        `.elementor-kit-1690 a` -> (0,1,1), couleur rose #F24080 ET
        `font-family:"Prompt"` (police SANS glyphe arabe ni FA).
      Et Elementor pose `.elementor-icon i:before` -> (0,1,2).
      Une regle en `.icon-message-2::before` = (0,1,1) EGALISE ou PERD
      selon l'ordre d'impression (W3TC peut recombiner les feuilles :
      ne jamais faire reposer une victoire sur l'ordre du document).
      -> tous nos selecteurs sont `.icon.icon-XXX::before` = (0,2,1).
      NE PAS RACCOURCIR ces selecteurs en une seule classe.

   3. `!important` SUR EXACTEMENT TROIS PROPRIETES, PAS PLUS.
      `font-family`, `font-weight` et `content` sont les seules qu'un
      reglage de typographie Elementor, une police de theme ou un
      futur ekiticons.css puisse ecraser. Tout le reste est laisse
      sans `!important` pour rester ecrasable a la main plus tard.

   ⚠️ CE QUE L'ON NE TOUCHE VOLONTAIREMENT PAS :
      `.elementor-icon i:before` (0,1,2) pose
        `position:absolute; left:50%; transform:translateX(-50%)`
      (plugins/elementor/assets/css/frontend.css:2114). Nos selecteurs
      a (0,2,1) POURRAIENT l'ecraser — il ne faut surtout pas le faire :
      c'est ce qui centre le glyphe dans le rond des widgets `icon`.
      Le neutraliser decalerait toutes les icones vers la gauche.

   ⚠️ AUCUN JOKER `[class*="icon-"]`.
      Le site charge en parallele Feather (`.feather-*`), Font Awesome
      (`.fa-*`), les icones Tutor (`.tutor-icon-*`) et eicons
      (`.eicon-*`). Un joker les repeindrait toutes. La liste des 16
      classes ci-dessous est donc EXHAUSTIVE et FERMEE : ajouter une
      classe demande d'ecrire sa ligne, ce qui force a verifier le
      point de code.

   Points de code : tous releves dans all.min.css (Font Awesome Free
   6.6.0, 96 498 octets) livre avec le theme, pas dans la doc en ligne.
   ================================================================ */


/* ================================================================
   1. SOCLE COMMUN — remet l'element dans l'etat qu'une classe .fa
      lui aurait donne (cf. piege n° 1)
   ================================================================ */
.icon.icon-phone::before,
.icon.icon-phone1::before,
.icon.icon-phone-call1::before,
.icon.icon-map-marker1::before,
.icon.icon-right-arrow::before,
.icon.icon-message-2::before,
.icon.icon-planet-earth::before,
.icon.icon-microscope::before,
.icon.icon-design::before,
.icon.icon-coin::before,
.icon.icon-management::before,
.icon.icon-diploma::before,
.icon.icon-atomic::before,
.icon.icon-play1::before,
.icon.icon-twitter::before,
.icon.icon-skype-1::before {
    display: inline-block;
    /* C'est un <i> : sans cela le glyphe est penche (piege n° 1). */
    font-style: normal !important;
    font-variant: normal;
    font-feature-settings: normal;
    font-variant-ligatures: none;
    /* Un titre en majuscules transformerait le codepoint. */
    text-transform: none;
    text-rendering: auto;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


/* ================================================================
   2. FAMILLE — SOLID  ("Font Awesome 6 Free" / 900)
   ----------------------------------------------------------------
   Les alias FA 5 et FontAwesome sont AUSSI declares dans all.min.css
   (@font-face verifies : "Font Awesome 5 Free" 400/900 et
   "FontAwesome" pointent sur les memes woff2 6.6.0). Les lister
   apres la famille 6 est une ceinture gratuite si le theme repasse
   un jour a une build FA5.
   ⚠️ AUCUN `inherit` dans cette liste : `inherit` est un mot-cle
   global interdit dans une liste de polices, il ferait jeter la
   declaration ENTIERE, silencieusement.
   ================================================================ */
.icon.icon-phone::before,
.icon.icon-phone1::before,
.icon.icon-phone-call1::before,
.icon.icon-map-marker1::before,
.icon.icon-right-arrow::before,
.icon.icon-planet-earth::before,
.icon.icon-microscope::before,
.icon.icon-design::before,
.icon.icon-coin::before,
.icon.icon-management::before,
.icon.icon-diploma::before,
.icon.icon-atomic::before,
.icon.icon-play1::before {
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome !important;
    /* Obligatoire : la face Regular (400) partage la meme famille et
       ne contient PAS ces glyphes pleins. Sans 900, \f4ad et \f144
       par exemple tombent en Regular. */
    font-weight: 900 !important;
}


/* ================================================================
   3. FAMILLE — BRANDS  ("Font Awesome 6 Brands" / 400)
   ----------------------------------------------------------------
   Les logos de marque vivent dans un fichier SEPARE
   (fa-brands-400.woff2). Se tromper de famille donne un carre vide,
   pas un repli : \f39f, \e61b et \f17e n'existent QUE la.
   La face Brands n'existe qu'en graisse 400.
   ================================================================ */
.icon.icon-message-2::before,
.icon.icon-twitter::before,
.icon.icon-skype-1::before {
    font-family: "Font Awesome 6 Brands", "Font Awesome 5 Brands" !important;
    font-weight: 400 !important;
}


/* ================================================================
   4. POINTS DE CODE
   ----------------------------------------------------------------
   Colonne « n » = nombre d'occurrences relevees dans _elementor_data
   (revisions comprises). « dormant » = le widget porteur appartient
   a ElementsKit et n'existe pas : Elementor n'imprime AUCUN <i>, la
   regle ne peut donc rien repeindre AUJOURD'HUI. Elle est ecrite
   quand meme pour le jour ou le widget sera remplace par son
   equivalent Elementor natif.

   « ~ » = substitution assumee : le glyphe d'origine d'ElementsKit
   n'a pas d'equivalent exact dans Font Awesome FREE 6.6.0 (verifie
   classe par classe dans all.min.css). Le sens est conserve, le
   dessin differe.
   ================================================================ */

/* ---- Telephonie ------------------------------------------------ */
.icon.icon-phone::before        { content: "\f095" !important; } /* n=21  fa-phone          bouton */
.icon.icon-phone1::before       { content: "\f095" !important; } /* n=21  fa-phone          icone du bouton d'envoi de formulaire */
.icon.icon-phone-call1::before  { content: "\f2a0" !important; } /* n=21  fa-phone-volume   bouton d'appel, fond #FF9616 */

/* ---- Reperage / navigation ------------------------------------- */
.icon.icon-map-marker1::before  { content: "\f3c5" !important; } /* n=17  fa-location-dot   lien Google Maps */
.icon.icon-right-arrow::before  { content: "\f061" !important; } /* n=6   fa-arrow-right    bouton rond, animation bob */

/* ---- Messagerie ------------------------------------------------ */
.icon.icon-message-2::before    { content: "\f39f" !important; } /* n=5   fa-facebook-messenger — liens m.me, widget ffdeaac inclus */

/* ---- Vignettes de matieres (widgets icon / icon-box) ------------ */
.icon.icon-planet-earth::before { content: "\f57d" !important; } /* n=1   fa-earth-americas   « Geography »   */
.icon.icon-microscope::before   { content: "\f610" !important; } /* n=1   fa-microscope       « Chemistry »   */
.icon.icon-design::before       { content: "\f5fc" !important; } /* n=1 ~ fa-laptop-code      « IT & Software » */
.icon.icon-coin::before         { content: "\f51e" !important; } /* n=1 ~ fa-coins            « Accounting »
                                                                    fa-coin (singulier) N'EXISTE PAS en FA Free 6.6.0 */
.icon.icon-management::before   { content: "\f0b1" !important; } /* n=1 ~ fa-briefcase        widget icon, 100 px */
.icon.icon-diploma::before      { content: "\f19d" !important; } /* n=1 ~ fa-graduation-cap   fa-diploma est reserve a FA Pro */
.icon.icon-atomic::before       { content: "\f5d2" !important; } /* n=1   fa-atom             widget icon, 100 px */

/* ---- Dormantes : widgets ElementsKit absents, aucun <i> rendu --- */
.icon.icon-play1::before        { content: "\f04b" !important; } /* n=1   fa-play      dormant (elementskit-video) */
.icon.icon-twitter::before      { content: "\e61b" !important; } /* n=16  fa-x-twitter dormant (elementskit-social-media) */
.icon.icon-skype-1::before      { content: "\f17e" !important; } /* n=16  fa-skype     dormant (elementskit-social-media) */


/* ================================================================
   5. SENS DE LECTURE
   ----------------------------------------------------------------
   Le contenu du site est en arabe. Le site n'est PAS en RTL
   aujourd'hui (l'interface est en francais, is_rtl() est faux), donc
   cette regle est INERTE. Elle est ecrite maintenant parce qu'une
   fleche « suivant » qui pointe a droite dans une page RTL indique
   la direction inverse de la lecture. Specificite (0,3,1) : elle bat
   la regle de base ci-dessus (0,2,1) sans `!important` superflu.
   ================================================================ */
[dir="rtl"] .icon.icon-right-arrow::before { content: "\f060" !important; } /* fa-arrow-left */
