body {
    font-family: 'Roboto', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #fff;
    color: #333;
}
a {
    text-decoration: none;
    color: #000;
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.nounderline:hover h3{
    text-decoration: underline !important;
    color:black;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}
header {
    background-color: #fff;
    padding: 10px 20px !important;
    border-bottom: 1px solid #ddd; /* Fine grey line */
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.logo img {
    max-height: 40px;
}
.logo{
    display: flex;
    align-items: center;
    flex: 0 0 30%;
}
nav {
    flex: 1;
    display: flex;
    justify-content: left;
}
header nav{
    flex: 1 1 40% !important;
    justify-content: flex-start !important;
}
.nav-links {
    list-style: none;
    padding: 0;
    display: flex;
    margin: 0;
}
.nav-links li {
    margin: 0 15px;
}
.nav-links a {
    text-decoration: none;
    color: #000;
    font-weight: normal;
    font-size: 1em;
    position: relative;
}
.nav-links a::after, a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    display: block;
    margin-top: 5px;
    left: 0;
    background: #000;
    transition: width 0.3s ease, left 0.3s ease;
}
.nav-links a:hover::after, a:hover::after {
    width: 100%;
    left: 0;
}
.burger-menu {
    display: none;
    flex-direction: column;
    cursor: pointer;
}
.burger-menu div {
    width: 25px;
    height: 3px;
    background-color: #333;
    margin: 4px 0;
}
.language-selector {
    position: relative;
    display: inline-block;
}
.language-selector button {
    background: none;
    border: none;
    cursor: pointer;
    font-weight: normal;
    font-size: 1em;
    color: #333;
    display: flex;
    align-items: center;
}
.language-selector button:hover {
    color: #007bff;
}
.language-selector button::after {
    content: '❮';
    transform: rotate(270deg); /* Rotate to look like a V */
    margin-left: 5px;
    font-size: 0.8em;
}
.language-selector-content {
    display: none;
    position: absolute;
    right: 0;
    background-color: #fff;
    padding: 10px;
    text-align: right;
    box-shadow: 0 8px 16px rgba(0,0,0,0.2);
    z-index: 1;
}
.language-selector-content span {
    color: #333;
    padding: 8px 16px;
    text-decoration: none;
    display: block;
    cursor: pointer;
}
.language-selector-content span:hover {
    background-color: #ddd;
}
.language-selector:hover .language-selector-content {
    display: block;
}
#hero {
    padding: 50px 0;
    background-color: #fff;
    margin-bottom:0 !important;
}
#hero h2 {
    font-family: 'Merriweather', serif;
    font-size: 2.5em;
    color: #000; /* Pure black color for headings */
    margin: 0;
}
#hero p {
    font-size: 1.2em;
    color: #555;
    margin: 10px 0 0 0;
}
.featured {
    padding: 20px 0;
    background-color: #fff;
    border-bottom: 2px solid #646464; /* Thinner and darker grey line */
    margin-bottom: 70px;
}
.featured h2 {
    font-family: 'Merriweather', serif;
    font-size: 2em;
    margin-bottom: 20px;
    text-align: left; /* Align heading to the left */
    color: #000; /* Pure black color for headings */
}

.featured-articles {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top:35px;
    margin-bottom: 30px;
    justify-content: space-between;
}

.thumbnail {
    /*width: 300px; /* Largeur fixe pour les vignettes */
    height: 200px; /* Hauteur fixe pour un ratio 16/9 */
    overflow: hidden; /* Masquer les parties débordantes de l'image */
    position: relative;
    margin-bottom: 25px;
}

.thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Maintenir le ratio et remplir le conteneur */
    object-position: center; /* Centrer l'image dans le conteneur */
}

.featured-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px; /* Ajoute de l'espace sous le header */
}

.featured-header h2 {
    margin: 0; /* Assurez-vous qu'il n'y a pas de marge autour du titre */
}

.view-all-link {
    font-size: 1em;
    text-decoration: none;
    color: black; /* Couleur du lien */
}

.view-all-link:hover {
    text-decoration: underline; /* Soulignement au survol */
}

.view-all-link svg{
    vertical-align: middle;
    margin-bottom: 3px;
}

.article {
    width: calc(33.333% - 20px);
    box-shadow: none; /* Removed box-shadow */
    border: none; /* Removed border */
    margin-bottom: 20px;
}

.article .imglink{
    width: 100%;
}

.article img {
    /*width: 100%;
    height: 200px; /* Fixed height for all images */
    object-fit: cover; /* Ensure the image covers the area without distortion */
}

.article p {
    margin-bottom: 16px !important;
}

.article-content {
    padding: 10px;
    padding-left:0 !important;
    padding-right:0 !important;
}

.article h3 {
    font-family: 'Merriweather', serif;
    font-size: 1.5em;
    margin: 0 0 10px;
    color: #000; /* Pure black color for headings */
    margin-top:0;
}
.article-content p, .article-content li{
    font-size: 1em;
    color: #333;
    margin: 0 0 10px;
}
.article-content a {
    color: #007bff;
    text-decoration: none;
    position: relative;
}
.article-content a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    display: block;
    margin-top: 5px;
    left: 0;
    background: #007bff; /* Same color as the text */
    transition: width 0.3s ease, left 0.3s ease;
}
.article-content a:hover::after {
    width: 100%;
    left: 0;
}
main {
    padding: 20px 0;
}

.article-content img {
    margin-left: 0 !important;
    padding-right: 0;
}

.show-cover {
    margin:0;
    margin-bottom:15px;
}

section {
    margin-bottom: 40px; /* Increased margin-bottom for more space */
}
#about {
    margin-top: 40px; /* Increased margin-top for more space before about section */
}
section h2 {
    font-family: 'Merriweather', serif;
    font-size: 2em;
    margin-bottom: 10px;
    color: #000; /* Pure black color for headings */
}
section p, section ul {
    font-size: 1em;
    line-height: 1.6;
}
footer {
    background-color: #0F0F0F;
    color: #fff;
    padding: 40px 20px;
    font-size: 0.9em;
}
footer .footer-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}
footer .footer-logo {
    flex: 1 1 200px;
    color: #fff;
}
footer .footer-logo img {
    filter: brightness(0) invert(1); /* Make logo white */
}
footer .footer-links {
    display: flex;
    justify-content: space-around;
    flex: 2 1 600px;
}
footer .footer-column {
    margin: 0 10px;
}
footer .footer-column h3 {
    font-family: 'Merriweather', serif;
    font-size: 1.2em;
    margin-bottom: 10px;
    color: #fff; /* White color for footer headings */
}
footer .footer-column ul {
    list-style: none;
    padding: 0;
}
footer .footer-column ul li {
    margin-bottom: 10px;
}
footer .footer-column ul li a {
    color: #fff;
    text-decoration: none;
    position: relative;
}
footer .footer-column ul li a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    display: block;
    margin-top: 5px;
    left: 0;
    background: #fff; /* Same color as the text */
    transition: width 0.3s ease, left 0.3s ease;
}
footer .footer-column ul li a:hover::after {
    width: 100%;
    left: 0;
}
footer .footer-copyright {
    flex-basis: 100%;
    text-align: left;
    margin-top: 20px;
    color: #aaa;
    padding-left: 10px;
}
a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    display: block;
    margin-top: 5px;
    left: 0;
    background: #000;
    transition: width 0.3s ease, left 0.3s ease;
}
a:hover::after {
    width: 100%;
    left: 0;
}

.nounderline::after {
    content: none;
}

.nounderline:hover::after {
    content: none;
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: 0.75rem 0;
    margin-bottom: 1rem;
    list-style: none;
    background-color: transparent;
    border-radius: 0;
    font-size: 0.875rem;
    color: #6c757d;
}
.breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    color: #d3d3d3;
    content: "/";
}
.breadcrumb-item a {
    color: #000;
    text-decoration: none;
}
.breadcrumb-item a:hover {
    color: #000;
    text-decoration: underline;
}
.breadcrumb-item.active {
    color: #6c757d;
}
.breadcrumb-container {
    padding: 1rem 0;
    border-bottom: 1px solid #e5e5e5;
    margin-bottom: 1.5rem;
}

/* Responsive Styles */
@media (max-width: 768px) {
    .nav-links {
        display: none;
        flex-direction: column;
        width: 100%;
        background-color: #fff;
        position: absolute;
        top: 60px;
        left: 0;
        box-shadow: 0 8px 16px rgba(0,0,0,0.2);
    }
    .nav-links.active {
        display: flex;
    }
    .burger-menu {
        display: flex;
    }
    .language-selector {
        display: none;
    }
    .featured-articles {
        flex-direction: column;
        gap: 10px;
        justify-content: flex-start;
    }
    .article {
        width: 100%;
    }
    footer .footer-links {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
    }
    footer .footer-column {
        margin: 10px 0;
        width: 100%;
    }
    footer .footer-logo, footer .footer-copyright {
        width: 100%;
        text-align: left;
    }
    header, main, footer {
        padding: 10px;
    }
}