/* Font-independent fallbacks for the small interface icons. */
.icofont-envelope::before,
.icofont-wall-clock::before,
.icofont-location-pin::before,
.icofont-phone::before,
.fa-facebook::before,
.fa-facebook-f::before,
.fa-brands.fa-facebook::before,
.fa-brands.fa-facebook-f::before,
#menu-btn::before {
    display: inline-block;
    width: 1.25em;
    font-family: Arial, Helvetica, sans-serif !important;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}

.icofont-envelope::before { content: "@" !important; }
.icofont-wall-clock::before { content: "◷" !important; }
.icofont-location-pin::before { content: "●" !important; }
.icofont-phone::before { content: "☎" !important; }
.fa-facebook::before,
.fa-facebook-f::before,
.fa-brands.fa-facebook::before,
.fa-brands.fa-facebook-f::before { content: "f" !important; }
#menu-btn::before { content: "☰" !important; }

/* Dropdown indicator without the theme's icon font. */
#mainmenu > li.has-child::after,
#mainmenu > li.menu-item-has-children::after {
    content: none !important;
    display: none !important;
}

/* The theme injects an empty span after links with a submenu. */
#mainmenu > li > span {
    background: none !important;
    background-image: none !important;
    border: 0 !important;
    color: transparent !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 0 !important;
    font-style: normal !important;
    text-align: center !important;
}

#mainmenu > li > span::before {
    content: none !important;
    display: none !important;
}

#mainmenu > li > span.active::before {
    content: none !important;
    display: none !important;
}

#mainmenu > li:has(> ul) > a::after,
#mainmenu > li.menu-item-has-children > a::after,
#mainmenu > li.has-child > a::after {
    content: "▾" !important;
    display: inline-block !important;
    width: auto !important;
    margin-left: .45em !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: .75em !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    vertical-align: .12em !important;
}

/* The theme adds icon-font glyphs to these controls. */
.swiper-button-prev::after { content: "‹" !important; font-family: Arial, Helvetica, sans-serif !important; }
.swiper-button-next::after { content: "›" !important; font-family: Arial, Helvetica, sans-serif !important; }

/* Hide empty icon-font elements instead of showing missing-glyph squares. */
i[class^="icofont-"]:empty:not(.icofont-envelope):not(.icofont-wall-clock):not(.icofont-location-pin):not(.icofont-phone),
i[class*=" icofont-"]:empty:not(.icofont-envelope):not(.icofont-wall-clock):not(.icofont-location-pin):not(.icofont-phone) {
    font-size: 0;
}
