#preloader {
    transition: opacity 0.5s ease-out, visibility 0.5s ease-out;
}

#preloader.fade-out {
    opacity: 0;
    visibility: hidden;
}

.delay-100 {
    animation-delay: 0.1s;
}

.delay-200 {
    animation-delay: 0.2s;
}

.delay-300 {
    animation-delay: 0.3s;
}

body.preloader-active {
    overflow: hidden;
}

.pb-safe {
    padding-bottom: env(safe-area-inset-bottom);
}

.site-nav-item .site-nav-dropdown {
    opacity: 0;
    visibility: hidden;
    transform: translateY(0.5rem);
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
}

.site-nav-item:hover .site-nav-dropdown,
.site-nav-item:focus-within .site-nav-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.site-nav-caret {
    transition: transform 0.2s ease;
}

.site-nav-item:hover .site-nav-caret,
.site-nav-item:focus-within .site-nav-caret {
    transform: rotate(180deg);
}

.site-social-facebook {
    background-color: #1877f2;
}

.site-social-twitter {
    background-color: #1da1f2;
}

.site-social-instagram {
    background: linear-gradient(135deg, #833ab4 0%, #fd1d1d 50%, #f77737 100%);
}

.site-social-linkedin {
    background-color: #0a66c2;
}

.site-social-whatsapp {
    background-color: #25d366;
}

.site-footer {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
}

.site-footer-pattern {
    opacity: 0.12;
}

.site-footer-copy {
    color: #9ca3af;
}

.site-footer-divider {
    border-top: 1px solid rgba(148, 163, 184, 0.18);
}

.site-footer-social {
    background-color: rgba(255, 255, 255, 0.08);
}

.site-footer-social:hover,
.site-footer-social:focus {
    background-color: #2563eb;
}
