@charset "UTF-8";

/*
Custom Styles for Bootstrap 5
Author: Sandy Campbell - https://sandycampbell.design

------------------------------------------------------------------ */

/* Changelog
2023-04-10 - container max-width widened from 1080px to 1400px
2023-04-17 - refined font sizes for bootstrap breakpoints
2023-05-04 - change corner radius of cards
2023-05-07 - added off-white background color (bg_Milk) to body 
2023-05-19 - update hover state for text links 
2023-05-23 - fix size of google search button, add border radius
2023-06-10 - adjust corner radius of cards to 20px to match verge
2023-06-16 - turn off 1px border rule for cards
2023-07-11 - remove uppercase styling for big heads
2023-07-14 - simplify head styles
2023-08-02 - topnav select fixes; reduce container width from 1400px to 1300px
2023-08-06 - refine and simplify sizes and weights
2024-01-13 - roll back some legacy layout css

------------------------------------------------------------------ */

/* Contents
01 - primary styles
02 - hyperlinks
03 - badges & buttons
04 - images & videos
05 - cards
10 - photoswipe
11 - figcaptions
12 - outercaptions
20 - wuforms
30 - horizontal rules
31 - short rules
40 - pre-footer & post-footer
41 - google search
42 - footer
43 - masthead
44 - navlinks
45 - scroll margins
50 - supplemental spacing
51 - topnavs
52 - misc typography
*/

/* 01 - primary styles
--------------------------------------------- */

body {
    font-family: 'Merriweather', serif;
    background-color: #F5F6F7;
}

.container {
    max-width: 1300px;
}

h1,
.slab {
    font-family: 'Bitter', serif;
}

h2,
h3,
h4,
h5,
h6,
gothic {
    font-family: 'Libre Franklin', sans-serif;
}

p,
.serif {
    font-family: 'Merriweather', serif;
}

h1.subhd_002 {
    font-family: 'Libre Franklin', sans-serif;
    font-size: 2.6rem;
    font-weight: 300 !important;
    line-height: 1.0;
    letter-spacing: -.05rem;
    word-spacing: -.02rem;
    text-align: left;
}

h2,
.h2 {
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.3;
}

strong,
.strong {
    font-family: 'Libre Franklin', sans-serif;
    font-weight: 700;
}

.center {
    text-align: center;
}

.dropdown-item.center {
    text-align: center;
}

.photocredit.center {
    text-align: center;
}

.shift_b {
    vertical-align: bottom;
}


@media (min-width: 577px) {
    h1 {
        font-size: 4.0rem;
        line-height: .85;
        font-weight: 300 !important;
        text-align: center;
    }

    h2 {
        font-size: 2.4rem;
        line-height: 1.0;
        font-weight: 300 !important;
    }

    h3 {
        font-size: 1.6rem;
        line-height: 1.0;
        font-weight: 400 !important;
    }

    h4 {
        font-size: 1.2rem;
        line-height: 1.2;
        font-weight: 700 !important;
    }

    h5 {
        font-size: 1.2rem;
        line-height: 1.2;
        font-weight: 400 !important;
    }

    h6 {
        font-size: 1.0rem;
        line-height: 1.2;
        font-weight: 400 !important;
    }

    p {
        font-size: .95rem;
        line-height: 1.5;
    }
}

@media (max-width: 576px) {
    h1 {
        font-size: 3.0rem;
        line-height: 1.0;
        font-weight: 300 !important;
        text-align: center;
    }

    h2 {
        font-size: 1.8rem;
        line-height: 1.1;
        font-weight: 300 !important;
    }

    h3 {
        font-size: 1.2rem;
        line-height: 1.3;
        font-weight: 500 !important;
    }

    h4 {
        font-size: 1.0rem;
        line-height: 1.3;
        font-weight: 700 !important;
    }

    h5 {
        font-size: 1.0rem;
        line-height: 1.4;
        font-weight: 500 !important;
    }

    h6 {
        font-size: .85rem;
        line-height: 1.5;
        font-weight: 500 !important;
    }

    p {
        font-size: .85rem !important;
        line-height: 1.5;
    }
}

.followup {
    color: #02b875;
    font-style: italic;
}

.followup a {
    color: #02b875;
}

.followup a:hover {
    color: #000;
}

ul.footnote li {
    font-size: .85rem;
    margin-left: .55rem;
}

ul.footnote li:before {
    content: "*";
    margin-left: -.55rem;
    padding-right: .15rem;
}

.phonelink {
    font-weight: bold;
    letter-spacing: -.03rem;
}

/* 02 - hyperlinks
--------------------------------------------- */

p a {
    color: #02b875 !important;
    text-decoration: none !important;
}

p a:hover {
    color: #000 !important;
}

a {
    color: #02b875;
    text-decoration: none;
}

a:hover {
    color: #000;
}

a.link-bg-dk {
    color: #00fa9a;
    text-decoration: none;
}

a.link-bg-dk:hover {
    color: #fff;
}

a.signage {
    color: #000;
    text-decoration: none;
}

a.signage:hover {
    color: #02b875;
}

.phonelink {
    color: #02b875;
    text-decoration: none;
}

.phonelink:hover {
    color: #000;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #000;
    text-decoration: none;
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
    color: #02b875;
}

.heading a {
    color: #000;
    text-decoration: none;
}

.heading a:hover {
    color: #02b875;
}

.photolink {
    color: #888;
    text-decoration: none;
}

.photolink:hover {
    color: #02b875;
}

a .photocredit {
    color: #02b875;
    text-decoration: none;
}

a:hover .photocredit {
    color: #000;
}

.photocredit a {
    color: #02b875;
    text-decoration: none;
}

.photocredit:hover {
    color: #000;
}

/* 03 - badges & buttons
--------------------------------------------- */

button.dropdown-toggle {
    border: none !important;
    background: none !important;
}

.btn {
    font-family: 'Libre Franklin', sans-serif;
    font-size: .95rem;
    text-transform: uppercase;
    padding: .9rem;
    border-radius: 50rem;
}

.btn-ulc {
    font-weight: 700;
    border-left: 1px #02b875 solid;
    border-radius: 0;
    margin-left: .2rem;
    padding: .05rem .4rem .05rem .4rem;
}

.btn-link:link,
.btn-link:visited {
    color: #02b875;
    background-color: #fff;
    text-decoration: none;
}

.btn-link:hover,
.btn-link:active {
    color: #fff;
    background-color: #02b875;
    text-decoration: none;
}

.btn-link:hover,
.btn-link:active {
    transition: background 0.2s;
}

.badge-pill {
    font-family: 'Libre Franklin', sans-serif;
    font-size: .95rem;
    text-transform: uppercase;
    border-radius: 50rem;
    padding: .9rem;
    width: auto;
    font-weight: 400;
}

/* Zoom Registration Button */
.text-white.bg_Verblu .badge_zoom:link,
.text-white.bg_Verblu .badge_zoom:visited {
    color: var(--era_blackest) !important;
    background-color: var(--era_green_blackbg);
}

.text-white.bg_Verblu .badge_zoom:hover,
.text-white.bg_Verblu .badge_zoom:active {
    color: var(--era_green_whitebg) !important;
    background-color: var(--era_whitest);
    text-decoration: none;
}

/* Std Green Button */
.badge-green:link,
.badge-green:visited {
    color: #02b875;
    background-color: #fff;
    border: 1px #02b875 solid;
}

.badge-green:hover,
.badge-green:active {
    color: #fff;
    background-color: #02b875;
    text-decoration: none;
}

/* Std Green Button With Clear Background */
.badge-clear:link,
.badge-clear:visited {
    color: #02b875;
    background-color: rgba(255, 255, 255, 0.25);
    border: 1px #02b875 solid;
}

.badge-clear:hover,
.badge-clear:active {
    color: #fff;
    background-color: #02b875;
    text-decoration: none;
}

/* Solid Green Button for bg_Black */
.badge-green-dark:link,
.badge-green-dark:visited {
    color: #fff !important;
    background-color: #02b875;
    text-decoration: none;
}

.badge-green-dark:hover,
.badge-green-dark:active {
    color: #02b875 !important;
    background-color: #fff;
}

/* Red Button for Cancelled Events */
.badge-red:link,
.badge-red:visited {
    color: #fff;
    background-color: #ff0000;
    text-decoration: none;
    border: 1px #ff0000 solid;
}

.badge-red:hover,
.badge-red:active {
    color: #ff0000;
    background-color: #fff;
    border: 1px #ff0000 solid;
}

.badge-green:hover,
.badge-green:active {
    transition: background 0.2s;
}

.badge-green-dark:hover,
.badge-green-dark:active {
    transition: background 0.2s;
}

.badge-red:hover,
.badge-red:active {
    transition: background 0.2s;
}

/* 04 - images & videos
--------------------------------------------- */

figure {
    margin-bottom: 0px !important;
}

.hovereffect a {
    display: block;
    position: relative;
    overflow: hidden;
}

.hovereffect img {
    width: 100%;
    height: auto;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.hovereffect:hover img {
    -webkit-transform: scale(1.025);
    -moz-transform: scale(1.025);
    -o-transform: scale(1.025);
    -ms-transform: scale(1.025);
    transform: scale(1.025);
}

/* 05 - cards
--------------------------------------------- */

.card,
.card-body {
    border-radius: 20px;
    --bs-border-width: 0px !important;
}

.card-img-top {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.card-img-bottom {
    border-bottom-left-radius: .65rem;
    border-bottom-right-radius: .65rem;
}

.rounded-left {
    border-top-left-radius: .65rem;
    border-bottom-left-radius: .65rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

/* 10 - photoswipe custommization
--------------------------------------------- */

.pswp__caption__center {
    padding-bottom: 1.5rem !important;
    min-width: 80vw !important;
}

.pswp__caption__center h3 {
    font-family: 'Libre Franklin', sans-serif;
    font-weight: 400 !important;
    font-size: .95rem;
    line-height: 1.4;
    color: rgba(255, 255, 255, 1);
    margin-bottom: 0;
    padding-top: .5rem;
}

.pswp__caption__center p {
    font-family: 'Libre Franklin', sans-serif;
    font-weight: 400 !important;
    font-size: .95rem;
    line-height: 1.4;
    color: rgba(255, 255, 255, .75);
    margin-bottom: .1rem;
}

.pswp__caption__center .photolink {
    font-family: 'Libre Franklin', sans-serif;
    font-weight: 400 !important;
    font-size: .70rem;
    line-height: 1.4;
    text-transform: uppercase;
    letter-spacing: .05rem;
    color: rgba(255, 255, 255, .75);
}

.pswp__caption__center .photolink a:hover {
    color: rgba(255, 255, 255, .75) !important;
    text-decoration: underline !important;
}

.noThumb {
    display: none;
}

.my-simple-gallery .hovercontent {
    float: left;
    margin: 0;
    padding: 0;
}

.my-simple-gallery figcaption {
    display: none;
}

/* 11 - figcaptions
--------------------------------------------- */

figcaption {
    font-family: 'Libre Franklin', sans-serif;
    float: left;
    display: block;
    width: 100%;
}

figcaption h3 {
    font-weight: 400 !important;
    font-size: 1.0rem;
    line-height: 1.2;
    color: #666;
    text-transform: none;
}

figcaption h3 a:link,
figcaption h3 a:visited {
    color: #666;
}

figcaption h4 {
    font-weight: 400 !important;
    font-size: .90rem;
    line-height: 1.3;
    color: #666;
}

figcaption p {
    font-weight: 400 !important;
    font-size: .90rem;
    line-height: 1.4;
    color: #666;
}

.photolink {
    font-family: 'Libre Franklin', sans-serif;
    font-size: .90rem;
    line-height: 1.3;
    margin-top: .3rem;
    color: #999;
    text-transform: uppercase;
    text-decoration: none;
}

.photocredit {
    font-family: 'Libre Franklin', sans-serif;
    font-size: .90rem;
    line-height: 2.5;
    text-transform: uppercase;
    float: right;
    text-align: right;
    width: 100%;
    letter-spacing: .03rem;
}

/* 12 - outercaptions
--------------------------------------------- */

.outercaption {
    font-family: 'Libre Franklin', sans-serif;
    font-weight: 700;
    font-size: .90rem;
    line-height: 1.4;
    color: #212529;
}

.outercaption .inlinecredit,
.outercaption a {
    font-weight: 400 !important;
}

/* 20 - wuforms
--------------------------------------------- */

form.wufoo {
    padding-left: -5px !important;
}

/* 30 - horizontal rules
--------------------------------------------- */

hr {
    display: block;
    height: 1px;
    margin: 0;
    padding: 0;
    opacity: 1 !important;
}

.hr-top-k {
    border-top: 1px #333 solid;
}

.hr-2-top {
    border-top: 2px #333 solid;
}

.hr-3-top {
    border-top: 3px #333 solid;
}

.hr-4-top {
    border-top: 4px #333 solid;
}

.hr-5-top {
    border-top: 5px #333 solid;
}

.hr-6-top {
    border-top: 6px #333 solid;
}

.hr-7-top {
    border-top: 7px #333 solid;
}

.hr-8-top {
    border-top: 8px #333 solid;
}

.hr-9-top {
    border-top: 9px #333 solid;
}

.hr-10-top {
    border-top: 10px #333 solid;
}

.hr-11-top {
    border-top: 11px #333 solid;
}

.hr-12-top {
    border-top: 12px #333 solid;
}

.hr-top-ko {
    border-top: 1px #fff solid;
}

.hr-2-top-ko {
    border-top: 2px #fff solid;
}

.hr-3-top-ko {
    border-top: 3px #fff solid;
}

.hr-6-top-ko {
    border-top: 6px #fff solid;
}

.hr-9-top-ko {
    border-top: 9px #fff solid;
}

.hr-12-top-ko {
    border-top: 12px #fff solid;
}

.hr-bottom {
    border-bottom: 1px #bfbfbf solid;
}

.hr-2-bottom {
    border-bottom: 2px #333 solid;
}

.hr-3-bottom {
    border-bottom: 3px #333 solid;
}

.hr-6-bottom {
    border-bottom: 6px #333 solid;
}

.hr-9-bottom {
    border-bottom: 9px #333 solid;
}

.hr-12-bottom {
    border-bottom: 12px #333 solid;
}

.hr-top {
    border-top: 1px #bfbfbf solid;
}

.hr-white {
    border-bottom: 3px solid #fff;
}

.hr-black {
    border-bottom: 3px solid #000;
}

.hr-era {
    border-bottom: 3px solid #00fa9a;
}

/* 31 - short rules
--------------------------------------------- */

.hr_short {
    border-bottom: 3px solid #02b875;
    width: 5rem;
}

.hr-white_short {
    border-bottom: 3px solid #fff;
    width: 5rem;
}

.hr-black_short {
    border-bottom: 3px solid #000;
    width: 5rem;
}

.hr_short_center {
    border-bottom: 3px solid rgba(2, 184, 117, 1);
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    width: 80px;
}

/* 40 - pre-footer & post-footer
--------------------------------------------- */

.prefooter i {
    vertical-align: .10rem;
}

.footer i {
    vertical-align: .10rem;
}

.postfooter i {
    vertical-align: .10rem;
}

.prefooter {
    font-family: 'Libre Franklin', sans-serif;
    color: rgba(255, 255, 255, .80);
    background-image: url(/img/home/1800x1200-danijel-durkovic-1376631-unsplash-darker.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 60%;
}

.prefooter h4 {
    font-weight: 400 !important;
    padding-bottom: .1rem;
    margin-bottom: .15rem;
}

.postfooter h4 {
    color: rgba(255, 255, 255, .80) !important;
    font-family: 'Libre Franklin', sans-serif;
    font-weight: 400 !important;
}

/* 41 - Google Search
--------------------------------------------- */

.gsc-control-cse {
    background-color: #262626 !important;
    border: 0px #262626 !important;
    padding: 0px !important;
}

.gsc-input-box {
    border-radius: 6px !important;
}

.gsc-search-button-v2 {
    padding: 11px 27px !important;
    border-radius: 6px !important;
}

/* 42 - footer
--------------------------------------------- */

.footer {
    font-family: 'Libre Franklin', sans-serif;
    color: rgba(255, 255, 255, .65);
    background-image: url(img/bkgds-footer-tint.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-attachment: scroll;
    padding-bottom: 6rem !important;
}

.footer h5 {
    font-family: 'Libre Franklin', sans-serif;
    font-size: .85rem;
    font-weight: 700;
    line-height: 1.5;
    color: rgba(255, 255, 255, 1);
    margin-top: 1rem;
    margin-bottom: .5rem;
}

.footer p {
    font-family: 'Libre Franklin', sans-serif;
    font-size: .85rem;
    line-height: 1.5;
    margin-bottom: 1rem;
}

.footer ul.jf_row li {
    font-family: 'Libre Franklin', sans-serif;
    display: inline;
    line-height: 1.5;
}

/* 43 - masthead
--------------------------------------------- */

@font-face {
    font-family: "JustSubways";
    src: url("https://erausa.org/css/fonts/just-subways-03-svg.ttf") format("truetype");
    font-style: normal;
    font-weight: 400;
    text-rendering: optimizeLegibility;
}

.logofont {
    font-family: JustSubways;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-variant: normal;
    line-height: .875;
    font-style: normal;
    font-weight: 400;
    text-rendering: optimizeLegibility;
}

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

.navbar-title {
    font-family: 'Libre Franklin', sans-serif !important;
    padding-left: 0.35rem;
    vertical-align: 2px;
    color: #fff;
}

.navbar-title:hover {
    color: #00fa9a;
}


@media (max-width: 575px) {
    .navbar-title {
        visibility: hidden;
        display: none;
    }
}

/* 44 - navlinks
--------------------------------------------- */

.nav-link {
    font-family: 'Libre Franklin', sans-serif;
    padding-top: .3rem;
    padding-bottom: .3rem;
    padding-left: 0 !important;
}

/* 45 - scroll margins
--------------------------------------------- */

#one,
#two,
#three,
#four,
#five,
#six,
#seven,
#eight,
#nine,
#ten,
#eleven,
#twelve,
#thirteen,
#fourteen,
#fifteen,
#sixteen,
#seventeen,
#eighteen,
#nineteen,
#twenty {
    scroll-margin-top: 5rem;
    scroll-behavior: smooth;
}

/* 50 - supplemental spacing
--------------------------------------------- */

@media (max-width: 575px) {
    .container-bleed {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        margin-right: 0;
        margin-left: 0;
    }
}

.mt-55 {
    margin-top: 5.5rem !important;
}

.mt-6 {
    margin-top: 6.0rem !important;
}

.mt-65 {
    margin-top: 6.5rem !important;
}

.mt-7 {
    margin-top: 7.0rem !important;
}

.mb-6 {
    margin-bottom: 6.0rem;
}

.mb-8 {
    margin-bottom: 8.0rem;
}

/* 51 - topnav
--------------------------------------------- */

#topnav {
    position: relative;
    top: 85px;
    margin-bottom: 7rem;
    border-top: 2px solid #02b875;
    text-align: center;
}


#topnav .nav-link {
    font-family: 'Libre Franklin', sans-serif;
    font-size: .80rem;
    line-height: 2.3;
    margin-top: -15px;
    padding-left: 5px !important;
    padding-right: 5px !important;
    padding-top: 0;
    padding-bottom: 0;
    text-decoration: none;
}

@media (max-width: 1200px) {
    #topnav {
        margin-bottom: 1rem;
        border-top: hidden;
        visibility: hidden;
        display: none;
    }
}

#topnav .dropdown-item {
    font-family: 'Libre Franklin', sans-serif;
    font-size: 1rem;
    line-height: 1.5;
}

#topnav .nav-link {
    font-family: 'Libre Franklin', sans-serif;
    font-size: .80rem;
    line-height: 2.3;
    margin-top: -15px;
    padding-left: 5px !important;
    padding-right: 5px !important;
    padding-top: 0;
    padding-bottom: 0;
    text-decoration: none;
}

/* fad fa-circle (duotone) */
#topnav .theme-station {
    --fa-primary-color: #fff;
    --fa-secondary-color: #02b875;
    --fa-secondary-opacity: 1.0;
}

#topnav a:hover .theme-station {
    --fa-primary-color: #02b875;
    --fa-secondary-color: #02b875;
    --fa-secondary-opacity: 1.0;
}

}

#topnav a:active .theme-station {
    --fa-primary-color: #02b875;
    --fa-secondary-color: #02b875;
    --fa-secondary-opacity: 1.0;
}

}

#topnav .nav-item a:visited .theme-station {
    --fa-primary-color: #fff;
    --fa-secondary-color: #02b875;
    --fa-secondary-opacity: 1.0;
}

/* 
52 - misc typography
--------------------------------------------- */

/* change case */
.uc {
    text-transform: uppercase;
}

.lc {
    text-transform: lowercase;
}

.wc {
    text-transform: capitalize;
}

/* letter-spacing (1 px = 0.06 rem) */
.ls-050 {
    letter-spacing: .5pt;
}

/* text transforms */
.linethru {
    text-decoration: line-through;
}

.underline {
    text-decoration: underline;
}

/* display */
/* span classes */
.dateline {
    font-size: .85rem;
}

.hotblock {
    font-size: 1.0rem;
}

.redhot {
    font-size: .75rem;
}

/* misc font sizes */
.embed body {
    font-size: .95rem;
}

.trigger:before {
    font-size: .75rem;
}

/* just headlights sizes */
.hdl-275x {
    font-size: 2.75rem;
}

/* subway icon sizes */
.fa-120x {
    font-size: 1.20rem !important;
}


: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-sharp-thin: normal 100 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: .1em
}

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

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

.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: .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 {
    -webkit-transform-origin: center center;
    transform-origin: center center
}

.fa-layers-text {
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transform-origin: center center;
    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);
    -webkit-transform: scale(var(--fa-counter-scale, .25));
    transform: scale(var(--fa-counter-scale, .25));
    -webkit-transform-origin: top right;
    transform-origin: top right
}

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

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

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

.fa-layers-top-left {
    left: var(--fa-left, 0);
    right: auto;
    top: var(--fa-top, 0);
    -webkit-transform: scale(var(--fa-layers-scale, .25));
    transform: scale(var(--fa-layers-scale, .25));
    -webkit-transform-origin: top left;
    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: .625em;
    line-height: .1em;
    vertical-align: .225em
}

.fa-xs {
    font-size: .75em;
    line-height: .0833333337em;
    vertical-align: .125em
}

.fa-sm {
    font-size: .875em;
    line-height: .0714285718em;
    vertical-align: .0535714295em
}

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

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

.fa-2xl {
    font-size: 2em;
    line-height: .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 {
    -webkit-animation-name: fa-beat;
    animation-name: fa-beat;
    -webkit-animation-delay: var(--fa-animation-delay, 0s);
    animation-delay: var(--fa-animation-delay, 0s);
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);
    animation-timing-function: var(--fa-animation-timing, ease-in-out)
}

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

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

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

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

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

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

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

.fa-pulse,
.fa-spin-pulse {
    -webkit-animation-name: fa-spin;
    animation-name: fa-spin;
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, steps(8));
    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 {
        -webkit-animation-delay: -1ms;
        animation-delay: -1ms;
        -webkit-animation-duration: 1ms;
        animation-duration: 1ms;
        -webkit-animation-iteration-count: 1;
        animation-iteration-count: 1;
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
        -webkit-transition-duration: 0s;
        transition-duration: 0s
    }
}

@-webkit-keyframes fa-beat {

    0%,
    90% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    45% {
        -webkit-transform: scale(var(--fa-beat-scale, 1.25));
        transform: scale(var(--fa-beat-scale, 1.25))
    }
}

@keyframes fa-beat {

    0%,
    90% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    45% {
        -webkit-transform: scale(var(--fa-beat-scale, 1.25));
        transform: scale(var(--fa-beat-scale, 1.25))
    }
}

@-webkit-keyframes fa-bounce {
    0% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }

    10% {
        -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0);
        transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0)
    }

    30% {
        -webkit-transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em));
        transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))
    }

    50% {
        -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0);
        transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0)
    }

    57% {
        -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -.125em));
        transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -.125em))
    }

    64% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }

    100% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }
}

@keyframes fa-bounce {
    0% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }

    10% {
        -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0);
        transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0)
    }

    30% {
        -webkit-transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em));
        transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))
    }

    50% {
        -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0);
        transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0)
    }

    57% {
        -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -.125em));
        transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -.125em))
    }

    64% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }

    100% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }
}

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

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

@-webkit-keyframes fa-beat-fade {

    0%,
    100% {
        opacity: var(--fa-beat-fade-opacity, .4);
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));
        transform: scale(var(--fa-beat-fade-scale, 1.125))
    }
}

@keyframes fa-beat-fade {

    0%,
    100% {
        opacity: var(--fa-beat-fade-opacity, .4);
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));
        transform: scale(var(--fa-beat-fade-scale, 1.125))
    }
}

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

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

@-webkit-keyframes fa-shake {
    0% {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg)
    }

    4% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }

    24%,
    8% {
        -webkit-transform: rotate(-18deg);
        transform: rotate(-18deg)
    }

    12%,
    28% {
        -webkit-transform: rotate(18deg);
        transform: rotate(18deg)
    }

    16% {
        -webkit-transform: rotate(-22deg);
        transform: rotate(-22deg)
    }

    20% {
        -webkit-transform: rotate(22deg);
        transform: rotate(22deg)
    }

    32% {
        -webkit-transform: rotate(-12deg);
        transform: rotate(-12deg)
    }

    36% {
        -webkit-transform: rotate(12deg);
        transform: rotate(12deg)
    }

    100%,
    40% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes fa-shake {
    0% {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg)
    }

    4% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }

    24%,
    8% {
        -webkit-transform: rotate(-18deg);
        transform: rotate(-18deg)
    }

    12%,
    28% {
        -webkit-transform: rotate(18deg);
        transform: rotate(18deg)
    }

    16% {
        -webkit-transform: rotate(-22deg);
        transform: rotate(-22deg)
    }

    20% {
        -webkit-transform: rotate(22deg);
        transform: rotate(22deg)
    }

    32% {
        -webkit-transform: rotate(-12deg);
        transform: rotate(-12deg)
    }

    36% {
        -webkit-transform: rotate(12deg);
        transform: rotate(12deg)
    }

    100%,
    40% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@-webkit-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

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

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

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

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

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

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

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

.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,
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0
}

.fa-sr-only-focusable:not(:focus),
.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);
    opacity: var(--fa-secondary-opacity, .4)
}

.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)
}
