.language-flag-switcher {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999;
}

.language-flag-options {
    display: flex;
    flex-direction: row;
    gap: 8px;
    align-items: center;
}

.language-flag {
    width: 50px;
    height: 35px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 2px solid transparent;
    background: none;
    cursor: pointer;
    overflow: hidden;
    border-radius: 6px;
    text-decoration: none;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.language-flag:hover {
    transform: translateY(-2px);
}

.language-flag.is-active {
    border-color: #f97316;
    box-shadow: 0 8px 18px rgba(249, 115, 22, 0.25);
}

.language-flag-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Medium screens: stack vertically on the right */
@media (max-width: 1400px) {
    .language-flag-options {
        flex-direction: column;
    }
}

/* Small screens: horizontal again, top centre */
@media (max-width: 760px) {
    .language-flag-switcher {
        top: 14px;
        right: auto;
        left: 50%;
        transform: translateX(-50%);
    }

    .language-flag-options {
        flex-direction: row;
    }
}