/* Navigation dropdown icons */
.dropdown-icon {
    display: inline-block;
    color: #df5239;
    vertical-align: -1px;
    width: 20px;
    height: 20px;
}

/* Top-bar social header icons */
.main-header-icon {
    width: 22px;
    height: 18px;
    color: #000;
    display: inline-block;
    vertical-align: -2px;
}

/* Contact list icons */
.icon-contact {
    width: 18px;
    height: 18px;
    display: inline-block;
    color: #df5239;
    flex-shrink: 0;
    margin-right: 16px;
}
.icon-contact:has(use[href="#telegram"]) {
    fill: currentColor;
}

/* has-icon list item */
.has-icon {
    display: flex !important;
    align-items: center !important;
}
.has-icon:has(use[href="#location"]) {
    align-items: flex-start !important;
}
.has-icon, .has-icon a, .has-icon span {
    color: #333 !important;
}

/* Footer round icons */
.icon-footer-round {
    width: 20px;
    height: 20px;
    display: inline-block;
    position: relative;
}

/* Footer social icon alignment */
.logos-list li a {
    display: flex;
    align-items: center;
}

a:hover .icon-footer-round:has(use[href="#facebook-round"])::before,
a:hover .icon-footer-round:has(use[href="#linkedin-round"])::before,
a:hover .icon-footer-round:has(use[href="#telegram-round"])::before { opacity: 0; }

.icon-footer-round:has(use[href="#facebook-round"])::after,
.icon-footer-round:has(use[href="#linkedin-round"])::after,
.icon-footer-round:has(use[href="#telegram-round"])::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #df5239;
    opacity: 0;
    transition: opacity 0.3s ease;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

/* Page header large icons */
.page-header-icon {
    color: #fff;
    width: 120px !important;
    height: 120px !important;
    display: block;
}

@media (max-width: 767px) {
    .page-header {
        position: relative;
    }

    .page-header .col-auto {
        position: absolute;
        top: 0;
        right: 0;
    }

    .page-header-icon {
        max-height: 40px;
        max-width: 40px;
    }
}