/* Font Awesome Fallback CSS - Basic styling for Font Awesome classes */

/* Base Font Awesome classes */
.fa, .fab, .fad, .fal, .far, .fas {
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome", sans-serif;
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    text-rendering: auto;
}

/* Light weight */
.fal {
    font-weight: 300;
}

/* Regular weight */
.far {
    font-weight: 400;
}

/* Brands */
.fab {
    font-family: "Font Awesome 5 Brands", "FontAwesome", sans-serif;
    font-weight: normal;
}

/* Font loading from local files - using available woff2 files */
@font-face {
    font-family: "Font Awesome 5 Brands";
    font-style: normal;
    font-weight: normal;
    src: url("/fontawesome/webfonts/fa-brands-400.woff2") format("woff2");
    font-display: swap;
}

@font-face {
    font-family: "Font Awesome 5 Pro";
    font-style: normal;
    font-weight: 300;
    src: url("/fontawesome/webfonts/fa-light-300.woff2") format("woff2");
    font-display: swap;
}

@font-face {
    font-family: "Font Awesome 5 Pro";
    font-style: normal;
    font-weight: 400;
    src: url("/fontawesome/webfonts/fa-regular-400.woff2") format("woff2");
    font-display: swap;
}

@font-face {
    font-family: "Font Awesome 5 Pro";
    font-style: normal;
    font-weight: 900;
    src: url("/fontawesome/webfonts/fa-solid-900.woff2") format("woff2");
    font-display: swap;
}

/* Common icon unicode mappings for essential icons */
.fa-facebook-f:before, .fab.fa-facebook-f:before { content: "\f09a"; }
.fa-twitter:before, .fab.fa-twitter:before { content: "\f099"; }
.fa-instagram:before, .fab.fa-instagram:before { content: "\f16d"; }
.fa-youtube:before, .fab.fa-youtube:before { content: "\f167"; }
.fa-linkedin-in:before, .fab.fa-linkedin-in:before { content: "\f0e1"; }

.fa-phone:before, .fas.fa-phone:before, .fal.fa-phone:before { content: "\f095"; }
.fa-envelope:before, .fas.fa-envelope:before, .fal.fa-envelope:before { content: "\f0e0"; }
.fa-map-marker-alt:before, .fas.fa-map-marker-alt:before, .fal.fa-map-marker-check:before { content: "\f3c5"; }

.fa-search:before, .fas.fa-search:before, .fal.fa-search:before { content: "\f002"; }
.fa-play:before, .fas.fa-play:before { content: "\f04b"; }
.fa-arrow-right:before, .fas.fa-arrow-right:before, .fal.fa-arrow-right:before { content: "\f061"; }
.fa-arrow-left:before, .fas.fa-arrow-left:before, .far.fa-arrow-left:before { content: "\f060"; }
.fa-chevron-left:before, .fas.fa-chevron-left:before, .far.fa-chevron-left:before { content: "\f053"; }
.fa-chevron-right:before, .fas.fa-chevron-right:before, .far.fa-chevron-right:before { content: "\f054"; }
.fa-level-up-alt:before, .fas.fa-level-up-alt:before { content: "\f3bf"; }

/* FAQ Icons */
.fa-plus:before, .fas.fa-plus:before, .fal.fa-plus:before { content: "\f067"; }
.fa-minus:before, .fas.fa-minus:before, .fal.fa-minus:before { content: "\f068"; }
.fa-times:before, .fas.fa-times:before, .fal.fa-times:before { content: "\f00d"; }

/* Fallback for missing icons */
.fa:not([class*="fa-"]):before,
.fab:not([class*="fa-"]):before,
.fal:not([class*="fa-"]):before,
.far:not([class*="fa-"]):before,
.fas:not([class*="fa-"]):before {
    content: "\f059"; /* question circle */
    opacity: 0.5;
}

