.fa,
.fa-brands,
.fab {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
}
@font-face {
  font-family: "Font Awesome 5 Brands";
  font-display: swap;
  font-weight: 400;
  src: url(/css/webfonts/fa-brands-400.woff2) format("woff2"),
    url(/css/webfonts/fa-brands-400.ttf) format("truetype");
}
@font-face {
  font-family: "Font Awesome 6 Free";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/css/webfonts/fa-solid-900.woff2) format("woff2"),
    url(/css/webfonts/fa-solid-900.ttf) format("truetype");
}
.fa-facebook:before {
  content: "\f09a";
}
.fa-facebook-f:before {
  content: "\f39e";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-linkedin:before {
  content: "\f08c";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-file-pdf:before {
  content: "\f1c1";
}
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-vial:before {
  content: "\f492";
}
.fa-key:before {
  content: "\f084";
}
.fa-mobile:before {
  content: "\f10b";
}

/* Make FA icons transformable like the old inline SVGs */
.fa,
.fa-solid,
.fas,
.fab,
.fa-brands {
  display: inline-block;
  line-height: 1;
}

/* Ensure classes map to the right font families (defensive override) */
.fab,
.fa-brands {
  font-family: "Font Awesome 5 Brands";
  font-weight: 400;
  font-style: normal;
}
.fas,
.fa-solid,
.fa {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-style: normal;
}

/* Composable animation helpers */
.animate-icon {
  --tx: 0;
  --rot: 0deg;
  transition: transform 0.25s ease, color 0.25s ease;
  transform: translateX(var(--tx)) rotate(var(--rot));
  will-change: transform;
}
.rotate-91 {
  --rot: 90deg;
}

.move-right:hover,
a:hover .move-right,
button:hover .move-right {
  --tx: 0.35em;
}

a:focus .move-right,
button:focus .move-right {
  --tx: 0.35em;
}
