/* Fade-up animation */
.fade-up {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .5s ease, transform .5s ease;
}

.fade-up.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Font Awesome Spin Fallback & SVG Utilities */
@keyframes fa-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.fa-spin {
    animation: fa-spin 1.5s linear infinite;
    display: inline-block;
}

.svg-inline--fa {
    display: inline-block;
    height: 1em;
    overflow: visible;
    vertical-align: -0.125em;
    fill: currentColor;
}