body {
    font-family: 'Inter', sans-serif;
}

:root {
    --wenzel-blue: #007bff;
    --wenzel-blue-hover: #0056b3;
    --wenzel-light-blue: #f0f7ff;
}

.bg-wenzel-blue {
    background-color: var(--wenzel-blue);
}

.text-wenzel-blue {
    color: var(--wenzel-blue);
}

.border-wenzel-blue {
    border-color: var(--wenzel-blue);
}

.hover-bg-wenzel-blue:hover {
    background-color: var(--wenzel-blue-hover);
}

.card-shadow {
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

.hero-clip {
    clip-path: polygon(0 0, 100% 0, 100% 90%, 0 100%);
}

@keyframes whatsapp-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
    }

    70% {
        box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
    }
}

.whatsapp-pulse {
    animation: whatsapp-pulse 2s infinite;
}

/* Mobile Menu */
#mobile-menu {
    transition: all 0.3s ease-in-out;
}

#mobile-menu.menu-active {
    display: block !important;
    transform: scaleY(1);
    opacity: 1;
}

/* Infinite Carousel (Marquee) */
@keyframes marquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(calc(-50% - 2rem));
    }

    /* Adjust based on gap */
}

.marquee-content {
    animation: marquee 40s linear infinite;
    display: flex;
    align-items: center;
    gap: 4rem;
}

.marquee-content:hover {
    animation-play-state: paused;
}

@media (max-width: 1024px) {
    .marquee-content {
        gap: 3rem;
        animation-duration: 30s;
    }
}

@media (max-width: 640px) {
    .marquee-content {
        gap: 2rem;
        animation-duration: 25s;
    }
}

/* Custom Scrollbar Hide */
.scrollbar-hide::-webkit-scrollbar {
    display: none;
}

.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Premium Services Tab Styles */
.service-tab-btn {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-tab-btn span {
    white-space: nowrap;
}

@media (max-width: 1024px) {
    .service-tab-btn {
        min-width: 100px;
        flex: 1;
    }
}

/* Detail Card Adjustments */
@media (max-width: 768px) {
    .bg-gray-50.rounded-\[2rem\] {
        border-radius: 1.5rem;
        padding: 1.5rem;
    }
}