@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("../media/7f9c2bb12d05b4c1-s.woff2") format("woff2");
    unicode-range: U+0460-052f, U+1c80-1c8a, U+20b4, U+2de0-2dff, U+a640-a69f, U+fe2e-fe2f;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("../media/e22508e41752d816-s.woff2") format("woff2");
    unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("../media/d67e8433214df714-s.woff2") format("woff2");
    unicode-range: U+1f??;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("../media/ed37791012a28541-s.woff2") format("woff2");
    unicode-range: U+0370-0377, U+037a-037f, U+0384-038a, U+038c, U+038e-03a1, U+03a3-03ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("../media/31a961c285846cb0-s.woff2") format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01a0-01a1, U+01af-01b0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1ea0-1ef9, U+20ab;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("../media/9d97415e38cab482-s.woff2") format("woff2");
    unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("../media/02edef4d0edfad6d-s.p.woff2") format("woff2");
    unicode-range: U+00??, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../media/ac0efabfe978b0ad-s.woff2") format("woff2");
    unicode-range: U+0460-052f, U+1c80-1c8a, U+20b4, U+2de0-2dff, U+a640-a69f, U+fe2e-fe2f;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../media/7d1684f14ddac155-s.woff2") format("woff2");
    unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../media/82233a533941ac93-s.woff2") format("woff2");
    unicode-range: U+1f??;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../media/0881a2b922b3331e-s.woff2") format("woff2");
    unicode-range: U+0370-0377, U+037a-037f, U+0384-038a, U+038c, U+038e-03a1, U+03a3-03ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../media/994bf73bb06543dc-s.woff2") format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01a0-01a1, U+01af-01b0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1ea0-1ef9, U+20ab;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../media/279b47070a5d5877-s.woff2") format("woff2");
    unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../media/045832894acda0e9-s.p.woff2") format("woff2");
    unicode-range: U+00??, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../media/483de911b1a0d258-s.woff2") format("woff2");
    unicode-range: U+0460-052f, U+1c80-1c8a, U+20b4, U+2de0-2dff, U+a640-a69f, U+fe2e-fe2f;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../media/0e5e1c6a8db9e432-s.woff2") format("woff2");
    unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../media/5693677ef07d9b51-s.woff2") format("woff2");
    unicode-range: U+1f??;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../media/28aa5118b38b86e4-s.woff2") format("woff2");
    unicode-range: U+0370-0377, U+037a-037f, U+0384-038a, U+038c, U+038e-03a1, U+03a3-03ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../media/8720059dfa14a1fe-s.woff2") format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01a0-01a1, U+01af-01b0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1ea0-1ef9, U+20ab;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../media/f1df6186c8d69644-s.woff2") format("woff2");
    unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../media/120a5a1920781bd0-s.p.woff2") format("woff2");
    unicode-range: U+00??, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../media/27971e35634b7c88-s.woff2") format("woff2");
    unicode-range: U+0460-052f, U+1c80-1c8a, U+20b4, U+2de0-2dff, U+a640-a69f, U+fe2e-fe2f;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../media/cd31bf4b34f8dfb3-s.woff2") format("woff2");
    unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../media/ecf49d904668b268-s.woff2") format("woff2");
    unicode-range: U+1f??;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../media/2f66f084fba01545-s.woff2") format("woff2");
    unicode-range: U+0370-0377, U+037a-037f, U+0384-038a, U+038c, U+038e-03a1, U+03a3-03ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../media/906678b269849541-s.woff2") format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01a0-01a1, U+01af-01b0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1ea0-1ef9, U+20ab;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../media/674abd25bb7be96f-s.woff2") format("woff2");
    unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../media/da897b99eb1fe4a1-s.p.woff2") format("woff2");
    unicode-range: U+00??, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../media/80b1a0e600ca6d83-s.woff2") format("woff2");
    unicode-range: U+0460-052f, U+1c80-1c8a, U+20b4, U+2de0-2dff, U+a640-a69f, U+fe2e-fe2f;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../media/7c16c8204ab29534-s.woff2") format("woff2");
    unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../media/f756da832d8c34d4-s.woff2") format("woff2");
    unicode-range: U+1f??;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../media/98a28a5430a3cf7f-s.woff2") format("woff2");
    unicode-range: U+0370-0377, U+037a-037f, U+0384-038a, U+038c, U+038e-03a1, U+03a3-03ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../media/df2942b6de9d14b5-s.woff2") format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01a0-01a1, U+01af-01b0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1ea0-1ef9, U+20ab;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../media/7a7012758df5a81e-s.woff2") format("woff2");
    unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../media/6ebb97b5c9fa4e03-s.p.woff2") format("woff2");
    unicode-range: U+00??, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("../media/8c3de32e92410013-s.woff2") format("woff2");
    unicode-range: U+0460-052f, U+1c80-1c8a, U+20b4, U+2de0-2dff, U+a640-a69f, U+fe2e-fe2f;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("../media/e1d0f983e2a3e4f5-s.woff2") format("woff2");
    unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("../media/5721dfda5b43cc5f-s.woff2") format("woff2");
    unicode-range: U+1f??;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("../media/d602976d04712c39-s.woff2") format("woff2");
    unicode-range: U+0370-0377, U+037a-037f, U+0384-038a, U+038c, U+038e-03a1, U+03a3-03ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("../media/879d1750a4bfabb3-s.woff2") format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01a0-01a1, U+01af-01b0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1ea0-1ef9, U+20ab;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("../media/550cf1913d99b09c-s.woff2") format("woff2");
    unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

@font-face {
    font-family: __Roboto_371575;
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("../media/c714540e49ad5111-s.p.woff2") format("woff2");
    unicode-range: U+00??, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
    font-family: __Roboto_Fallback_371575;
    src: local("Arial");
    ascent-override: 92.67%;
    descent-override: 24.39%;
    line-gap-override: 0.00%;
    size-adjust: 100.11%;
}

.__className_371575 {
    font-family: __Roboto_371575, __Roboto_Fallback_371575;
    font-style: normal;
}

:host,
:root {
    --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Solid";
    --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Regular";
    --fa-font-light: normal 300 1em/1 "Font Awesome 6 Light";
    --fa-font-thin: normal 100 1em/1 "Font Awesome 6 Thin";
    --fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
    --fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
    --fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
    --fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
    --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
}

svg:not(:host).svg-inline--fa,
svg:not(:root).svg-inline--fa {
    overflow: visible;
    box-sizing: content-box;
}

.svg-inline--fa {
    display: var(--fa-display, inline-block);
    height: 1em;
    overflow: visible;
    vertical-align: -.125em;
}

.svg-inline--fa.fa-2xs {
    vertical-align: 0.1em;
}

.svg-inline--fa.fa-xs {
    vertical-align: 0;
}

.svg-inline--fa.fa-sm {
    vertical-align: -.07143em;
}

.svg-inline--fa.fa-lg {
    vertical-align: -.2em;
}

.svg-inline--fa.fa-xl {
    vertical-align: -.25em;
}

.svg-inline--fa.fa-2xl {
    vertical-align: -.3125em;
}

.svg-inline--fa.fa-pull-left {
    margin-right: var(--fa-pull-margin, .3em);
    width: auto;
}

.svg-inline--fa.fa-pull-right {
    margin-left: var(--fa-pull-margin, .3em);
    width: auto;
}

.svg-inline--fa.fa-li {
    width: var(--fa-li-width, 2em);
    top: 0.25em;
}

.svg-inline--fa.fa-fw {
    width: var(--fa-fw-width, 1.25em);
}

.fa-layers svg.svg-inline--fa {
    bottom: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
}

.fa-layers-counter,
.fa-layers-text {
    display: inline-block;
    position: absolute;
    text-align: center;
}

.fa-layers {
    display: inline-block;
    height: 1em;
    position: relative;
    text-align: center;
    vertical-align: -.125em;
    width: 1em;
}

.fa-layers svg.svg-inline--fa {
    transform-origin: center center;
}

.fa-layers-text {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: center center;
}

.fa-layers-counter {
    background-color: var(--fa-counter-background-color, #ff253a);
    border-radius: var(--fa-counter-border-radius, 1em);
    box-sizing: border-box;
    color: var(--fa-inverse, #fff);
    line-height: var(--fa-counter-line-height, 1);
    max-width: var(--fa-counter-max-width, 5em);
    min-width: var(--fa-counter-min-width, 1.5em);
    overflow: hidden;
    padding: var(--fa-counter-padding, .25em .5em);
    right: var(--fa-right, 0);
    text-overflow: ellipsis;
    top: var(--fa-top, 0);
    transform: scale(var(--fa-counter-scale, .25));
    transform-origin: top right;
}

.fa-layers-bottom-right {
    bottom: var(--fa-bottom, 0);
    right: var(--fa-right, 0);
    top: auto;
    transform: scale(var(--fa-layers-scale, .25));
    transform-origin: bottom right;
}

.fa-layers-bottom-left {
    bottom: var(--fa-bottom, 0);
    left: var(--fa-left, 0);
    right: auto;
    top: auto;
    transform: scale(var(--fa-layers-scale, .25));
    transform-origin: bottom left;
}

.fa-layers-top-right {
    top: var(--fa-top, 0);
    right: var(--fa-right, 0);
    transform: scale(var(--fa-layers-scale, .25));
    transform-origin: top right;
}

.fa-layers-top-left {
    left: var(--fa-left, 0);
    right: auto;
    top: var(--fa-top, 0);
    transform: scale(var(--fa-layers-scale, .25));
    transform-origin: top left;
}

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

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

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

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

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

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

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

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

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

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

.fa-2xs {
    font-size: 0.625em;
    line-height: 0.1em;
    vertical-align: 0.225em;
}

.fa-xs {
    font-size: 0.75em;
    line-height: 0.08333em;
    vertical-align: 0.125em;
}

.fa-sm {
    font-size: 0.875em;
    line-height: 0.07143em;
    vertical-align: 0.05357em;
}

.fa-lg {
    font-size: 1.25em;
    line-height: 0.05em;
    vertical-align: -.075em;
}

.fa-xl {
    font-size: 1.5em;
    line-height: 0.04167em;
    vertical-align: -.125em;
}

.fa-2xl {
    font-size: 2em;
    line-height: 0.03125em;
    vertical-align: -.1875em;
}

.fa-fw {
    text-align: center;
    width: 1.25em;
}

.fa-ul {
    list-style-type: none;
    margin-left: var(--fa-li-margin, 2.5em);
    padding-left: 0;
}

.fa-ul>li {
    position: relative;
}

.fa-li {
    left: calc(var(--fa-li-width, 2em) * -1);
    position: absolute;
    text-align: center;
    width: var(--fa-li-width, 2em);
    line-height: inherit;
}

.fa-border {
    border-color: var(--fa-border-color, #eee);
    border-radius: var(--fa-border-radius, .1em);
    border-style: var(--fa-border-style, solid);
    border-width: var(--fa-border-width, .08em);
    padding: var(--fa-border-padding, .2em .25em .15em);
}

.fa-pull-left {
    float: left;
    margin-right: var(--fa-pull-margin, .3em);
}

.fa-pull-right {
    float: right;
    margin-left: var(--fa-pull-margin, .3em);
}

.fa-beat {
    animation-name: fa-beat;
    animation-delay: var(--fa-animation-delay, 0s);
    animation-direction: var(--fa-animation-direction, normal);
    animation-duration: var(--fa-animation-duration, 1s);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-timing-function: var(--fa-animation-timing, ease-in-out);
}

.fa-bounce {
    animation-name: fa-bounce;
    animation-delay: var(--fa-animation-delay, 0s);
    animation-direction: var(--fa-animation-direction, normal);
    animation-duration: var(--fa-animation-duration, 1s);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-timing-function: var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1));
}

.fa-fade {
    animation-name: fa-fade;
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-timing-function: var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1));
}

.fa-beat-fade,
.fa-fade {
    animation-delay: var(--fa-animation-delay, 0s);
    animation-direction: var(--fa-animation-direction, normal);
    animation-duration: var(--fa-animation-duration, 1s);
}

.fa-beat-fade {
    animation-name: fa-beat-fade;
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-timing-function: var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1));
}

.fa-flip {
    animation-name: fa-flip;
    animation-delay: var(--fa-animation-delay, 0s);
    animation-direction: var(--fa-animation-direction, normal);
    animation-duration: var(--fa-animation-duration, 1s);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-timing-function: var(--fa-animation-timing, ease-in-out);
}

.fa-shake {
    animation-name: fa-shake;
    animation-duration: var(--fa-animation-duration, 1s);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-timing-function: var(--fa-animation-timing, linear);
}

.fa-shake,
.fa-spin {
    animation-delay: var(--fa-animation-delay, 0s);
    animation-direction: var(--fa-animation-direction, normal);
}

.fa-spin {
    animation-name: fa-spin;
    animation-duration: var(--fa-animation-duration, 2s);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-timing-function: var(--fa-animation-timing, linear);
}

.fa-spin-reverse {
    --fa-animation-direction: reverse;
}

.fa-pulse,
.fa-spin-pulse {
    animation-name: fa-spin;
    animation-direction: var(--fa-animation-direction, normal);
    animation-duration: var(--fa-animation-duration, 1s);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-timing-function: var(--fa-animation-timing, steps(8));
}

@media (prefers-reduced-motion:reduce) {
    .fa-beat,
    .fa-beat-fade,
    .fa-bounce,
    .fa-fade,
    .fa-flip,
    .fa-pulse,
    .fa-shake,
    .fa-spin,
    .fa-spin-pulse {
        animation-delay: -1ms;
        animation-duration: 1ms;
        animation-iteration-count: 1;
        transition-delay: 0s;
        transition-duration: 0s;
    }
}

@keyframes fa-beat {
    0%,
    90% {
        transform: scale(1);
    }
    45% {
        transform: scale(var(--fa-beat-scale, 1.25));
    }
}

@keyframes fa-bounce {
    0% {
        transform: scale(1) translateY(0);
    }
    10% {
        transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0);
    }
    30% {
        transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em));
    }
    50% {
        transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0);
    }
    57% {
        transform: scale(1) translateY(var(--fa-bounce-rebound, -.125em));
    }
    64% {
        transform: scale(1) translateY(0);
    }
    to {
        transform: scale(1) translateY(0);
    }
}

@keyframes fa-fade {
    50% {
        opacity: var(--fa-fade-opacity, .4);
    }
}

@keyframes fa-beat-fade {
    0%,
    to {
        opacity: var(--fa-beat-fade-opacity, .4);
        transform: scale(1);
    }
    50% {
        opacity: 1;
        transform: scale(var(--fa-beat-fade-scale, 1.125));
    }
}

@keyframes fa-flip {
    50% {
        transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
    }
}

@keyframes fa-shake {
    0% {
        transform: rotate(-15deg);
    }
    4% {
        transform: rotate(15deg);
    }
    24%,
    8% {
        transform: rotate(-18deg);
    }
    12%,
    28% {
        transform: rotate(18deg);
    }
    16% {
        transform: rotate(-22deg);
    }
    20% {
        transform: rotate(22deg);
    }
    32% {
        transform: rotate(-12deg);
    }
    36% {
        transform: rotate(12deg);
    }
    40%,
    to {
        transform: rotate(0deg);
    }
}

@keyframes fa-spin {
    0% {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(1turn);
    }
}

.fa-rotate-90 {
    transform: rotate(90deg);
}

.fa-rotate-180 {
    transform: rotate(180deg);
}

.fa-rotate-270 {
    transform: rotate(270deg);
}

.fa-flip-horizontal {
    transform: scaleX(-1);
}

.fa-flip-vertical {
    transform: scaleY(-1);
}

.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
    transform: scale(-1);
}

.fa-rotate-by {
    transform: rotate(var(--fa-rotate-angle, none));
}

.fa-stack {
    display: inline-block;
    vertical-align: middle;
    height: 2em;
    position: relative;
    width: 2.5em;
}

.fa-stack-1x,
.fa-stack-2x {
    bottom: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    z-index: var(--fa-stack-z-index, auto);
}

.svg-inline--fa.fa-stack-1x {
    height: 1em;
    width: 1.25em;
}

.svg-inline--fa.fa-stack-2x {
    height: 2em;
    width: 2.5em;
}

.fa-inverse {
    color: var(--fa-inverse, #fff);
}

.fa-sr-only,
.fa-sr-only-focusable:not(:focus),
.sr-only,
.sr-only-focusable:not(:focus) {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.svg-inline--fa .fa-primary {
    fill: var(--fa-primary-color, currentColor);
    opacity: var(--fa-primary-opacity, 1);
}

.svg-inline--fa .fa-secondary {
    fill: var(--fa-secondary-color, currentColor);
}

.svg-inline--fa .fa-secondary,
.svg-inline--fa.fa-swap-opacity .fa-primary {
    opacity: var(--fa-secondary-opacity, .4);
}

.svg-inline--fa.fa-swap-opacity .fa-secondary {
    opacity: var(--fa-primary-opacity, 1);
}

.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
    fill: #000;
}

.fa-duotone.fa-inverse,
.fad.fa-inverse {
    color: var(--fa-inverse, #fff);
}