/* Global styles */
html, body {
    width: 100%;
    overflow-x: hidden;
    background: #FFF;
    margin: 0;
    padding: 0;
    font-family: "IBM Plex Sans", serif; /* Police par défaut */
    line-height: 1.6; /* Améliorer la lisibilité */
}

/* Custom Scrollbar */
* {
    scrollbar-width: thin;
    scrollbar-color: #1F8FD6 transparent;
}

*::-webkit-scrollbar {
    width: 7px;
}

*::-webkit-scrollbar-track {
    background: transparent;
}

*::-webkit-scrollbar-thumb {
    background-color: #1F8FD6;
    border-radius: 7px;
    border: none;
}

/* Headings */
h1, h2, h3, h4, h5 {
    padding: 0;
    margin: 0;
    font-family: "IBM Plex Sans", serif; /* Police cohérente pour les titres */
    font-weight: 600; /* Titres en gras pour une meilleure hiérarchie */
    line-height: 1.2; /* Interligne plus serré pour les titres */
}

/* Links */
a {
    text-decoration: none;
    color: inherit; /* Hériter de la couleur pour la cohérence */
    transition: text-decoration 0.3s ease, color 0.3s ease; /* Transitions fluides */
}

a:hover {
    text-decoration: underline;
    color: #1F8FD6; /* Couleur au survol pour une meilleure interaction */
}

/* Inputs, Textarea, Buttons */
input, textarea, button {
    outline: none;
    font-family: "IBM Plex Sans", serif; /* Police cohérente pour les éléments de formulaire */
    border: 1px solid #ccc; /* Bordure par défaut pour une meilleure visibilité */
    padding: 8px;
    border-radius: 4px;
    transition: outline 0.3s ease, border-color 0.3s ease; /* Transitions fluides */
}

input:focus, textarea:focus, button:focus {
    outline: 2px solid #1F8FD6;
    border-color: #1F8FD6;
}

/* Hidden utility class */
.hidden {
    display: none !important;
}

/* Generic paragraph reset */
p {
    margin: 0;
    padding: 0;
    line-height: 1.6; /* Améliorer la lisibilité */
}

/* Responsive images */
img {
    max-width: 100%;
    height: auto;
    display: block; /* Éviter les problèmes d'espacement en ligne */
}

/* Container for centering content */
.site_page {
    display: flex;
    width: 100%;
    justify-content: center;
}

.site_page_sz {
    display: flex;
    width: 100%;
    flex-direction: column;
    overflow-x: hidden;
}

.single_programme_video_container {
    display: flex;
    width: 100%;
    justify-content: center;
    background: #f0f0f0;
    padding: 40px 0;
}

.single_programme_video_container iframe {
    width: calc(100% - 20px);
    max-width: 1280px;
    aspect-ratio: 16/9;
    margin: 40px 0;
}

.single_programme_title {
    display: flex;
    width: 100%;
    justify-content: center;
    background: #DEE3E666;
}

.single_programme_title h1 {
    display: block;
    width: calc(100% - 20px);
    max-width: 1280px;
    color: #000000;
    line-height: 1.375;
    font-family: "Source Serif 4", serif;
    font-weight: 700;
    font-size: 32px;
    margin: 0;
}

/* Media Queries */
@media (max-width: 1024px) {
    .single_programme_title h1 {
        font-size: 22px;
    }

    .single_programme_video_container {
        padding: 0;
    }
}

/* Specific Page Styles */
body.single-3abb59370242fc9886ad .page_top_02_sz {
    max-width: 1280px;
    margin: unset;
    padding: unset;
}

.is-ajax-search-result {
    z-index: var(--z-index-max) !important;
}