/* Variables */
:root {
    --primary-blue: #2B328C;
    --text-dark: #333;
    --red-accent: #EF3742;
}

/* Logo */
.logo {
    max-height: 130px;
    width: auto;
}

/* Hero image */
.hero-image img {
    height: 400px;
    object-fit: cover;
}

/* Titre principal */
.main-title {
    font-size: 2.2rem;
    font-weight: bold;
    color: var(--text-dark);
    letter-spacing: 1px;
    margin-bottom: 2rem;
}

/* Texte de contenu */
.content-text {
    font-size: 0.9rem;
    line-height: 1.6;
    text-align: justify;
    color: var(--text-dark);
}

.gallery-80 { flex: 0 0 80% !important; }
.gallery-70 { flex: 0 0 70% !important; }
.gallery-60 { flex: 0 0 60% !important; }
.gallery-50 { flex: 0 0 50% !important; }
.gallery-40 { flex: 0 0 40% !important; }
.gallery-30 { flex: 0 0 30% !important; }
.gallery-20 { flex: 0 0 20% !important; }

.gallery-img-fill {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.gallery-section .d-flex.flex-column > div {
    overflow: hidden !important;
}

/* Section galerie */
.gallery-section {
    /*background-color: #f8f9fa;*/
}

.gallery-img {
    height: 200px;
    object-fit: cover;
    width: 100%;
    transition: transform 0.3s ease;
}

.gallery-img:hover {
    transform: scale(1.05);
}

/* Section pays avec fond bleu */
.countries-section {
    /*background-color: var(--primary-blue) !important;*/
    margin-top: 30px;
    background:linear-gradient(to bottom, var(--primary-blue) 0%, var(--primary-blue) 20%, white 20%, white 100%);
}

.countries-title {
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 1px;
}

/* Items pays */
.country-item {
    transition: transform 0.3s ease;
}

.country-item:hover {
    transform: translateY(-5px);
}

.flag-container {
    margin-bottom: 15px;
}

.flag-img {
    width: 100%;
    max-width: 305px;
    height: 180px;
    object-fit: cover;
    border-radius: 3px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}

.country-name {
    font-size: 1.1rem;
    font-weight: bold;
    margin-bottom: 0;
    color: var(--text-dark);
}

.see-more-link {
    color: var(--red-accent);
    text-decoration: underline;
    font-weight: bold;
    font-size: 1rem;
}

.see-more-link:hover {
    color: black;
    text-decoration: underline;
}

/* Footer */
footer {
    background-color: #222 !important;
}

.footer-contact {
    font-size: 1rem;
}

.footer-legal {
    font-size: 0.8rem;
}

.footer-legal a {
    text-decoration: none;
}

.footer-legal a:hover {
    text-decoration: underline;
}

/* Responsive */
@media (max-width: 768px) {
    .main-title {
        font-size: 1.8rem;
    }

    .content-text {
        font-size: 0.85rem;
    }

    .countries-title {
        font-size: 1.5rem;
    }

    .flag-img {
        max-width: 100px;
        height: 70px;
    }

    .hero-image img {
        height: 250px;
    }

    .gallery-img {
        height: 150px;
    }
}

@media (max-width: 576px) {
    .main-title {
        font-size: 1.5rem;
    }

    .logo {
        max-height: 90px;
    }

    .countries-title {
        font-size: 1.3rem;
    }
    .countries-section {
        /*background-color: var(--primary-blue) !important;*/
        background:linear-gradient(to bottom, var(--primary-blue) 0%, var(--primary-blue) 17%, white 17%, white 100%);
    }
    .flag-img {
        max-width: 180px;
        height: 120px;
    }

}
@media (max-width: 767px) {
    .countries-section .row {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .countries-section .col-6 {
        flex: 0 0 calc(50% - 15px);
        margin: 7.5px;
    }

    /* Pour que le dernier élément soit centré s'il est impair */
    .countries-section .col-6:last-child:nth-child(odd) {
        flex: 0 0 calc(50% - 15px);
        margin: 7.5px auto;
    }
}
.sweden-desktop {
    display: block;
}

.sweden-mobile {
    display: none;
}

/* Mobile : inverse la visibilité */
@media (max-width: 767px) {
    .sweden-desktop {
        display: none !important;
    }

    .sweden-mobile {
        display: block !important;
    }

    /* Centre le UK seul sur sa ligne */
    .uk-item {
        margin-left: 25% !important;
        margin-right: 25% !important;
    }
}

