.fa-svg {
    height: 1em;
    width: auto;
    display: inline-block;
    vertical-align: -0.125em;
}
.fa-svg.fa-spin {
    animation: fa-spin 1s infinite linear;
}
@keyframes fa-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* White icons inside dark-background buttons */
.btn .fa-svg,
.btn-submit .fa-svg,
.btn-send .fa-svg,
.btn-confirm .fa-svg,
.btn-register .fa-svg,
.btn-apply .fa-svg,
.btn-back .fa-svg,
.btn-register-course .fa-svg,
.btn-primary .fa-svg,
.btn-success .fa-svg,
.btn-danger .fa-svg,
.btn-info .fa-svg,
.btn-secondary .fa-svg {
    filter: brightness(0) invert(1);
}

/* Exception: outline/light/warning buttons keep default icon color */
.btn-outline .fa-svg,
.btn-outline-info .fa-svg,
.btn-warning .fa-svg,
.btn-login .fa-svg,
.btn-outline-lang .fa-svg {
    filter: none;
}

/* White icons on dark page headers */
.page-header .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons in dark custom-solution CTA sections */
.custom-solution .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons on dark card-top areas */
.card-top .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons in dark sidebar/brand-column */
.brand-column .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons in dark navbar */
.navbar-dark .nav-link .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons in dark section-number badges */
.section-number .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons on amber maintenance icon circle */
.maintenance-icon .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons on dark outline-icon circles */
.outline-icon .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons on dark price duration tags */
.duration-tag .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons on inactive badges */
.inactive-badge .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons in sidebar active/hover icon circles */
.sidebar-link.active .link-icon .fa-svg,
.sidebar-link:hover .link-icon .fa-svg {
    filter: brightness(0) invert(1);
}

/* White icons in sidebar CTA buttons */
.sidebar-cta .btn-sidebar .fa-svg {
    filter: brightness(0) invert(1);
}
