/* Self-hosted icon subset.
 *
 * Replaces the full Font Awesome 5.10.0 (all.min.css + fa-solid-900.woff2 +
 * fa-brands-400.woff2) and Bootstrap Icons 1.4.1 stylesheets, which together
 * shipped 355,455 B to render 14 glyphs. The fonts below are pyftsubset output
 * containing exactly the glyphs this site uses, and the rules are copied
 * verbatim from the upstream stylesheets so rendering is unchanged.
 *
 * Regenerate with: seo-tools/build_icons.sh
 *
 * Glyphs kept — Font Awesome solid: link, eye, check, envelope, envelope-open,
 * map-marker-alt, phone-alt, plus, and angle-right / angle-down / quote-left.
 * Those last three are never used as a class in the HTML: they are referenced
 * only from `content:` declarations in style.css (the footer link chevrons, the
 * navbar dropdown caret and the testimonial quote mark), so any future subset
 * must scan the STYLESHEETS as well as the markup.
 * Brands: linkedin-in, twitter, instagram, facebook-f.
 * Bootstrap Icons: arrow-up, exclamation-triangle.
 */

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

@font-face {
    font-family: "Font Awesome 5 Brands";
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    src: url(../fonts/fa-brands-400.subset.woff2) format("woff2");
}

@font-face {
    font-family: "bootstrap-icons";
    font-display: swap;
    src: url(../fonts/bootstrap-icons.subset.woff2) format("woff2");
}

.fa,
.fab,
.fad,
.fal,
.far,
.fas {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

.fa,
.far,
.fas {
    font-family: "Font Awesome 5 Free";
}

.fa,
.fas {
    font-weight: 900;
}

.fab {
    font-family: "Font Awesome 5 Brands";
}

.fa-1x {
    font-size: 1em;
}

.fa-check::before { content: "\f00c"; }
.fa-plus::before { content: "\f067"; }
.fa-eye::before { content: "\f06e"; }
.fa-twitter::before { content: "\f099"; }
.fa-link::before { content: "\f0c1"; }
.fa-envelope::before { content: "\f0e0"; }
.fa-linkedin-in::before { content: "\f0e1"; }
.fa-instagram::before { content: "\f16d"; }
.fa-envelope-open::before { content: "\f2b6"; }
.fa-facebook-f::before { content: "\f39e"; }
.fa-map-marker-alt::before { content: "\f3c5"; }
.fa-phone-alt::before { content: "\f879"; }
.fa-angle-right::before { content: "\f105"; }
.fa-angle-down::before { content: "\f107"; }
.fa-quote-left::before { content: "\f10d"; }

[class^="bi-"]::before,
[class*=" bi-"]::before {
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    vertical-align: -.125em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.bi-arrow-up::before { content: "\f148"; }
.bi-exclamation-triangle::before { content: "\f33b"; }
