@import url("https://use.typekit.net/wpa5cdw.css");

/*-------------------------------------------*\
    CSS Applications 
    1. Global applications
    2. Responsive - Mobile First
\*-------------------------------------------*/

/*-------------------------------------------*\
    Font Family
\*-------------------------------------------*/

@font-face {
    font-family: 'Gotham Book Italic';
    src: url('../fonts/Gotham-BookItalic.otf') format('woff2');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

:root {

    /* COLORS */
    --black: #191010;
    --white: #F5F5F5;

    --green:        #009C61;
    --purple:       #8866C9;
    --red:          #F42D13;
    --blue:         #4A91FC;
    --dark-gray:    #707070;
    --light-gray:   #DDD;
    --gray:         #BCBCBC;
    --yellow:       #FCE537;
    --dark-yellow:  #d9c52d;
    --peach:        #FFC5A5;
    --light-green:  #AAD1B1;
    --orange:       #FC851E;

    --yellow-color-rgb:   252 229 55;
    --yellow-color-rgb-2:   252, 229, 55;

    --primary-color: var(--yellow);
    --donation-color: var(--red);
    --association-primary-color: var(--purple);

    /* FONTS */
    --darkmode-regular:         normal 400 1rem/1.5 "darkmode-on", sans-serif;
    --darkmode-bold:            normal 700 1rem/1.5 "darkmode-on", sans-serif;
    --darkmode-x-bold:          normal 800 1rem/1.5 "darkmode-on", sans-serif;
    --darkmode-black:           normal 900 1rem/1.5 "darkmode-on", sans-serif;

    --proxima-thin:             normal 100 1rem/1.5 "proxima-nova", sans-serif;
    --proxima-light:            normal 300 1rem/1.5 "proxima-nova", sans-serif;
    --proxima-regular:          normal 400 1rem/1.5 "proxima-nova", sans-serif;
    --proxima-bold:             normal 700 1rem/1.5 "proxima-nova", sans-serif;
    --proxima-extrabold:        normal 800 1rem/1.5 "proxima-nova", sans-serif;
    --proxima-black:            normal 900 1rem/1.5 "proxima-nova", sans-serif;

    /*--loader-player-size:       0.92px;*/
    --loader-player-size:       1.315px;

    /* Covers sizes */
    --cover-mobile-size:    44px;
    --cover-desktop-size:   100px;
    
    /* Player sizes */
    --player-mobile-size:   44px;
    --player-desktop-size:  64px;
    --player-desktop-scroll-size:  50px;

    /* Wrapper size */
    --wrap-content-size: 840px;
    --wrap-inner-margin-inline: 20px;
    --wrap-content-inner: 650px;
}

/*-------------------------------------------*\
    Common
\*-------------------------------------------*/

*, *::before, *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

html {
	scroll-behavior: smooth;
}

body {
    font-family: 'Noto Serif', sans-serif;
    font-weight: 400;
    font-style: normal;
    background-color: var(--black);
    color: var(--white);
    -webkit-tap-highlight-color: transparent;
}

html,
body {
    margin: 0;
}

a,
a:visited {
    color: black;
    cursor: pointer;   
}

a,
.menu .menu-item.current-menu-item a,
.menu .menu-item:not(.navbar-donation-item):hover a {
    text-decoration: underline;
    text-decoration-color: var(--primary-color);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}

.menu .menu-item a {
    text-decoration: none;
}

.hidden {
    display: none !important;
}

img {
    max-width: 100%;
    height: auto;
}

picture img {
    min-width: 100%;
}

iframe {
    min-width: 100%;
}

.videocontainer,
.wp-block-embed__wrapper {
    width:100%;
    height:0;
    padding-bottom:56.25%;
    overflow:hidden;
    position:relative
}

.videocontainer.r1,
.wp-block-embed__wrapper.r1 {
    padding-bottom:100%
}

.videocontainer iframe,
.videocontainer embed,
.videocontainer object,
.wp-block-embed__wrapper iframe,
.wp-block-embed__wrapper embed,
.wp-block-embed__wrapper object {
    width:100%!important;
    height:100%!important;
    position:absolute;
    top:0;
    left:0
}

.clearfix {
    clear: both;
}

.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.remove-padding-top {    
    padding-top: 0px !important;
}

.remove-padding-bottom {
    padding-bottom: 0px !important;
}

.remove-padding-left {
    padding-left: 0px !important;
}

.remove-padding-right {
    padding-right: 0px !important;
}

.remove-margin-top {
    margin-top: 0px !important;
}

.remove-margin-bottom {
    margin-bottom: 0px !important;
}

.remove-margin-left {
    margin-left: 0px !important;
}

.remove-margin-right {
    margin-right: 0px !important;
}

/*-------------------------------------------*\
    Colors
\*-------------------------------------------*/

.bg-white {
    background-color: #FFF;
}

.white {
    color: #FFF;
}

.bg-black {
    background-color: var(--black);
}

.black {
    color: var(--black);
}

.bg-green {
    background-color: var(--green);
}

.green {
    color: var(--green);
}

.bg-purple {
    background-color: var(--purple);
}

.purple {
    color: var(--purple);
}

.bg-red {
    background-color: var(--red);
}

.red {
    color: var(--red);
}

.bg-blue {
    background-color: var(--blue);
}

.blue {
    color: var(--blue);
}

.bg-light-gray {
    background-color: var(--light-gray);
}

.light-gray {
    color: var(--light-gray);
}

.bg-gray {
    background-color: var(--gray);
}

.gray {
    color: var(--gray);
}

.bg-yellow {
    background-color: var(--yellow);
}

.yellow {
    color: var(--yellow);
}

.bg-peach {
    background-color: var(--peach);
}

.peach {
    color: var(--peach);
}

.bg-light-green {
    background-color: var(--light-green);
}

.light-green {
    color: var(--light-green);
}

.bg-orange {
    background-color: var(--orange);
}

.orange {
    color: var(--orange);
}

/*-------------------------------------------*\
    Classes
\*-------------------------------------------*/

.justify-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

/*-------------------------------------------*\
    Form
\*-------------------------------------------*/

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #000000;
    opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #000000;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #000000;
}

/*-------------------------------------------*\
    Pagination
\*-------------------------------------------*/

/*.pagination.post-content {
    text-align: center;
}*/

/*-------------------------------------------*\
    Pagination - 200px
\*-------------------------------------------*/

.pagination {
    display: none;
}

/*------------------------------------*\
    Tags
\*------------------------------------*/

.tags, .read-more, .home .AdZoneSquare, .archive .AdZoneSquare {
	margin: 3em 0;
}

.tags li {
    display: inline-block;
}

.single .tags, .tags.with-ads {
	margin-bottom: 2em;
}

.description_tag {
    text-align: left;
}

/*-------------------------------------------*\
    Animation
\*-------------------------------------------*/

@keyframes headerSlideDown {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .header.fixed {
        animation: none;
    }
}

@keyframes NavSearchReveal {
    0% {
        clip-path: inset(0 0 0 100%);
    }

    100% {
        clip-path: inset(0 0 0 0);
    }
}

/*-------------------------------------------*\
    Loader
\*-------------------------------------------*/

.loader {
    --color-1: var(--primary-color);
    --color-2: var(--black);
    --size: var(--loader-player-size);

    width: calc(48 * var(--size));
    height: calc(48 * var(--size));
    border: calc(5 * var(--size)) solid var(--color-1);
    border-bottom-color: var(--color-2);
    border-radius: 50%;
    display: inline-block;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
}

@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* ========================================
    Tooltip generic
======================================== */

.tooltip {
    position: absolute;

    width: 280px;
    padding: 10px 12px;

    background: var(--primary-color);
    color: var(--black);

    opacity: 0;
    visibility: hidden;

    z-index: 1000;

    transition: opacity .15s ease, visibility .15s ease;
}

.tooltip.is-visible {
    opacity: 1;
    visibility: visible;
}

/* ========================================
    Arrow tooltip
======================================== */

.tooltip__arrow {
    position: absolute;

    width: 27px;
    height: 23px;

    top: -22px;

    background: var(--primary-color);

    clip-path: polygon(
        50% 0%,
        0% 100%,
        100% 100%
    );
}

/* ========================================
    Player tooltip Content
======================================== */

#player-tooltip {
    width: 228px;

    ::selection {
        background: var(--white);
    }

    ::-webkit-selection {
        background: var(--white);
    }

    ::-moz-selection {
        background: var(--white);
    }
}

#player-tooltip .tooltip__content {
    display: flex;
    flex-direction: column;
}

/* Hour */
#player-tooltip .tooltip__hour {
    margin-bottom: 8px;

    font-size: 0.875rem;
    font: var(--proxima-light);
    line-height: 1.25rem;
}

/* Artist */
#player-tooltip .tooltip__artist {
    font: var(--proxima-bold);
    font-size: 0.875rem;
    line-height: 1.125rem;

    text-transform: uppercase;
}

/* Title */
#player-tooltip .tooltip__title {
    font-size: 0.875rem;
    font: var(--proxima-light);
    line-height: 1.125rem;
}

/* ========================================
    Smooth transition
======================================== */

#player-tooltip.is-visible {
    transform: translateY(0);
}

#player-tooltip {
    transform: translateY(-4px);
    transition:
        opacity .15s ease,
        visibility .15s ease,
        transform .15s ease;
}

.player-track {
    min-width: 0;
}

[data-marquee] {
    display: block;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    position: relative;
    white-space: nowrap;
}

.marquee__track {
    display: inline-flex;
    width: max-content;
    white-space: nowrap;
    will-change: transform;
    gap: var(--marquee-gap, 0px);
}

.marquee__item {
    flex: 0 0 auto;
}

.marquee__second {
    display: none;
}

[data-marquee].is-overflowing .marquee__second {
    display: block;
}

[data-marquee].is-overflowing .marquee__track {
    animation-duration: var(--marquee-duration);
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

[data-marquee].is-overflowing:hover .marquee__track,
[data-marquee].is-overflowing:focus-within .marquee__track {
    animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
    [data-marquee] .marquee__track {
        animation: none !important;
        transform: none !important;
    }
}

.wrapper .skip-link {
    position: absolute;
    top: -50px;
    left: 0;
    padding: 12px 16px;
    background-color: var(--black);
    color: var(--primary-color);
    text-decoration: none;
    z-index: 100000;
    font: var(--proxima-bold);
}

.skip-link:focus {
    top: 0;
}

:focus-visible {
    /*outline: 3px solid var(--blue);
    outline-offset: 3px;*/
    outline-color: var(--blue);
    outline-width: 4px;
}

/* ========================================
    Datepicker Flatpickr
======================================== */

.flatpickr-calendar {
    background: var(--black);
    font: var(--proxima-light);
    box-shadow: 1px 0 0 var(--primary-color), -1px 0 0 var(--primary-color), 0 1px 0 var(--primary-color), 0 -1px 0 var(--primary-color), 0 3px 13px rgba(0, 0, 0, 0.08);
}

.flatpickr-months .flatpickr-month {
    color: var(--white);
    fill: var(--white);
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
    color: var(--primary-color);
    fill: var(--primary-color);
}

.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
    margin-top: -1px;
    color: var(--primary-color);
    fill: var(--primary-color);
}

.flatpickr-day {
    color: var(--primary-color);
}

.flatpickr-day:not(.flatpickr-disabled).inRange,
.flatpickr-day:not(.flatpickr-disabled).prevMonthDay.inRange,
.flatpickr-day:not(.flatpickr-disabled).nextMonthDay.inRange,
.flatpickr-day:not(.flatpickr-disabled).today.inRange,
.flatpickr-day:not(.flatpickr-disabled).prevMonthDay.today.inRange,
.flatpickr-day:not(.flatpickr-disabled).nextMonthDay.today.inRange,
.flatpickr-day:not(.flatpickr-disabled):hover,
.flatpickr-day:not(.flatpickr-disabled).prevMonthDay:hover,
.flatpickr-day:not(.flatpickr-disabled).nextMonthDay:hover,
.flatpickr-day:not(.flatpickr-disabled):focus,
.flatpickr-day:not(.flatpickr-disabled).prevMonthDay:focus,
.flatpickr-day:not(.flatpickr-disabled).nextMonthDay:focus {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--black);
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
    background: var(--primary-color);
    color: var(--black);
    border-color: var(--primary-color);
}

span.flatpickr-weekday {
    color: rgba(var(--primary-color-rgb-2), 0.54);
}

.flatpickr-weekwrapper .flatpickr-weeks {
    -webkit-box-shadow: 1px 0 0 var(--primary-color);
    box-shadow: 1px 0 0 var(--primary-color);
}

.flatpickr-weekwrapper span.flatpickr-day,
.flatpickr-weekwrapper span.flatpickr-day:hover {
    color: rgba(var(--primary-color-rgb-2), 0.5);

}

.flatpickr-day.today {
    border-color: var(--primary-color);
}


.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    color: rgba(255, 255, 255, 0.5);
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.notAllowed.nextMonthDay {
    color: rgba(255, 255, 255, 0.5);
}

.shortcut-buttons-flatpickr-buttons {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 10px;
}

.shortcut-buttons-flatpickr-button {
    color: var(--primary-color);
    padding: 5px 5px 4px;
    border: solid 1px var(--primary-color);
    width: 100%;
    font: var(--proxima-bold);
    font-size: 0.75rem;
    line-height: 1.3125rem;
    text-transform: uppercase;
}

/*-------------------------------------------*\
    Reponsive - 200px
\*-------------------------------------------*/

@media screen and (min-width: 200px) {

    /*------------------------------------*\
        Ads
    \*------------------------------------*/

    .ad-billboard-zone {
        background-color: var(--white);
        padding: 14px 20px;
    }

    .ad-billboard-zone {
        display: none;
    }

    .ad-billboard-zone #ad-billboard-zone-1 {
        margin-bottom:0;
		display: none;
        width: 100%;
        height: auto;
        overflow: hidden;
        max-width: 1300px;
    }

    #AdZoneMobile {
        background-color: var(--white);
        padding: 14px 20px;
    }

    .ad-billboard-zone #ad-billboard-zone-1 iframe,
    .ad-billboard-zone #ad-billboard-zone-1 img,
    .ad-billboard-zone#AdZoneMobile img {
        width: 100%;
    }
    
    .ad-billboard-zone #ad-billboard-zone-1 img,
    #AdZoneMobile img {
        height: auto !important;
    }

    #halfpage-zone {
		display: none;
	}

    .self-promotion {
		display: block;
		margin: -20px 0 40px;
	}

    .self-promotion img {
        min-width: 100%;
    }

    .AdZoneSquare {
        width: 300px;
        height: 272px;
    }

    .AdZoneSquare2 {
        width: 300px;
        height: 250px;
    }

    .ad-container {
        position: relative;
    }

    .ad-container-inner {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 25px;
    }

    .ad-container-inner::before {
        content: "Publicité";
        font-family: var(--proxima-regular);
        font-size: 0.875rem;
        color: var(--white);

        position: absolute;
        left: 50%;
        transform: translateX(-150px);
        top: -24px;
    }

    .ad-container-inner.ad-halfpage-mini::before {
        transform: translateX(-158px);
    }

    .ad-container-inner .ad-content {
        position: relative;
        background-color: var(--black);
    }
    
    .ad-container .ad-content iframe,
    .ad-container .ad-content img {
        width: 100%;
        height: 100%;
    }

    .ad-decoration .ad-content {
        position: relative;
        border: solid 1px var(--black);
    }

    .ad-decoration.ad-decoration-wings .ad-content::before {
        content: "";
        position: absolute;
        top: 25px;
        left: -75px;

        width: 187px;
        height: 202.98px;

        background-image: url("../img/left-blue-wing.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;
    }

    .ad-decoration.ad-decoration-wings .ad-content::after {
        content: "";
        position: absolute;
        top: 25px;
        right: -65px;

        width: 156.87px;
        height: 203.95px;

        background-image: url("../img/right-blue-wing.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;
    }

    .ad-decoration.ad-decoration-torch .ad-content::before {
        content: "";
        position: absolute;
        top: 140px;
        left: calc(50% - 160px - 20px);

        width: 85px;
        height: 240px;

        background-image: url("../img/torch-left.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;

        transform: rotate(163deg);
    }

    .ad-decoration.ad-decoration-torch .ad-content::after {
        content: "";
        position: absolute;
        top: 140px;
        right: calc(50% - 160px - 20px);

        width: 85px;
        height: 240px;

        background-image: url("../img/torch-right.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;

        transform: rotate(17deg);
    }

    .ad-container .ad-pave-block {
        width: 300px;
        height: 250px;
    }

    .ad-container .ad-halfpage-mini-block {
        width: 320px;
        height: 468px;
    }

    .ad-container.grid-center {
        grid-column: 1 / -1;
    }
    
    /*-------------------------------------------*\
        Common - 200px
    \*-------------------------------------------*/
    
    .hide-mobile {
        display: none !important;
    }

    .page-simple-body .wp-block-image img {
        margin: 0 auto;
        width: 100%;
    }

    .page-simple-body .wp-block-image {
        margin-bottom: 45px;
    }

    figure figcaption {
        margin-top: 15px;
        font: var(--proxima-regular);
        font-size: 1rem;
        line-height: 1.5rem;
    }

    .wp-block-embed {
        margin-bottom: 30px;
    }

    .no-result {
        font: var(--darkmode-x-bold);        
        text-align: center;
    }

    h2.no-result {
        font-size: 1.625rem;
        line-height: 2.25rem;
        margin-bottom: 30px;
    }

    button {
        cursor: pointer;
    }

    article .card__image {
        position: relative;
        overflow: hidden;
    }

    /*article .card__image a:focus-within picture {
        border: solid 1px #005fcc;
    }*/

    article:not(.article-page-association, .article-contest-association):hover img {
        -webkit-transform: scale(1.02);
        transform: scale(1.02);
    }

    article:not(.article-page-association, .article-contest-association) img {
        webkit-transition: -webkit-transform .3s ease-out;
        transition: -webkit-transform .3s ease-out;
        transition: transform .3s ease-out;
        transition: transform .3s ease-out, -webkit-transform .3s ease-out;
        display: block;
        height: 100%;
        max-height: inherit;
        min-height: inherit;
        -o-object-fit: cover;
        object-fit: cover;
        position: relative;
        width: 100%;
    }

    /*-------------------------------------------*\
        Wrapper - 200px
    \*-------------------------------------------*/

    .layout {
        min-height: 500px;
    }

    .wrapper {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: auto 1fr auto;
        min-height: 100vh;
        overflow-x: clip;
    }

    .wrap-content {
        margin: 0 auto;
        margin-left: 20px;
        margin-right: 20px;
        max-width: var(--wrap-content-size);
        position: relative;
    }

    .wrap-content-header,
    .wrap-content-footer {
        max-width: 1720px;
    }

    /*-------------------------------------------*\
        Buttons - 200px
    \*-------------------------------------------*/

    button:disabled {
        opacity: 50%;
        cursor: not-allowed;
    }

    a.btn:hover {
        text-decoration: none;
    }

    a.btn {
        display: inline-flex;
    }

    .btn {
        font: var(--proxima-bold);
        font-size: 1.125rem;
        line-height: 1.3125rem;
        text-transform: uppercase;
        text-decoration: none;
        padding: 8px 10px;

        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 5px;

        transition: transform 0.25s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .btn:hover {
        transform: translateY(-2px) scale(1.01);
    }

    .btn.btn-primary,
    .btn.btn-inside.active {
        color: var(--black);
        background-color: var(--primary-color);
    }

    .btn.btn-inside {
        margin-right: 21px;
        padding: 9px 10px 8px;
    }

    .btn.btn-secondary,
    .btn.btn-inside {
        border: solid 1px var(--primary-color);
        color: var(--primary-color);
    }

    .btn.btn-asso {
        color: var(--black);
        background-color: var(--association-primary-color);
    }

    /*-------------------------------------------*\
        Breadcrumb - 200px
    \*-------------------------------------------*/

    .breadcrumb {
        display: none;
        margin-bottom: 54px;
        text-transform: uppercase;
        font: var(--proxima-bold);
        font-size: 0.75rem;
        line-height: 0.75rem;
    }

    .breadcrumb a {
        color: var(--primary-color);
    }
    
    /*-------------------------------------------*\
        Header - 200px
    \*-------------------------------------------*/
    .header {
        top: 0;
        left: 0;
        right: 0;
        z-index: 10;
    }

    .header.fixed {
        position: fixed;
        animation: headerSlideDown .3s ease-out;
    }

    /* Réserve la place du header en flux pour que le contenu ne saute pas */
    .wrapper.header-fixed {
        padding-top: var(--header-height, 0px);
    }

    .header .navbar-container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 16px 0 19px 5px;
    }

    .header .navbar-container .header-logo {
        width: 138px;
    }

    .header .navbar-container .navbar-icon {
        cursor: pointer;
        padding: 10px;
    }

    .header .menu-container {
        padding: 40px 40px 28px 40px;
        background-color: var(--white);
        color: var(--black);
        min-height: 100dvh;
        max-height: 100dvh;
    }

    .header .menu-container .menu-close-btn {
        cursor: pointer;
        padding: 1rem;
        margin-right: -1rem;
    }

    .header .menu-container .menu-search-container {
        margin-bottom: 40px;
    }

    .header .menu-container .search-container {
        position: relative;
    }

    .header .menu-container .menu-search-container label {
        font: var(--proxima-bold);
        font-size: 1.875rem;
        line-height: 2.25rem;
    }

    .header .menu-container .search-container .menu-search {
        width: 100%;
        box-sizing: border-box;
        background-color: #FFF;
        border: solid 1px var(--black);
        font-size: 1rem;
        line-height: 1.25rem;
        padding: 12px 52px 13px 8px;
        height: 40px;
    }

    .header .menu-container .search-container .menu-search-btn {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 44px;
        height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: none;
        border: 0;
        padding: 0;
        cursor: pointer;
    }

    .menu-container .search-container .menu-search-icon {
        width: 18px;
        height: 18px;
        pointer-events: none;
    }

    .sr-only {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    .header .menu-search-container .menu-search-label {
        display: block;
        font: var(--proxima-bold);
        font-size: 1.875rem;
        line-height: 2.25rem;
        margin-bottom: 18px;
    }

    .header .menu-container .menu-title {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        margin-bottom: 46px;
    }

    .header .menu-container .navbar-separator {
        background-color: var(--dark-gray);
        margin-bottom: 35px;
    }

    .header .menu-container .menu {
        display: flex;
        flex-direction: column;        
    }

    .header .main-menu .menu .menu-item a {
        font: var(--proxima-bold);
        font-size: 1.375rem;
        line-height: 1.625rem;
        padding-block: 8.5px;
        display: block;
    }

    .header .main-menu .menu .menu-item:first-child a {
        padding-left: 0;
    }

    .header .main-menu .menu .menu-item:last-child a {
        padding-right: 0;
    }

    .header .main-menu .menu .navbar-donation-item {
        margin-top: 12px;
        padding-top: 0;
        padding: 22px 0;
        margin-bottom: 30px;
        
        background-image: url('../img/header/navbar-donation.svg');
        background-repeat: no-repeat;
        background-position: left;
    }

    .header .navbar-donation-item a {
        color: transparent;
    }

    .header .navbar-donation-item.current-menu-item a,
    .header .navbar-donation-item a:hover {
        text-decoration: none;
    }

    .header .player {
        border: solid 0.5px var(--dark-gray);
        color: var(--black);
        padding: 12px 0;
    }

    .header .player .player-main {
        display: flex;
        align-items: center;
    }

    .header .player .player-main .player-controls {
        display: flex;
        align-items: center;
        gap: 18px;
        position: relative;
    }

    .header .player .player-main .player-controls #player-toggle-state {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .header .player .player-main .player-controls .player-play {
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .header .player .player-main .player-controls .player-play i {
        /*min-width: var(--player-mobile-size);
        min-height: var(--player-mobile-size);*/
        min-width: var(--player-desktop-size);
        min-height: var(--player-desktop-size);

        background-image:url('../img/player/player-on-small.svg');
        background-repeat: no-repeat;
        background-size: cover;
    }

    .header .player .player-main .player-controls .player-track {
        display: flex;
        flex-direction: column;
        max-width: 250px;
    }

    .header .player .player-main .player-track .player-artist,
    .header .player .player-main .player-track .player-title {
        font-size: 0.875rem;
        line-height: 1.25rem;
    }

    .header .player .player-main .player-track .player-artist {
        text-transform: uppercase;
        font: var(--proxima-bold);
        font-size: 0.875rem;
        line-height: 1.25rem;
    }

    .header .player .player-main .player-track .player-title {
        font: var(--proxima-regular);
        /*font-style: italic;*/
        font-size: 1rem;
        line-height: 1.25rem;
    }

    .header .player .player-main .player-playlist {
        margin-left: auto;
        display: flex;
        align-items: center;
        gap: 2.25rem;
    }

    .header .player .player-playlist > *:not(:last-child) {
        display: none;
    }

    .header .player .player-playlist .player-cover {
        width: var(--cover-mobile-size);
        height: var(--cover-mobile-size);
    }

    .header .player .player-main .player-controls #kast {
        display: none;
        position: relative;
    }

    .header .player .player-main .player-controls i.kast-mdi {
        display: block;
        cursor: pointer;
    }
        
    /* Disable Pause Buffer Problem */ 
    .header .player .player-main .player-controls .kast-continuous .kast-mdi-pause {
        display: none;
    }

    .header .player .player-main .player-controls .kast-continuous .kast-mdi-play {
        background-image:url('../img/player/player-on.svg');
        background-repeat: no-repeat;
        background-size: cover;
    }

    .header .player .player-main .player-controls .kast-continuous .kast-mdi-stop {
        display: none;
        background-image:url('../img/player/player-pause.svg');
        background-repeat: no-repeat;
        background-size: cover;
        min-width: var(--player-desktop-size);
        min-height: var(--player-desktop-size);
    }

    .header.fixed .player .player-main .player-controls .kast-continuous .kast-mdi-stop {
        min-width: var(--player-mobile-size);
        min-height: var(--player-mobile-size);
    }

    .header.fixed .loader {
        --loader-player-size:       0.92px;
    }

    .header .player .player-main .player-controls .kast-continuous.kast-playing .kast-mdi-play {
        display: none;
    }

    .header .player .player-main .player-controls .kast-continuous.kast-playing .kast-mdi-stop {
        display: block;
    }

    .header .player .player-main .player-controls .kast-continuous .kast-mdi {
        width: var(--player-desktop-size);
        height: var(--player-desktop-size);
    }

    .header.fixed .player .player-main .player-controls .kast-continuous .kast-mdi {
        width: var(--player-mobile-size);
        height: var(--player-mobile-size);
    }

    .header .player .mobile-home-link,
    .header .player .floating-header-toggle-menu {
        display: none;
    }

    .header.fixed .navbar-container {
        display: none;
    }

    .header.fixed .player {
        border: none;
        padding-block: 5px;
    }

    .header.fixed .player .mobile-home-link {
        display: block;
        margin-left: -45px;
        margin-right: 25px;
    }
    
    .header.fixed .player .player-main .player-controls .player-play i {
        min-width: var(--player-mobile-size);
        min-height: var(--player-mobile-size);
    }

    .header.fixed .player .floating-header-toggle-menu {
        display: block;
        margin-left: auto;
    }
    
    /*-------------------------------------------*\
        Footer - 200px
    \*-------------------------------------------*/


    /*-----------*\
        RGPD
    \*-----------*/

    #RGPD {
        position: fixed;
        bottom: 0;
        left: 0;
        z-index: 10002;
        transition: all 1s;
        width: 100%;
        opacity: 0.8;
        background: #000;
        padding: 1em;
        text-align: center;
    }

    #RGPDText {
        font-size: 1rem;
        line-height: 1.375rem;
        font-family: Arial;
        letter-spacing: 0;
        font-weight: normal;
        display: table-cell;
        vertical-align: top;
        padding-right: 20px;
        color: #ffffff;
    }

    #RGPDBtn {
        display: table-cell;
        width: 1%;
        vertical-align: middle;
        position: relative;
        z-index: 1;
    }

    #RGPDText a {
        color: var(--primary-color);
    }

    #RGPDBtn a {
        font-size: 1rem;
        line-height: 1.375rem;
        font-family: Arial;
        letter-spacing: 0;
        font-weight: normal;
        padding: 5px 10px;
        white-space: nowrap;
        background-color: var(--black);
        color: var(--primary-color);
        border: solid 1px var(--primary-color);
    }

    footer {
        display: flex;
        flex-direction: column;
        gap: 35px;
        background-color: #FFFFFF;
        color: var(--black);
        font-family: "Gotham Black Medium";
    }

    .footer .brands-content {
        display: flex;
        flex-direction: column;
        gap: 16px;
        padding: 18px 0;
    }

    .footer .brands-content .radios-links {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .footer .brands-content .radios-nav {
        position: relative;
    }

    .footer .brands-content .radios-nav .radios-toggle {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        justify-content: right;
        font: var(--proxima-bold);
        font-size: 1rem;
    }

    .footer .brands-content .radios-nav .radios-toggle .list-arrow {
        transform: rotate(-90deg);
        transition: transform 0.3s ease;
    }

    .footer .brands-content .radios-nav .radios-list {
        display: none;
        opacity: 0;
        transition: opacity 0s ease, display 0s allow-discrete;
        position: absolute;
        right: -20px;
        background-color: var(--primary-color);
        padding: 10px 0 9px;
        font: var(--proxima-bold);
        font-size: 1rem;
    }
    
    /* Toggle radios list */
    .footer .brands-content .radios-nav:hover .radios-toggle .list-arrow,
    .footer .brands-content .radios-nav:focus-within .radios-toggle .list-arrow {
        transform: rotate(0deg);
    }

    .footer .brands-content .radios-nav:hover .radios-list,
    .footer .brands-content .radios-nav:focus-within .radios-list {
        display: block;
        opacity: 1;
        z-index: 10;
    }

    .footer .brands-content .radios-nav:hover .radios-list .radio-item,
    .footer .brands-content .radios-nav:focus-within .radios-list .radio-item {
        padding: 6px 20px;
        text-align: left;
    }

    .footer .brands-content .radios-nav:hover .radios-list .radio-item:hover,
    .footer .brands-content .radios-nav:focus-within .radios-list .radio-item:hover {
        background-color: var(--dark-yellow);
    }

    .footer .brands-content .radios-nav:hover .radios-list .radio-item .radio-link,
    .footer .brands-content .radios-nav:focus-within .radios-list .radio-item .radio-link {
        display: block;
        font-size: 1rem;
        text-decoration: none;
        white-space: preserve nowrap;
    }

    .footer .brands-content .radios-nav:hover .radios-list .radio-item:hover .radio-link,
    .footer .brands-content .radios-nav:focus-within .radios-list .radio-item:hover .radio-link {
        color: var(--black);
    }

    .footer .brands-content .tools-links {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .footer .brands-content .tools-links .store-links {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .footer .brands-content .tools-links .socials-links {
        display: flex;
        align-items: center;
        gap: 18px;
    }

    .footer .footer-menu-container {
        display: flex;
        flex-direction: column;
    }

    .footer .footer-menu-container .footer-menu-content {
        position: relative;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu {
        display: grid;
        grid-template-rows: 1fr;
        grid-template-columns: 1fr 1fr;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu h3 {
        font: var(--proxima-bold);
        margin-bottom: 10px;
        font-size: 1.375rem;
        line-height: 1.625rem;
        font-weight: 900;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu ul.left-menu,
    .footer .footer-menu-container .footer-menu-content .footer-menu ul.right-menu {
        display: flex;
        flex-direction: column;
        font: var(--proxima-bold);
        font-size: 1.125rem;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu ul.left-menu {
        line-height: 2.125rem;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu ul.right-menu {
        line-height: 1.9375rem;
    }

    .footer .footer-menu-container .footer-menu-content #footer-dinosaure {
        width: 376px;
        transform: rotate(-4deg);
        position: absolute;
        right: -92px;
        margin-top: 45px;
    }

    .footer .footer-menu-container .copyright-content {
        display: flex;
        flex-direction: column;
        gap: 17px;
        margin-top: 235px;
        padding-bottom: 16px;
        font: var(--proxima-bold);
        font-size: 0.875rem;
    }

    /*-------------------------------------------*\
        Content - 200px
    \*-------------------------------------------*/

    .visually-hidden {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    .main-content {
        margin-top: 40px;
        margin-bottom: 65px;
        position: relative;

        display: flow-root;
    }
    
    h1 {
        font: var(--proxima-extrabold);
        font-size: 1.875rem;
        line-height: 2.25rem;
        padding-bottom: 20px;
        margin-bottom: 30px;
        display: block;

        border-bottom: var(--white) 1px solid;
    }

    h2.wp-block-heading {
        font: var(--darkmode-black);
        font-size: 2.875rem;
        line-height: 3.125rem;
        margin-bottom: 28px;
    }

    h3.wp-block-heading {
        font: var(--darkmode-x-bold);
        font-size: 1.625rem;
        line-height: 2.25rem;
        margin-bottom: 30px;
    }

    h4.wp-block-heading {
        font: var(--darkmode-x-bold);
        font-size: 1.25rem;
        line-height: 2rem;
    }

    p {
        font: var(--darkmode-regular);
        font-size: 1.25rem;
        line-height: 2rem;
        /*margin-bottom: 47px;*/
    }

    p.wp-block-paragraph {
        margin-bottom: 40px;
    }

    p.wp-block-paragraph strong {
        color: var(--primary-color);
    }

    .page-contest-association .wp-block-paragraph strong {
        color: var(--association-primary-color);
    }

    p a,
    p a:visited {
        color: var(--primary-color);
    }

    .table {
        color: var(--white);
        font-size: 1.125rem;
        line-height: 1.75rem;

        width: 100%;
    }

    .table tbody {
        display: flex;
        flex-direction: column;
        gap: 18px;
    }

    .table tbody tr {
        display: grid;
        grid-template-columns: 1fr minmax(auto, 52px);
    }

    .table-frequencies {
        position: relative;
    }

    .table-frequencies::after {
        content: "";
        position: absolute;
        bottom: 0;
        right: 75px;

        width: 153px;
        height: 667px;

        background-image: url("../img/medium-paws-upside-down.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;
    }

    .full-object.anchor-list {
        margin-bottom: 60px;
    }

    hr.wp-block-separator {
        color: var(--white);
        height: 1px;
        margin: 52px 0;
    }

    .page-contest .wp-block-image:first-of-type {
        margin-bottom: 18px;
    }

    .page-contest .wp-block-image + hr.wp-block-separator {
        margin-block: 18px 30px;
    }

    .wp-block-quote {
        border: none;
        margin: 40px auto;
        text-align: center;
        padding: 0;
    }

    .wp-block-quote p,
    .page-detail-article .wp-block-quote p {
        font: var(--darkmode-bold);
        font-size: 1.75rem;
        line-height: 2.375rem;
        color: var(--white);
        margin: 0;
    }

    .wp-block-quote cite {
        display: none;
    }

    .wp-block-quote p::before {
        content: "\00AB\00A0"; /* « + espace insécable */
        color: var(--primary-color);
        font-weight: 700;
    }

    .wp-block-quote p::after {
        content: "\00A0\00BB"; /* espace insécable + » */
        color: var(--primary-color);
        font-weight: 700;
    }

    .page-association .block-member ::selection {
        background-color: var(--black);
        color: var(--white);
    }

    .page-association .frm-meteor-sock-size {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
        margin-bottom: 0.5rem;
    }

    .page-association .frm-meteor-sock-size label.radio-wrapper {
        --c-primary: var(--black);
    }

    .block-member {
        background-color: var(--association-primary-color);
        padding: 35px 30px;
        color: var(--black);
    }

    .block-member .block-content {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .block-member h4 {
        font: var(--proxima-extrabold);
        font-size: 1.625rem;
        line-height: 1.75rem;
        font-weight: 900;
    }

    .block-member p {
        font: var(--proxima-regular);
        font-size: 1.25rem;
        line-height: 1.625rem;
    }

    .block-member .custom-block-img {
        align-self: center;
    }

    .block-member .custom-block-buttons-container {
        width: 100%;
    }

    .block-member .btn-block {
        background-color: var(--black);
        color: var(--white);
    }

    .block-member .socks-choice {
        display: grid;
        grid-template-columns: auto auto;
        align-items: center;
        gap: 14px;

        width: fit-content;
        font: var(--proxima-bold);
        font-size: 1.25rem;
        margin-bottom: 20px;
    }

    .block-member .socks-choice span {
        border: solid 2px var(--black);
        padding: 7px 10px;
    }

    .quantity-selector {
        border: solid 2px var(--black);
        display: flex;
        align-items: center;
        background-color: white;
        justify-content: center;
    }

    .quantity-selector__button {
        padding: 7px 10px;
    }

    .quantity-selector__input {
        margin: 0;
        padding: 0;
        padding-block: 7px;
        border: 0;
        background-color: transparent;
        text-align: center;
    }

    /* Supprime les flèches natives du input number */
    .quantity-selector__input::-webkit-inner-spin-button,
    .quantity-selector__input::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }

    .quantity-selector__input {
        appearance: textfield;
    }

    .block-member .custom-block-img.volcano-member-mobile-img {
        align-self: flex-start;
    }

    .block-member .meteor-socks-container {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 20px;
        margin-top: 10px;
    }

    .type-members-list {
        display: flex;
        flex-direction: column;
        gap: 40px;
        margin-bottom: 40px;
    }

    .wp-block-list {
        list-style: none;
        margin: 0;
        padding: 0;

        font: var(--darkmode-regular);
        font-size: 1.25rem;
        line-height: 2rem;
    }

    .wp-block-list li {
        position: relative;
        padding-left: 10px;
        margin-bottom: 20px;
        color: var(--white);
        line-height: 1.35;
    }

    .wp-block-list li::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0.70em;
        width: 5px;
        height: 5px;
        background: var(--primary-color);
        border-radius: 50%;
        transform: translateY(-50%);
    }

    details {
        border-block-end: 1px solid var(--white);
        margin-block: .5rem;
        padding-block: .5rem;
    }

    summary {
        font: var(--proxima-bold);
        font-size: 1.375rem;
        position: relative;
        cursor: pointer;
        padding-right: 2rem;
        list-style: none;
    }

    summary::marker {
        content: "";
    }

    summary::after {
        content: "+";

        position: absolute;
        right: 0;
        top: 50%;

        transform: translateY(-50%) rotate(0deg);
        transform-origin: center;

        font-size: 1.8rem;
        line-height: 1;
        color: var(--primary-color);

        transition: transform .25s ease;
    }

    /* Transformation du + en × */
    details[open] summary::after {
        transform: translateY(-50%) rotate(45deg);
    }

    summary p {
        font: var(--proxima-bold);
        font-size: 1.375rem;
        line-height: 2.125rem;
        margin: 0;
    }

    details .faq-answer {
        font: var(--darkmode-regular);
        font-size: 1.25rem;
        line-height: 2rem;
        max-width: 556px;
        margin-block: 10px;
    }

    /*-------------------*\
        Lang switch - 200px
    \*-------------------*/

    .lang-switch {
        position: relative;
        display: inline-flex;
        background: var(--black);
        border: 1.5px solid var(--association-primary-color);
        width: 90px;
        height: 40px;
        margin-bottom: 40px;
        overflow: hidden;
    }

    .lang-switch::after {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        width: 1.5px;
        height: 100%;
        background: var(--association-primary-color);
        z-index: 2;
    }

    .lang-switch__option {
        position: relative;
        z-index: 3;
        flex: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        font-size: 0.9375rem;
        color: var(--association-primary-color) !important;
        text-decoration: none !important;
        transition: color 0.2s ease;
    }

    .lang-switch__option.is-active {
        color: var(--black) !important;
    }

    .lang-switch__option.is-active::before {
        content: "";
        position: absolute;
        inset: 0;
        background: var(--association-primary-color);
        z-index: -1;
    }


    /*-------------------------------------------*\
        Body - 200px
    \*-------------------------------------------*/

    /*-------------------------------------------*\
        Auto-promotion blocks - 200px
    \*-------------------------------------------*/
    .auto-promo-section {
        margin-block: 55px 50px;
        display: flex;
        flex-direction: column;
        gap: 50px;
    }

    .auto-promotion-block {
        width: 100%;
        color: var(--black);
        padding: 35px 30px;
        padding-bottom: 0;
        position: relative;
        overflow: hidden; 

        display: flex;
        flex-direction: column;
    }

    .auto-promotion-block .img-hide-desktop {
        display: block;
    }

    .auto-promotion-block .img-hide-mobile {
        display: none;
    }

    .auto-promotion-block h3 {
        font: var(--proxima-bold);
        font-size: 1.625rem;
        line-height: 1.75rem;
        margin-bottom: 8px;
    }

    .auto-promotion-block p {
        font: var(--proxima-light);
        font-size: 1.25rem;
        line-height: 1.625rem;
        margin-bottom: 18px;
    }
    
    .auto-promotion-block button,
    .auto-promotion-block a {
        background-color: var(--black);
        text-transform: uppercase;
        color: var(--white);
        font: var(--proxima-bold);
        font-size: 1.125rem;
        line-height: 1.3125rem;
    }

    .auto-promotion-block .auto-promo-img {
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;

        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        margin: 0 auto;
    }

    .auto-promotion-block .auto-promo-img.dino-don {
        width: 290px;
        height: 260px;
        margin-block: 25px -10px;
    }

    .auto-promotion-block .auto-promo-img.dino-become-member {
        width: 244px;
        height: 208px;
        margin-bottom: 25px;
    }

    .auto-promotion-block .auto-promo-btn-become-member {
        margin-bottom: 30px;
    }

    .auto-promotion-block .auto-promo-img.newsletter-img {
        width: 118px;
        height: 190px;
        margin-bottom: 25px;
    }

    .auto-promotion-block .dino-juge-container {
        width: 300px;
        height: 220px;
        overflow: hidden;
        margin: 0 auto;
        margin-top: -36px;
        z-index: 0;
    }

    .auto-promotion-block .auto-promo-img.dino-juge {
        width: 300px;
        height: 315px;
    }

    .auto-promotion-block .auto-promo-img.caveman {
        width: 315px;
        height: 231px;
        margin-bottom: -15px;
    }

    .auto-promotion-block .frm-subscribe-newsletter {
        display: grid;
        grid-template-columns: 1fr auto;
        justify-content: center;
    }

    .auto-promotion-block .frm-subscribe-newsletter input {
        border: none;
        padding: 0.5rem;
    }

    /* Message de retour de l'inscription à la newsletter */
    .auto-promotion-block .frm-newsletter-message {
        margin-top: 12px;
        font-weight: 700;
    }

    .auto-promotion-block .frm-newsletter-message.is-error {
        color: #b00020;
    }

    .auto-promotion-block .newsletter-loader {
        margin-top: 12px;
    }

    .auto-promotion-block .frm-subscribe-newsletter button[aria-busy="true"] {
        opacity: .7;
        cursor: progress;
    }

    .auto-promotion-block .block-info {
        margin-bottom: 30px;
    }

    .auto-promotion-block .block-info-survey {
        z-index: 1;
    }

    /*-------------------------------------------*\
        Win tickets - 200px
    \*-------------------------------------------*/
    
    .win-tickets {
        position: fixed;
        bottom: -9px;
        right: -20px;
        z-index: 9;
        transform: rotate(-5deg);
        width: 124px;
        height: 136px;
        animation: tilt-shaking 6s infinite;
    }

    @keyframes tilt-shaking {
        0%, 92% {
            transform: rotate(-5deg);
        }

        93% {
            transform: rotate(3deg);
        }

        94% {
            transform: rotate(-4deg);
        }

        95% {
            transform: rotate(3deg);
        }

        96% {
            transform: rotate(-5deg);
        }

        100% {
            transform: rotate(-5deg);
        }
    }


    /*-------------------------------------------*\
        Events - 200px
    \*-------------------------------------------*/

    .events-list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .event {
        background-color: var(--white);
        color: var(--black);
        position: relative;
        cursor: pointer;
    }

    .event:hover .event-img {
        background-size: 105%;
    }

    .event-favorite {
        background-image: url('../img/heart.svg');
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;

        display: inline-block;
        position: absolute;
        top: 9px;
        right: 7px;

        width: 35.25px;
        height: 31.45px;
    }

    .event .event-img {
        display: block;
        height: 102px;
        width: 100%;

        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;

        background-size: 100%;
        transition: background-size 0.3s ease;
    }

    .event .event-infos {
        display: flex;
        flex-direction: column;
        padding: 20px 10px;
    }

    .event .event-title {
        font: var(--darkmode-black);
        font-size: 1.25rem;
        line-height: 1.5rem;
        margin-bottom: 18px;
    }

    .event .event-date {
        font: var(--proxima-bold);
        font-size: 0.9375rem;
        line-height: 1.25rem;
        margin-bottom: 10px;
    }

    .event .event-location {
        font: var(--proxima-bold);
        font-size: 0.9375rem;
        line-height: 20x;
    }

    .event .event-title a,
    .event .event-title a:hover {
        text-decoration: none;
    }

    .events-list-container .splide__list {
        align-items: stretch;
    }

    .events-list-container .splide__slide {
        display: flex;
    }

    .events-list-container .splide__slide article {
        width: 100%;
    }

    .events-list-container .splide {
        position: relative;
    }

    .events-list-container .splide__arrow--prev {
        left: -50px;
    }

    .events-list-container .splide__arrow--next {
        right: -50px;
    }

    .events-list-container .splide__pagination {
        bottom: -25px;
    }

    /*-------------------------------------------*\
        Home page - 200px
    \*-------------------------------------------*/

    .page-home .adzone-pave-2 {
        width: 320px;
        height: 450px;
        border: solid 1px red;
    }

    .page-home .adzone-pave {
        width: 300px;
        height: 250px;
        border: solid 1px red;
    }

    .page-home .home-adzone-2 {
        margin-bottom: 65px;
    }

    .page-home .home-subtitle,
    .page-home .home-subtitle a {
        font: var(--proxima-extrabold);
        color: var(--primary-color);
        font-size: 1.875rem;
        line-height: 2.25rem;
    }

    .page-home .home-subtitle {
        padding-bottom: 1rem;
        border-bottom: 1px solid var(--white);
        margin-bottom: 30px;
    }    

    .page-home .home-subtitle a {
        display: flex;
        text-decoration: none;
        gap: 15px;
    }

    .page-home .subtitle-sponsor {
        display: flex;
        flex-direction: column;
        gap: 30px;
        border-bottom: none;
        padding-bottom: 0;
    }

    .page-home .subtitle-sponsor .subtitle-sponsor-title {
        border-bottom: solid 1px var(--white);
        padding-bottom: 25px;
    }

    .page-home .subtitle-sponsor .sponsor-link {
        display: flex;
        flex-direction: column;
        align-items: end;

        font: var(--proxima-light);
        font-size: 0.625rem;
        line-height: 0.75rem;
        color: var(--white);
        gap: 0;
    }

    .page-home .home-headlines {
        display: flex;
        flex-direction: column;
        gap: 30px;
        margin-bottom: 45px;
    }

    .page-home .home-headline-card {
        display: flex;
        flex-direction: column-reverse;
        cursor: pointer;
        position: relative;
    }

    .page-home .home-headline-card:not(:last-of-type) {
        border-bottom: 1px solid var(--white);
    }

    .page-home .home-headline-card:nth-child(2)::after {
        content: "";
        position: absolute;
        top: -7%;
        left: -34%;

        width: 59%;
        aspect-ratio: 247 / 217;        

        background-image: url("../img/bloody-heart.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;

        transform: rotate(-56deg);
    }

    .page-home .home-headline-card:nth-child(3)::after {
        content: "";
        position: absolute;

        top: -1%;
        right: -16.5%;
        width: 28%;
        aspect-ratio: 104 / 234;

        background: url("../img/leaf-home.svg") center / contain no-repeat;

        z-index: -1;
        transform: rotate(204deg);
    }

    .page-home .home-headline-card .card__image {
        width: 100%;
        aspect-ratio: 374 / 210;
        overflow: hidden;
    }

    .page-home .home-headline-card .card__image picture {
        display: block;
        width: 100%;
        height: 100%;
    }

    .page-home .home-headline-card .card__image img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .page-home .home-headline-card .headline-categories {
        display: flex;
        align-items: center;
        gap: 0.25rem;
        margin-top: 20px;
    }

    .page-home .home-headline-card .headline-categories .headline-categories-separator {
        font-size: 0.875rem;
    }

    .page-home .home-headline-card .headline-category {
        display: inline-block;
        color: var(--primary-color);
        text-transform: uppercase;
        font: var(--proxima-bold);
        font-size: 0.75rem;
        line-height: 0.9375rem;        
    }

    .page-home .home-headline-card .headline-title-link,
    .page-home .home-headline-card .headline-title {
        display: block;
        font: var(--darkmode-black);
        font-size: 1.625rem;
        line-height: 2.125rem;
        color: var(--white);
        text-decoration: none;
    }

    .page-home .home-headline-card .headline-title-link {
        margin-bottom: 25px;
        margin-top: 25px;
    }

    .page-home .home-headline-card .headline-category + .headline-title-link {
        margin-top: 15px;
    }

    .page-home .home-headline-card .headline-link {
        background-color: var(--primary-color);
        padding: 8px 10px;
        display: inline-block;
        margin-bottom: 20px;
        font: var(--proxima-bold);
        font-size: 1.125rem;
        text-transform: uppercase;
        line-height: 1.3125rem;
        letter-spacing: 1px;
    }

    .page-home .events-list {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: 48%;
        grid-template-columns: none;
        gap: 20px;
        overflow-x: auto;
    }

    .page-home .events-list-container {
        position: relative;
        background-color: var(--black);
    }

    .page-home .events-list-container::before {
        content: "";
        position: absolute;
        top: 60px;
        left: -100px;

        width: 247px;
        height: 217px;

        background-image: url("../img/flame.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;

        transform: rotate(-270deg);
    }

    .page-home .events-list-container::after {
        content: "";
        position: absolute;
        top: 60px;
        right: -100px;

        width: 247px;
        height: 217px;

        background-image: url("../img/flame-right.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;

        transform: rotate(-270deg);
    }    

    .page-home .home-adzone-1 {
        position: relative;
    }
    
    .page-home .home-adzone-1::before {
        content: "";
        position: absolute;
        top: 140px;
        left: calc(50% - 160px - 20px);

        width: 85px;
        height: 240px;

        background-image: url("../img/torch-left.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;

        transform: rotate(163deg);
    }

    .page-home .home-adzone-1::after {
        content: "";
        position: absolute;
        top: 140px;
        right: calc(50% - 160px - 20px);

        width: 85px;
        height: 240px;

        background-image: url("../img/torch-right.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;

        transform: rotate(17deg);
    }

    /*-------------------------------------------*\
        Search titles page - 200px
    \*-------------------------------------------*/

    .page-search-title .title-choose-date-container {
        position: sticky;
        top: 0;
        z-index: 2;
        background-color: var(--black);
    }

    .page-search-title .current-date-container {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-block: 45px;
    }

    .page-search-title h2#current-date-label {
        font: var(--darkmode-x-bold);
        font-size: 1.5rem; /*(24px)*/
        line-height: 2.25rem; /*(36px)*/
        cursor: pointer;
    }

    .page-search-title .current-date-container h3 {
        margin: 0;
        cursor: pointer;
    }

    .page-search-title #title-date-picker,
    .page-search-title .flatpickr-mobile /*FIXME : Test with mobile */ {
        display: none;
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

    .page-search-title .btn-prev-date,
    .page-search-title .btn-next-date {
        box-sizing: border-box;
        width: 20px;
        height: 20px;
        padding: 6px;
    }
    
    .page-search-title .btn-prev-date {
        background: url('../img/icons/prev.svg') center / 9px 18px no-repeat;
        background-size: contain;
    }

    .page-search-title .btn-next-date {
        background: url('../img/icons/next.svg') center / 9px 18px no-repeat;
        background-size: contain;
    }

    .page-search-title .titles-list {
        display: grid;
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .page-search-title .titles-list .title {
        display: grid;
        grid-template-columns: minmax(auto, 177px) 1fr;
        gap: 0 20px;
    }

    .page-search-title .titles-list .title .title-cover {
        width: 177px;
        height: 177px;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
    }

    .page-search-title .titles-list .title .title-infos {
        display: flex;
        flex-direction: column;
        gap: 5px;

        font: var(--darkmode-regular);
        font-size: 1.125rem;
        line-height: 28px
    }

    .page-search-title .titles-list .title .title-infos .title-music-container {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .page-search-title .titles-list .title .title-infos .title-hour {
        line-height: 2rem;
    }

    .page-search-title .titles-list .title .title-infos .title-artist {
        line-height: 2rem;
    }

    .page-search-title .titles-list .title .title-infos .title-title {
        line-height: 2rem;
    }

    .ad-decoration .AdZoneSquare2 {
        position: relative;
        border: solid 1px var(--black);
    }

    .ad-decoration .AdZoneSquare2::before {
        content: "";
        position: absolute;
        top: 25px;
        left: -75px;

        width: 187px;
        height: 202.98px;

        background-image: url("../img/left-blue-wing.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;
    }

    .ad-decoration .AdZoneSquare2::after {
        content: "";
        position: absolute;
        top: 25px;
        right: -65px;

        width: 156.87px;
        height: 203.95px;

        background-image: url("../img/right-blue-wing.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;
    }

    /*-------------------------------------------*\
        Headlines page - 200px
    \*-------------------------------------------*/

    .headlines-filters {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 20px;
        margin-bottom: 40px;
    }

    .headlines-filters .headline-filter {
        border: solid 1px var(--primary-color);
        background-color: transparent;
        color: var(--primary-color);
    }

    .headlines-filters .headline-filter:hover,
    .headlines-filters .headline-filter:focus-visible,
    .headlines-filters .headline-filter.active {
        background-color: var(--primary-color);
        color: var(--black);
    }
    
    .headlines-list {
        display: grid;
        grid-template-columns: 1fr;
        gap: 42px;
        margin-bottom: 78px;
    }

    .headlines-list .ad-container.grid-center {
        display: none;
    }

    .headlines-list .card {
        display: flex;
        flex-direction: column;
        gap: 23px;
        cursor: pointer;
    }

    .headlines-list .card .card-img img {
        width: 100%;
        height: 210px;
    }


    /*article .card__image a {
    display: block;
    width: 100%;
    height: 100%;
}

article .card__image a img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}*/

    .headlines-list .card .card-infos {
        display: flex;
        flex-direction: column;
        gap: 18px;
    }

    .headlines-list .card .card-infos .card-category {
        font: var(--proxima-bold);
        font-size: 0.875rem;
        line-height: 1rem;
        text-transform: uppercase;
    }

    .headlines-list .card .card-infos .card-title,
    .headlines-list .card .card-infos .card-title a {
        font: var(--darkmode-bold);
        font-size: 1.5rem;
        line-height: 2rem;
        color: var(--primary-color);
        margin: 0;
        text-decoration: none;
    }

    .headlines-list .card .card-infos .card-date {
        font: var(--proxima-regular);
        font-size: 1rem;
    }

    /*-------------------------------------------*\
        Agenda page - 200px
    \*-------------------------------------------*/

    .wrap-content-agenda {
        position: relative;
    }

    .wrap-content-agenda-dino::after {
        content: "";
        position: absolute;
        top: -25px;
        right: -445px;        

        width: 1000px;
        height: 780px;

        background-image: url("../img/dinosaure-agenda.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: -1;
    }

    .wrap-content-agenda h1 {
        display: flex;
        align-items: end;
        justify-content: space-between;

        position: relative;
    }

    .wrap-content-agenda .sponsors {
        display: flex;
        align-items: center;
        gap: 1rem;

        position: absolute;
        bottom: -65px;
    }

    .wrap-content-agenda .sponsor {
        display: flex;
        flex-direction: column;
        align-items: start;

        color: var(--white);
        text-decoration: none;
    }

    .wrap-content-agenda .sponsor p {
        margin: 0;

        font: var(--proxima-bold);
        font-size: 0.625rem;
        line-height: 0.75rem;
    }

    .wrap-content-agenda .sponsor img {
        width: 186px;
        height: 27px;
    }

    .page-agenda {
        margin-top: 105px;
    }

    .page-agenda .wp-block-image {
        margin-block: 7px;
    }

    .page-agenda .page-sponsor img {
        width: 100%;
        height: auto;
        display: block;
    }

    .page-agenda .page-sponsor.page-sponsor-mobile {
        grid-column: 1/-1;
        margin-bottom: 20px;
    }

    .page-agenda .page-sponsor.page-sponsor-desktop {
        display: none;
    }

    /*-------------------------------------------*\
        Stickers page - 200px
    \*-------------------------------------------*/

    .sticker-block-container .auto-promotion-block p {
        max-width: 320px;
    }

    .sticker-block-container {
        margin-bottom: 40px;
    }

    .frm {
        font: var(--darkmode-regular);
        font-size: 1.25rem;
        line-height: 1.5625rem;

        display: grid;
        grid-template-columns: 1fr;
        gap: 43px;

        --main-color: var(--primary-color);
        --selection-color: var(--white);
    }

    .frm ::placeholder {
        color: var(--gray);
        line-height: 1.375rem;
    }

    .frm .form-field {
        position: relative;
    }

    .frm .form-field input:not([type="radio"], [type="checkbox"]) {
        border: none;
        border-bottom: solid 1px var(--white);
        background-color: transparent;
        padding-bottom: 15px;
        width: 100%;
        color: var(--main-color);
        transition: border-color .2s ease;
    }

    .frm .form-field input:not([type="radio"], [type="checkbox"]):focus-within {
        outline: none;
    }

    .form-field::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 2px;
        background: var(--main-color);
        transform: scaleX(0);
        transition: transform .2s ease;
    }

    .form-field:focus-within::after {
        transform: scaleX(1);
    }

    .frm .form-field input:not([type="radio"], [type="checkbox"])::selection {
        background-color: var(--selection-color);
    }

    .frm button.btn {
        justify-self: left;
        background-color: var(--main-color);
    }

    .form-field label {
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        transition: all 0.2s ease;
        pointer-events: none;
        transform-origin: top left;
        opacity: 0.5;

        font: var(--darkmode-regular);
        font-size: 1.25rem;
        line-height: 1.375rem;
        padding-bottom: 20px;
        color: var(--gray);
    }

    /* Focus OR field with a value */
    .form-field input:focus + label,
    .form-field input:not(:placeholder-shown) + label {
        top: 0;
        transform: translateY(-60%);
        padding-bottom: 15px;
        font-size: 1.125rem;
        color: var(--white);
        opacity: 1;
    }

    /* Source: https://getcssscan.com/css-radios-examples #11 by Abubaker Saeed */
    label.radio-wrapper {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-wrap: nowrap;
    
        margin: 12px 0;
    
        cursor: pointer;
        position: relative;

        --c-primary: var(--main-color);
        --c-radio-size: 24px;
        --c-radio-border-width: 2px;
    }
    
    label.radio-wrapper input[type="radio"] {
        opacity: 0;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        z-index: -1;
    }

    label.radio-wrapper .design {
        width: var(--c-radio-size);
        height: var(--c-radio-size);

        display: flex;
        align-items: center;
        justify-content: center;
    
        border: var(--c-radio-border-width) solid var(--c-primary);
        border-radius: 100%;
        margin-right: .9em;
    
        position: relative;
    }
    
    label.radio-wrapper .design::before,
    label.radio-wrapper .design::after {
        content: "";
        display: block;
    
        width: inherit;
        height: inherit;
    
        border-radius: inherit;
    
        position: absolute;
        transform: scale(0);
        transform-origin: center center;
    }

    label.radio-wrapper .design:before {
        background: var(--c-primary);
        opacity: 0;
        transition: .3s;
    }

    label.radio-wrapper .design::after {
        background: var(--c-primary);
        opacity: .4;
        transition: .6s;
    }

    label.radio-wrapper input:checked + .design::before {
        opacity: 1;
        transform: scale(.6);
    }

    label.radio-wrapper input:hover + .design,
    label.radio-wrapper input:focus + .design {
        border: var(--c-radio-border-width) solid var(--c-primary);
    }
    
    label.radio-wrapper input:hover + .design:before,
    label.radio-wrapper input:focus + .design:before {
        background: var(--c-primary);
    }
    
    label.radio-wrapper input:hover ~ .text {
        color: var(--c-primary);
    }
    
    label.radio-wrapper input:focus + .design::after,
    label.radio-wrapper input:active + .design::after {
        opacity: .1;
        transform: scale(2.6);
    }

    /* Source: https://getcssscan.com/css-checkboxes-examples #33 by Jonas Sandstedt */
    .checkbox-wrapper {
        --s-xsmall: 0.625em;
        --s-small: 1.2em;
        --border-width: 2px;
        --c-primary: var(--primary-color);
        --c-primary-rgb: var(--primary-color-rgb);
        --c-primary-20-percent-opacity: rgb(var(--c-primary-rgb) / 20%);
        --c-primary-10-percent-opacity: rgb(var(--c-primary-rgb) / 10%);
        --t-base: 0.4s;
        --t-fast: 0.2s;
        --e-in: ease-in;
        --e-out: cubic-bezier(.11,.29,.18,.98);
    }

    .checkbox-wrapper .visuallyhidden {
        border: 0;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    .checkbox-wrapper .checkbox {
        display: flex;
        /*align-items: center;*/
        justify-content: flex-start;
    }
    .checkbox-wrapper .checkbox + .checkbox {
        margin-top: var(--s-small);
    }
    .checkbox-wrapper .checkbox__symbol {
        display: inline-block;
        display: flex;
        margin-right: 15px;
        border: var(--border-width) solid var(--c-primary);
        position: relative;
        border-radius: 0.1em;
        min-width: 24px;
        height: 24px;
        transition: box-shadow var(--t-base) var(--e-out), background-color var(--t-base);
        box-shadow: 0 0 0 0 var(--c-primary-10-percent-opacity);
    }
    .checkbox-wrapper .checkbox__symbol:after {
        content: "";
        position: absolute;
        top: 0.5em;
        left: 0.5em;
        width: 0.25em;
        height: 0.25em;
        background-color: var(--c-primary-20-percent-opacity);
        opacity: 0;
        border-radius: 3em;
        transform: scale(1);
        transform-origin: 50% 50%;
    }
    .checkbox-wrapper .checkbox .icon-checkbox {
        width: 1em;
        height: 1em;
        margin: auto;
        fill: none;
        stroke-width: 3;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-miterlimit: 10;
        color: var(--c-primary);
        display: inline-block;
    }
    .checkbox-wrapper .checkbox .icon-checkbox path {
        transition: stroke-dashoffset var(--t-fast) var(--e-in);
        stroke-dasharray: 30px, 31px;
        stroke-dashoffset: 31px;
    }
    .checkbox-wrapper .checkbox__textwrapper {
        margin: 0;
    }
    .checkbox-wrapper .checkbox__trigger:checked + .checkbox__symbol:after {
        -webkit-animation: ripple-33 1.5s var(--e-out);
                animation: ripple-33 1.5s var(--e-out);
    }
    .checkbox-wrapper .checkbox__trigger:checked + .checkbox__symbol .icon-checkbox path {
        transition: stroke-dashoffset var(--t-base) var(--e-out);
        stroke-dashoffset: 0px;
    }
    .checkbox-wrapper .checkbox__trigger:focus + .checkbox__symbol {
        box-shadow: 0 0 0 0.25em var(--c-primary-20-percent-opacity);
    }

    @-webkit-keyframes ripple-33 {
        from {
            transform: scale(0);
            opacity: 1;
        }
        to {
            opacity: 0;
            transform: scale(20);
        }
    }

    @keyframes ripple-33 {
        from {
            transform: scale(0);
            opacity: 1;
        }
        to {
            opacity: 0;
            transform: scale(20);
        }
    }

    /*-------------------------------------------*\
        Donation page - 200px
    \*-------------------------------------------*/

    .page-donation .wp-block-paragraph {
        margin: 0;
    }

    .page-donation .btn-close-donation {
        display: none;
    }

    .block-donation-container.hide-desktop {
        margin-top: -40px;
    }

    .block-donation-container.force-hide {
        display: none !important;
    }

    .bloc-donation {
        border: solid 10px var(--red);
        background-color: var(--white);
        color: var(--black);
        padding: 30px 36px;
        padding-bottom: 0;
        margin-bottom: 48px;

        display: flex;
        flex-direction: column;
        gap: 5px;

        position: relative;
    }

    .bloc-donation .btn-close-donation {
        position: absolute;
        top: 0;
        right: 0;
        padding: 13px;
        cursor: pointer;
        z-index: 1;
    }

    .bloc-donation .btn-close-donation img {
        width: 16px;
        height: 16px;
    }

    .bloc-donation .donation-title {
        font: var(--proxima-extrabold);
        font-size: 1.625rem;
        line-height: 1.5rem;
        margin: 0;
    }

    .bloc-donation p {
        margin: 0;
        font: var(--proxima-regular);
        font-size: 1.25rem;
        line-height: 1.5625rem;
    }

    .bloc-donation .btn-donate {
        border-color: var(--black);
        background-color: var(--black);
        color: var(--white);
        display: inline-block;

        font: var(--proxima-bold);
        font-size: 1.125rem;
        line-height: 1rem;

        width: 110%;
        margin-left: -15px;
    }

    .bloc-donation label.radio-wrapper {
        --c-primary: var(--red);
        --c-radio-size: 1.4rem;
        --c-radio-border-width: 2px;
        font: var(--proxima-bold);
        font-size: 1.25rem;
        line-height: 1.3125px;
    }

    .bloc-donation #frm_donate {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .bloc-donation .donation-amounts {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 0 20px;
    }

    .bloc-donation .donation-img {
        width: 269px;
        height: 225px;

        margin: 0 auto;

        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
    }

    .bloc-donation .frm-donation-footer {
        margin-inline: auto;
        margin-bottom: 25px;
    }

    /*-------------------------------------------*\
        Association GRRIF page - 200px
    \*-------------------------------------------*/

    .page-association ::selection {
        background: var(--association-primary-color);
        color: var(--white);
    }

    .page-association ::-webkit-selection {
        background: var(--association-primary-color);
        color: var(--white);
    }

    .page-association ::-moz-selection {
        background: var(--association-primary-color);
        color: var(--white);
    }

    .page-association h1 {
        color: var(--association-primary-color);
    }

    .page-association h2.wp-block-heading {
        font-size: 2.5rem;
        line-height: 3rem;
        margin-bottom: 25px;
    }

    .page-association p.wp-block-paragraph {
        margin-bottom: 1rem;
    }

    .page-association .center-render {
        width: fit-content;
        margin-inline: auto;
        pointer-events: none;
        cursor: default;
    }

    .page-association .wp-block-quote p::before,
    .page-association .wp-block-quote p::after {
        color: var(--association-primary-color);
    }

    .page-association .comittee-list {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        gap: 43px 0;
        padding-inline: 30px;
    }

    .page-association .comittee-list .comittee-member {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 18px;
        position: relative;
    }

    .page-association .comittee-list .comittee-member:first-of-type::before {
        content: "";
        position: absolute;

        width: calc(100% * 447 / 314);
        left: calc(-100% * 225 / 314);
        aspect-ratio: 447 / 366;
        top: 0;

        background: url("../img/leaf.svg") center / contain no-repeat;
        z-index: -1;
    }

    .page-association .comittee-list .comittee-member:nth-of-type(4)::before {
        content: "";
        position: absolute;

        width: calc(100% * 104 / 314);
        aspect-ratio: 104 / 295;

        right: calc(100% * 0 / 314);
        top: calc(-100% * 50 / 314);

        transform: rotate(30deg);

        background: url("../img/torch.svg") center / contain no-repeat;
        z-index: -1;
    }

    .page-association .comittee-list .comittee-member:last-of-type::before {
        content: "";
        position: absolute;

        width: calc(100% * 134 / 314);
        aspect-ratio: 134 / 274;

        left: calc(-100% * 45 / 314);
        top: calc(-100% * 150 / 314);

        transform: rotate(-7deg);

        background: url("../img/small-paws.svg") center / contain no-repeat;
        z-index: -1;
    }

    .page-association .comittee-list .comittee-member .comittee-member-img {
        min-width: 314px;
        width: 100%;
        aspect-ratio: 1;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        border-radius: 50%;
    }

    .page-association .comittee-list .comittee-member .comittee-member-infos {
        text-align: center;
    }

    .page-association .comittee-list .comittee-member .comittee-member-infos h3 {
        margin-bottom: 6px;
        font: var(--proxima-bold);
        font-size: 1rem;
        line-height: 1.1875rem;
    }

    .page-association .comittee-list .comittee-member .comittee-member-infos p {
        margin: 0;
        font: var(--proxima-light);
        font-size: 1rem;
        line-height: 1.1875rem;
    }

    .page-association .sponsors-asso {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .page-association .sponsors-asso .sponsor-asso-item {
        width: 100%;
        min-width: 177px;

        aspect-ratio: 1 / 1;

        background-color: white;
        border-radius: 50%;

        display: flex;
        align-items: center;
        justify-content: center;
    }

    .page-association .sponsors-asso .sponsor-asso-item img {
        max-width: 140px;
        height: auto;
    }

    .page-association a {
        color: var(--association-primary-color);
        text-decoration-color: var(--association-primary-color);
    }

    .page-association a:hover {
        text-decoration-color: var(--association-primary-color);
    }

    .page-association .frm {
        --main-color: var(--association-primary-color);
    }

    .page-association .frm .form-field input:not([type="radio"], [type="checkbox"])::selection {
        background-color: var(--association-primary-color);
        color: var(--black);
    }

    .page-association .frm-text-after {
        margin-top: 45px;
    }

    /*-------------------------------------------*\
        Detail article page - 200px
    \*-------------------------------------------*/

    .wrap-content-sponsors .sponsors-container {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        margin-bottom: 48px;
    }

    .wrap-content-sponsors .sponsors-container p {
        font: var(--proxima-light);
        font-size: 0.75rem;
        line-height: 0.9375rem;
        color: var(--white);
        margin: 0;
    }

    .wrap-content-sponsors .sponsors {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 1rem;
    }

    .wrap-content-sponsors .sponsors a {
        font: var(--proxima-light);
        font-size: 0.75rem;
        line-height: 0.9375rem;
        color: var(--white);
    }

    .wrap-content-sponsors .sponsors a img {
        max-width: 200px;
        height: auto;
    }

    .page-detail-article-header {
        border-bottom: 1px var(--white) solid;
        margin-bottom: 30px;
    }

    .page-detail-article-header h1 {
        border: none;
        padding: 0;
        font: var(--darkmode-black);
        font-size: 2.5rem;
        line-height: 3rem;
    }

    .page-detail-article-header .article-infos {
        font: var(--proxima-bold);
        font-size: 0.875rem;
        line-height: 1.375rem;
        color: var(--white);
        margin-bottom: 20px;
    }

    .page-detail-article-header .article-infos .article-category {
        color: var(--primary-color);
        text-transform: uppercase;
        text-decoration: none;
    }

    .page-detail-article-header .article-infos .article-category:hover {
        text-decoration: underline;
    }

    .page-detail-article-header .article-infos .article-author a {
        text-decoration: none;
        color: var(--white);
        display: inline-block;
    }

    .article-chapeau {
        margin-bottom: 30px;
    }

    .inline-player-grrif {
        width: 100%;
        max-width: 100%;
        position: relative;
        margin-bottom: 35px;
    }

    .inline-player-grrif::before {
        content: "";
        position: absolute;
        top: -15px;
        left: -45px;

        width: 62px;
        height: 104px;

        background-image: url("../img/ear.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        z-index: 4;
    }

    .inline-player-grrif,
    .inline-player-grrif .mejs__container,
    .inline-player-grrif .mejs__controls:not([style*='display: none']) {
        max-height: 68px;
        min-height: 68px;
        background: none;
        background-color: var(--primary-color);
    }

    .inline-player-grrif .mejs__container {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 68px !important;
    }

    .inline-player-grrif .mejs__controls {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 30px;

        padding: 10px 20px 10px 30px;

        width: 100%;
    }

    .inline-player-grrif .player-buttons {
        display: flex;
        align-items: center;
        justify-content: left;
        gap: 15px;
        max-height: 48px;
    }

    .inline-player-grrif .mejs__play {
        background-color: var(--red);
        background-image: url('../img/icons/audio-play.svg');
        background-position: center center;
        background-repeat: no-repeat;

        width: 44px;
        height: 44px;
        border-radius: 50%;
    }

    .inline-player-grrif .mejs__pause {
        background-color: var(--red);
        background-image: url('../img/icons/audio-pause.svg');
        background-position: center center;
        background-repeat: no-repeat;

        width: 44px;
        height: 44px;
        border-radius: 50%;
    }

    .inline-player-grrif .mejs__button.mejs__skip-back-button {
        background-image: url('../img/icons/audio-skip-back.svg');
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;

        width: 36px;
        height: 36px;
        color: transparent;
    }

    .inline-player-grrif .mejs__button.mejs__jump-forward-button {
        background-image: url('../img/icons/audio-jump-forward.svg');
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;

        width: 36px;
        height: 36px;
        color: transparent;
    }

    .inline-player-grrif .mejs__pause, 
    .inline-player-grrif .mejs__play,
    .inline-player-grrif .mejs__button.mejs__jump-forward-button,
    .inline-player-grrif .mejs__button.mejs__skip-back-button {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .inline-player-grrif button:focus-visible {
        outline: 3px solid #000;
        outline-offset: 3px;
        border-radius: 4px;
    }

    .inline-player-grrif .mejs__pause>button, 
    .inline-player-grrif .mejs__play>button,
    .inline-player-grrif .mejs__button.mejs__jump-forward-button button,
    .inline-player-grrif .mejs__button.mejs__skip-back-button button {
        margin: 0;
        border-radius: 50%;
    }

    .inline-player-grrif .mejs__pause>button, 
    .inline-player-grrif .mejs__play>button {
        width: 44px;
        height: 44px;
    }

    .inline-player-grrif .mejs__button.mejs__jump-forward-button button,
    .inline-player-grrif .mejs__button.mejs__skip-back-button button {
        width: 36px;
        height: 36px;
    }

    .inline-player-grrif .player-progress {
        display: flex;
        flex-direction: column;
        gap: 3px;

        min-width: 100%;
        max-width: 100%;
        height: 100%;
        max-height: 48px;
    }

    .inline-player-grrif .player-progress .mejs__time-rail {
        margin: 0;
        padding: 0;
        min-width: 100%;
        height: fit-content;
        display: flex;
        align-items: center;
    }

    .inline-player-grrif .player-progress .mejs__time-total {
        width: 100% !important;
    }

    .inline-player-grrif .player-times {
        display: flex;
        justify-content: end;
        align-items: center;
        gap: 6px;

        padding: 0 4px;
    }

    .inline-player-grrif .player-times .mejs__time,
    .inline-player-grrif .player-times .time-separator {
        box-sizing: border-box;
        font: var(--proxima-regular);
        font-size: 1rem;
        line-height: 1.375rem;
        color: var(--black);
    }

    .inline-player-grrif .mejs__time-buffering {
        height: 3px;
    }

    .inline-player-grrif .mejs__time-loaded,
    .inline-player-grrif .mejs__time-hovered {
        height: 3px;
        background-color: rgba(255, 0, 0, 0.557);
    }

    .inline-player-grrif .mejs__time-current {
        background-color: var(--red);
        height: 3px;
    }

    .inline-player-grrif .mejs__time-handle-content {
        border-radius: 50%;
        height: 17px;
        width: 17px;
        background-color: var(--red);
        border: none;
        margin-top: -7px;
        margin-left: -5px;

        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

    .inline-player-grrif .mejs__time-total.mejs__time-slider {
        height: 3px;
        background-color: var(--black);
        margin: 0;
    }

    .inline-player-grrif .mejs__time.mejs__currenttime-container,
    .inline-player-grrif .mejs__time.mejs__duration-container {
        padding: 0;
        width: 45px;
        min-width: 45px;
        flex: 0 0 45px;
        text-align: center;
    }

    .page-detail-article p {
        font: var(--proxima-regular);
        font-size: 1.25rem;
        line-height: 1.875rem;
    }

    .page-detail-article .separator {
        margin: 48px 0;
        border-color: var(--white);
    }

    .page-detail-article .article-social-share-title {
        font: var(--proxima-bold);
        font-size: 1.5rem;
        line-height: 1.375rem;
        margin-bottom: 30px;
    }

    .page-detail-article .article-social-share {
        display: flex;
        align-items: center;
        gap: 20px;
    }

    .page-detail-article .article-social-share .social-item a, 
    .page-detail-article .article-social-share .social-item > button {
        display: flex;
        align-items: center;
        justify-content: center;

        width: 56px;
        height: 56px;
        border-radius: 50%;
        border: solid 1px var(--primary-color);

        transition: transform 0.2s ease;
    }

    .page-detail-article .article-social-share .social-item a:hover,
    .page-detail-article .article-social-share .social-item > button:hover,
    .page-detail-article .article-social-share .social-item > button:active {
        transform: translateY(-2px);
    }

    .page-detail-article .article-social-share .social-item .share-copy-trigger img {
        width: 22px;
        height: 22px;
    }
    
    .page-detail-article .article-social-share .social-item.share-mail img {
        width: 26px;
        height: 17px;
    }

    .page-detail-article .article-social-share .social-item.share-facebook img {
        width: 12px;
        height: 26px;
    }

    /*---------------------*\
        Share link popover 
    \*---------------------*/
    
    .page-detail-article .article-social-share .social-item.share-copy {
        position: relative;
    }

    .page-detail-article .article-social-share .article-share-link-container {
        position: fixed;

        top: auto;
        bottom: 16px;

        left: 16px;
        right: 16px;

        width: auto;
        max-width: none;
        height: fit-content;

        padding: 16px;

        background: #fff;
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 14px;

        box-shadow:
            0 20px 40px rgba(0, 0, 0, 0.12),
            0 4px 12px rgba(0, 0, 0, 0.06);

        opacity: 0;
        visibility: hidden;
        pointer-events: none;

        transform: translateY(10px) scale(.98);
        transform-origin: bottom center;

        transition:
            opacity .18s ease,
            transform .18s ease,
            visibility .18s ease;

        z-index: 1000;
    }

    .page-detail-article .article-social-share .social-item.share-copy.is-open .article-share-link-container {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;

        transform: translateY(0) scale(1);
    }

    .page-detail-article .article-social-share .article-share-link-container::before {
        display: none;
        content: "";

        position: absolute;

        top: -7px;
        right: 28px;

        width: 13px;
        height: 13px;

        background: #fff;

        border-top: 1px solid rgba(0, 0, 0, 0.08);
        border-left: 1px solid rgba(0, 0, 0, 0.08);

        transform: rotate(45deg);
    }

    .article-share-link-header {
        display: flex;
        align-items: center;
        justify-content: space-between;

        margin-bottom: 12px;
    }

    .article-share-link-title {
        display: flex;
        align-items: center;
        gap: 8px;

        color: var(--black);
        font-size: 0.875rem;
        font-weight: 600;
    }

    .article-share-link-icon {
        display: flex;
        align-items: center;
        justify-content: center;

        width: 22px;
        height: 22px;

        flex-shrink: 0;

        border-radius: 50%;

        background: #dcfce7;
        color: var(--green);

        font-size: 0.75rem;
        font-weight: 700;
    }

    .article-share-link-close {
        display: flex;
        align-items: center;
        justify-content: center;

        width: 28px;
        height: 28px;

        flex-shrink: 0;

        padding: 0;

        border: 0;
        border-radius: 50%;

        background: transparent;
        color: var(--gray);

        font-size: 1.375rem;
        line-height: 1;

        cursor: pointer;
    }

    .article-share-link-status {
        font: var(--proxima-bold);
        font-size: 1rem;
    }

    .article-share-link-input-wrapper {
        display: flex;
        align-items: center;

        width: 100%;

        padding: 4px;

        background: #f5f6f8;

        border: 1px solid var(--dark-gray);
        border-radius: 9px;

        transition:
            border-color 0.15s ease,
            box-shadow 0.15s ease;
    }

    .article-share-link-input-wrapper:focus-within {
        border-color: var(--primary-color);

        box-shadow:
            0 0 0 3px rgba(0, 0, 0, 0.05);
    }

    .article-share-link-input {
        min-width: 0;
        flex: 1;

        height: 38px;

        padding: 0 8px;

        border: 0;
        outline: 0;

        background: transparent;

        color: var(--black);

        font: var(--proxima-regular);
        font-size: 1rem;
    }

    .article-share-link-copy {
        display: flex;
        align-items: center;
        justify-content: center;

        width: 34px;
        height: 34px;

        flex: 0 0 34px;

        padding: 0;

        border: 0;
        border-radius: 7px;

        background: var(--primary-color);
        color: var(--black);

        cursor: pointer;
    }

    .article-share-link-copy img {
        width: 16px;
        height: 16px;
    }

    .article-share-link-help {
        margin: 8px 0 0;

        color: #9ca3af;

        font-size: 11px;
        line-height: 1.4;
    }

    /*-------------------------------------------*\
        Page Contests - 200px
    \*-------------------------------------------*/

    .page-contests .contests-list {
        display: grid;
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .page-contests .contest-item.card-contest {
        display: flex;
        flex-direction: column;
        color: white;
        cursor: pointer;
    }

    .page-contests .contest-item.card-contest.card-contest-association .contest-association-mention {
        font: var(--proxima-bold);
        color: white;
        text-transform: uppercase;
        margin-top: 20px;
        font-size: 0.875rem;
        line-height: 1rem;
    }

    .page-contests .contest-item.card-contest img {
        width: 100%;
    }

    .page-contests .contest-item.card-contest a,
    .page-contests .contest-item.card-contest a:hover {
        text-decoration: none;
    }

    .page-contests .contest-item.card-contest .contest-title-link {
        margin-top: 25px;
    }

    .page-contests .contest-item.card-contest h3 {
        font: var(--darkmode-bold);
        font-size: 1.5rem;
        line-height: 2rem;
    }

    .page-contests .contest-item.card-contest .contest-info {
        font: var(--proxima-bold);
        font-size: 1.125rem;
        line-height: 1.375rem;
        margin-top: 20px;
    }

    .page-contests .contest-item.card-contest h3,
    .page-contests .contest-item.card-contest .contest-info {
        color: var(--primary-color);
    }    

    .page-contests .contest-item.card-contest.card-contest-association h3,
    .page-contests .contest-item.card-contest.card-contest-association .contest-info {
        color: var(--association-primary-color);
    }

    .page-contests .adzone-page-contests {
        margin-block: 45px;
    }

    .page-contests .adzone-page-contests.last {
        margin-bottom: 0;
    }

    .page-contests .AdZoneSquare-container {
        grid-column: 1 / -1;
    }

    /*-------------------------------------------*\
        Page Contest - 200px
    \*-------------------------------------------*/

    .page-contest .lang-switch-container {
        width: 100%;
        margin-inline: auto;
    }
    
    .page-contest .page-contest-header {
        margin-inline: auto;

        display: flex;
        flex-direction: column;
        align-items: baseline;

        border-bottom: solid 1px white;
        margin-bottom: 30px;
    }

    .page-contest .page-contest-header .contest-title {
        display: flex;
        flex-direction: column-reverse;
    }

    .page-contest .lang-switch .lang-switch__option {
        font-size: 1.125rem;
    }

    .page-contest .page-contest-header .contest-title h1 {
        font: var(--darkmode-black);
        font-size: 2.5rem;
        line-height: 3rem;
        border: none;
        padding: 0;
        margin-bottom: 20px;
    }

    .page-contest .page-contest-header .contest-info {
        font: var(--proxima-bold);
        font-size: 1.375rem;
        line-height: 2.125rem;
        margin-bottom: 14px;
    }

    .frm-contest-availables-dates {
        display: flex;
        flex-direction: column;
    }

    /*-------------------------------------------*\
        Page Search - 200px
    \*-------------------------------------------*/

    .page-search .search-form-container {
        margin-bottom: 40px;
    }

    .page-search .search-form {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .page-search .search-form .search-input {
        border: none;
        padding: 10px;
        font: var(--proxima-bold);
        font-size: 0.875rem;
        line-height: 1rem;
    }

    .page-search .search-empty-value {
        font-style: italic;
        font-size: 0.875rem;
        margin-top: 5px;
    }

    .page-search .search-result-label {
        font-size: 0.875rem;
        text-align: right;
    }

    /*-------------------------------------------*\
        Page Contest Association - 200px
    \*-------------------------------------------*/

    .page-contest-association h3.reserved-member {
        color: var(--association-primary-color);
    }

    .page-contest-association .wp-inner-container {
        margin-bottom: 50px;
    }

    .page-contest-association .frm {
        --main-color: var(--association-primary-color);
    }

    .page-contest-association .frm .checkbox-wrapper {
        --c-primary: var(--association-primary-color);
    }

    /*-------------------------------------------*\
        Page fixe - 200px
    \*-------------------------------------------*/
    .page-fixe-body h2.wp-block-heading {
        margin-bottom: 15px;
        font-size: 2.5rem;
        line-height: 3rem;
    }

    .page-fixe-body h3.wp-block-heading {
        margin-bottom: 10px;
    }

    .page-fixe-body hr.wp-block-separator {
        margin-block: 40px;
    }

    .page-fixe-body p.wp-block-paragraph {
        margin-bottom: 1rem;
    }

    .page-fixe-body figure a[data-lightbox="content"] {
        pointer-events: none;
        cursor: default;
    }

    .page-fixe-body figure.left-render img {
        margin-left: -31%;
        min-width: 120%;
    }

    .page-fixe-body figure.large-center-render {
        margin-inline: 0;
        margin-left: -50%;
        max-height: 236px;
        height: 236px;
        width: auto;
    }

    .page-fixe-body figure.large-center-render img {
        max-height: 236px;
        height: 236px;
        width: auto;
    }

    .page-fixe-body .stores-list {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 20px;
    }

    .page-fixe-body .stores-list figure {
        margin-bottom: 0;
    }

    /* Badges App Store / Google Play (illustrations du thème) : 60px de haut comme dans la maquette */
    .page-fixe-body figure.store-badge img {
        width: var(--illustration-width);
        max-width: 100%;
        height: auto;
    }

    .page-in-between-wrap .full-object.anchor-list {
        display: flex;
        flex-wrap: wrap;
        gap: 1.25rem 0;
        margin-bottom: 35px;
    }

    .wp-block-accordion-panel[hidden] {
    display: none !important;
}


    /*-------------------------------------------*\
        Error 404 - 200px
    \*-------------------------------------------*/

    .e404 h2 {
        font-size: 2.5rem;
        line-height: 3rem;
        margin-bottom: 18px;
    }

    .e404 p {
        font: var(--proxima-bold);
        font-size: 1.375rem;
        line-height: 2.125rem;
        margin-bottom: 20px;
    }

    .e404 .btn {
        margin-bottom: 40px;
    }

    .e404 img {
        margin: 0 auto;
    }

    /*-------------------------------------------*\
        Modal - 200px
    \*-------------------------------------------*/

    .grrif-modal {
        position: fixed;
        inset: 0;
        z-index: 1000;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    .grrif-modal[hidden] {
        display: none;
    }
    
    .grrif-modal__backdrop {
        position: absolute;
        inset: 0;
        background: rgba(17, 17, 17, 0.5);
        border: 0;
        padding: 0;
        cursor: pointer;
    }
    
    .grrif-modal__dialog {
        position: relative;
        background: #fff;
        border: 1px solid var(--black, #111);
        border-radius: 6px;
        max-width: 360px;
        width: calc(100% - 32px);
        padding: 24px;
        animation: modal-in 0.18s ease;
    }
    
    @keyframes modal-in {
        from { opacity: 0; transform: translateY(8px); }
        to   { opacity: 1; transform: translateY(0); }
    }
    
    .grrif-modal__close {
        position: absolute;
        top: 16px;
        right: 16px;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: none;
        border: 0;
        color: #999;
        cursor: pointer;
    }
    
    .grrif-modal__icon {
        width: 44px;
        height: 44px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 16px;
    }
    
    .grrif-modal--success .grrif-modal__icon {
        background: var(--color-yellow, #FCE537);
        color: #111;
    }
    .grrif-modal--success .grrif-modal__icon-error {
        display: none;
    }
    
    .grrif-modal--error .grrif-modal__icon {
        /*background: var(--black, #111);*/
        background: var(--red);
        color: #fff;
    }
    .grrif-modal--error .grrif-modal__icon-success {
        display: none;
    }

    .grrif-modal--warning .grrif-modal__icon-success {
        display: none;
    }
    
    .grrif-modal__title {
        font-size: 1.125rem;
        font-weight: 800;
        color: var(--black, #111);
        margin: 0 0 8px;
    }
    
    .grrif-modal__body {
        font-size: 0.875rem;
        color: #555;
        margin: 0 0 24px;
        line-height: 1.5;
    }
    
    .grrif-modal__action {
        width: 100%;
        border: 0;
        border-radius: 4px;
        padding: 13px;
        font-size: 0.8125rem;
        font-weight: 800;
        letter-spacing: 0.02em;
        text-transform: uppercase;
        cursor: pointer;
    }
    
    .grrif-modal--success .grrif-modal__action {
        background: var(--black, #111);
        color: var(--color-yellow, #FCE537);
    }
    
    .grrif-modal--error .grrif-modal__action,
    .grrif-modal--warning .grrif-modal__action {
        background: #f4f3ef;
        color: var(--black, #111);
        border: 1px solid var(--black, #111);
    }
    
    .grrif-modal__close:focus-visible,
    .grrif-modal__action:focus-visible,
    .grrif-modal__backdrop:focus-visible {
        outline: 2px solid var(--black, #111);
        outline-offset: 2px;
    }
    
    /* Empêche le scroll de la page derrière la modal ouverte */
    body.grrif-modal-open {
        overflow: hidden;
    }
    
    @media (prefers-reduced-motion: reduce) {
        .grrif-modal__dialog {
            animation: none;
        }
    }


    /*-------------------------------------------*\
        Splash - 200px
    \*-------------------------------------------*/

    .glightbox-ad-splash .ginner-container {
        width: 100%;
        height: 100%;
        display: block;
        gap: 0;
    }

    .glightbox-ad-splash .gslide-inner-content {
        height: 100%;
    }

    .glightbox-ad-splash .gslide-inline {
        margin: 0;
    }

    .glightbox-ad-splash .gslide-inline .ginlined-content {
        padding: 0;
        background-color: var(--black);
    }

    .glightbox-ad-splash .gslide {
        width: 100% !important;
        height: 100% !important;
    }

    .glightbox-ad-splash .gslide-media {
        width: 100% !important;
        height: 100% !important;
    }

    .glightbox-ad-splash .gclose {
        width: 40px;
        height: 40px;
        top: 15px;
        right: 10px;
        position: absolute;
    }

    .glightbox-ad-splash .gclose, .glightbox-clean .gnext, .glightbox-clean .gprev {
        background-color: rgba(0, 0, 0, .75);
        border-radius: 50%;
    }

    .glightbox-ad-splash .gclose svg {
        width: 18px;
        height: auto;
    }

    .glightbox-ad-splash .gclose path {
        fill: var(--white);
    }

    #InlineGRRIFLIGHTBOX {
        max-width: 100%;
        max-height: 100%;
        width: 100%;
        height: 100%;
        /*width: auto;
        height: auto;*/
        object-fit: contain;
    }
}

@media screen and (min-width: 530px) {
    .ad-billboard-zone {
        display: block;
    }

    .ad-billboard-zone #ad-billboard-zone-1 {
		display: block;
        /* Place réservée avant l'arrivée de la pub (format Revive 1380×140) :
           évite que le header et la page descendent au chargement. */
        aspect-ratio: 1380 / 140;
	}

    .ad-billboard-zone #ad-billboard-zone-1 iframe {
        display: block;
    }

	#AdZoneMobile {
		display: none;
	}

    /* DONATION BANNER DISABLE */
	.home .self-promotion {
		display: block;
        margin: 0 auto 48px;
	}

	/*.page .self-promotion, .archive .self-promotion {
		display: none;
	}*/
}

@media screen and (min-width: 900px) {
    .wrap-content-main {
        margin-left: auto;
        margin-right: auto;
    }
}

/*-------------------------------------------*\
    Reponsive - 568px (height)
\*-------------------------------------------*/

@media screen and (max-height: 700px) {
    .header .menu-search-container .menu-search-label {
        display: none;
    }

    .header .menu-container .menu-title {
        margin-bottom: 20px;
    }

    .header .menu-container .menu-search-container {
        margin-bottom: 8px;
    }
    
    .header .menu-container .navbar-separator {
        margin-bottom: 8px;
        margin-top: 16px;
    }

    .header .main-menu .menu {
        margin-top: 4px;
    }

    .header .main-menu .menu .menu-item a {
        padding: 8px;
    }

    .header .main-menu .menu .menu-item:first-child a {
        padding-left: 0;
    }

    .header .main-menu .menu .menu-item:last-child a {
        padding-right: 0;
    }

    .header .main-menu .menu .navbar-donation-item {
        margin-top: 0;
        padding-block: 22px;
    }
}

@media screen and (min-width: 768px) {
    .page-home .events-list {
        grid-auto-columns: 32%;
    }

    /*-------------------------------------------*\
        Events - 768px
    \*-------------------------------------------*/
    .events-list {
        grid-template-columns: 1fr 1fr 1fr;
    }

    /*-------------------------------------------*\
        Auto-promotion blocks - 768px
    \*-------------------------------------------*/
    
    .auto-promotion-block {
        padding-top: 0;
        padding-inline: 40px;
        display: flex;
        flex-direction: row;
        gap: 30px;
        max-height: 195px;
        min-height: 195px;
    }

    .auto-promotion-block .img-hide-desktop {
        display: none;
    }

    .auto-promotion-block .img-hide-mobile {
        display: block;
    }

    .auto-promotion-block h3 {
        margin-bottom: 10px;
        margin-top: 40px;
    }

    .auto-promotion-block p {
        font: var(--proxima-light);
        font-size: 1.1875rem;
        line-height: 1.1875rem;
        margin-bottom: 18px;
    }
    
    .auto-promotion-block button,
    .auto-promotion-block a {
        font-size: 0.875rem;
        line-height: 1rem;
    }

    .auto-promotion-block .block-info-don {
        max-width: 530px;
    }

    .auto-promotion-block .auto-promo-img.dino-don {
        width: 214px;
        height: 195px;
        margin-block: 0;

        width: 269px;
        height: 195px;

        margin: 0;

        position: absolute;
        bottom: 0;
        right: 12px;
    }

    .auto-promotion-block .auto-promo-img.newsletter-img {
        width: 155px;
        height: 175px;
        margin: 5px 0;
    }

    .auto-promotion-block .dino-juge-container {
        height: 195px;
        width: 300px;
        margin-top: 0;
    }

    .auto-promotion-block .auto-promo-img.dino-juge {
        width: 270px;
        height: 230px;
        background-size: cover;
        position: absolute;
        right: 10px;
        bottom: -30px;
    }

    .auto-promotion-block .auto-promo-img.caveman {
        width: 265px;
        height: 220px;

        position: absolute;
        top: -18px;
        right: 40px;
    }

    .inline-player-grrif,
    .inline-player-grrif .mejs__container,
    .inline-player-grrif .mejs__controls:not([style*='display: none']) {
        max-height: 80px;
        min-height: 80px;
    }

    .inline-player-grrif .mejs__controls {
        grid-template-columns: auto 1fr;
    }

    .inline-player-grrif .player-progress {
        flex-direction: row;
        align-items: center;
        gap: 15px;
    }

    .inline-player-grrif .player-progress .mejs__time-rail {
        min-width: fit-content;
    }

    .inline-player-grrif .mejs__time-total.mejs__time-slider {
        height: 5px;
    }

    .inline-player-grrif .mejs__time-handle-content {
        height: 24px;
        width: 24px;
        margin-top: -10px;
    }

    .inline-player-grrif .mejs__time-loaded,
    .inline-player-grrif .mejs__time-hovered,
    .inline-player-grrif .mejs__time-current,
    .inline-player-grrif .mejs__time-buffering {
        height: 5px;
    }

    .inline-player-grrif::before {
        width: 74px;
        height: 123px;
    }

    .inline-player-grrif {
        margin-bottom: 66px;
    }

    /*---------------------*\
        Share link popover 
    \*---------------------*/

    .page-detail-article .article-social-share .article-share-link-container {
        position: absolute;

        top: calc(100% + 12px);
        right: auto;
        left: auto;

        width: min(380px, calc(100vw - 32px));

        padding: 16px;

        background: #fff;
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 14px;

        box-shadow:
        0 20px 40px rgba(0, 0, 0, 0.12),
        0 4px 12px rgba(0, 0, 0, 0.06);

        opacity: 0;
        visibility: hidden;
        pointer-events: none;

        transform: translateY(-8px) scale(.98);
        transform-origin: top right;

        transition:
            opacity .18s ease,
            transform .18s ease,
            visibility .18s ease;

        z-index: 1000;
    }

    /* Arrow */
    .page-detail-article .article-social-share .article-share-link-container::before {
        display: block;
        content: "";

        position: absolute;

        top: -7px;
        left: 25px;

        width: 13px;
        height: 13px;

        background: #fff;

        border-top: 1px solid rgba(0, 0, 0, 0.08);
        border-left: 1px solid rgba(0, 0, 0, 0.08);

        transform: translateX(-50%) rotate(45deg);
    }

    .page-association .comittee-list {
        grid-template-columns: 1fr 1fr;
        gap: 30px 28px;
        padding-inline: 0;
    }

    /*-------------------------------------------*\
        Headlines page - 1088px
    \*-------------------------------------------*/
    
    .headlines-list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: stretch;
        gap: 46px 28px;
    }

    .headlines-list .ad-container.grid-center {
        grid-column: 1 / -1;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .headlines-list .card {
        gap: 17px;
    }

    .headlines-list .card .card-infos {
        gap: 10px;
    }

    .headlines-list .card .card-infos .card-category {
        font-size: 0.75rem;
        line-height: 0.9375rem;
    }

    .headlines-list .card .card-infos .card-title,
    .headlines-list .card .card-infos .card-title a {
        font-size: 1.375rem;
        line-height: 1.875rem;
    }

    .headlines-list .card .card-infos .card-date {
        font-size: 0.875rem;
    }

    .headlines-list .card .card-img img {
        height: 228px;
    }

    .headlines-list .no-article {
        grid-column: 1 / -1;
        margin-bottom: 300px;
    }

    .page-association .sponsors-asso {
        grid-template-columns: 1fr 1fr 1fr;
        gap: 30px 35px;
    }

    .page-association .sponsors-asso .sponsor-asso-item {
        max-width: 194px;
    }

    .page-association .sponsors-asso .sponsor-asso-item img {
        max-width: 154px;
        height: auto;
    }
}

@media screen and (max-width: 1087px) {
    #player-tooltip {
        display: none;
    }

    .header .player .player-playlist .player-playlist-item {
        cursor: default;
    }

    .page-home .auto-promo-section > *:not(:first-child) {
        display: none;
    }
}

/*-------------------------------------------*\
    Desktop - 1088px
\*-------------------------------------------*/

@media screen and (min-width: 1088px) {

    .loader {
        --loader-player-size:       1.332px;
    }

    /*-------------------------------------------*\
        Common - 1088px
    \*-------------------------------------------*/
    
    .hide-mobile {
        display: block !important;
    }

    .hide-desktop {
        display: none !important;
    }

    .hidden {
        display: none !important;
    }

    /*-------------------------------------------*\
        Wrapper - 900px
    \*-------------------------------------------*/

    .layout {
        min-height: 700px;
    }

    .wrap-content {
        margin-left: auto;
        margin-right: auto;
    }

    .wrap-content-header,
    .wrap-content-footer {
        margin: 0 20px;
    }

    .wrap-single-inner p,
    .wrap-single-inner h1,
    .wrap-single-inner h2,
    .wrap-single-inner h3,
    .wrap-single-inner h4,
    .wrap-single-inner h5,
    .wrap-single-inner h6,
    .wrap-single-inner ul,
    .wrap-single-inner ol,
    .wrap-single-inner blockquote,
    .wrap-single-inner pre,
    .wrap-single-inner table,
    .wrap-single-inner .wp-block-heading,
    .wrap-single-inner .wp-block-list,
    .wrap-single-inner .wp-block-quote,
    .wrap-single-inner .wp-block-table,
    .wrap-single-inner .wp-block-code,
    .wrap-single-inner .wp-block-separator,
    .wrap-single-inner form,
    .wrap-single-inner .inline-player,
    .wrap-single-inner .mejs__container,
    .wrap-single-inner .wp-inner-container,
    .wrap-single-inner .share-container
    {
        max-width: 650px !important;
        margin-inline: auto;
    }

    .wrap-single-inner .wp-block-image img {
        min-width: 100%;
        max-width: 100%;
    }

    .wrap-single-inner .wp-block-quote {
        max-width: 463px !important;
    }

    .wrap-single-inner .wp-block-quote .wp-block-paragraph::before {
        margin-left: 20px;
    }

    .wrap-single-inner .wp-block-embed {
        min-width: 840px;
        max-width: 840px;
        margin-bottom: 45px;
    }


    /*-------------------------------------------*\
        Breadcrumb - 1088px
    \*-------------------------------------------*/

    .breadcrumb {
        display: block;
    }

    .breadcrumb ol {
        display: flex;
        flex-wrap: wrap;
    }

    .breadcrumb ol li + li::before {
        content: ">";
        color: var(--white);
        margin-inline: 6px;
    }

    .breadcrumb ol.association a {
        color: var(--association-primary-color);
    }

    .breadcrumb ol.association a:hover {
        text-decoration-color: var(--association-primary-color);
    }

    .breadcrumb a {
        text-decoration: none;
    }

    /*-------------------------------------------*\
        Ads - 1088px
    \*-------------------------------------------*/

    .ad-decoration.ad-decoration-wings .ad-content::before {
        background-image: url("../img/left-blue-wing-large.svg");

        left: -150px;
        width: 245px;
        height: 203px;
    }

    .ad-decoration.ad-decoration-wings .ad-content::after {
        background-image: url("../img/right-blue-wing-large.svg");

        top: 25px;
        right: -140px;

        width: 245px;
        height: 203px;
    }

    #halfpage-zone {
        display: none;
        position: absolute;
        top: 40px;
        width: 320px;
        height: 600px;
    }

    #halfpage-zone iframe,
    #halfpage-zone img {
        width: 100%;
    }

    /*-------------------------------------------*\
        Header - 1088px
    \*-------------------------------------------*/

    .header .wrap-content-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 11px 0;
    }

    .header .navbar-container {
        justify-self: start;      /* logo collé au bord gauche de la colonne */
        padding: 0;
    }

    .header .navbar-container img {
        min-width: 148px;
        max-width: 148px;
    }

    .header .menu-container-desktop {
        justify-self: center;
        width: 100%;              /* remplit sa colonne, plafonnée à 840px par la grille */

        opacity: 1;
        visibility: visible;
        transition: opacity .3s;
    }

    .header .menu-container-desktop.search-is-open { 
        opacity: 0;
        visibility: hidden;
        transition: opacity .3s;
    }

    .header .header-search {
        justify-self: end;        /* icône recherche collée au bord droit */
        padding: 0.5rem;
        margin-right: -0.5rem;
        cursor: pointer;
    }

    .header .wrap-content-header .menu-container-desktop .menu {
        display: flex;
        align-items: center;
        justify-content: space-evenly;
    }

    .header .wrap-content-header .menu-container-desktop .menu .menu-item a {
        font: var(--proxima-bold);
        font-size: 1rem;
        line-height: 1.1875rem;
    }

    .header .wrap-content-header .menu-container-desktop .menu .menu-item.navbar-donation-item {
        padding: 0;
        margin: 0;
        width: 62px;
        height: 44px;
        background-position: center center;
        background-size: contain;
    }

    .header .player {
        padding: 14px 0;
    }

    .header .player .player-main {
        max-width: var(--wrap-content-size);
        margin: 0 auto;
        gap: 18px;
        justify-content: left;
        flex-direction: row-reverse;
        padding: 0;
    }

    .header .player .player-main .player-controls .player-play i {
        min-width: var(--player-desktop-size);
        min-height: var(--player-desktop-size);
    }

    .header .player .player-main .player-controls .player-track {
        max-width: 230px;
    }

    .header .player .player-main .player-playlist {
        display: flex !important;
        margin-left: initial;

        opacity: 1;
        transform: translateY(0);
        transition: opacity .3s ease, transform .3s ease;
    }

    .header .player .player-playlist .player-playlist-item {
        display: block;
        position: relative;
        overflow: visible;
    }

    /*.header .player .player-playlist .player-playlist-item.onair {
        border: solid 3px var(--primary-color);
    }*/

    .header .player .player-playlist .player-cover {
        width: var(--cover-desktop-size);
        height: var(--cover-desktop-size);
    }

    .header .player .player-main .player-controls .kast-continuous .kast-mdi {
        width: var(--player-desktop-size);
        height: var(--player-desktop-size);
    }

    .header.fixed .player .player-main {
        justify-content: stretch;
        flex-direction: row;
    }

    .header.fixed .player .player-controls,
    .header.fixed .player .player-controls .player-track {
        width: 100%;
        max-width: 100%;
    }

    .header.fixed .wrap-content-header {
        padding-block: 2px;
    }

    .header.fixed .navbar-container {
        display: flex;
    }

    .header.fixed .navbar-container img {
        min-width: 107px;
        max-width: 107px;
    }

    .header.fixed .main-menu .menu .menu-item a {
        padding-block: 9.5px;
    }

    .header.fixed .wrap-content-header .menu-container-desktop .menu .menu-item.navbar-donation-item {
        width: 53px;
        height: 36px;
    }

    .header.fixed .player {
        padding-block: 9px;
        border: solid 1px var(--black);
    }

    .header.fixed .player .mobile-home-link {
        display: none;
    }

    .header.fixed .player .floating-header-toggle-menu {
        display: none;
    }

    .header.fixed .player .player-main .player-controls .player-play i,
    .header.fixed .player .player-main .player-controls .kast-continuous .kast-mdi {
        min-width: var(--player-desktop-scroll-size);
        max-width: var(--player-desktop-scroll-size);
        min-height: var(--player-desktop-scroll-size);
        max-height: var(--player-desktop-scroll-size);
    }

    .header.fixed #player-tooltip {
        display: none;
    }

    .header.fixed .player .player-main .player-playlist {
        display: none !important;
    }

    .header.fixed .loader {
        --loader-player-size:       1.05px;
    }

    /*-------------------------------------------*\
        Footer - 900px
    \*-------------------------------------------*/
    .footer {
        gap: 49px;
        z-index: 1;
    }

    .footer .brands-content {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 0;
        padding-top: 19px;
    }

    .footer .brands-content .radios-links {
        gap: 32px;
    }

    .footer .brands-content .radios-nav .radios-toggle {
        gap: 7px;
    }

    .footer .brands-content .radios-nav .radios-list {
        right: initial;
    }

    .footer .brands-content .radios-nav:hover .radios-list .radio-item {
        padding-block: 0.75rem;
    }

    .footer .brands-content .tools-links {
        justify-content: initial;
        gap: 80px;
    }

    .footer .brands-content .tools-links .store-links {
        gap: 35px;
    }

    .footer .brands-content .tools-links .store-links img.download-ios {
        width: 101px;
    }

    .footer .brands-content .tools-links .store-links img.download-android {
        width: 108px;
    }

    .footer .brands-content .tools-links .socials-links {
        gap: 34px;
    }

    .footer .footer-menu-container {
        max-width: var(--wrap-content-size);
        min-width: var(--wrap-content-size);
        margin: 0 auto;
        overflow: hidden;
    }

    .footer .footer-menu-container .footer-menu-content {
        display: grid;
        grid-template-rows: 1fr;
        grid-template-columns: 1fr 1fr;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu h3 {
        margin-bottom: 20px;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu ul.left-menu,
    .footer .footer-menu-container .footer-menu-content .footer-menu ul.right-menu {
        font-size: 1rem;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu ul.left-menu {
        line-height: 2rem;
    }

    .footer .footer-menu-container .footer-menu-content .footer-menu ul.right-menu {
        line-height: 1.75rem;
    }

    .footer .footer-menu-container .footer-menu-content #footer-dinosaure {
        width: 443px;
        transform: rotate(19deg);
        right: -40px;
        top: -4px;
    }

    .footer .footer-menu-container .copyright-content {
        flex-direction: row-reverse;
        align-items: baseline;
        justify-content: left;
        gap: 6px;
        margin-top: 40px;
        font-size: 0.875rem;
        line-height: 2rem;
        padding-bottom: 23px;
    }

    .main-content.fixed {
        margin-top: 170px;
    }

    .main-content.fixed + #halfpage-zone {
        top: 170px;
    }

    /*-------------------------------------------*\
        Error 404 - 1088px
    \*-------------------------------------------*/

    /*-------------------------------------------*\
        Content - 1088px
    \*-------------------------------------------*/

    .page-simple-body .wp-block-image img {
        margin: 0;
        min-width: 100%;
        max-width: 100%;
    }

    .layout {
        position: relative;
    }

    .wrap-content-inner {
        max-width: var(--wrap-content-inner);
        margin: 0 auto;
    }

    .table tbody tr {
        grid-template-columns: 1fr minmax(auto, 94px);
        gap: 28px;
    }

    .table-frequencies::after {
        bottom: 0;
        right: 125px;

        width: 206px;
        height: 1200px;

        background-image: url("../img/big-paws.svg");
    }

    .block-member {
        padding: 0;

        display: grid;
        align-items: center;
        justify-content: stretch;
        grid-template-columns: 1fr 1fr;
        grid-template-areas: "image text";
    }

    .block-member {
        grid-template-columns: auto 340px;
    }

    .block-member.right {
        grid-template-areas: "text image";
    }

    .block-member.right {
        grid-template-columns: 340px auto;
    }

    .block-member .block-text {
        grid-area: text;
        padding: 40px 40px 35px;
    }

    .block-member .block-image {
        grid-area: image;
    }

    .block-member .block-content {
        gap: 15px;
    } 

    .block-member .block-image-volcano {
        margin-bottom: -44px;
    }

    .block-member h4 {
        text-wrap: nowrap;
    }

    .block-member p {
        font-size: 1rem;
        line-height: 1.1875rem;
        margin-bottom: 10px;
    }

    .block-member .btn-block {
        font-size: 1rem;
        line-height: 1rem;
    }

    /*-------------------------------------------*\
        Win tickets - 1088px
    \*-------------------------------------------*/
    
    .win-tickets {
        top: 30%;
        left: max(6px, calc(50% - 420px - 230px - 112px)); /* 50% of the screen, 420px => 840/2 230px left margin*/
        z-index: 10;
    }

    /*-------------------------------------------*\
        Events - 1088px
    \*-------------------------------------------*/

    .events-list {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        gap: 40px 28px;
        margin-bottom: 80px;
    }

    .event-favorite {
        top: 10px;
        right: 8px;

        width: 38px;
        height: 34px;
    }

    .event .event-img {
        display: block;
        height: 107px;
    }

    .event .event-infos {
        padding: 22px 12px;
    }

    .event .event-title {
        font-size: 1.125rem;
        line-height: 1.375rem;
        margin-bottom: 15px;
    }

    .event .event-date {
        font-size: 0.75rem;
        line-height: 1.125rem;
        margin-bottom: 0;
    }

    .event .event-location {
        font-size: 0.75rem;
        line-height: 1.125rem;
    }

    /*-------------------------------------------*\
        Home page - 1088px
    \*-------------------------------------------*/

    .self-promotion {
		margin-top: 0;
	}

    .page-home .home-headlines {
        margin-bottom: 50px;
    }

    .page-home .home-headline-card {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 28px;
    }

    .page-home .home-headline-card:not(:last-of-type) {
        padding-bottom: 50px;
    }

    .page-home .home-headline-card:nth-child(even) {
        direction: rtl;
    }

    .page-home .home-headline-card:nth-child(even)  > *{
        direction: ltr;
    }

    .page-home .home-headline-card:nth-child(2)::after {
        top: -26px;
        left: -140px;

        width: 247px;
        height: 216px;
    }

    .page-home .home-headline-card:nth-child(3)::after {
        top: -22px;
        right: -80px;

        width: 114px;
        height: 255px;
    }

    .page-home .home-headline-card .headline-categories .headline-categories-separator {
        font-size: 0.875rem;
    }

    .page-home .home-headline-card .headline-categories {
        margin-top: 0;        
    }

    .page-home .home-headline-card .headline-title-link,
    .page-home .home-headline-card .headline-title {
        line-height: 2.25rem;
    }

    .page-home .home-headline-card .headline-title-link {
        margin-bottom: 35px;
        margin-top: 0;
    }

    .page-home .home-headline-card .headline-category + .headline-title-link {
        margin-top: 15px;
    }

    .page-home .home-headline-card .headline-link {
        font-size: 0.875rem;
        line-height: 1rem;
    }

    .page-home .subtitle-sponsor {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        border-bottom: solid 1px var(--white);
        padding-bottom: 25px;
    }

    .page-home .subtitle-sponsor .subtitle-sponsor-title {
        border-bottom: none;
        padding-bottom: 0;
    }

    .page-home .promo-zone {
        display: flex;
        flex-direction: column-reverse;
    }

    .page-home .home-adzone-2 {
        margin-bottom: 25px;
    }

    .page-home .events-list {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        overflow-x: hidden;
    }

    .page-home .events-list-container::before {
        width: 107px;
        height: 213px;
    }

    .page-home .events-list-container::after {
        width: 107px;
        height: 213px;
    }

    /*-------------------------------------------*\
        Search titles page - 1088px
    \*-------------------------------------------*/

    .page-search-title .title-choose-date-container {
        position: sticky;
        top: 0;
        z-index: 2;
        background-color: var(--black);
    }

    .page-search-title .current-date-container {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-block: 45px;
    }

    .page-search-title h2#current-date-label {
        font-size: 1.625rem; /*(26px)*/
    }

    .page-search-title .current-date-container h3 {
        margin: 0;
        cursor: pointer;
    }

    .page-search-title #title-date-picker,
    .page-search-title .flatpickr-mobile /*FIXME : Test with mobile */ {
        display: none;
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

    .page-search-title .btn-prev-date,
    .page-search-title .btn-next-date {
        box-sizing: border-box;
        width: 20px;
        height: 20px;
        padding: 6px;
    }
    
    .page-search-title .btn-prev-date {
        background: url('../img/icons/prev.svg') center / 9px 18px no-repeat;
        background-size: contain;
    }

    .page-search-title .btn-next-date {
        background: url('../img/icons/next.svg') center / 9px 18px no-repeat;
        background-size: contain;
    }

    .page-search-title .titles-list {
        display: grid;
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .page-search-title .titles-list .title {
        display: grid;
        grid-template-columns: minmax(auto, 95px) 1fr;
        gap: 0 38px;
    }

    .page-search-title .titles-list .title .title-cover {
        width: 95px;
        height: 95px;
    }

    .page-search-title .titles-list .title .title-infos {
        display: flex;
        flex-direction: row;
        align-items: baseline;
        gap: 28px;
        font-size: 1.25rem;
    }

    .page-search-title .titles-list .title .title-infos .title-music-container {
        flex-direction: column;
        gap: 12px;
    }
    
    .page-search-title .titles-list .title .title-infos .title-hour {
        line-height: 2rem;
    }

    .page-search-title .titles-list .title .title-infos .title-artist {
        line-height: 1.75rem;
        text-transform: uppercase;
    }

    .page-search-title .titles-list .title .title-infos .title-title {
        line-height: 1.6875rem;
        font-size: 1.125rem;
    }

    .page-search-title .AdZoneSquare2::before {
        top: 25px;
        left: -150px;

        width: 244.69px;
        height: 202.98px;
    }

    .page-search-title .AdZoneSquare2::after {
        top: 25px;
        right: -155px;

        width: 244.69px;
        height: 203.95px;
    }

    /*-------------------------------------------*\
        Page Contests - 1088px
    \*-------------------------------------------*/

    .page-contests .contests-list {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }

    .page-contests .contest-item.card-contest.card-contest-association .contest-association-mention {
        font-size: 0.75rem;
        line-height: 0.9375rem;
        margin-top: 16px;
    }

    .page-contests .contest-item.card-contest h3 {
        font-size: 1.375rem;
        line-height: 1.9375rem;
    }

    .page-contests .contest-item.card-contest.card-contest-association .contest-association-mention + .contest-title-link {
        margin-top: 16px;
    }

    .page-contests .contest-item.card-contest .contest-info {
        font-size: 1rem;
        line-height: 1.375rem;
    }

    /*-------------------------------------------*\
        Page Contest - 1080px
    \*-------------------------------------------*/

    .page-contest {
        position: relative;
    }

    .page-contest .page-contest-header,
    .page-contest .lang-switch-container {
        max-width: 650px;
    }

    

    .page-contest .lang-switch-container {
        max-width: 100%;
        position: absolute;
        top: 0;
        right: 0;
        text-align: right;
    }

    .page-contest .lang-switch-container .lang-switch__option {
        font-size: 1rem;
    }

    .page-contest .page-contest-header .contest-title h1 {
        font: var(--darkmode-black);
        font-size: 2.875rem;
        line-height: 3.125rem;
        margin-bottom: 30px;
    }

    .page-contest .page-contest-header .contest-info {
        margin-bottom: 0;
    }

    /*-------------------------------------------*\
        Agenda page - 1088px
    \*-------------------------------------------*/

    .wrap-content-agenda-dino::after {
        position: absolute;
        top: 280px;
        left: -74%;
    }

    .wrap-content-agenda .sponsors {
        position: relative;
        bottom: initial;
    }

    .wrap-content-agenda .sponsor {
        align-items: end;
    }

    .page-agenda {
        margin-top: 0;
    }

    .page-agenda .page-sponsor.page-sponsor-mobile {
        display: none;
    }

    .page-agenda .page-sponsor.page-sponsor-desktop {
        display: block;
    }

    .page-agenda .load-more-container {
        margin-bottom: 80px;
    }

    .page-agenda .wp-block-image {
        margin-block: 0;
    }

    /*-------------------------------------------*\
        Sticker page - 1088px
    \*-------------------------------------------*/
    
    .frm fieldset {
        display: flex;
        align-items: center;
        gap: 28px;
    }

    /*-------------------------------------------*\
        Donation page - 1088px
    \*-------------------------------------------*/

    .bloc-donation {
        padding-bottom: 35px;
    }

    .bloc-donation .donation-img {
        width: 269px;
        height: 225px;

        margin: 0;

        position: absolute;
        bottom: 0;
        right: 12px;
    }

    .bloc-donation p {
        font-size: 1rem;
        line-height: 1.1875rem;
    }

    .bloc-donation .frm-donation-footer {
        margin: initial;
    }

    .bloc-donation .btn-donate {
        width: 100%;
        margin-left: 0;
    }

    .bloc-donation label.radio-wrapper {
        --c-radio-size: 1.125rem;
        --c-radio-border-width: 1px;
    }

    /*-------------------------------------------*\
        Detail article page - 1088px
    \*-------------------------------------------*/

    .wrap-content-sponsors .sponsors-container {
        align-items: end;
        margin-bottom: 14px;
    }

    .wrap-content-sponsors .sponsors {
        display: flex;
        flex-wrap: wrap;
        justify-content: end;
        width: 100%;
        gap: 5px;
    }

    .page-detail-article-header {
        max-width: 650px;
        margin-inline: auto;
    }

    .page-detail-article-header h1 {
        font-size: 2.875rem;
    }

    .page-detail-article-header .article-infos .article-category {
        font-size: 0.75rem;
        line-height: 1.375rem;
    }

    /*-------------------------------------------*\
        Association GRRIF page - 1088px
    \*-------------------------------------------*/

    .page-association .page-association-header,
    .page-contest-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-bottom: solid 1px var(--white);
        margin-bottom: 30px;
        padding-bottom: 20px;
    }

    .page-association .page-association-header h1,
    .page-contest-header h1 {
        margin: 0;
        padding: 0;
        border-bottom: none;
    }

    .page-association h2.wp-block-heading {
        font-size: 2.875rem;
        line-height: 3.125rem;
    }

    .lang-switch {
        margin: 0;
    }

    /*.page-association .comittee-list {
        grid-template-columns: 1fr 1fr;
        gap: 30px 28px;
        padding-inline: 0;
    }*/

    .page-association .comittee-list .comittee-member .comittee-member-img {
        max-width: 311px;
    }

    .page-association .comittee-list .comittee-member .comittee-member-infos h3 {
        margin-bottom: 6px;
        font: var(--proxima-bold);
        font-size: 0.75rem;
        line-height: 0.9375rem;
    }

    .page-association .comittee-list .comittee-member .comittee-member-infos p {
        font: var(--proxima-bold);
        font-size: 0.75rem;
        line-height: 0.9375rem;
    }

    .page-association label.radio-wrapper {
        --c-primary: var(--association-primary-color);
    }

    /*-------------------------------------------*\
        Modal - 900px
    \*-------------------------------------------*/

    .modal-content {
        width: 50%;
    }

    /*-------------------------------------------*\
        Page fixe - 1088px
    \*-------------------------------------------*/
    .page-fixe-body h2.wp-block-heading {
        margin-bottom: 1rem;
        font-size: 2.875rem;
        line-height: 3.125rem;
    }

    .page-fixe-body h3.wp-block-heading {
        margin-bottom: 0.625rem;
    }

    .page-fixe-body figure.left-render {
        max-width: 70%;

    }

    .page-fixe-body figure.left-render img {
        margin-left: 0;
        min-width: initial;
    }

    .page-fixe-body figure.large-center-render {
        max-height: initial;
        height: initial;
    }

    .page-fixe-body figure.large-center-render img {
        max-height: initial;
        height: initial;
        width: auto;
    }

    .page-fixe-body figure.advertising-consultant {
        max-width: 331px;
        margin-inline: auto;
    }

    .page-fixe-body .stores-list {
        justify-content: left;
        gap: 28px;
    }
}

/*-------------------------------------------*\
    Desktop - 1200px
\*-------------------------------------------*/

@media screen and (min-width: 1200px) {
    .header .wrap-content-header {
        display: grid;
        grid-template-columns: 1fr minmax(0, 840px) 1fr;
        align-items: center;
        column-gap: 24px;
        padding: 11px 0;
    }

    .header .wrap-content-header .menu-container-desktop .menu {
        justify-content: space-between;
    }
}

@media screen and (min-width: 1320px) {
	/*-------------------------------------------*\
        Win tickets - 1088px
    \*-------------------------------------------*/
    
    .win-tickets {
        left: max(20px, calc(50% - 420px - 230px - 105px)); /* 50% of the screen, 420px => 840/2 230px left margin*/
        width: 160px;
        height: 181px;
    }
}

@media screen and (min-width: 1380px) {
	.ad-billboard-zone #ad-billboard-zone-1 {
		margin: 0 auto;
	}
}

@media screen and (min-width: 1760px) {
    /*-------------------------------------------*\
        Wrapper - 1760px
    \*-------------------------------------------*/

    .wrap-content-header,
    .wrap-content-footer {
        margin: 0 auto;
    }

    .wrap-content-footer.footer-menu-content,
    .wrap-content-footer.copyright-content {
        margin: 0;
    }

    .header .header-search #header-search-input.open {
        width: 74.5%;
    }
}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background: var(--primary-color);
	color: var(--black);
	text-shadow: none;
}

::-webkit-selection {
	background: var(--primary-color);
	color: var(--black);
	text-shadow: none;
}

::-moz-selection {
	background: var(--primary-color);
	color: var(--black);
	text-shadow: none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}

.alignright {
	float:right;
	margin:5px 0 20px 20px;
}

.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}

a img.alignright, a img.alignnone, a img.alignleft, a img.aligncenter {
	float:none;
	display:block;
	margin:0 auto;
	margin-bottom: 1.5em;
}

.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}

.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}

.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}

.wp-caption.alignright {
	margin:5px 0 20px 20px;
}

.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}

.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
    
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}

	a,
	a:visited {
		text-decoration:underline;
	}

	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}

	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}

	thead {
		display:table-header-group;
	}

	tr,img {
		page-break-inside:avoid;
	}

	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}

	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
