* {
    box-sizing: border-box;
}

@keyframes spin-slow {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@keyframes float {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

@keyframes wiggle {
    0%, 100% {
        transform: rotate(6deg);
    }
    50% {
        transform: rotate(9deg);
    }
}

.animate-spin-slow {
    animation: spin-slow 20s linear infinite;
}

.animate-float {
    animation: float 4s ease-in-out infinite;
}

.animate-float-delayed {
    animation: float 5s ease-in-out infinite 1s;
}

.animate-bounce-slow {
    animation: float 6s ease-in-out infinite;
}
/* ================= CONTACT PAGE ================= */

.contact-info-card {
    min-height: 0;
}

.contact-info-pill {
    margin: 0 auto;
}

.contact-touch-section .contact-info-icon {
    max-width: 100%;
    max-height: 100%;
}

@media (max-width: 1279px) {
    .contact-touch-section {
        padding-bottom: 150px;
    }
}

@media (max-width: 1024px) {
    .contact-hero .faq-content p,
    .contact-common-faq .faq-content p {
        line-height: 1.5;
    }

    .contact-touch-section .contact-info-pill span {
        font-size: 18px;
    }
}

@media (max-width: 768px) {
    .contact-touch-section {
        padding-top: 70px;
        padding-bottom: 130px;
    }

    .contact-touch-section .contact-info-card {
        border-radius: 24px;
    }

    .contact-touch-section .contact-info-icon-shell {
        margin-bottom: -50px;
    }
}

@media (max-width: 640px) {
    .contact-common-faq .faq-item {
        border-radius: 14px;
    }

    .contact-touch-section .contact-info-pill span {
        font-size: 16px;
    }
}


