/*  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Font Awesome 6.4.2 Free — SITE SUBSET     | 2026-07-11
    Replaces the full CDN bundle (~250 KB) with only the 21 icons
    and utilities this site uses (~6 KB total incl. fonts).
    Icons © Fonticons, Inc. — CC BY 4.0 / SIL OFL 1.1 / MIT
    https://fontawesome.com/license/free
    -----------------------------------------------------------------
    If you add a NEW icon to a page, add its class + codepoint below
    and re-subset the font, or temporarily switch back to the CDN.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

@font-face {
    font-family: "Font Awesome 6 Free";
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url("../lib/fa/fa-solid-subset.woff2") format("woff2");
}
@font-face {
    font-family: "Font Awesome 6 Free";
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url("../lib/fa/fa-regular-subset.woff2") format("woff2");
}

/* Base */
.fa-solid, .fa-regular {
    font-family: "Font Awesome 6 Free";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: var(--fa-display, inline-block);
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    text-rendering: auto;
}
.fa-solid   { font-weight: 900; }
.fa-regular { font-weight: 400; }
.fa-solid::before, .fa-regular::before { content: var(--fa); }

/* Sizing utilities used on this site */
.fa-2xs { font-size: .625em; line-height: .1em; vertical-align: .225em; }
.fa-xs  { font-size: .75em;  line-height: .0833333337em; vertical-align: .125em; }

/* Stacking (used for the expand/compress overlay buttons) */
.fa-stack {
    display: inline-block;
    height: 2em;
    line-height: 2em;
    position: relative;
    vertical-align: middle;
    width: 2.5em;
}
.fa-stack-1x {
    left: 0;
    position: absolute;
    text-align: center;
    width: 100%;
    z-index: var(--fa-stack-z-index, auto);
}

/* Animations used on this site */
.fa-beat { animation: fa-beat 1s infinite linear; }
.fa-spin { animation: fa-spin 2s infinite linear; }
@keyframes fa-beat {
    0%, 90% { transform: scale(1); }
    45%     { transform: scale(var(--fa-beat-scale, 1.25)); }
}
@keyframes fa-spin {
    0%   { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
    .fa-beat, .fa-spin {
        animation-delay: -1ms;
        animation-duration: 1ms;
        animation-iteration-count: 1;
        transition-delay: 0s;
        transition-duration: 0s;
    }
}

/* Icon glyphs (21 total) */
.fa-bars              { --fa: "\f0c9"; }
.fa-temperature-high  { --fa: "\f769"; }
.fa-temperature-low   { --fa: "\f76b"; }
.fa-temperature-empty { --fa: "\f2cb"; }
.fa-expand            { --fa: "\f065"; }
.fa-compress          { --fa: "\f066"; }
.fa-cloud             { --fa: "\f0c2"; }
.fa-cloud-rain        { --fa: "\f73d"; }
.fa-cloud-sun-rain    { --fa: "\f743"; }
.fa-wind              { --fa: "\f72e"; }
.fa-umbrella          { --fa: "\f0e9"; }
.fa-sun               { --fa: "\f185"; }
.fa-bolt-lightning    { --fa: "\e0b7"; }
.fa-compass           { --fa: "\f14e"; }
.fa-circle-info       { --fa: "\f05a"; }
.fa-circle-notch      { --fa: "\f1ce"; }
.fa-chart-simple      { --fa: "\e473"; }
.fa-chart-line        { --fa: "\f201"; }
.fa-chart-column      { --fa: "\e0e3"; }
.fa-caret-down        { --fa: "\f0d7"; }
.fa-gem               { --fa: "\f3a5"; }
