/* ============================================================
   Phosphor icons override
   Loads Phosphor "regular" (line) font and remaps every
   Font Awesome / Line Awesome class used in the project to
   the matching Phosphor glyph — line/outline only.
   ============================================================ */

@font-face {
    font-family: "Phosphor";
    src:
        url("https://unpkg.com/@phosphor-icons/web@2.1.1/src/regular/Phosphor.woff2") format("woff2"),
        url("https://unpkg.com/@phosphor-icons/web@2.1.1/src/regular/Phosphor.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* Force the Phosphor font on ALL FA + LA icon elements, project-wide */
.fa, .fas, .far, .fab, .fa-solid, .fa-regular, .fa-brands,
.la, .las, .lar, .lab,
[class^="fa-"], [class*=" fa-"],
[class^="la-"], [class*=" la-"] {
    font-family: "Phosphor" !important;
    font-weight: normal !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1 !important;
    speak: never;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
}

/* ---------- Glyph remap ---------- */
/* Generic */
.fa-times::before, .fa-close::before, .fa-xmark::before,
.la-times::before, .la-close::before, .la-xmark::before                 { content: "\e4f6" !important; }

.fa-times-circle::before, .la-times-circle::before                       { content: "\e4f8" !important; }

.fa-check::before, .la-check::before                                     { content: "\e182" !important; }
.fa-check-circle::before, .la-check-circle::before                       { content: "\e184" !important; }

.fa-plus::before, .la-plus::before                                       { content: "\e3d4" !important; }
.fa-minus::before, .la-minus::before                                     { content: "\e32a" !important; }

.fa-info::before, .fa-info-circle::before,
.la-info::before, .la-info-circle::before                                { content: "\e2ce" !important; }

.fa-copy::before, .la-copy::before                                       { content: "\e1ca" !important; }
.fa-clock::before, .la-clock::before                                     { content: "\e19a" !important; }
.fa-bars::before, .la-bars::before                                       { content: "\e2f0" !important; }
.fa-filter::before, .la-filter::before                                   { content: "\e266" !important; }
.fa-search::before, .la-search::before                                   { content: "\e30c" !important; }
.fa-cog::before, .fa-gear::before, .la-cog::before                       { content: "\e270" !important; }
.fa-trash::before, .la-trash::before                                     { content: "\e4a6" !important; }
.fa-edit::before, .la-edit::before, .fa-pen::before                      { content: "\e3ae" !important; }
.fa-eye::before, .la-eye::before                                         { content: "\e220" !important; }
.fa-eye-slash::before, .la-eye-slash::before                             { content: "\e224" !important; }
.fa-bell::before, .la-bell::before                                       { content: "\e0ce" !important; }
.fa-lock::before, .la-lock::before                                       { content: "\e2fa" !important; }
.fa-unlock::before, .la-unlock::before                                   { content: "\e306" !important; }
.fa-sign-out::before, .fa-sign-out-alt::before, .la-sign-out-alt::before { content: "\e42a" !important; }
.fa-sign-in::before, .la-sign-in-alt::before                             { content: "\e428" !important; }
.fa-question::before, .fa-question-circle::before, .la-question-circle::before { content: "\e3e8" !important; }
.fa-exclamation-triangle::before, .la-exclamation-triangle::before       { content: "\e4e0" !important; }

/* Arrows / chevrons */
.fa-arrow-right::before, .la-arrow-right::before                         { content: "\e06c" !important; }
.fa-arrow-left::before, .la-arrow-left::before                           { content: "\e058" !important; }
.fa-arrow-up::before, .la-arrow-up::before                               { content: "\e08e" !important; }
.fa-arrow-down::before, .la-arrow-down::before                           { content: "\e03e" !important; }
.fa-long-arrow-alt-left::before, .la-long-arrow-alt-left::before         { content: "\e058" !important; }
.fa-long-arrow-alt-right::before, .la-long-arrow-alt-right::before       { content: "\e06c" !important; }
.fa-chevron-down::before, .la-chevron-down::before, .fa-caret-down::before    { content: "\e136" !important; }
.fa-chevron-up::before,   .la-chevron-up::before,   .fa-caret-up::before      { content: "\e13c" !important; }
.fa-chevron-left::before, .la-chevron-left::before, .fa-caret-left::before    { content: "\e138" !important; }
.fa-chevron-right::before,.la-chevron-right::before,.fa-caret-right::before   { content: "\e13a" !important; }
.fa-angle-double-up::before, .la-angle-double-up::before                 { content: "\e12c" !important; }
.fa-angle-double-down::before, .la-angle-double-down::before             { content: "\e126" !important; }

/* Money / commerce */
.fa-credit-card::before, .la-credit-card::before                         { content: "\e1d2" !important; }
.fa-cart-shopping::before, .fa-shopping-cart::before, .la-shopping-cart::before { content: "\e41e" !important; }
.fa-receipt::before, .la-receipt::before                                 { content: "\e3ec" !important; }
.fa-file-invoice-dollar::before, .la-file-invoice-dollar::before         { content: "\e23a" !important; }
.fa-wallet::before, .la-wallet::before                                   { content: "\e68a" !important; }
.fa-money::before, .fa-money-bill::before, .la-money-bill::before        { content: "\e588" !important; }
.fa-coins::before, .la-coins::before                                     { content: "\e78e" !important; }
.fa-piggy-bank::before, .la-piggy-bank::before                           { content: "\ea04" !important; }
.fa-dollar-sign::before, .la-dollar-sign::before                         { content: "\e550" !important; }
.fa-percent::before, .la-percent::before                                 { content: "\e3b6" !important; }

/* Files / docs */
.fa-file::before, .la-file::before                                       { content: "\e230" !important; }
.fa-file-alt::before, .fa-file-text::before, .la-file-alt::before        { content: "\e23a" !important; }
.fa-file-pdf::before, .la-file-pdf::before                               { content: "\e702" !important; }
.fa-folder::before, .la-folder::before                                   { content: "\e24a" !important; }
.fa-folder-open::before, .la-folder-open::before                         { content: "\e256" !important; }
.fa-paperclip::before, .la-paperclip::before                             { content: "\e39a" !important; }

/* Comms / UI */
.fa-paper-plane::before, .la-paper-plane::before                         { content: "\e394" !important; }
.fa-spinner::before, .la-spinner::before                                 { content: "\e66a" !important; }
.fa-sync::before, .fa-sync-alt::before, .la-sync::before                 { content: "\e094" !important; }
.fa-redo::before, .la-redo::before                                       { content: "\e036" !important; }
.fa-undo::before, .la-undo::before                                       { content: "\e038" !important; }
.fa-download::before, .la-download::before                               { content: "\e20a" !important; }
.fa-upload::before, .la-upload::before                                   { content: "\e4be" !important; }
.fa-share::before, .la-share::before                                     { content: "\e406" !important; }
.fa-link::before, .la-link::before                                       { content: "\e2e6" !important; }
.fa-globe::before, .la-globe::before                                     { content: "\e288" !important; }
.fa-envelope::before, .la-envelope::before                               { content: "\e214" !important; }
.fa-phone::before, .la-phone::before                                     { content: "\e3b8" !important; }
.fa-comments::before, .la-comments::before                               { content: "\e17c" !important; }
.fa-comment::before, .la-comment::before                                 { content: "\e15c" !important; }

/* Devices / misc */
.fa-desktop::before, .la-desktop::before                                 { content: "\e560" !important; }
.fa-mobile::before, .fa-mobile-alt::before, .la-mobile::before           { content: "\e1e0" !important; }
.fa-key::before, .la-key::before                                         { content: "\e2d6" !important; }
.fa-user::before, .la-user::before                                       { content: "\e4c2" !important; }
.fa-user-circle::before, .la-user-circle::before                         { content: "\e4c4" !important; }
.fa-users::before, .la-users::before                                     { content: "\e4d6" !important; }
.fa-home::before, .fa-house::before, .la-home::before                    { content: "\e2c2" !important; }
.fa-calendar::before, .la-calendar::before                               { content: "\e108" !important; }
.fa-calendar-check::before, .la-calendar-check::before                   { content: "\e712" !important; }
.fa-calendar-alt::before, .la-calendar-alt::before                       { content: "\e10a" !important; }
.fa-cookie::before, .fa-cookie-bite::before, .la-cookie-bite::before     { content: "\e6ca" !important; }
.fa-font::before                                                          { content: "\e6ee" !important; }
.fa-bookmark::before, .la-bookmark::before                               { content: "\e0e8" !important; }
.fa-heart::before, .la-heart::before                                     { content: "\e2a8" !important; }
.fa-star::before, .la-star::before                                       { content: "\e46a" !important; }
.fa-gift::before, .la-gift::before                                       { content: "\e276" !important; }
.fa-tag::before, .la-tag::before                                         { content: "\e478" !important; }
.fa-chart-bar::before, .fa-chart-line::before, .la-chart-bar::before     { content: "\e154" !important; }
.fa-chart-pie::before, .la-chart-pie::before                             { content: "\e158" !important; }

/* Brand logos (used in blog footer / socials) */
.fab.fa-facebook-f::before, .fab.fa-facebook::before                     { content: "\e226" !important; }
.fab.fa-linkedin-in::before, .fab.fa-linkedin::before                    { content: "\e2ee" !important; }
.fab.fa-pinterest::before, .fab.fa-pinterest-p::before                   { content: "\e64e" !important; }
.fab.fa-twitter::before, .fab.fa-x-twitter::before                       { content: "\e4ba" !important; }
.fab.fa-instagram::before                                                 { content: "\e2d0" !important; }
.fab.fa-youtube::before                                                   { content: "\e4fc" !important; }
.fab.fa-github::before                                                    { content: "\e576" !important; }
.fab.fa-whatsapp::before                                                  { content: "\e5d0" !important; }
.fab.fa-telegram::before, .fab.fa-telegram-plane::before                 { content: "\e5bc" !important; }
.fab.fa-google::before                                                    { content: "\e292" !important; }
.fab.fa-apple::before                                                     { content: "\e516" !important; }
.fab.fa-discord::before                                                   { content: "\e61a" !important; }
.fab.fa-skype::before                                                     { content: "\e8dc" !important; }
.fab.fa-reddit::before, .fab.fa-reddit-alien::before                     { content: "\e59c" !important; }
.fab.fa-tiktok::before                                                    { content: "\eaf2" !important; }
.fab.fa-snapchat::before, .fab.fa-snapchat-ghost::before                 { content: "\e668" !important; }

/* ---------- Admin-panel additions ---------- */
/* Status / actions */
.fa-ban::before, .la-ban::before                                         { content: "\e3de" !important; }
.fa-bolt::before, .la-bolt::before                                       { content: "\e2de" !important; }
.fa-exclamation::before, .la-exclamation::before                         { content: "\ee44" !important; }
.fa-history::before, .la-history::before                                 { content: "\e038" !important; }
.fa-pause::before, .la-pause::before                                     { content: "\e39e" !important; }
.fa-play::before, .la-play::before                                       { content: "\e3d0" !important; }
.fa-pen::before, .la-pen::before, .la-pencil::before, .fa-pencil::before, .fa-pencil-alt::before { content: "\e3ae" !important; }
.fa-undo::before, .la-undo::before                                       { content: "\e038" !important; }
.fa-language::before, .la-language::before                               { content: "\e4a2" !important; }
.fa-code::before, .la-code::before                                       { content: "\e1bc" !important; }
.fa-cogs::before, .la-cogs::before                                       { content: "\e270" !important; }
.fa-server::before, .la-server::before                                   { content: "\e1de" !important; }
.fa-wrench::before, .la-wrench::before                                   { content: "\e5d4" !important; }
.fa-list::before, .la-list::before, .fa-list-alt::before, .la-list-alt::before { content: "\e2f0" !important; }
.fa-percentage::before, .la-percentage::before                           { content: "\e3b6" !important; }

/* Money / banking */
.fa-bank::before, .la-bank::before, .fa-university::before, .la-university::before { content: "\e0b4" !important; }
.fa-money-bill::before, .la-money-bill::before,
.fa-money-bill-wave::before, .la-money-bill-wave::before,
.fa-money-bill-wave-alt::before, .la-money-bill-wave-alt::before,
.fa-money-check::before, .la-money-check::before,
.fa-money-check-alt::before, .la-money-check-alt::before                 { content: "\e588" !important; }
.fa-hand-holding-usd::before, .la-hand-holding-usd::before               { content: "\ea8c" !important; }
.fa-exchange-alt::before, .la-exchange-alt::before, .fa-exchange::before, .la-exchange::before { content: "\e83c" !important; }

/* Arrows / chevrons / dots additional */
.fa-angle-right::before, .la-angle-right::before                         { content: "\e13a" !important; }
.fa-angle-left::before, .la-angle-left::before                           { content: "\e138" !important; }
.fa-angle-up::before, .la-angle-up::before                               { content: "\e13c" !important; }
.fa-angle-down::before, .la-angle-down::before                           { content: "\e136" !important; }
.fa-level-down-alt::before, .la-level-down-alt::before                   { content: "\e018" !important; }
.fa-level-up-alt::before, .la-level-up-alt::before                       { content: "\e022" !important; }
.fa-caret-down::before, .la-caret-down::before                           { content: "\e136" !important; }
.fa-caret-up::before, .la-caret-up::before                               { content: "\e13c" !important; }
.fa-dot-circle::before, .la-dot-circle::before                           { content: "\ece0" !important; }
.fa-ellipsis-v::before, .la-ellipsis-v::before                           { content: "\e208" !important; }
.fa-ellipsis-h::before, .la-ellipsis-h::before                           { content: "\e1fe" !important; }
.fa-chevron-circle-down::before, .la-chevron-circle-down::before         { content: "\e11e" !important; }
.fa-chevron-circle-up::before, .la-chevron-circle-up::before             { content: "\e124" !important; }
.fa-chevron-circle-right::before, .la-chevron-circle-right::before       { content: "\e122" !important; }
.fa-chevron-circle-left::before, .la-chevron-circle-left::before         { content: "\e120" !important; }
.fa-plus-circle::before, .la-plus-circle::before                         { content: "\e3d6" !important; }
.fa-minus-circle::before, .la-minus-circle::before                       { content: "\e32c" !important; }

/* Comms */
.fa-comment-slash::before, .la-comment-slash::before                     { content: "\e15e" !important; }
.fa-envelope-circle-check::before, .la-envelope-circle-check::before     { content: "\e214" !important; }
.fa-sms::before, .la-sms::before                                         { content: "\e15c" !important; }
.fa-mobile-alt::before, .la-mobile-alt::before                           { content: "\e1e0" !important; }
.fa-user-check::before, .la-user-check::before                           { content: "\eafa" !important; }

/* UI */
.fa-sliders-h::before, .la-sliders-h::before                             { content: "\e434" !important; }

/* ---------- Admin settings page + sidenav additions ---------- */
.fa-images::before, .la-images::before                                   { content: "\e836" !important; }
.fa-image::before, .la-image::before                                     { content: "\e2ca" !important; }
.fa-html5::before, .la-html5::before                                     { content: "\eb38" !important; }
.fa-css3::before, .la-css3::before, .fa-css3-alt::before, .la-css3-alt::before { content: "\eb34" !important; }
.fa-puzzle-piece::before, .la-puzzle-piece::before                       { content: "\e596" !important; }
.fa-shield::before, .la-shield::before, .fa-shield-alt::before, .la-shield-alt::before { content: "\e40a" !important; }
.fa-robot::before, .la-robot::before                                     { content: "\e762" !important; }
.fa-sitemap::before, .la-sitemap::before                                 { content: "\e67c" !important; }
.fa-shopping-bag::before, .la-shopping-bag::before                       { content: "\e416" !important; }
.fa-store::before, .la-store::before                                     { content: "\e470" !important; }
.fa-storefront::before, .la-storefront::before                           { content: "\e470" !important; }
.fa-ticket::before, .la-ticket::before, .fa-ticket-alt::before, .la-ticket-alt::before { content: "\e490" !important; }
.fa-thumbs-up::before, .la-thumbs-up::before                             { content: "\e48e" !important; }
.fa-thumbs-down::before, .la-thumbs-down::before                         { content: "\e48c" !important; }
.fa-life-ring::before, .la-life-ring::before, .fa-lifebuoy::before, .la-lifebuoy::before { content: "\e63a" !important; }
.fa-bug::before, .la-bug::before                                         { content: "\e5f4" !important; }
.fa-id-card::before, .la-id-card::before                                 { content: "\e2c8" !important; }
.fa-address-card::before, .la-address-card::before                       { content: "\e2c8" !important; }
.fa-cube::before, .la-cube::before                                       { content: "\e1da" !important; }
.fa-cubes::before, .la-cubes::before                                     { content: "\e466" !important; }
.fa-database::before, .la-database::before                               { content: "\e1de" !important; }
.fa-tasks::before, .la-tasks::before                                     { content: "\eadc" !important; }
.fa-th::before, .la-th::before, .fa-th-large::before, .la-th-large::before { content: "\e296" !important; }
.fa-th-list::before, .la-th-list::before                                 { content: "\e2f0" !important; }
.fa-book::before, .la-book::before                                       { content: "\e0e2" !important; }
.fa-newspaper::before, .la-newspaper::before                             { content: "\e344" !important; }
.fa-map-marker::before, .la-map-marker::before,
.fa-map-marker-alt::before, .la-map-marker-alt::before                   { content: "\e316" !important; }
.fa-map::before, .la-map::before                                         { content: "\e31a" !important; }
.fa-images-square::before, .la-images-square::before                     { content: "\e834" !important; }
.fa-camera::before, .la-camera::before                                   { content: "\e10e" !important; }
.fa-video::before, .la-video::before                                     { content: "\e740" !important; }
.fa-play-circle::before, .la-play-circle::before                         { content: "\e3d2" !important; }
.fa-stop::before, .la-stop::before                                       { content: "\e46c" !important; }

/* ---------- Final round-up ---------- */
.fa-circle::before, .la-circle::before                                   { content: "\e18a" !important; }
.fa-exclamation-circle::before, .la-exclamation-circle::before           { content: "\e4e2" !important; }
.la-check-double::before, .fa-check-double::before                       { content: "\e53a" !important; }
.la-clipboard::before, .fa-clipboard::before                             { content: "\e196" !important; }
.la-cloud-upload::before, .fa-cloud-upload::before,
.la-cloud-upload-alt::before, .fa-cloud-upload-alt::before               { content: "\e1ae" !important; }
.la-headset::before, .fa-headset::before                                 { content: "\e584" !important; }
.la-reply::before, .fa-reply::before                                     { content: "\e024" !important; }
.la-trash-o::before, .fa-trash-o::before, .la-trash-alt::before, .fa-trash-alt::before { content: "\e4a6" !important; }
.la-braille::before, .fa-braille::before                                 { content: "\e1fc" !important; }
/* .fa-fw / .la-fw / .fa-lg / .la-lg are size modifiers — no glyph content needed */

/* fa-spin compatibility */
.fa-spin, .la-spin {
    -webkit-animation: fa-spin 1s linear infinite;
            animation: fa-spin 1s linear infinite;
}
@keyframes fa-spin {
    0%   { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
@-webkit-keyframes fa-spin {
    0%   { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); }
}
