    #slider-track {
        transition: transform 0.5s ease-in-out;
        }
    /* ----- Rating Stars ----- */
    .rating-stars {
        direction: rtl;
        unicode-bidi: isolate;
    }
    .rating-stars .star-label {
        color: #e5e7eb;
        transition: color 0.3s ease;
    }
    .rating-stars input:checked~.star-label,
    .rating-stars input:checked+.star-label {
        color: #f59e0b;
    }
    .rating-stars .star-label:hover,
    .rating-stars .star-label:hover~.star-label {
        color: #f59e0b;
    }

    /* ----- Service Icons ----- */
    .service-icon svg path,
    .service-icon svg g {
        stroke: currentColor;
        fill: currentColor;
    }
    .service-icon svg {
        width: 32px;
        height: 32px;
        color: #0ea5e9;
    }

    /* ----- Theme Toggle Animation ----- */
    #theme-toggle-button {
        position: relative;
        width: 2.25rem;
        height: 2.25rem;
        overflow: hidden;
    }
    #theme-toggle-button svg {
        position: absolute;
        width: 1.25rem;
        height: 1.25rem;
        top: 0.5rem;
        left: 0.5rem;
        transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    }
    #theme-icon-sun {
        transform: translateY(0);
    }
    #theme-icon-moon {
        transform: translateY(-200%);
    }
    .dark #theme-icon-sun {
        transform: translateY(200%);
    }
    .dark #theme-icon-moon {
        transform: translateY(0);
    }

    /* ----- Testimonial Track ----- */
    #testimonial-track {
        display: flex;
        width: calc(300px * 14); /* 7 items * 2 clones */
    }
    .testimonial-card {
        width: 300px;
        flex-shrink: 0;
        padding-right: 1.5rem;
    }
    
    /* ----- Partner Countries Track ----- */
    #partner-track {
        display: flex;
        width: calc(160px * 16); /* 8 items * 2 clones = 16. 160px card width */
    }
    .partner-card {
        width: 160px; /* w-40 */
        flex-shrink: 0;
        padding-right: 1rem; /* space-x-4 */
    }

    .group-hover\:pause:hover {
        animation-play-state: paused;
    }
    
    /* ----- FAQ ----- */
    details summary::-webkit-details-marker {
        display: none;
    }
    details summary {
        list-style: none;
    }
    .faq-icon {
        transition: transform 0.3s ease-in-out;
        min-width: 24px;
        min-height: 24px;
    }
    details[open] summary .faq-icon {
        transform: rotate(45deg);
    }
    #faq-container {
        max-width: 900px;
        margin: 0 auto;
    }
    #faq-container details {
        margin-bottom: 1rem;
    }

    /* ----- Language Button ----- */
    .lang-button.active {
        background-color: #f0f9ff;
        color: #0ea5e9;
        border: 1px solid #0ea5e9;
    }
    .dark .lang-button.active {
        background-color: #1f2937;
    }

    /* ----- Responsive Fallbacks ----- */
    @media (max-width: 768px) {
        .lg\:justify-end {
            justify-content: center;
        }
    }
     @keyframes scroll {
        from { transform: translateX(0); }
        to   { transform: translateX(-100%); }
    }
    .animate-scroll {
        animation: scroll 50s linear infinite;
    }
    .group:hover .animate-scroll {
        animation-play-state: paused;
    }