:root {
    --primary-color: #128282;
    --primary-dark: #0e6b6b;
}

body {
    font-family: 'Inter', sans-serif;
}

.bg-primary {
    background-color: var(--primary-color);
}

.bg-primary-dark {
    background-color: var(--primary-dark);
}

.text-primary {
    color: var(--primary-color);
}

.hover\:text-primary:hover {
    color: var(--primary-color);
}

.hover\:bg-primary-dark:hover {
    background-color: var(--primary-dark);
}

@media (max-width: 767px) {
    #menu {
        display: none;
        flex-direction: column;
        width: 100%;
        position: absolute;
        top: 60px;
        left: 0;
        background-color: white;
        box-shadow: 0 8px 16px rgba(0,0,0,0.2); /* Softer shadow */
        z-index: 40; /* Ensure it's above other content */
        transition: all 0.3s ease-in-out; /* Smooth transition */
        opacity: 0;
        transform: translateY(-10px);
        align-items: center; /* Center items horizontally in flex column */
        justify-content: center; /* Center items vertically if there's extra space */
    }

    #menu.show {
        display: flex;
        opacity: 1;
        transform: translateY(0);
    }

    #menu a, #menu .relative, #menu .language-switcher {
        padding: 1.25rem 1rem; /* Increased padding */
        width: 100%;
        text-align: center;
        border-bottom: 1px solid #f0f0f0;
    }

    #menu .relative .absolute {
        display: none;
        position: static;
        background-color: transparent;
        box-shadow: none;
        width: 100%;
        text-align: center;
    }

    #menu .relative:hover .absolute {
        display: none;
    }

    #menu .relative.open .absolute {
        display: block;
    }
}

    #language-select {
        text-align: center;
        border-bottom: 1px solid #f0f0f0;
        background-repeat: no-repeat;
        background-position: 5px center;
    }

/* Logo Carousel */
.logo-carousel-container {
    overflow: hidden;
    position: relative;
    width: 100%;
}

.logo-carousel {
    display: flex;
    width: calc(200px * 10);
    animation: scroll 40s linear infinite;
}

.logo-carousel img {
    width: 200px;
    height: 60px;
    margin: 0 40px;
    object-fit: contain;
    flex-shrink: 0;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-200px * 5));
    }
}
