/* Font Awesome 5 Free - Complete Solution */

/* Import the Font Awesome stylesheet */
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/css/all.min.css");

/* Define font-face definitions for local use to ensure icons always show */
@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-regular-400.eot");
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-regular-400.woff2") format("woff2"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-regular-400.woff") format("woff"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-regular-400.ttf") format("truetype"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-regular-400.svg#fontawesome") format("svg");
}

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-solid-900.eot");
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-solid-900.woff2") format("woff2"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-solid-900.woff") format("woff"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-solid-900.ttf") format("truetype"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-solid-900.svg#fontawesome") format("svg");
}

@font-face {
  font-family: 'Font Awesome 5 Brands';
  font-style: normal;
  font-weight: normal;
  font-display: block;
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-brands-400.eot");
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-brands-400.woff2") format("woff2"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-brands-400.woff") format("woff"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-brands-400.ttf") format("truetype"), 
       url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.4.1/webfonts/fa-brands-400.svg#fontawesome") format("svg");
}

/* Force proper styling for Font Awesome icons */
.fa,
.fas {
  font-family: 'Font Awesome 5 Free' !important;
  font-weight: 900 !important;
}

.far {
  font-family: 'Font Awesome 5 Free' !important;
  font-weight: 400 !important;
}

.fab {
  font-family: 'Font Awesome 5 Brands' !important;
  font-weight: normal !important;
}

/* Fix icon references from Pro version */
[class^="fa-"]:before, 
[class*=" fa-"]:before {
  font-family: 'Font Awesome 5 Free' !important;
  font-weight: 900 !important;
}

/* Special case for specific Font Awesome Pro icons that might be used */
.fa-bars:before {
  content: "\f0c9"; /* Hamburger menu icon */
}

.fa-search:before {
  content: "\f002"; /* Search icon */
}

.fa-angle-down:before {
  content: "\f107"; /* Angle down icon */
}

.fa-angle-up:before {
  content: "\f106"; /* Angle up icon */
}

.fa-angle-right:before {
  content: "\f105"; /* Angle right icon */
}

.fa-angle-left:before {
  content: "\f104"; /* Angle left icon */
}

.fa-location:before {
  content: "\f3c5"; /* Location/map-marker icon */
}

.fa-phone:before {
  content: "\f095"; /* Phone icon */
}

.fa-envelope:before {
  content: "\f0e0"; /* Envelope icon */
}

.fa-user:before {
  content: "\f007"; /* User icon */
}

.fa-calendar:before {
  content: "\f133"; /* Calendar icon */
}

.fa-clock:before {
  content: "\f017"; /* Clock icon */
}

.fa-chevron-down:before {
  content: "\f078"; /* Chevron down icon */
}

.fa-chevron-up:before {
  content: "\f077"; /* Chevron up icon */
}

.fa-chevron-right:before {
  content: "\f054"; /* Chevron right icon */
}

.fa-chevron-left:before {
  content: "\f053"; /* Chevron left icon */
}

.fa-microphone:before {
  content: "\f130"; /* Microphone icon */
}

.fa-twitter:before {
  content: "\f099"; /* Twitter icon */
}

.fa-facebook:before,
.fa-facebook-f:before {
  content: "\f39e"; /* Facebook icon */
}

.fa-instagram:before {
  content: "\f16d"; /* Instagram icon */
}

.fa-youtube:before {
  content: "\f167"; /* YouTube icon */
}

.fa-linkedin:before {
  content: "\f0e1"; /* LinkedIn icon */
}

/* Pro replacement fallbacks */
.fa-light,
.fal,
.fa-thin,
.fat,
.fa-duotone,
.fad {
  font-family: 'Font Awesome 5 Free' !important;
  font-weight: 900 !important;
}
