/************/
/* WRAPPERS */
/************/

body.no-scrolltrigger {
    overflow-x: auto;
    overflow-y: hidden;
}

.section-rubriques-content .rubriques-container {
    display: flex;
    height: 100dvh;
    box-sizing: border-box;
    opacity: 0;
}

body.no-scrolltrigger .section-rubriques-content .rubriques-container,
.section-rubriques-content .rubriques-container.ready {
    opacity: 1;
}

/************/
/* SOMMAIRE */
/************/

.parcours-rubriques-liste {
    max-height: 26dvh;
    overflow-y: auto;
    overflow-x: hidden;
    list-style: none;
    padding: 0 20px 0 0;
    /* Pour Firefox */
    scrollbar-width: thin;
    scrollbar-color: white transparent;
}

.parcours-rubriques-liste li {
    margin: 10px 0;
}

/* Pour WebKit */
.parcours-rubriques-liste::-webkit-scrollbar {
    width: 8px;
    /* Largeur de la scrollbar */
}

.parcours-rubriques-liste::-webkit-scrollbar-track {
    background: transparent;
    /* Fond transparent */
    border-radius: 4px;
}

.parcours-rubriques-liste::-webkit-scrollbar-thumb {
    background: white;
    /* Thumb en blanc */
    border-radius: 4px;
}

.parcours-rubriques-liste::-webkit-scrollbar-thumb:hover {
    background: #ccc;
    /* Couleur au survol */
}

.parcours-rubriques-liste a {
    font-family: var(--e-global-typography-d50148d-font-family), Sans-serif;
    font-size: var(--e-global-typography-d50148d-font-size);
    font-weight: var(--e-global-typography-d50148d-font-weight);
    text-transform: var(--e-global-typography-d50148d-text-transform);
    line-height: var(--e-global-typography-d50148d-line-height);
    letter-spacing: var(--e-global-typography-d50148d-letter-spacing);
    color: var(--e-global-color-813f740);
    transition: opacity 300ms ease;
    opacity: 0.7;
}

.parcours-rubriques-liste a:hover {
    opacity: 1;
}

/*********/
/* FRISE */
/*********/

.parcours-frise-container {}

.parcours-frise-points {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
}


.parcours-frise-progress {
    position: absolute;
    height: 1px;
    background: #fff;
    opacity: 1;
}

.frise-point {
    position: relative;
    flex-shrink: 0;
}

.frise-point .point {
    width: 2px;
    height: 10px;
    background: #ffffff;
    position: absolute;
    left: 50%;
    transform: translateX(-50%) translateY(-50%) scale(1);
    opacity: 1;
    transition: height .2s ease;
}

.frise-point.active .point {
    height: 20px;
}

.frise-point .label {
    margin-top: 10px;
    display: block;
    color: #fff;
    opacity: 0.7;
    white-space: nowrap;
    font-family: var(--e-global-typography-74dc42f-font-family), Sans-serif;
    font-size: var(--e-global-typography-74dc42f-font-size);
    font-weight: var(--e-global-typography-74dc42f-font-weight);
    text-transform: var(--e-global-typography-74dc42f-text-transform);
    line-height: var(--e-global-typography-74dc42f-line-height);
    letter-spacing: var(--e-global-typography-74dc42f-letter-spacing);
    color: var(--e-global-color-813f740);
    transition: transform .2s ease, opacity .2s ease;
}

.frise-point.active .label {
    opacity: 1;
    transform: scale(0.8);
    transform-origin: bottom center;
}

/*************/
/* RUBRIQUES */
/*************/

.rubrique {
    display: flex;
    box-sizing: border-box;
    padding: var(--rubrique-padding-top) min(5vw, 100px) var(--rubrique-padding-bottom) min(5vw, 100px);
    flex-direction: column;
    background-color: var(--bgcolor, #000);
    color: var(--txtcolor, #fff);
    width: max-content;
}

/* .rubrique:first-child {
    padding: var(--rubrique-padding-top) min(5vw, 100px) var(--rubrique-padding-bottom) min(10vw, 200px);
} */

.rubrique:last-child {
    padding: var(--rubrique-padding-top) min(10vw, 200px) var(--rubrique-padding-bottom) min(5vw, 100px);
}

/* Header de rubrique */
.rubrique-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 40px;
}

/* Titre de rubrique */
.rubrique-title {
    flex-shrink: 0;
    font-family: var(--e-global-typography-bba0557-font-family), Sans-serif;
    font-size: var(--e-global-typography-bba0557-font-size);
    font-weight: var(--e-global-typography-bba0557-font-weight);
    text-transform: var(--e-global-typography-bba0557-text-transform);
    line-height: var(--e-global-typography-bba0557-line-height);
    letter-spacing: var(--e-global-typography-bba0557-letter-spacing);
    color: var(--txtcolor, #fff);
    margin: 0;
}

/* Selecteur de rubrique */
/* Wrapper du select */
.select-wrapper {
    position: relative;
    display: inline-block;
    max-width: fit-content;
}

/* Selecteur de rubrique */
.select-wrapper select {
    background: transparent;
    border: none;
    padding: 0.3em 1.3em 0.3em 0.3em;
    border-radius: 2px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
    max-width: fit-content;
    font-family: var(--e-global-typography-74dc42f-font-family), Sans-serif;
    font-size: var(--e-global-typography-74dc42f-font-size);
    font-weight: var(--e-global-typography-74dc42f-font-weight);
    text-transform: var(--e-global-typography-74dc42f-text-transform);
    line-height: var(--e-global-typography-74dc42f-line-height);
    letter-spacing: var(--e-global-typography-74dc42f-letter-spacing);
    color: var(--txtcolor, #fff);
    max-width: 120px;
}

.select-wrapper select option {
    background: var(--bgcolor, #000);
    color: var(--txtcolor, #fff);
}

.select-wrapper select:focus {
    outline: none;
}

.select-chevron {
    position: absolute;
    top: 50%;
    right: 0.5em;
    transform: translateY(-50%);
    pointer-events: none;
    width: 0.8em;
    height: 0.8em;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* SVG interne du chevron */
.select-wrapper .select-chevron svg {
    width: 100%;
    height: 100%;
    fill: var(--txtcolor, #fff);
}


/* Colonnes du contenu */
.rubrique-columns {
    column-width: var(--rubrique-column-width);
    column-gap: var(--rubrique-column-gap);
    column-fill: auto;
    overflow-y: auto;
    box-sizing: border-box;
    width: max-content;
}

.rubriques-container.ready .rubrique-columns {
    column-fill: balance;
}

.rubrique-begin-marker,
.rubrique-end-marker {
    width: 0px;
    height: 0px;
    opacity: 0;
    /* width: 2px;
    height: 2px;
    opacity: 1;
    background: #ff0000; */
}

.rubrique-end-begin {
    float: left;
}

.rubrique-end-marker {
    float: right;
}

/* Styles complémentaires en contraste avec txtcolor */
.rubrique-header select,
.rubrique-header {
    border-color: var(--txtcolor, #fff);
}

.rubrique-content {
    display: flex;
    flex-direction: row;
    gap: 5vw;
    height: 100%;
}

.rubrique-columns blockquote,
.rubrique-columns .chapo,
.rubrique-columns .paragraphe,
.rubrique-columns .video,
.rubrique-gallery,
.rubrique-image {
    color: var(--txtcolor, #fff);
}

/************/
/* CONTENUS */
/************/

/* Paragraphe */
.rubrique-columns .paragraphe {
    font-family: var(--e-global-typography-6b69f03-font-family), Sans-serif;
    font-size: var(--e-global-typography-6b69f03-font-size);
    line-height: var(--e-global-typography-6b69f03-line-height);
    color: var(--txtcolor, #fff);
    text-align: justify;
}

/* Citation */
.rubrique-columns blockquote.citation:not(:first-child) {
    margin-top: 20px;
}

.rubrique-columns blockquote.citation {
    font-family: var(--e-global-typography-538d1e4-font-family), Sans-serif;
    font-size: var(--e-global-typography-538d1e4-font-size);
    font-weight: var(--e-global-typography-538d1e4-font-weight);
    line-height: var(--e-global-typography-538d1e4-line-height);
    color: var(--txtcolor, #fff);
    margin: 0 0 20px;
    border-left: solid 1px var(--txtcolor, #fff);
    padding-left: 20px;
}

/* Chapo */
.rubrique-columns .chapo:not(:first-child) {
    margin-top: 20px;
}

.rubrique-columns .chapo {
    font-family: var(--e-global-typography-13bcac8-font-family), Sans-serif;
    font-size: var(--e-global-typography-13bcac8-font-size);
    line-height: var(--e-global-typography-13bcac8-line-height);
    color: var(--txtcolor, #fff);
    margin: 0 0 20px;
    text-align: center;
}

/* Image seule */
.rubrique-image {
    display: flex;
    flex-direction: column;
}

.rubrique-image:not(.no-caption) {
    gap: 10px;
}

.rubrique-image figcaption {
    color: var(--txtcolor, #fff);
    font-size: 14px;
}

.rubrique-image img {
    object-fit: cover;
    height: calc(100% - 35px) !important;
    width: auto;
}

.rubrique-image img.has-border {
    border-left-width: 100px;
    border-left-style: solid;
}

.rubrique-image.no-caption img {
    height: 100% !important;
}



/* Galerie d'images */
.rubrique-galerie {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.rubrique-galerie:not(.no-caption) {
    gap: 10px;
}

.rubrique-galerie-grid {
    display: grid;
    width: 600px;
    gap: 10px;
    height: calc(100% - 35px) !important;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, 1fr);
    max-width: 100%;
}

.rubrique-galerie.no-caption .rubrique-galerie-grid {
    height: 100% !important;
}

.rubrique-galerie-item {
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: block;
}

.rubrique-galerie-item img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    display: block;
    cursor: zoom-in;
}

.rubrique-galerie figcaption {
    height: 25px;
    color: var(--txtcolor, #fff);
    font-size: 14px;
}

/* Galerie 2 images */
.rubrique-galerie-2 .item-1 {
    grid-column: span 4 / span 4;
    grid-row: span 2 / span 2;
}

.rubrique-galerie-2 .item-2 {
    grid-column: span 4 / span 4;
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

/* Galerie 3 images */
.rubrique-galerie-3 .item-1 {
    grid-column: span 4 / span 4;
    grid-row: span 2 / span 2;
}

.rubrique-galerie-3 .item-2 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-3 .item-3 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 3;
}

/* Galerie 4 images */
.rubrique-galerie-4 .item-1 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
}

.rubrique-galerie-4 .item-2 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-column-start: 3;
}

.rubrique-galerie-4 .item-3 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-4 .item-4 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 3;
}

/* Galerie 5 images */
.rubrique-galerie-5 .item-1 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
}

.rubrique-galerie-5 .item-2 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-column-start: 3;
}

.rubrique-galerie-5 .item-3 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-5 .item-4 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-5 .item-5 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

/* Galerie 6 images */
.rubrique-galerie-6 .item-1 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
}

.rubrique-galerie-6 .item-2 {
    grid-row: span 2 / span 2;
    grid-column-start: 3;
}

.rubrique-galerie-6 .item-3 {
    grid-row: span 2 / span 2;
    grid-column-start: 4;
}

.rubrique-galerie-6 .item-4 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-6 .item-5 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-6 .item-6 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

/* Galerie 7 images */
.rubrique-galerie-7 .item-1 {
    grid-column: span 2 / span 2;
}

.rubrique-galerie-7 .item-2 {
    grid-column: span 2 / span 2;
    grid-column-start: 1;
    grid-row-start: 2;
}

.rubrique-galerie-7 .item-3 {
    grid-row: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 1;
}

.rubrique-galerie-7 .item-4 {
    grid-row: span 2 / span 2;
    grid-column-start: 4;
    grid-row-start: 1;
}

.rubrique-galerie-7 .item-5 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-7 .item-6 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-7 .item-7 {
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

/* Galerie 8 images */
.rubrique-galerie-8 .item-1 {
    grid-column: span 2 / span 2;
}

.rubrique-galerie-8 .item-2 {
    grid-column: span 2 / span 2;
    grid-column-start: 1;
    grid-row-start: 2;
}

.rubrique-galerie-8 .item-3 {
    grid-row: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 1;
}

.rubrique-galerie-8 .item-4 {
    grid-row: span 2 / span 2;
    grid-column-start: 4;
    grid-row-start: 1;
}

.rubrique-galerie-8 .item-5 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-8 .item-6 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-8 .item-7 {
    grid-column: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-8 .item-8 {
    grid-column: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 4;
}


/* Galerie 9 images */

.rubrique-galerie-9 .item-1 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-9 .item-2 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-9 .item-3 {
    grid-row: span 2 / span 2;
}

.rubrique-galerie-9 .item-4 {
    grid-row: span 2 / span 2;
}

.rubrique-galerie-9 .item-5 {
    grid-column: span 2 / span 2;
}

.rubrique-galerie-9 .item-6 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-9 .item-7 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-9 .item-8 {
    grid-column: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-9 .item-9 {
    grid-column: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 4;
}

/* Galerie 10 images */

.rubrique-galerie-10 .item-1 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-10 .item-2 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-10 .item-3 {
    grid-column: span 2 / span 2;
    grid-column-start: 1;
    grid-row-start: 2;
}

.rubrique-galerie-10 .item-4 {
    grid-row: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 1;
}

.rubrique-galerie-10 .item-5 {
    grid-row: span 2 / span 2;
    grid-column-start: 4;
    grid-row-start: 1;
}

.rubrique-galerie-10 .item-6 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-10 .item-7 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-10 .item-8 {
    grid-column: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-10 .item-9 {
    grid-column-start: 3;
    grid-row-start: 4;
}

.rubrique-galerie-10 .item-10 {
    grid-column-start: 4;
    grid-row-start: 4;
}

/* Galerie 11 images */

.rubrique-galerie-11 .item-1 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-11 .item-2 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-11 .item-3 {
    grid-column: span 2 / span 2;
    grid-column-start: 1;
    grid-row-start: 2;
}

.rubrique-galerie-11 .item-4 {
    grid-column-start: 3;
    grid-row-start: 1;
}

.rubrique-galerie-11 .item-5 {
    grid-column-start: 3;
    grid-row-start: 2;
}

.rubrique-galerie-11 .item-6 {
    grid-row: span 2 / span 2;
    grid-column-start: 4;
    grid-row-start: 1;
}

.rubrique-galerie-11 .item-7 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-11 .item-8 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-11 .item-9 {
    grid-column: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-11 .item-10 {
    grid-column-start: 3;
    grid-row-start: 4;
}

.rubrique-galerie-11 .item-11 {
    grid-column-start: 4;
    grid-row-start: 4;
}

/* Galerie 12 images */

.rubrique-galerie-12 .item-1 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-12 .item-2 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-12 .item-3 {
    grid-column: span 2 / span 2;
    grid-column-start: 1;
    grid-row-start: 2;
}

.rubrique-galerie-12 .item-4 {
    grid-column-start: 3;
    grid-row-start: 1;
}

.rubrique-galerie-12 .item-5 {
    grid-column-start: 3;
    grid-row-start: 2;
}

.rubrique-galerie-12 .item-6 {
    grid-row: span 2 / span 2;
    grid-column-start: 4;
    grid-row-start: 1;
}

.rubrique-galerie-12 .item-7 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-12 .item-8 {
    grid-row-start: 3;
}

.rubrique-galerie-12 .item-9 {
    grid-column-start: 2;
    grid-row-start: 4;
}

.rubrique-galerie-12 .item-10 {
    grid-column: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 3;
}

.rubrique-galerie-12 .item-11 {
    grid-column-start: 3;
    grid-row-start: 4;
}

.rubrique-galerie-12 .item-12 {
    grid-column-start: 4;
    grid-row-start: 4;
}

/* Galerie 13 images */

.rubrique-galerie-13 .item-1 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-13 .item-2 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-13 .item-3 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-13 .item-4 {
    grid-row: span 2 / span 2;
}

.rubrique-galerie-13 .item-5 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-13 .item-6 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-13 .item-7 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-13 .item-8 {
    grid-row: span 2 / span 2;
    grid-row-start: 3;
}

.rubrique-galerie-13 .item-9 {
    grid-row-start: 3;
}

.rubrique-galerie-13 .item-10 {
    grid-column-start: 2;
    grid-row-start: 4;
}

.rubrique-galerie-13 .item-11 {
    grid-column: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 3;
}

.rubrique-galerie-13 .item-12 {
    grid-column-start: 3;
    grid-row-start: 4;
}

.rubrique-galerie-13 .item-13 {
    grid-column-start: 4;
    grid-row-start: 4;
}

/* Galerie 14 images */

.rubrique-galerie-14 .item-1 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-2 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-3 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-4 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-5 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-6 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-7 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-8 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-9 {
    grid-row: span 2 / span 2;
}

.rubrique-galerie-14 .item-10 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-14 .item-11 {
    grid-column-start: 2;
    grid-row-start: 4;
}

.rubrique-galerie-14 .item-12 {
    grid-column: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 3;
}

.rubrique-galerie-14 .item-13 {
    grid-column-start: 3;
    grid-row-start: 4;
}

.rubrique-galerie-14 .item-14 {
    grid-column-start: 4;
    grid-row-start: 4;
}

/* Galerie 15 images */

.rubrique-galerie-15 .item-1 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-2 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-3 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-4 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-5 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-6 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-7 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-8 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-9 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-10 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-15 .item-11 {
    grid-column: span 2 / span 2;
}

.rubrique-galerie-15 .item-12 {
    grid-row-start: 4;
}

.rubrique-galerie-15 .item-13 {
    grid-row-start: 4;
}

.rubrique-galerie-15 .item-14 {
    grid-row-start: 4;
}

.rubrique-galerie-15 .item-15 {
    grid-row-start: 4;
}

/* Galerie 16 images */

.rubrique-galerie-16 .item-1 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-2 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-3 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-4 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-5 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-6 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-7 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-8 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-9 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-10 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-11 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-12 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-13 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-14 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-15 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

.rubrique-galerie-16 .item-16 {
    grid-column: span 1 / span 1;
    grid-row: span 1 / span 1;
}

/* Vidéos */

.rubrique-columns .video {
    margin: 0.9rem 0;
}

.rubrique-columns .video.video-single {
    display: flex;
    gap: 20px;
}

.rubrique-columns .video.video-single .video-thumb {
    width: calc(33% - 10px);
    flex-shrink: 0;
}

.rubrique-columns .video-thumb {
    position: relative;
    height: 100px;
    cursor: pointer;
    display: inline-grid;
    overflow: hidden;
}

.rubrique-columns .video-thumb img {
    height: 140%;
    object-fit: cover;
    object-position: center center;
    transform: translate(0%, -14%);
}

.rubrique-columns .video-thumb .btn-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 32px;
    height: 32px;
    background: var(--txtcolor, #fff);
    color: var(--bgcolor, #000);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.rubrique-columns .video-thumb .btn-play svg.icon-play {
    width: 10px;
    height: 10px;
}

.rubrique-columns .video-navigation {
    display: flex;
    justify-content: center;
    gap: 20px;
    font-family: var(--e-global-typography-d50148d-font-family), Sans-serif;
    margin-top: 10px;
}

.rubrique-columns .video-navigation button {
    background: transparent;
    border: none;
    font-size: 26px;
    cursor: pointer;
    color: var(--txtcolor, #fff);
    padding: 0;
    transition: transform 0.2s ease;
}

.rubrique-columns .video-navigation button:hover {
    transform: scale(1.5);
}

.rubrique-columns .video-navigation button.swiper-button-disabled {
    opacity: 0.2;
}

.rubrique-columns .swiper-slide {
    display: flex;
}


/* Texte en vis à vis */
.rubrique-columns .video-texte-vis-a-vis {
    font-family: var(--e-global-typography-6b69f03-font-family), Sans-serif;
    font-size: var(--e-global-typography-6b69f03-font-size);
    font-weight: var(--e-global-typography-6b69f03-font-weight);
    line-height: var(--e-global-typography-6b69f03-line-height);
    color: var(--txtcolor, #fff);
}

/* Vidéo Lightbox */
html.glightbox-open {
    overflow: initial;
}

#glightbox-body .plyr {
    --plyr-color-main: #E13636;
}

#glightbox-body .gslide-description {
    background: none;
    color: var(--txtcolor, #fff);
}

#glightbox-body .gslide-description a {
    font-weight: inherit;
}

#glightbox-body .gslide-title {
    font-family: var(--e-global-typography-538d1e4-font-family), Sans-serif;
    font-size: 14px;
    font-weight: var(--e-global-typography-538d1e4-font-weight);
    line-height: var(--e-global-typography-538d1e4-line-height);
    color: var(--txtcolor, #fff);
    margin: 0;
}

#glightbox-body .gdesc-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 20px 0;
}

#glightbox-body .gslide-desc {
    font-family: var(--e-global-typography-74dc42f-font-family), Sans-serif;
    font-size: var(--e-global-typography-74dc42f-font-size);
    font-weight: var(--e-global-typography-74dc42f-font-weight);
    text-transform: var(--e-global-typography-74dc42f-text-transform);
    line-height: var(--e-global-typography-74dc42f-line-height);
    letter-spacing: var(--e-global-typography-74dc42f-letter-spacing);
    color: var(--e-global-color-813f740);
    flex-shrink: 0;
}

#glightbox-body .plyr--stopped.plyr__poster-enabled .plyr__poster {
    background-size: 135% !important;
}

/**************/
/* RESPONSIVE */
/**************/

/* === Desktop === */

body[data-elementor-device-mode="desktop"] {
    --rubrique-column-width: 500px;
    --rubrique-column-gap: 60px;
    --rubrique-padding-top: min(20dvh, 150px);
    --rubrique-padding-bottom: clamp(130px, 20dvh, 150px);
}

@media (max-height: 720px) {
    body[data-elementor-device-mode="desktop"] .parcours-rubriques-liste {
        display: none;
    }
}

/* === Laptop === */

body[data-elementor-device-mode="laptop"] {
    --rubrique-column-width: 400px;
    --rubrique-column-gap: 60px;
    --rubrique-padding-top: min(20dvh, 120px);
    --rubrique-padding-bottom: clamp(130px, 20dvh, 150px);
}

@media (max-height: 620px) {
    body[data-elementor-device-mode="laptop"] .parcours-rubriques-liste {
        display: none;
    }
}


/* === Tablet === */

body[data-elementor-device-mode="tablet"] {
    --rubrique-column-width: 400px;
    --rubrique-column-gap: 50px;
    --rubrique-padding-top: min(20dvh, 120px);
    --rubrique-padding-bottom: clamp(130px, 20dvh, 150px);
}

body[data-elementor-device-mode="tablet"] .rubrique {
    padding: 10vw;
}

body[data-elementor-device-mode="tablet"] .rubrique-columns .video.video-single .video-thumb {
    width: 25vw;
}


/* === Mobile === */

body[data-elementor-device-mode="mobile"] {
    --rubrique-column-width: 350px;
    --rubrique-column-gap: 40px;
    --rubrique-padding-top: min(20dvh, 120px);
    --rubrique-padding-bottom: clamp(130px, 20dvh, 150px);
}

body[data-elementor-device-mode="mobile"] .rubrique-columns {
    column-width: unset;
    column-count: 1;
    width: 100%;
    overflow-y: visible;
    overflow-x: hidden;
    display: block;
}


body[data-elementor-device-mode="mobile"] .rubrique {
    padding: 60px 30px;
}

body[data-elementor-device-mode="mobile"] #glightbox-body .gdesc-inner {
    align-items: flex-start;
    gap: 20px;
    flex-direction: column;
}

body[data-elementor-device-mode="mobile"] .rubrique-columns .video.video-single .video-thumb {
    width: calc(33vw - 30px);
}



/* === Tablet + Mobile === */


body[data-elementor-device-mode="mobile"] .parcours-rubriques-liste,
body[data-elementor-device-mode="tablet"] .parcours-rubriques-liste {
    max-height: none;
}

body[data-elementor-device-mode="mobile"] .rubrique-image img,
body[data-elementor-device-mode="tablet"] .rubrique-image img {
    height: auto !important;
}


body[data-elementor-device-mode="mobile"] .rubrique-image img.has-border,
body[data-elementor-device-mode="tablet"] .rubrique-image img.has-border {
    border-left-width: 20px;
}


body[data-elementor-device-mode="mobile"] .rubrique-columns blockquote.citation,
body[data-elementor-device-mode="tablet"] .rubrique-columns blockquote.citation,
body[data-elementor-device-mode="mobile"] .rubrique-columns .chapo,
body[data-elementor-device-mode="tablet"] .rubrique-columns .chapo {
    margin: 0 0 40px;
}

body[data-elementor-device-mode="mobile"] .rubrique-columns blockquote.citation:not(:first-child),
body[data-elementor-device-mode="tablet"] .rubrique-columns blockquote.citation:not(:first-child),
body[data-elementor-device-mode="mobile"] .rubrique-columns .chapo:not(:first-child),
body[data-elementor-device-mode="tablet"] .rubrique-columns .chapo:not(:first-child) {
    margin-top: 40px;
}


/* Corrige les débordements en activant un scroll vertical uniquement */
body[data-elementor-device-mode="mobile"],
body[data-elementor-device-mode="tablet"] {
    overflow-y: auto;
    overflow-x: hidden;
}

/* Les rubriques s'empilent verticalement */
body[data-elementor-device-mode="mobile"] .section-rubriques-content .rubriques-container,
body[data-elementor-device-mode="tablet"] .section-rubriques-content .rubriques-container {
    flex-direction: column;
}

/* Chaque rubrique occupe toute la largeur du viewport */
body[data-elementor-device-mode="mobile"] .rubrique,
body[data-elementor-device-mode="tablet"] .rubrique {
    width: 100vw;
}

/* Les contenus internes des rubriques s'empilent aussi */
body[data-elementor-device-mode="mobile"] .rubrique-content,
body[data-elementor-device-mode="tablet"] .rubrique-content {
    flex-direction: column;
}

/* Désactive les colonnes CSS pour un affichage full-width */
body[data-elementor-device-mode="mobile"] .rubrique-columns,
body[data-elementor-device-mode="tablet"] .rubrique-columns {
    column-width: auto;
    column-count: 1;
    column-gap: 0;
    box-sizing: border-box;
    width: auto;
    max-width: 100%;
}

/* Conteneur du parcours */
body[data-elementor-device-mode="mobile"] .parcours-container .rubrique:last-child,
body[data-elementor-device-mode="tablet"] .parcours-container .rubrique:last-child {
    padding-bottom: 150px;
}


/* Masque en haut et en bas */
body[data-elementor-device-mode="mobile"] .parcours-container .parcours-mask-top,
body[data-elementor-device-mode="mobile"] .parcours-container .parcours-mask-bottom,
body[data-elementor-device-mode="tablet"] .parcours-container .parcours-mask-top,
body[data-elementor-device-mode="tablet"] .parcours-container .parcours-mask-bottom {
    position: fixed;
    left: 0;
    right: 0;
    z-index: 20;
    pointer-events: none;

    /* Aucun fond visible ! */
    background: transparent;

    /* Applique le masque transparent/opaque */
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;

    /* Nécessaire pour le rendu : couleur du masque → pas visible mais utilisée pour appliquer le masque */
    background-color: black;
}

/* Fade du haut */
body[data-elementor-device-mode="mobile"] .parcours-container .parcours-mask-top,
body[data-elementor-device-mode="tablet"] .parcours-container .parcours-mask-top {
    height: 150px;
    top: 0;
    -webkit-mask-image: linear-gradient(to bottom,
            black 0%,
            black 20%,
            transparent 100%);
    mask-image: linear-gradient(to bottom,
            black 0%,
            black 20%,
            transparent 100%);
}


/* Fade du bas */
body[data-elementor-device-mode="mobile"] .parcours-container .parcours-mask-bottom,
body[data-elementor-device-mode="tablet"] .parcours-container .parcours-mask-bottom {
    height: 130px;
    bottom: 0;
    -webkit-mask-image: linear-gradient(to top,
            black 0%,
            black 20%,
            transparent 100%);
    mask-image: linear-gradient(to top,
            black 0%,
            black 20%,
            transparent 100%);
}


/* Titre rubrique */
body[data-elementor-device-mode="mobile"] .rubrique-header .rubrique-title,
body[data-elementor-device-mode="tablet"] .rubrique-header .rubrique-title {
    width: calc(100% - 40px);
    flex-shrink: inherit;
}

/* Liste déroulante rubrique */
body[data-elementor-device-mode="mobile"] .rubrique-header .select-wrapper select,
body[data-elementor-device-mode="tablet"] .rubrique-header .select-wrapper select {
    position: absolute;
    top: -18px;
    right: 3px;
    width: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
    appearance: none;
}

body[data-elementor-device-mode="mobile"] .rubrique-header .select-wrapper .select-chevron,
body[data-elementor-device-mode="tablet"] .rubrique-header .select-wrapper .select-chevron {
    pointer-events: none;
    width: 24px;
}

body[data-elementor-device-mode="mobile"] .rubrique-columns .video-thumb,
body[data-elementor-device-mode="tablet"] .rubrique-columns .video-thumb {
    height: 140px;
}

body[data-elementor-device-mode="mobile"] .video-navigation button,
body[data-elementor-device-mode="tablet"] .video-navigation button {
    font-size: 44px;
}

body[data-elementor-device-mode="mobile"] .rubrique-columns .video-navigation button:hover,
body[data-elementor-device-mode="tablet"] .rubrique-columns .video-navigation button:hover {
    transform: scale(1);
}