/* 

    File: main.css
    Version: 1.2.1
    Author: NEUE
    Last update: 10.07.2019

    Before reading/coding: This style sheet has been written with the "mobile first" logic. It means that your code is firstly for mobiles.
                           Please use the responsive rules to custom other medias.

                           Animation has not yet been implemented but could be used with the external library

    -1) Variables

    0) Reset CSS
        0.1) Normalize by Necolas
        0.2) Custom Reset

    1) General Style

    2) Layouts
        2.1) Default
            2.1.1) Header
            2.1.2) Main
            2.1.3) Footer

    3) Helpers
        3.1) Spacing
        3.2) Wrappers
        3.3) Containers & Contents
        3.4) Text
        3.5) Flex Grid
        3.6) Colors & Areas
        3.7) Other
        3.8) Animations
        3.9) Custom

    4) Icons
        4.1) Icomoon

    5) Content
        5.1) Sections
        5.2) Elements & Parts
        5.3) Pages

    6) Responsive
        6.1) Small media (481px +)
        6.2) Medium media (721px +)
        6.3) Large media (993px +)
        6.4) Huge media (1251px +)
        6.5) Custom media

    7) Overriden area

    8) Dev / Test

/*************************************************************************

    -1) Variables

*************************************************************************/

:root {

/* 
    --white-color: #ffffff;
    --black-color: #000000;
    --dark-blue-color: #000c2b;
    --red-color: #fa3c10;
    --blue-color: #0041D7;
        --purple-color: #e35ee3; */

    --border-width: 2px;

    --transition-speed: .5s;
    --transition-easing: ease;

    /* Le phare */
    --highlight-color: #E40050;
    --background-color: #8ACDD0;
    --white-color: white;
    --black-color: black; 
    --green-color: #00bbad;
}

/*************************************************************************

    0) Reset CSS

*************************************************************************/

    /*************************************************************************
        0.1) Normalize by Necolas
    *************************************************************************/

    /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
    html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}[hidden]{display:none}
    
    /*************************************************************************
        0.2) Custom reset
    *************************************************************************/

    * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        -o-box-sizing: border-box;
        box-sizing: border-box;
    }

    html,
    body {
        -webkit-text-size-adjust: 100%;
           -moz-text-size-adjust: 100%;
            -ms-text-size-adjust: 100%;
             -o-text-size-adjust: 100%;
                text-size-adjust: 100%;
    }

    html {
        height: 100%;
        overflow-x: hidden;
    }

    body {
        padding: 0;
        min-height: 100vh;
        font-size: 1rem;
        text-rendering: optimizeLegibility;
        overflow-x: hidden;
        font-display: fallback; /* 20.03.2019 - only for FireFox, Chrome, Chorme Android, Samsung Internet, Safari , iOS Safari and Opera */
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    h1:first-child,
    h3:first-child,
    h4:first-child,
    h5:first-child,
    h6:first-child,
    p:first-child ,
    li:first-child {
        margin-top: 0;
        padding-top: 0;
    }

    h1:last-child,
    h2:last-child,
    h3:last-child,
    h4:last-child,
    h5:last-child,
    h6:last-child,
    p:last-child,
    li:last-child {
        margin-bottom: 0;
        padding-bottom: 0;
    }

    :empty,
    ::empty {
        display: none;
    }

    a {
        text-decoration: none;
        color: inherit;
    }

    textarea {
        resize: vertical;
    }

    label[for],
    a[href],
    a[data-action],
    button,
    .button {
        cursor: pointer;
    }

    p:empty {
        display: none !important;
    }

/*************************************************************************

    1) General Style

*************************************************************************/

    /************ Set Maple fonts and variants : ***********/

        /*** normal : ***/
            @font-face {
                font-family: 'Maple';
                src: url('../fonts/maple/Maple-Regular.woff') format('woff');
                font-weight: normal;
            }

        /*** bold : ***/
            @font-face {
                font-family: 'Maple';
                src: url('../fonts/maple/Maple-Medium.woff') format('woff');
                font-weight: bold;
            }

    /*******************************************************/

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

    /*******************************************************/

    html.init {
        opacity: 1 !important;
        transition: opacity ease .3s;
    }

    /*******************************************************/

    html {
        font-size: 20px;
        scroll-behavior: smooth;
    }

    body {
        font-size: 1rem;
        color: #000;
        background-color: #fff;
        font-family: 'Maple';
    }

    /* General Style > Heading tag */

    h1 {
        font-weight: bold;
        font-size: 4rem;
        margin-top: 0;
        margin-bottom: 0;
    }

    h2,
    .as-h2 {
        font-weight: normal;
        text-transform: uppercase;
        font-size: 2.5rem;
        /* margin: 0 0 3rem 0; */
        margin: 0;
        text-align: center;
    }

    h3,
    .as-h3 {
        font-size: 2.5rem;
        margin: 0;
        /* margin: 2rem 0 1rem 0; */
    }

    h4,
    .as-h4 {
        font-weight: bold;
        font-size: 1.4rem;
        margin: 1rem 0;
    }

    h5 {
        font-weight: normal;
        font-size: 1rem;
        margin: 1rem 0;
    }

    h1,
    h2,
    h3,
    h4,
    h5 {
        line-height: 1em;
        word-break: break-word;
    }

    .section--inner-content-introduction {
        max-width: calc(525px + 9rem);
    }

    /* General Style > Form */

    input[type='number'] {
        -moz-appearance:textfield;
    }

    input::-webkit-outer-spin-button,
    input::-webkit-inner-spin-button {
        -webkit-appearance: none;
    }

    /* Placeholder color */
    ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
        color: initial;
    }

    ::-moz-placeholder { /* Firefox 19+ */
        color: initial;
    }

    :-ms-input-placeholder { /* IE 10+ */
        color: initial;
    }

    :-moz-placeholder { /* Firefox 18- */
        color: initial;
    }

    /* General Style > Other elements */

    address {
        font-style: normal;
    }

    form label {
        text-transform: uppercase;
    }

    form input {
        padding: .7rem;
        border: 2px solid #000;
        width: 100%;
        outline: none;
    }

    section:not(.as-wysiwyg) ul,
    body > header ul {
        padding: 0;
        margin: 0;
        list-style: none;
    }

    /* General Style  > link & button */

    button,
    .button {
        font-weight: 400;
        color: var(--black-color);
        border: var(--border-width) solid var(--black-color);
        text-transform: uppercase;
        padding: 1rem 1.5rem 0.8rem 1.5rem;
        outline: none;
        display: inline-block;
        background-color: transparent;
        position: relative;
        max-width: 350px;
        width: fit-content;
        text-align: center;
        height: 3rem;
    }

    button,
    .button,
    button:before,
    .button:before,
    button:after,
    .button:after,
    .link,
    .link:before,
    .link:after,
    a,
    nav li,
    .icon-favicon {
        transition: var(--transition-speed) var(--transition-easing);
    }

    .highlight-button {
        background-color: var(--highlight-color);
        color: var(--white-color);
        border: none;
        overflow: hidden;
        width: 200px;
    }

    .button-2 {
        background-color: var(--black-color);
        color: var(--white-color);
        border: none;
    }

    .circle-button {
        padding: 0;
        width: 3rem;
        height: 3rem;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
    }

    .circle-button .icon-button {
        transform: translateY(2px);
    }

    .button .icon-arrow {
        transform: translateY(2px);
    }

    .link {
        position: relative;
        display: inline-block;
        width: fit-content;
    }

    .link:after {
        position: absolute;
        content: "";
        width: 100%;
        height: 2px;
        bottom: 0;
        background-color: var(--dark-blue-color);
        left: 0;
    }

    .menu-alt .link:after {
        background-color: var(--black-color);
    }

    button:not(.lift).active,
    .button:not(.lift).active {
        background-color: var(--black-color);
        color: var(--white-color);
    }

    .link.active {
        color: var(--purple-color) !important;
    }

    .link.active:after {
        background-color: var(--purple-color);
        opacity: 1;
    }

    /* General Style  > Section */
    
    body > main section:not(:first-of-type) > .section-container {
        position: relative;
    }

    body > main section:not(:first-of-type) > .section-container:before {
        position: absolute;
        content: "";
        width: calc(100% - 4rem);
        height: 1px;
        background-color: var(--black-color);
        top: 0;
        left: 2rem;
    }

    .section-container {
        padding: 1rem;
    }

    .section-header,
    .section--inner-content-introduction {
        margin-bottom: 3rem !important;
    }
    
    .section-header {
        text-align: center;
    }

    .section-footer {
        display: flex;
        flex-direction: column;
    }

    .section-footer .section-footer--content {
        margin-bottom: 4rem;
    }

    .section-footer .section-footer--content .gallery-img {
        height: 36vh;
    }

    .section-footer .button {
        margin-left: auto;
        margin-right: auto;
    }

    .section--inner-content-main {
        display: flex;
        flex-direction: column;
    }

    .inner-content-main--container {
        padding-bottom: 4rem;
    }

    .faq .inner-content-main--container {
        padding-bottom: 3rem !important;
    }

    .inner-content-main--container .content-icon {
        display: flex;
        font-size: 6rem;
    }

    .inner-content-main--container .content {
        margin-top: 1rem;
        position: relative;
    }

    section:not(.organisation):not(.contact):not(.faq):not(.as-wysiwyg) .inner-content-main--container .content:after {
        position: absolute;
        content: "";
        width: 100%;
        height: 1px;
        background-color: var(--black-color);
        left: 0;
        bottom: -1rem;
    }

    .inner-content-main--container .content li {
        position: relative;
    }

    .inner-content-main--container .content li:before {
        position: absolute;
        content: "";
    }

    .section--inner-content-main > .inner-content-main--container:last-of-type {
        padding-bottom: 5rem;
    }

    .subtitle {
        display: block;
    }

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

    .highlight-information > .highlight-information--content:not(:first-child) {
        margin-top: 1rem;
    }

    /* Media query dès 721px */
    .highlight-information {
        display: flex;
        align-items: center;
    }

    .highlight-information > .highlight-information--content:not(:first-child) {
        margin-top: 0;
        margin-left: 1rem;
    }
      
    .highlight-information .highlight-information-icon {
        font-size: 2rem;
        margin-right: 1rem;
        display: flex;
        align-items: center;
    }

    .subtitle,
    .highlight-information {
        margin-bottom: 1rem;
    }

    .content-title {
        transform: translateY(-7px);
        margin-bottom: calc(1rem - 7px);
    }

    .content-list-items .details {
        display: none;
        visibility: hidden;
    }

    .content-list-items.active .details {
        visibility: visible;
        display: block;
    }

    .content > ul {
        list-style-type: circle;
        padding-left: 1rem;
    }

    .content li {
        margin-bottom: .5rem;
    }

    .content-to-toggle {
        display: none;
        visibility: hidden;
    }

    .content.toggle-on-click {
        padding-bottom: 1.5rem;
    }

    .content.toggle-on-click .cross {
        position: absolute;
        transform: rotate(45deg);
        width: 1rem;
        bottom: 0;
        height: 1rem;
        right: 0;
    }


    .content.toggle-on-click .cross:before,
    .content.toggle-on-click .cross:after {
        width: 100%;
    }

    .content.toggle-on-click:hover .cross:before,
    .content.toggle-on-click:hover .cross:after,
    .content.toggle-on-click .cross:hover:before,
    .content.toggle-on-click .cross:hover:after {
        background-color: var(--purple-color);
    }

    .content.toggle-on-click.active .cross:before {
        transform: translate(-50%) rotate(-45deg);
    }

    .content.toggle-on-click.active .content-to-toggle {
        display: block;
        visibility: visible;
    }

    .content.toggle-on-click.active .content-to-toggle,
    .content.toggle-on-click.active .content-to-toggle > .content-to-toggle--content:not(:first-of-type) {
        margin-top: 2rem;
    }

    /* General Style  > content */

    p {
        margin: 0;
        line-height: 1.3em;
    }

    .edition-grid {
        width: calc(100% + 2rem);
        margin-left: -1rem;
    }

    .edition-grid .edition-grid--cell {
        padding: 1rem;
        display: none;
        visibility: hidden;
    }

    .edition-grid .edition-grid--cell.visible {
        display: block;
        visibility: visible;
    }

    .edition-grid .previous-festival-year {
        margin: 1rem 0;
        text-align: center;
    }

    .expand-grid-wrapper .expand-grid-button {
        margin: 1rem auto 0 auto;
        display: block;
    }

    ul.block-list > li:not(:last-of-type) {
        padding-right: .5rem;
        display: inline-flex;
    }
    

    ul.block-list > li:not(:last-of-type):after {
        content: "|";
        padding-left: .5rem;
    }

    /* General Style  > Color bubbles */

    .bubble-purple {
        filter: brightness(2.5) hue-rotate(65deg) saturate(0.9);
        -webkit-filter: brightness(2.5) hue-rotate(65deg) saturate(0.9);
    }

    .bubble-blue {
        filter: hue-rotate(0deg);
        -webkit-filter: hue-rotate(0deg);
    }

    .img-bubbles {
        position: absolute;
        width: 100vh;
        height: 100vh;
        margin: 0;
        padding: 0;
    }

    /* Hide */

    .hide {
        display: none;
        visibility: hidden;
    }

    /* Disable */

    .disabled {
        opacity: .4;
    }

    /* Bubbles */


    [class*="bubble"] {
        position: absolute;
        background-size: contain !important;
    }

    .bubble-1 {
        background-image: url("/wp-content/themes/neue/webroot/img/bubbles/mat/bubble-1.png");
    }

    .bubble-2 {
        background-image: url("/wp-content/themes/neue/webroot/img/bubbles/mat/bubble-2.png");
    }

    .bubble-3 {
        background-image: url("/wp-content/themes/neue/webroot/img/bubbles/mat/bubble-3.png");
    }

    .bubble-4 {
        background-image: url("/wp-content/themes/neue/webroot/img/bubbles/mat/bubble-4.png");
    }

    .bubble-5 {
        background-image: url("/wp-content/themes/neue/webroot/img/bubbles/mat/bubble-5.png");
    }

    .bubble-6 {
        background-image: url("/wp-content/themes/neue/webroot/img/bubbles/mat/bubble-6.png");
    }

    .pink-bubble path {
        fill: #E35EE3;
    }

    .red-bubble path {
        fill: #FA3C10;
    }

    .turquoise-bubble path {
        fill: #00BBAD;
    }

    .blue-bubble path {
        fill: #0041D7;
    }

    /* WYSIWYG */

    .is-wysiwyg h3 {
        margin-bottom: 1rem;
    }

    .is-wysiwyg > h3:not(:first-of-type) {
        margin-top: 1rem;
    }

    .is-wysiwyg p {
        margin: 1rem 0;
    }

    .as-wysiwyg .inner-content-main--container {
        padding-bottom: 0 !important;
        margin-bottom: 3rem !important;
    }

    .as-wysiwyg .section--inner-content-main > .inner-content-main--container:not(:last-of-type) {
        margin-bottom: 1rem !important;
    }

    /* Seagull (mouette */

    .seagull {

        width: 14rem;
        height: 11rem;
        background-image: url(/wp-content/themes/neue/webroot/img/seagull.gif);
        transition: transform 3s cubic-bezier(0,1.95,1,.89);
        cursor: pointer;
        z-index: 10;

    }

    .seagull.up,
    .seagull.down {
        pointer-events: none;
        cursor: default;
    }

    .seagull.up {

        transform: translateY(-50px);

    }

/*************************************************************************

    2) Layouts

*************************************************************************/

    /*************************************************************************
        2.1) Default
    *************************************************************************/

    /* Default > Header */

        /* menu */

        body > header .main-menu-links .link:not(.active):after {
            width: 0;
            opacity: 1;
            transition: var(--transition-speed) var(--transition-easing);
            -webkit-transition: var(--transition-speed) var(--transition-easing);
            -moz-transition: var(--transition-speed) var(--transition-easing);
            -ms-transition: var(--transition-speed) var(--transition-easing);
            -o-transition: var(--transition-speed) var(--transition-easing);
        }

        body > header .main-menu-links {
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        body > header .master-menu {
            display: flex;
            justify-content: center;
        }
        
         body > header .main-menu-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 1rem;
            text-transform: uppercase;
            color: #fff;
            width: 100%;
            position: fixed;
            z-index: 10;
            top: 0;
        }

        body > header .menu-logo-link-container {
            /* height: fit-content;
            width: fit-content; */
            display: none;
            visibility: hidden;
        } 

        body > header .logo {

            font-size: 3rem;
            color: var(--highlight-color);

        }

        body.single-post .main-menu-container,
        .menu-alt {
            background: rgba(255,255,255, 0.8);;
        }

        body > header .home-banner-news-content .button {

            border-color: var(--highlight-color);

        }

        body > header .home-banner-news-content .button [class*="icon-"] {

            color: var(--highlight-color);

        }

        body > header .home-banner-titles .line {

            position: relative;
            width: 18vw;
            height: 2rem;
            display: inline-block;
            margin: 0 2rem;
            max-width: 200px;
            min-width: 150px;

        }

        body > header .home-banner-titles .line:after {

            position: absolute;
            content: "";
            width: 100%;
            height: 1px;
            background-color: var(--white-color);
            top: 50%;

        }

        body > header .home-banner-titles > div:last-of-type {

            font-size: 5vw;
            display: flex;
            align-items: center;
            margin-top: 8rem;

        }

/*         body.single-post .main-menu-container .link,
        body.single-post .main-menu-container .logo-menu,
        .menu-alt .link,
        .menu-alt .logo-menu {
            color: var(--highlight-color);
        }
         */
        .main-top-menu .highlight-button.active {
            background-color: white;
            color: black;
        }

        .menu-alt .highlight-button.active {
            background-color: black;
            color: white;
        }

        body > header {

            position: relative;
            z-index: 3;

        }
        /* Header > Home */

        body > header .header-content {
            position: relative;
        }

        body.single-breakingnews > header .header-content {

            display: none;
            visibility: hidden;

        }

        body.single-breakingnews main {

            padding-top: 8rem;

        }

        body > header .home-banner .details {
            justify-content: space-between;
            padding-top: 10rem;
            padding-bottom: 6rem;
            z-index: 1;
        }

        body > header .home-banner .sponsors-logo {

            align-items: center;

        }

        body > header .header-logo {

            background-image: url(/wp-content/uploads/FESTINEUCH.png);
            width: 60vw;
            height: 8vw;
            display: block;

        }

        body > header .header--festival-name {

            background-image: url(/wp-content/uploads/le_phare.png);
            display: block;

        }

        body > header .home-banner .sponsors-logo a:not(:first-child) {
            margin-left: 1.7rem;
        }  

        body > header .home-banner .sponsors-logo .icon-bcn {
            font-size: 0.9em;
        }

        body > header .home-banner .sponsors-logo .icon-migros {

            font-size: 0.8em;

        }

        body > header .home-banner .header-presente {

            font-size: 1.3em;
            font-weight: 600;

        }

        body > header .home-banner-titles > div:last-of-type {

            font-weight: 600;
            letter-spacing: 0.02em;

        }

        body > header .home-banner-titles .place {

            font-weight: 600;
            letter-spacing: 0.02em;

        }

        body > header .home-banner .as-h4 {
            margin: 0;
        }

        body > header .home-banner .content {
            display: flex;
            flex-direction: column;
        }

        body > header .home-banner .icon-logo {
            font-size: 10rem;
            display: flex;
            margin-top: 4rem;
        }

        /* Header > Default */

        body > header .main-banner-content {
            min-height: 200px;
        }

        body > header .main-banner-content:not(.home-banner) {
            padding: 8rem 1rem;
            display: flex;
            align-items: flex-end;
        }

        body > header .main-banner-content {
            height: 100%;
        }

        body > header .main-banner-content .home-banner-titles {
            background-color: var(--dark-blue-color);
            min-height: 50vh;
            padding: 8rem 2rem;
            display: flex;
            flex-direction: column;
            align-items: center;
            color: white;
            width: 100%;
            z-index: 1;
        }

        body > header .main-banner-content .home-banner-news-title {
            font-size: 1.5rem;
        }

        body > header .main-banner-content .sponsors {
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        body > header .header-title {
            text-align: center;
        }

        body > header .home-banner-news {
            background-color: var(--blue-color);
            height: auto;
            width: 100%;
            margin: auto;
            display: flex;
            align-items: center;
            z-index: 1;
            position: relative;
            padding-bottom: 5rem;
        }

        body > header .home-banner-news .circle {
            width: 500px;
            border: 1px solid var(--blue-color);
            height: 300px;
            position: absolute;
            border-radius: 50%;
            background-color: var(--blue-color);
            top: -7rem;
            z-index: -1;
        }

        body > header .home-banner-news-content {
            display: flex;
            flex-direction: column;
            align-items: center;
            transition: var(--transition-easing) var(--transition-speed);
        }

        body > header .home-banner {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }

    /* Default > Main */

    /* Default > Footer */

    body > footer {
        z-index: 2;
        position: relative;
        background-color: white;
        padding-top: 7rem;
    }

    body > footer .seagull {

        position: absolute;
        right: 0;
        top: 0;

    }

    body > footer .sponsors {

        background-color: var(--background-color);
        color: var(--white-color);

    }

    body > footer .footer-container .cta-rs {
        margin-bottom: .5rem;
    }

    body > footer .footer-container {
        padding-left: 8vw;
        padding-right: 8vw;
        font-size: 90%;
    }

    body > footer .footer-container .footer-content label {
        display: block;
        transform: translateY(2px);

    }

    body > footer .footer-container .footer-content .input {
        user-select: none;
    }


    body > footer .footer-container .footer-content .input label {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        /* max-width: 300px; */
        /* align-items: center; */
    }

    body > footer .footer-container .footer-content .input .label {
        /* margin-left: 2rem; */
        /* width: calc(500px - 2.5rem); */
        text-transform: none;
        text-align: left;
        transition: all var(--transition-easing) var(--transition-speed);

    }

    
    body > footer .footer-container .footer-content input[type="email"] {
        transition: all ease .3s;
    }

    body > footer .footer-container .footer-content input[type="email"]:focus {
        border-color: var(--purple-color);
    }



    /* body > footer .footer-container .footer-content .input {
        max-width: 300px;
    } */

    body > footer .footer-container .footer-content .input input {
        display: none;
    }

    body > footer .footer-container .footer-content .input input ~ .input-checkbox {
        height: 1.3rem;
        width: 1.3rem;
        border: solid 2px var(--black-color);
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-right: 1rem;
        flex-shrink: 0;
        transition: all var(--transition-easing) var(--transition-speed);
    }

    body > footer .footer-container .footer-content .input input ~ .input-checkbox:after {
        width: 0%;
        height: 0%;
        position: relative;
        content: '';
        background-color: var(--highlight-color);
        border-radius: 50%;
        transition: all ease .2s;
    }


    body > footer .footer-container .footer-content .input input:checked ~ .input-checkbox:after {
        width: 70%;
        height: 70%;
    }

    body > footer .footer-container .footer-content .input input:checked ~ .input-checkbox {
        border-color: var(--highlight-color);
    }

    body > footer .footer-container .footer-content .input input:checked ~ .label {
        color: var(--highlight-color);
    }


    body > footer .footer-container .footer-content .input {
        margin-bottom: 1rem;
    }


    body > footer .footer-container > .footer-content:not(:last-child) {
        margin-bottom: 2rem;
    }   

    /* body > footer .footer-container > .footer-content:not(:last-child) {
        padding-right: 2rem;
    } */

    body > footer .main-top-menu {
        display: flex;
        flex-direction: column;
    }

    body > footer .main-top-menu > .button:not(:first-child) {
        margin-top: 1rem;
    }

    body > footer .sponsors-list {
        justify-content: center;
    }

    body > footer .sponsors-img {
        width: 150px;
        height: 80px;
        background-size: contain;
        transition: var(--transition-speed) var(--transition-easing);
    }

    body > footer .sponsor-list-content:hover .sponsors-img {
        transform: scale(1.1);
    }

    body > footer .sponsors .cardinal .sponsors-img {
        background-image: url(/wp-content/uploads/Cardinal.png);
    }

    body > footer .sponsors .vaudoise .sponsors-img {
        background-image: url(/wp-content/uploads/vaudoise.png);
    }

    body > footer .sponsors .groupe-e .sponsors-img {
        background-image: url(/wp-content/uploads/groupe-E.png);
    }

    body > footer .footer-content > div:not(:first-child),
    body > footer .footer-content > a {
        margin-top: 1rem;
    }
    
    body > footer .footer-content .email {
        margin: 1rem 0;
    }

    body > footer .footer-content > a {
        display: block;
    }

    body > footer .copyright ul.block-list li > a {
        margin: 0 .2rem;
    }

    body > footer .newsletter-form {
        display: flex;
        flex-direction: column;
        width: 100%;
        max-width: 600px;
    }

    body > footer .social-networks-logos {
        width: 100%;
        display: flex;
    }

    body > footer .social-networks-logos .button {
        margin-right: .5rem;
    }

    body > footer .social-networks .button {
        width: 2.3rem;
        height: 2.3rem;
        font-size: .7rem;
    }

    body > footer .newsletter-form input {
        /* max-width: 300px; */
        margin-left: auto;
        margin-right: auto;
    }

    body > footer ul {
        display: flex;
        list-style-type: none;
        padding: 0;
        margin: 0;
    }

    /* body > footer ul li a,
    body > footer .copyright a {
        text-decoration: underline;
    } */

    body > footer .footer-content a:after {
        display: none;
    }

    body > footer .footer-content #mc_embed_signup div.mce_inline_error {
        background-color: red;
        margin-top: 1rem;
        padding: .5rem 1rem;
    }


    body > footer .footer-content #mc_embed_signup input.mce_inline_error {
        border-color: var(--red-color);
    }


    body > footer .footer-content #mce-success-response {
        margin: 1rem 0;
        padding: .5rem 1rem;
        color: var(--white-color);
        background-color: var(--green-color);
    }


    /*************************************************************************

        3) Helpers
        doc: https://agenceneue.ch/assets/ressources/css-helpers

    *************************************************************************/

    /*************************************************************************
        3.1) Spacing
    *************************************************************************/
    
    /* lib/spacing.css */

    /*************************************************************************
        3.2) Wrapper
    *************************************************************************/

    [class^="wrapper"],
    [class*="-wrapper"] {
        position: relative;
        width: 100%;
        height: 100%;
    }

    /*************************************************************************
        3.3) Containers & Contents
    *************************************************************************/

    [class^="container"],
    [class*="-container"] {
        width: 100%;
        position: relative;
    }

    .small-container {
        max-width: 600px;
    }

    /* Medium container moved to a media query */
    
    .large-container {
        max-width: 1600px;
    }

    .x-large-container {
        max-width: 1920px;
    }

    .tiny-content {
        max-width: 300px;
    }

    .small-content {
        max-width: 600px;
    }

    .medium-content {
        max-width: 1200px;
    }

    .half-content {
        max-width: 50%;
    }
    
    .center {
        margin: auto;
    }

    /*************************************************************************
        3.4) Text
    *************************************************************************/

    .txt-big {
        font-size: 1.3rem;
    }

    .txt-small {
        font-size: 0.8rem
    }

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

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

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

    .txt-upper {
        text-transform: uppercase;
    }

    .txt-lower {
        text-transform: lowercase;
    }

    .txt-reverse {
        direction: rtl;
        unicode-bidi: bidi-override;
    }

    .category,
    .date {
        text-transform: uppercase;
    }

    /*************************************************************************
        3.5) Flex Grid
    *************************************************************************/
        
    /* lib/flex-grid.css */

    /*
    .flex-v-center
    .flex-h-center
    .flex-space-between
    */

    .flex,
    .flex-center,
    .flex-v-center,
    .flex-h-center,
    .flex-space-between {
        display: flex;
    }

    /* .flex-v-center,
    .flex-h-center,
    .flex-space-between { */

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

    /*************************************************************************
        3.6) Colors & Areas
    *************************************************************************/
    
    /* Colors & Areas > Colors */

        /* Colors & Areas > Colors > Black */

/*         .bg-black {
            background-color: black;
        }

        .black-b:before,
        .black-a:after,
        .black-ba:before,
        .black-ba:after,
        .black:before,
        .black:after,
        .black {
            color: black;
        }

        .border-black {
            border-color: black;
        } */

    /* Colors & Areas > Areas */

        /* Colors & Areas > Areas > Dark blue area */

/*         .dark-blue-area {
            background-color: var(--dark-blue-color);
            color: var(--white-color);
        }

        .dark-blue-area .link:after {
            background-color: var(--white-color);
        }

        .dark-blue-area .button {
            color: var(--white-color);
            border-color: var(--white-color);
        }

        .dark-blue-area .button.active,
        .dark-blue-area .social-networks .circle-button {
            color: var(--dark-blue-color);
            background-color: var(--white-color);
        } */

        /* Colors & Areas > Areas > White area */

/*         .white-area {
            background-color: var(--white-color);
            color: var(--black-color);
        } */

        /* Colors & Areas > Areas > Blue area */

/*         .blue-area {
            background-color: var(--blue-color);
            color: var(--white-color);
        }

        .blue-area .button {
            color: var(--white-color);
            border-color: var(--white-color);
        }

        .blue-area .button.active {
            color: var(--blue-color);
            background-color: var(--white-color);
        } */

    /* Color & Areas > Day */

        .artist-preview[data-day="thursday"] .preview-info .button:hover,
        .artist-preview[data-day="friday"] .preview-info .button:hover,
        .artist-preview[data-day="saturday"] .preview-info .button:hover,
        .artist-preview[data-day="sunday"] .preview-info .button:hover,
        .artists--day-item[data-day="thursday"] .artists--day-grid-cell--preview .button,
        .artists--day-item[data-day="friday"] .artists--day-grid-cell--preview .button,
        .artists--day-item[data-day="saturday"] .artists--day-grid-cell--preview .button,
        .artists--day-item[data-day="sunday"] .artists--day-grid-cell--preview .button {
            color: white;
        }

        /* Thursday */

        .button[data-day="thursday"].active,
        .artist-preview[data-day="thursday"] .preview-info .button,
        .artists--day-item[data-day="thursday"] .artists--day-grid-cell--preview .button  {
            background-color: var(--green-color);
            border-color: var(--green-color);
        }

        .tickets [class^="icon"][data-day="thursday"],
        .tickets [class*="-icon"][data-day="thursday"],
        .day[data-day="thursday"],
        .artist-preview[data-day="thursday"] .preview-info,
        .artists--day-item[data-day="thursday"] .artists--day-grid-cell--preview {
            color: var(--green-color);
        }

        /* Friday */

        .button[data-day="friday"].active,
        .artist-preview[data-day="friday"] .preview-info .button,
        .artists--day-item[data-day="friday"] .artists--day-grid-cell--preview .button {
            background-color: var(--red-color);
            border-color: var(--red-color);
        }

        .tickets [class^="icon"][data-day="friday"],
        .tickets [class*="-icon"][data-day="friday"],
        .day[data-day="friday"],
        .artist-preview[data-day="friday"] .preview-info,
        .artists--day-item[data-day="friday"] .artists--day-grid-cell--preview  {
            color: var(--red-color);
        }

        /* Saturday */

        .button[data-day="saturday"].active,
        .artist-preview[data-day="saturday"] .preview-info .button,
        .artists--day-item[data-day="saturday"] .artists--day-grid-cell--preview .button {
            background-color: var(--blue-color);
            border-color: var(--blue-color);
        }
        

        .tickets [class^="icon"][data-day="saturday"],
        .tickets [class*="-icon"][data-day="saturday"],
        .day[data-day="saturday"],
        .artist-preview[data-day="saturday"] .preview-info,
        .artists--day-item[data-day="saturday"] .artists--day-grid-cell--preview  {
            color: var(--blue-color);
        }

        /* Sunday */

        .button[data-day="sunday"].active,
        .artist-preview[data-day="sunday"] .preview-info .button,
        .artists--day-item[data-day="sunday"] .artists--day-grid-cell--preview .button {
            background-color: var(--purple-color);
            border-color: var(--purple-color);
        }

        .tickets [class^="icon"][data-day="sunday"],
        .tickets [class*="-icon"][data-day="sunday"],
        .day[data-day="sunday"],
        .artist-preview[data-day="sunday"] .preview-info,
        .artists--day-item[data-day="sunday"] .artists--day-grid-cell--preview  {
            color: var(--purple-color);
        }

    /*************************************************************************
        3.7) Other
    *************************************************************************/

    .away {
        position: absolute;
        left: -9999px;
        top: -9999px;
        visibility: hidden;
        z-index: -1;
    }

    .toggle-on-click { /* use if toggle on click JS plugin is activated */
        cursor: pointer;
    }

    .no-overflow {
        overflow: hidden;
    }

    .no-overflow-f {
        overflow: hidden !important;
    }

    /* Other > Background Image */

    [class^="bg-img"],
    [class*="bg-img"] {
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center; 
    }

    .bg-img-portait {
        background-position-y: top;
    }

    .bg-img-parallax {
        background-attachment: fixed;
    }

    /* Other > Transition */

    .no-transition-f {
        -webkit-transition: none !important;
        -moz-transition: none !important;
        -ms-transition: none !important;
        -o-transition: none !important;
        transition: none !important;
    }

    /* Other > User interaction */

    .no-select {
        cursor: default;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    /*************************************************************************
        3.8) Animations
    *************************************************************************/

    @keyframes loading-bar {
        from {
            transform: rotateY(0);
            -webkit-transform: rotateY(0);
            -moz-transform: rotateY(0);
            -ms-transform: rotateY(0);
            -o-transform: rotateY(0);
        }

        to {
            transform: rotateY(360deg);
            -webkit-transform: rotateY(360deg);
            -moz-transform: rotateY(360deg);
            -ms-transform: rotateY(360deg);
            -o-transform: rotateY(360deg);
        }
    }

    /*************************************************************************
        3.9) Custom
    *************************************************************************/

    /* Bubble info */

    .highlight-grid .circle {
        width: 40vmin;
        height: 40vmin; 
        max-width: 25rem;
        max-height: 25rem; 
        border-radius: 9.5vw 9.5vw 50% 50%;
        border-radius: 50%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

    .circle .icon-alert,
    .circle .icon-alert,
    .main-banner-content .icon-alert {
        color: var(--highlight-color);
        margin-bottom: 1rem;
        font-size: 3rem;
        display: block;
        height: 3rem;
    }

    /* Filters */
    
    .filters-nav {
        width: 100%;
        flex-wrap: wrap;
        justify-content: center;
    }

    .filters-nav .button {
        width: calc(100% - 4rem);
    }

    .filters-nav > .button:not(:first-of-type) {
        margin-top: 1rem;
    }

    /* Anchors */

    .anchors-nav {
        background-color: var(--white-color);
        padding: .3rem 0;
        /* border-top: var(--border-width) solid var(--black-color);
        border-bottom: var(--border-width) solid var(--black-color); */
        border-top: 1px solid var(--black-color);
        border-bottom: 1px solid var(--black-color);
    }

    .anchors-nav ul {
        margin: 0;
        padding: 0;
    }

    .anchors-nav li {
        display: block;
        text-transform: uppercase;
        padding: .3rem .5rem .1rem .5rem;   
    }

    .anchors-nav li.active {
        background-color: var(--purple-color);
        color: var(--white-color);
    }

    .anchors-nav li a {
        display: block;
        cursor: pointer;
    }

    main {
        position: relative;
    }

    /* Map */

    .map {
        min-height: 250px;
        height: 40vh;
        max-height: 800px;
        background-color: grey;
    }

    .section--inner-content > .tickets-container:not(:first-child) {
        margin-top: 3rem;
    }

    /* .tickets-container > .tickets--content:not(:first-child),
    .tickets-container .wrapper > .tickets--content:not(:first-child) {
        margin-top: 1rem;
    } */

    .tickets-container .title,
    .tickets-container .subtitle {
        text-align: center;
    }

    .tickets--grid > .tickets--grid--cell:not(:last-child) {
        margin-bottom: 1rem;
    }

    .ticket {
        border: 1px solid var(--black-color);
        padding: 2rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        min-height: 450px;
    }

    .ticket [class^="icon"] {
        font-size: 2.5rem;
        display: flex;
        background-color: white;
        border-radius: 10%;
        -webkit-border-radius: 10%;
        -moz-border-radius: 10%;
        -ms-border-radius: 10%;
        -o-border-radius: 10%;
    }

    .ticket .button .price {
        margin-left: 1rem;
        position: relative;
    }

    .ticket .button .price:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 1px;
        background-color: white;
        left: -.5rem;
    }

    .tickets--content {
        padding: .5rem;
    }

    .multiple-icons-tickets {
        position: relative;
        padding-top: 1rem;
        padding-right: 1rem;
    }

    .multiple-icons-tickets > [class^="icon"]:nth-child(2),
    .multiple-icons-tickets > [class^="icon"]:nth-child(3) {
        position: absolute;
    }

    .multiple-icons-tickets > [class^="icon"]:nth-child(2) {
        top: .5rem;
        right: .5rem;
    }

    .multiple-icons-tickets > [class^="icon"]:nth-child(3) {
        top: 0;
        right: 0;
    }

    .multiple-day-title {
        margin-bottom: 0;
    }

    /* img scale */

    .img-box {
        overflow: hidden;
        height: 60vh;
        width: 100%;
    }

    .img-box .bg-img {
        width: 100%;
        height: 100%;
    }

    .gallery .bg-img,
    .news-preview .bg-img,
    .edition-grid--cell .bg-img {
        transition: var(--transition-speed) var(--transition-easing);
        -webkit-transition: var(--transition-speed) var(--transition-easing);
        -moz-transition: var(--transition-speed) var(--transition-easing);
        -ms-transition: var(--transition-speed) var(--transition-easing);
        -o-transition: var(--transition-speed) var(--transition-easing);
    }

    /* artist preview */  

    .artist-preview {
        cursor: pointer;
        overflow: hidden;
    }

    .artist-preview .festi-bubble {
        position: absolute;
        width: 100%;
        height: 50%;
        left: 0;
    }

    .artist-preview .circle {
        position: relative;
        overflow: hidden;
    }

    /******** Thursday  **********/
    [data-day="thursday"] .turquoise-bubble {
        transform: scale(1.8);
        top: 2.6rem;
        left: 3rem;
    }

    [data-day="thursday"] .bubble-1 {
        width: 9rem;
        height: 8rem;
        bottom: 3rem;
        left: 3rem;
    }

    /******** Friday   **********/
    [data-day="friday"] .red-bubble {
        transform: scale(1.9);
        right: 3rem;
        top: 3rem;
    }

    [data-day="friday"] .bubble-4 {
        width: 10.5rem;
        height: 8rem;
        bottom: 2rem;
        right: 3.2rem;
        transform: rotate(160deg);
    }

    /******** Saturday **********/

    [data-day="saturday"] .blue-bubble {
        transform: scale(2) rotate(130deg);
        bottom: 5rem;
        left: 3rem;
    }

    [data-day="saturday"] .bubble-1 {
        width: 9rem;
        height: 8rem;
        transform: rotate(20deg);
        top: 1rem;
        right: 1rem;
    }

    /******** Sunday **********/

    [data-day="sunday"] .pink-bubble {	
        transform: scale(2) rotate(-35deg);
        top: 4rem;
        left: 4rem;
        z-index: 0
    }

    [data-day="sunday"] .bubble-6{
        width: 11rem;
        height: 7.5rem;
        transform: rotate(220deg);
        left: 1rem;
        top: 6rem;
        z-index: 1;
    }

    /* Artists grid */

    .artist-preview .preview-info {
        position: absolute;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -o-transform: translateX(-100%);
        transition: var(--transition-speed) var(--transition-easing);
        -webkit-transition: var(--transition-speed) var(--transition-easing);
        -moz-transition: var(--transition-speed) var(--transition-easing);
        -ms-transition: var(--transition-speed) var(--transition-easing);
        -o-transition: var(--transition-speed) var(--transition-easing);
    }

    .artist-preview .circle,
    .artist-preview .preview-info {
        width: 20vmin;
        height: 20vmin;
        max-width: 500px;
        max-height: 500px;
        min-width: 200px;
    	min-height: 200px;
        border-radius: 50%;
        margin-bottom: 1.5rem;
    }

    .artist-preview ,
    .artist-preview-content {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        z-index: 0;
        height: 100%;
        padding: 1rem;
    }

    .artist-preview .bubbles > .festi-bubble:first-child {
        top: -1rem;
    }

    .artist-preview .bubbles > .festi-bubble:last-child {
        bottom: -1rem;
    }

    .artist-preview .button {
    	margin: 0;
        margin-top: 1rem;
    }

    /* expand-grid-wrapper */
/*     .expand-grid-wrapper > .grid > div:not(.visible) {
        display: none;
    } */

    /* Steps-nav */

    .steps-nav {
        display: flex;
        justify-content: space-between;
        margin: auto;
    }

    .steps-nav .steps-nav--content {
        cursor: pointer;
    }

    .steps-nav a,
    .steps-nav .steps-nav--content span {
        transition: .3s ease;
    }

    .steps-nav .steps-nav--content:hover span,
    .steps-nav .steps-nav--content:hover a {
        color: var(--purple-color);
    }

    .steps-nav .steps-nav--content {
        display: flex;
    }

    .steps-nav > .steps-nav--content:first-child {
        flex-direction: row-reverse;
    }

    .steps-nav > .steps-nav--content:first-child span.arrow {
        transform: rotate(180deg) translateY(2px);
        /* margin-right: .5rem; */
    }

    .steps-nav > .steps-nav--content:last-child span {
        transform: translateY(2px);
        /* margin-left: .5rem; */
    }

    article.detail-article {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	article.detail-article .container {
		max-width: 800px;
	}

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

	.steps-nav a:first-child {
		margin-right: 1rem;
	}

	.steps-nav a:last-child {
		margin-left: 1rem;
		text-align: right;
	}

	.steps-nav--content span.arrow {
		padding-left: 1rem;
		margin: 0;
	}

	article.detail-article p {
		margin-top: 1rem;
	}

    /* Sponsors list */

    .sponsors-grid .sponsors-grid--inner-content:not(:last-child) {
        padding-right: 2rem;
    }

    .sponsors-grid .sponsor-img {
        width: 100%;
        display: flex;
        height: 8vh;
        max-height: 100px;
        min-height: 50px;
        max-width: 200px;
        background-size: contain;
        transition: var(--transition-speed) var(--transition-easing);
    }

/*************************************************************************/

/* 4) Icons

/*************************************************************************/

    /*************************************************************************
        4.1) Icommon
    *************************************************************************/

    @font-face {
        font-family: 'icomoon';
        src:  url('../fonts/icomoon/icomoon.eot?4q5a70');
        src:  url('../fonts/icomoon/icomoon.eot?4q5a70#iefix') format('embedded-opentype'),
        url('../fonts/icomoon/icomoon.ttf?4q5a70') format('truetype'),
        url('../fonts/icomoon/icomoon.woff?4q5a70') format('woff'),
        url('../fonts/icomoon/icomoon.svg?4q5a70#icomoon') format('svg');
        font-weight: normal;
        font-style: normal;
    }
    
    .before-icomoon:before,
    .after-icomoon:after,
    [class^="icon-"]:before,
    [class^="icon-"]:after,
    [class*=" icon-"]:before,
    [class*=" icon-"]:after {

        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;

        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    .icon-cycle:before {
        content: "\e909";
    }

    .icon-alert:before {
        content: "\e900";
    }

    .icon-arrow-button:before {
        content: "\e901";
    }

    .icon-arrow:before {
        content: "\e902";
    }

    .icon-bcn:before {
        content: "\e903";
    }

    .icon-bus-2:before {
        content: "\e904";
    }

    .icon-bus-line:before {
        content: "\e905";
    }

    .icon-bus-night:before {
        content: "\e906";
    }

    .icon-bus:before {
        content: "\e907";
    }

    .icon-car:before {
        content: "\e908";
    }

    .icon-facebook:before {
        content: "\e90b";
    }

    .icon-handicap:before {
        content: "\e90c";
    }

    .icon-info:before {
        content: "\e90d";
    }

    .icon-instagram:before {
        content: "\e90e";
    }

    .icon-linkedin:before {
        content: "\e90f";
    }

    .icon-search:before {
        content: "\e924";
    }

    .icon-favicon:before {
        content: "\e90a";
    }

    .icon-logo:before {
      content: "\e910";
    }

    .icon-migros:before {
        content: "\e911";
    }

    .icon-parking:before {
        content: "\e912";
    }

    .icon-price:before {
        content: "\e913";
    }

    .icon-share:before {
        content: "\e914";
    }

    .icon-star-abo:before {
        content: "\e915";
    }

    .icon-star-brunch:before {
        content: "\e916";
    }

    .icon-star-cheese:before {
        content: "\e917";
    }

    .icon-star-cocktail:before {
        content: "\e918";
    }

    .icon-star-family:before {
        content: "\e919";
    }

    .icon-star:before {
        content: "\e91a";
    }

    .icon-ticket-family:before {
        content: "\e91b";
    }

    .icon-ticket-vip:before {
        content: "\e91c";
    }

    .icon-ticket:before {
        content: "\e91d";
    }

    .icon-tiktok:before {
        content: "\e91e";
    }

    .icon-time:before {
        content: "\e91f";
    }

    .icon-train:before {
        content: "\e920";
    }

    .icon-twitter:before {
        content: "\e921";
    }

    .icon-wc:before {
        content: "\e922";
    }

    .icon-youtube:before {
        content: "\e923";
    }

/*************************************************************************/

/* 5) Content

/*************************************************************************/



    /*************************************************************************/
    /* 5.1) Sections
    /*************************************************************************/

    /* Sections > Highlight news */

    .higlight-news {
        width: 100%;
        z-index: 1;
    }

    .higlight-news .bubble-news-grid .grid-cell {
        display: flex;
        justify-content: center;
    }

    .higlight-news article a {
        margin: 0;
    }

    .higlight-news footer {
        display: flex;
        justify-content: center;
    }

    /******** more informaiton on artist *****/
    
    .img-box {
        position: relative;
    } 

    .more-overlay {
        position: absolute;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 12, 43, .6);
        opacity: 0;
        transition: opacity ease .5s;
        pointer-events: none;
        z-index: 1;
    }

    .more-overlay .see-more {
        border-radius: 50%;
        width: 2.5rem;
        height: 2.5rem;
        border: solid 2px #ffffff;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .more-overlay .see-more > span{
        color: #ffffff;
        font-size: 1.2rem;
        margin-top: .3rem;
    }

    /******** /more informaiton on artist *****/


    /*************************************************************************/
    /* 5.2) Elements & Parts
    /*************************************************************************/


    /* aside menu */

    
    .aside-menu-area {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        overflow: hidden;
    }

    body > main > aside {
        position: absolute;
        top: 0;
        bottom: unset;
        z-index: 1;
        margin: calc(var(--border-width) * -1) 4rem;
        width: 250px;
    }

    /* Elements & Parts > Lightbox */

    .lightbox {
        position: fixed;
        -webkit-transition: .3s ease;
        -moz-transition: .3s ease;
            -ms-transition: .3s ease;
            -o-transition: .3s ease;
                transition: .3s ease; 
        -webkit-transform: translateX(105%);
        -moz-transform: translateX(105%);
            -ms-transform: translateX(105%);
            -o-transform: translateX(105%);
                transform: translateX(105%); 
        left: 0;
        top: 0;
        width: 100vw;
        height: 100vh;
        opacity: 1;
        z-index: 2000;
        background-color: rgba(246, 246, 246, .9);

        cursor: pointer;
        overflow: hidden auto;


    }

    body.lightbox-artist-active .artist-lightbox,
    body.lightbox-edition-active .lightbox-edition,
    body.lightbox-vip-active .lightbox-vip  {
        transform: translateX(0); 
    }

    .lightbox > .wrapper {

        display: flex;
        align-items: center;
        justify-content: center;
        padding: 2rem;
        min-height: 100vh;
    }

    .lightbox-container {
		cursor: default;
		height: 100%;
        overflow: hidden;
    }

	.lightbox-content {
		width: 100%;
		height: 100%;
		padding: 6rem 4rem 4rem 4rem;
        position: relative;
        z-index: 1000;
	}

	.lightbox .close-button {
		position: absolute;
		top: 1rem;
		right: 1rem;
        z-index: 100;
	}

    /* Elements & Parts > Lightbox Artist */
    
    .artist-lightbox header .artist-img {
        width: 100%;        
        height: 30vh;
        min-height: 400px;
    }

    .artist-lightbox .lightbox-content {
        overflow-y: auto;
    }

    .artist-lightbox header .info span:not(:first-child) {
        padding-left: 1rem;
    }

    .artist-lightbox header .info:last-child {
    	margin-bottom: 0;
    }

    .artist-lightbox .content .details .video {
        margin-top: 3rem;
    }

    .artist-lightbox .content .details iframe { 
        max-width: 100%;
    }

    .artist-lightbox .social-networks > a:not(:last-child) {
        margin-bottom: 0;
    }

    /* Le Festival */

    .lightbox-edition .lightbox-container {
        overflow: hidden;
    }

    .lightbox-edition .container {
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }


    .lightbox-edition .lightbox-content {
        padding: 4rem 6.5rem;
    }

    /* Elements & Parts > Loader */

    .loader {
        position: fixed;
        z-index: 2000;
        top: 0;
        width: 100%;
        background-color: rgba(255, 255, 255, 0.9);
        transform: translateX(200%);
        -webkit-transform: translateX(200%);
        -moz-transform: translateX(200%);
        -ms-transform: translateX(200%);
        -o-transform: translateX(200%);
        transition: var(--transition-speed) var(--transition-easing);
        -webkit-transition: var(--transition-speed) var(--transition-easing);
        -moz-transition: var(--transition-speed) var(--transition-easing);
        -ms-transition: var(--transition-speed) var(--transition-easing);
        -o-transition: var(--transition-speed) var(--transition-easing);
    }

    body.loading .loader {
        transform: translateX(0);
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
    }

    .loader-container {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .loader .logo {
        font-size: 8rem;
        animation: loading-bar 3s infinite;
        -webkit-animation: loading-bar 3s infinite;
    }

    /* Elements & Parts > Cross */

    .cross {
		position: relative;
		width: 100%;
		height: 100%;
		transition: var(--transition-speed) var(--transition-easing);
		-webkit-transition: var(--transition-speed) var(--transition-easing);
		-moz-transition: var(--transition-speed) var(--transition-easing);
		-ms-transition: var(--transition-speed) var(--transition-easing);
		-o-transition: var(--transition-speed) var(--transition-easing);
    }

	.cross:before,
	.cross:after {
		position: absolute;
		content: "";
		background-color: black;
		left: 50%;
		top: 50%;
		width: calc(100% - 1.5rem);
		height: 2px;
		transition: var(--transition-speed) var(--transition-easing);
		-webkit-transition: var(--transition-speed) var(--transition-easing);
		-moz-transition: var(--transition-speed) var(--transition-easing);
		-ms-transition: var(--transition-speed) var(--transition-easing);
		-o-transition: var(--transition-speed) var(--transition-easing);
    }

	.cross:before {
		transform: translate(-50%) rotate(45deg);
		-webkit-transform: translate(-50%) rotate(45deg);
		-moz-transform: translate(-50%) rotate(45deg);
		-ms-transform: translate(-50%) rotate(45deg);
		-o-transform: translate(-50%) rotate(45deg);
    }

	.cross:after {
		transform: translate(-50%) rotate(-45deg);
		-webkit-transform: translate(-50%) rotate(-45deg);
		-moz-transform: translate(-50%) rotate(-45deg);
		-ms-transform: translate(-50%) rotate(-45deg);
		-o-transform: translate(-50%) rotate(-45deg);
    }

    /* Elements & Parts > Cookies Banner */

    .cookies-banner {
        background-color: var(--highlight-color);        
        position: fixed;
        display: flex;
        align-items: center;
        flex-direction: column;
        top: calc(100% - 1rem);
        left: 1rem;
        width: calc(100% - 2rem);
    	max-width: 550px;
        height: auto;
        max-height: 100vh;
        z-index: 500;
        color: white;
        -webkit-transition: .3s ease-in-out;
        -moz-transition: .3s ease-in-out;
        -ms-transition: .3s ease-in-out;
        -o-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
        overflow-x: hidden;
        overflow-y: auto;
        visibility: hidden;
    }

    .cookies-banner.active {
        visibility: visible;
        -webkit-transform: translateY(-100%);
        -moz-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        -o-transform: translateY(-100%);
        transform: translateY(-100%);
    }

    .cookies-banner.active.reading {
        width: 100%;
        max-width: 100%;
        left: 0;
        top: 0;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }

    .cookies-banner-wrapper {
        padding: 2rem;
        max-width: 1000px;
    }

    .cookies-banner .content {
        display: none;
        border-top: 1px solid white;
        padding-top: 2rem;
        margin-top: 2rem;
    }

    .cookies-banner .content > div > section {
        margin-top: 2rem;
    }

    .cookies-banner .content > div > footer {
        margin-top: 0.5rem;
    }

    .cookies-banner .content h2 {
        text-align: left;
        margin-top: 2rem;

        font-weight: normal;
        border-top : solid 2px var(--white-color); 
        padding-top: 1.5rem;
    }

    .cookies-banner .content h3 {
        margin-top: 2rem;
        font-weight: normal;
        font-size: 2rem;
    }

    .cookies-banner .content p {
        margin-top: .5rem;
        font-weight: normal;
        font-size: 1.3rem;
    }

    .cookies-banner button {

        border-color: var(--white-color);
        background-color: var(--white-color);

    }

    .cookies-banner button:hover {

        border-color: var(--black-color);

    }

    .cookies-banner button:after {

        display: none;

    }

    /* Elements & Parts > Modal */

    .modal {

        position: fixed;
        top: 0;
        z-index: 500;
        width: 100%;
        height: 100%;
        cursor: pointer;
        transform: translateX(200%);
        opacity: 0;
        transition: opacity var(--transition-speed) var(--transition-easing);
        
    }

    body.modal-open .modal {

        transform: translateX(0);
        opacity: 1;

    }

    .modal-container {

        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: rgba(255, 255, 255, .8);
        padding: 0 4vw;

    }

    .modal-content {

        display: flex;
        flex-direction: column;
        align-items: center;
        background-color: white;
        padding: 4rem;
        cursor: default;

    }

    /* Elements & Parts > Lift */

    .lift {
        
        cursor: pointer;
        position: fixed;
        bottom: 1rem;
        right: 1rem;
        transform: translateX(200%);
        z-index: 2;
        border: 2px solid var(--highlight-color);
        transition: var(--transition-speed) var(--transition-easing);

    }

    .lift.active {
        transform: translateX(0);
    }

    .lift [class^="icon"] {

        transform: rotate(-90deg) translateY(2px);
        transition: .3s var(--transition-easing);
        color: var(--highlight-color);

    }

    .lift:hover {

        background-color: var(--highlight-color);

    }

    .lift:hover [class^="icon"] {

        color: var(--white-color);

    }

    /* Elements & Parts > Main menu */

    body > header .main-menu-trigger {
        width: 3rem;
        height: 3rem;
        cursor: pointer;
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 50;
        background-color: white;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
        display: none;
        visibility: hidden;
    }
    
    .menu-burger {
        position: relative;
        width: calc(100% - 1.5rem);
        height: 100%;
    }
    
    .menu-burger:before {
        top: 0.5rem
    }
    
    .menu-burger:after {
        bottom: 0.5rem
    }
    
    .menu-burger,
    .menu-burger:after,
    .menu-burger:before {
        height: 2px;
        background-color: #000000;
        border-radius: 10rem;
        -webkit-border-radius: 10rem;
        -moz-border-radius: 10rem;
        -ms-border-radius: 10rem;
        -o-border-radius: 10rem;
        transition: bottom .3s ease .3s,top .3s ease .3s,opacity .3s ease,transform .3s ease    ;
        -webkit-transition: bottom .3s ease .3s,top .3s ease .3s,opacity .3s ease,-webkit-transform .3s ease;
        -moz-transition: bottom .3s ease .3s,top .3s ease .3s,opacity .3s ease,-moz-transform .3s ease;
        -ms-transition: bottom .3s ease .3s,top .3s ease .3s,opacity .3s ease,-ms-transform .3s ease;
        -o-transition: bottom .3s ease .3s,top .3s ease .3s,opacity .3s ease,-o-transform .3s ease;
    }
    
    .menu-active .menu-burger,
    .menu-active .menu-burger:after,
    .menu-active .menu-burger:before {
        -webkit-transition: bottom .3s ease,top .3s ease,opacity .3s ease .3s,-webkit-transform .3s ease .3s;
        -moz-transition: bottom .3s ease,top .3s ease,opacity .3s ease .3s,-moz-transform .3s ease .3s;
        -ms-transition: bottom .3s ease,top .3s ease,opacity .3s ease .3s,-ms-transform .3s ease .3s;
        -o-transition: bottom .3s ease,top .3s ease,opacity .3s ease .3s,-o-transform .3s ease .3s;
        transition: bottom .3s ease,top .3s ease,opacity .3s ease .3s,transform .3s ease .3s
    }
    
    .menu-burger:after,
    .menu-burger:before {
        content: "";
        position: absolute;
        left: 0;
        width: 100%;
    }
    
    .menu-active .menu-burger:before {
        top: 0;
        opacity: 0
    }
    
    .menu-active .menu-burger:after {
        bottom: 0
    }
    
    .menu-active .menu-burger {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg)
    }
    
    .menu-active .menu-burger:after {
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg)
    }

    body > header .main-menu {
        width: 100%;
        position: absolute;
        background-color: white;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        top: 0;
        z-index: 10;
        right: 0;
        opacity: 0;
        color: black;
        padding: 2rem;
        visibility: hidden;
        -webkit-transform: translateX(-100%);
           -moz-transform: translateX(-100%);
            -ms-transform: translateX(-100%);
             -o-transform: translateX(-100%);
                transform: translateX(-100%);
        -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
           -moz-transition: opacity .3s ease, -moz-transform .3s ease;
            -ms-transition: opacity .3s ease, -ms-transform .3s ease;
             -o-transition: opacity .3s ease, -o-transform .3s ease;
                transition: opacity .3s ease, transform .3s ease;
    }

    body > header .main-menu > div {
        display: flex;
        align-items: center;
    }

    body > header .main-menu > div > ul {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        font-size: 2rem;
    }

    body > header .main-menu > div > ul > li:not(:first-child) {
        margin-top: 1rem;
    }

    body > header .main-top-menu {
        z-index: 100;
        display: flex;
    }

    body > header .main-top-menu .highlight-button {
        padding: 1rem 1rem 0.8rem 1rem;
    }

    body > header .main-top-menu > .button:not(:first-child) {
        margin-left: 1rem;
    }

    body.menu-active > header .main-menu {
        opacity: 1;
        visibility: visible;
        height: 100vh;
        min-height: -webkit-fill-available;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }


    /******* offre individual icon size *******/
    
    [data-reference-page="infos-pratiques"] .content-icon.icon-bus::before {
        font-size: 100%;
    }

    [data-reference-page="infos-pratiques"] .content-icon.icon-train::before {
        font-size: 120%;
    }

    [data-reference-page="infos-pratiques"] .content-icon.icon-cycle::before {
        font-size: 70%;
    }

    [data-reference-page="infos-pratiques"] .content-icon.icon-car::before {
        font-size: 80%;
    }

    [data-reference-page="infos-pratiques"] .content-icon.icon-bus-night::before {
        font-size: 120%;
    }


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

        body > header .main-menu-container {
            padding: 1rem 8vw;
        }

        body > header .main-top-menu {
            flex-direction: row;
            align-items: center;
        }
        
        body > header .main-top-menu > .button:not(:first-child) {
            margin-top: 0;
            margin-left: 1rem;
        }



       

    }

    @media screen and (max-width: 1250px) {


        .logo-menu,
        .main-menu-submenu:not(:last-child) {
            margin-bottom: 2.5rem;
        }

        .main-menu-submenu .main-menu-submenu-level-2 {
            margin-left: 1rem;
        }

        .main-menu-submenu .main-menu-submenu-level-2 > li:before {
            display: none;
        }

        .desktop-menu-languages {
            display: none;
        }

        .mobile-menu-languages {
            width: 100%;
            display: flex;
            justify-content: center;
        }
    }

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


        .mobile-menu-languages {
            display: none;
        }

        body > header .main-menu-trigger {
            display: none;
            visibility: hidden;
        }

        body > header .main-menu {
            position: relative;
            opacity: 1;
            visibility: visible;
            -webkit-transform: none;
            -moz-transform: none;
            -o-transform: none;
            transform: none;
            background-color: transparent;
            padding: 0;
        }

        body > header .main-menu > div > ul {
            flex-direction: row;
        }

        body > header .main-menu > div > ul > li:not(:first-child) {
            margin-top: 0;
            margin-left: 1rem;
        }

        body > header .main-menu .main-menu-links {
            flex-direction: row;
            color: var(--white-color);
            align-items: center;
        }

        body > header .main-menu-submenu {
            font-weight: bold;
            position: relative;
            transform: translateY(-.2rem);
        }

        body > header .main-menu-links > .main-menu-submenu:not(:last-child) {
            margin-right: 2rem;
        }

        body > header .main-menu-submenu-level-2 {
            display: none;
            position: absolute;
            top: 0.5rem;
            left: 0;
            padding: 2rem;
            background-color: #444;
        }

        body > header .main-menu-submenu-level-2 li {
            list-style-type: none;
            display: inline-flex;
            flex-wrap: wrap;
            text-align: left;
        }

        .desktop-menu-languages {
            margin-left: 2rem;
        }

    }

    /* Elements & Parts > Social networks */

    .social-networks {
        display: flex;
        width: fit-content;
        height: auto;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .social-networks .circle-button {
        color: var(--white-color);
        background-color: var(--black-color);
        border:none;
    }

    .social-networks > a:not(:last-child) {
        margin-right: .5rem;
        margin-bottom: .5rem;
    }

    .social-networks .icon-tiktok {
        font-size: .7rem;
    }

    /* Elements & Parts > Slider */

    .slider {
        position: relative;
        width: 100%;
        height: 100%;
    }
    
    .slider > .slide {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        padding: 1rem;
        opacity: 0;
        -webkit-transition: .3s ease;
        -moz-transition: .3s ease;
        -o-transition: .3s ease;
        transition: .3s ease;
    }
    
    .slider > .slide.active {
        opacity: 1;
    }
    
    .slider .slider-nav {
        position: absolute;
        top: 50%;
        left: 0;
        height: 1px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .slider .slider-nav {
        width: calc(100% + 6rem);
        transform: translateX(-3rem);

    }

    .lightbox-edition .slider .slider-nav {
        width: calc(100% + 11rem);
        transform: translateX(-5.5rem);
    }
    
    
    .slider .slider-nav--content:first-child .icon-arrow {
        transform: rotate(180deg);
        
    }


    .slider .slider-nav > div {
        /* position: absolute; */
        /* width: 100%; */
        top: 50%;
        left: 0;
        height: 1px;
        display: flex;
        justify-content: space-between;
    }
    
    .slider .slider-nav .icon-arrow {
        position: relative;
        height: 2rem;
        z-index: 5;
        display: flex;
        align-items: center;
        /* color: #a8a8a8; */
    }

    .active.slider-nav--content {
        color: var(--black-color);
        cursor: pointer;
    }

    .slider-nav--content {
        color: #a7a7a7;
        user-select: none;
    }

    .slider-nav--content .edition-year {
        display: none;
    }

    .slider-nav--content.active .edition-year {
        display: block;
    }

    /***** Slider Edition  *****/

    .slider-edition .slide {
        display: flex;
        align-items: center;
        padding: 0;
    }

    .slider-edition .slide .edition-img {
        width: 100%;
        height: 100%;
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
    }

    .slider-edition .slider-nav .icon-arrow {
        font-size: 2rem;
        transition: all ease .3s;
    }

/*     .slider-edition .slider-nav span:first-child {
        transform: rotate(180deg);
    } */

    .slider-edition .slider-nav .icon-arrow.active {
        color:#000;
        cursor: pointer;
    } 

    /* Elements & Parts > Artists grid & News grid */

    /* .artists-grid,
    .news-grid,
    .section-footer--inner-content .gallery{
        width: calc(100% + 1rem);
        margin-left: -.5rem;
        margin-top: -.5rem;
    } */

    .artists-grid .grid-cell,
    .news-grid .grid-cell,
    .section-footer--inner-content .gallery--cell {
        padding: .5rem;
    }

    .news-grid .grid-cell {
        margin-bottom: 1rem; 
    }

    /* Elements & Parts > News grid */

    .news-grid .grid-cell--inner-content {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        cursor: pointer;
    }

    .news-grid .grid-cell--inner-content .img-box,
    .news-grid .grid-cell--inner-content .article-header-data,
    .news-grid .grid-cell--inner-content .article-title,
    .news-grid .grid-cell--inner-content .article-content {
        margin-bottom: 1rem;
    }

    .news-grid .article-title {
        text-align: center;
    }

    .news-grid .grid-cell--inner-content .article-thumbnail {
        transition: var(--transition-speed) var(--transition-easing);
    }

    .news-grid .grid-cell--inner-content:hover .article-thumbnail {
        transform: scale(1.1);
    }

    .article-header-data {
        display: flex;
    }

    .category {
        position: relative;
        padding-right: 1rem;
    }

    .category:after {
        position: absolute;
        content: "";
        width: 1px;
        height: 100%;
        background-color: var(--black-color);
        right: .5rem;
        transition: var(--transition-speed) var(--transition-easing);
    }

    .home-banner-news-content .category:after {
        background-color: var(--black-color);
    }

    /*************************************************************************/
    /* 5.3) Pages
    /*************************************************************************/


    /* Pages > Homepage */

        /* Pages > Homepage */

        .artists .artists--day-grid {
            display: flex;
            justify-content: flex-start;
        }

        .artists .artists--day-item {
            display: flex;
        }

        .artists .artists--day-item > .artists--day-grid {
            position: relative;
            width: 100%;
            flex: 0 0 0;
            display: -webkit-box;
        } 

        .artists--days-items .artists--day-grid-cell {
            width: 10vw;
            height: 10vw;
            transition: .1s ease;
        }

        .artists--day-grid .artists--day-grid-cell {
            cursor: pointer;
            overflow: hidden;
            position: relative;
        }

        .artists--day-grid-cell--preview {
            height: 100%;
            background-color: rgba(0, 12, 43, .6);
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            color: white;
            transition: var(--transition-speed) var(--transition-easing);
            transform: translateX(-100%);
            position: absolute;
            top: 0;
            width: 100%;
        }

        .artists--day-grid .artists--day-grid-cell:hover .artists--day-grid-cell--preview {
            transform: translateX(0);
        }

        .artists--day-grid-cell--preview .button {
            background-color: white;
            color: black;
        }

        .artists--day-grid-cell--preview:hover .button {
            background-color: white;
            color: black;
        }

        .home .home-news .section-content {
           margin-bottom: 3rem;
        }

        .artists--days-items > article:not(:last-child) {
            margin-bottom: 6rem;
        }

        .artists--days-items .artists--day-grid-cell--position-top {
            align-self: flex-start;
            justify-self: flex-start;
        }

        .artists--days-items .artists--day-grid-cell--position-bottom {
            align-self: flex-end;
            justify-self: flex-end;
        }

        .artists--days-items > .artists--day-item:first-child .artists--day-grid-cells {
            flex-grow: 2;
            flex-shrink: 0;
        }

        .artists--day-grid-cells {
            display: flex;
            flex-direction: column;
        }

        .artists-buttons {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            margin-top: 3rem;
        }

        .artists-buttons .button,
        .artists-buttons button {
            min-width: 200px;
            max-width: 200px;
        }

        .artists-buttons > button:first-of-type,
        .artists-buttons > .button:first-of-type {
            margin-bottom: 1rem;
        }

        .artist-slider-img {
            width: 100%;
            height: 100%;
        }

        .artists--day-grid-cell--slider .slide {
            padding: 0;
        }

        .artists--day-grid-cell--slider > .slide:first-child .artist-slider-img {
            background-image: url('/wp-content/uploads/2021/02/artist-–-10.jpg');
        }

        .artists--day-grid-cell--slider > .slide:nth-child(2) .artist-slider-img {
            background-image: url('/wp-content/uploads/2021/02/artist-–-7.jpg');
        }

        .artists--day-grid-cell--slider > .slide:last-child .artist-slider-img {
            background-image: url('/wp-content/uploads/2021/02/artist.jpg');
        }

        /* Bubles in main */

        @keyframes bubble-home-4 {
            0%{
                transform: rotate(150deg) translateY(-1rem);
            } 50%{
                transform: rotate(152deg) translateY(1rem);
            } 100%{
                transform: rotate(150deg) translateY(-1rem);
            }
        }

        @keyframes bubble-home-1 {
            0%{
                transform: rotate(0) translateY(-1rem);
            } 50%{
                transform: rotate(2deg) translateY(1rem);
            } 100%{
                transform: rotate(0) translateY(-1rem);
            }
        }

        @keyframes bubble-home-6 {
            0%{
                transform: rotate(-140deg) translateY(-1rem);
            } 50%{
                transform: rotate(-142deg) translateY(1rem);
            } 100%{
                transform: rotate(-140deg) translateY(-1rem);
            }
        }

        .artists .bubble-4 {
            width: 15rem;
            height: 15rem;
            position: absolute;
            transform: rotate(150deg);
            top: 46rem;
            left: -1rem;
            animation: bubble-home-4 15s infinite;
        }

        .artists .bubble-1 {
            width: 15rem;
            height: 15rem;
            right: -4rem;
            bottom: 45rem;
            animation: bubble-home-1 15s infinite;
        }

        .home-news {
            position: relative;
        }

        .home-news .bubble-6 {
            width: 16rem;
            height: 16rem;
            transform: rotate(-140deg);
            left: -5rem;
            top: -4rem;
            animation: bubble-home-6 15s infinite;
        }

/*         .bubble-box {
            display: none;
        }
 */
/*         .bubble-box .bg-img{
            width: 100%;
            height: 100%;
            animation: bubble-home-6 15s infinite;
        }

        .artists .bubble-box {
            max-width: 22rem;
            max-height: 22rem;
        }

        .artists .bubble-box {
            position: absolute;
            width: 23vw;
            height: 23vw;
            transform: rotate(140deg);
            right: -13vw;
        }


        .home-news .bubble-box{
            position: absolute;
            width: 15rem;
            height: 10rem;
            left: -5rem;
            top: 0rem;
        } */


        /* Pages > Offres */

        .offre-informations.active .cross:before {
            transform: translate(-50%) rotate(-45deg);
        }
        
        .offres-content .offre .cross {
            width: 1rem;
            height: 1rem;
            transform: rotate(45deg);
            margin-left: auto;
            margin-top: 1rem;
        }

        /* Pages > Single content */

        .single-post main {
            margin-top: 20vh;
        }

        .single-post .category,
        .single-post .date {
            font-size: 1.25rem;
        }

        .single-post .wp-block-separator {
            display: none;
            visibility: hidden;
        }

        .auteur {
            display: block;
        }

        .single-content-title,
        .auteur {
            text-align: center;
        }

        .single-content-img {
            min-height: 500px;
            margin-bottom: 4rem;
        }

        .single-post .wp-block-embed-youtube {
            margin: 4rem 0 0 0;
        }

        .single-post iframe {
            width: 100%;
            min-height: 500px;
        }

        /* Pages > Festival */
        
        #contact .grid-cell:first-child {
	        padding-bottom: 1rem;
	    }

        section.contact .section--inner-content-main > .content:not(:first-child) {
            margin-top: 3rem;
        }

        section.sponsors .inner-content-main--container {
            display: flex;
            flex-direction: column;
        }

        .sponsors-grid-title {
            margin: 2rem 0 1rem 0;
        }

        /* Pages > Billetterie */

        body[data-reference-page="billetterie"] .section-footer {
            margin-top: 4rem;
        }

        /* Pages > 404 */
    
        body.error404 > header .main-menu-container,
        body.error404 > footer {
            display: none !important;
        }

        body.error404 {
            color: white;
            background-color: var(--dark-blue-color);
        }

    
        .container-404 .title {
            font-size: 10rem;
            position: relative;
            z-index: 1;
            color: var(--highlight-color);
        }

        .container-404 .txt {
            position: relative;
            z-index: 1;
            text-align: center;
            margin-bottom: 2rem;
            color: var(--background-color);
        }

        .container-404 .icon-arrow {
            margin-left: 1rem;
        }

        .container-404 {
            position: relative;
            background-color: var(--dark-blue-color);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            padding: 2rem;
            height: 100vh;

        }

        .container-404 .content {
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .container-404 .highlight-button {
            width: auto;
            display: flex;
            align-items: center;
        }

        .container-404 .bubble-6 {
            width: 21.5rem;
            height: 15rem;
            top: 19%;
            right: 12%;
            transform: rotate(215deg);
            animation: bubble-home-6 15s infinite;
        }

        .container-404 .turquoise-bubble {
            position: absolute;
            left: 50%;
            bottom: 35%;
        }

        .container-404 .red-bubble {
            position: absolute;
            left: 25%;
            bottom: 20%;
        }

        .container-404 .bubble-5 {
            width: 21.5rem;
            height: 15rem;
            left: 55%;
            bottom: 20%;
            transform: rotate(215deg);
            animation: bubble-home-6 10s infinite;
        }

        .container-404 .bubble-1 {
            width: 21.5rem;
            height: 15rem;
            left: 20%;
            bottom: 50%;
            transform: rotate(215deg);
            animation: bubble-home-6 20s infinite;
        }




/*************************************************************************/

/* 6) Responsive

/*************************************************************************/

    /* Comment template: {Media} > {Table of content level 1} > {Table of content level 2} > {Element Groups if needed}

    /*************************************************************************/
    /* 6.1) Small media (481px +)
    /*************************************************************************/

    @media screen and (max-width: 480px) {

        body > header .main-banner-content:not(.home-banner) {
            min-height: auto;
            padding-bottom: 4rem;
        }

        .social-networks {
            justify-content: center;
        }

        .social-networks > a:not(:last-child) {
            margin-right: .5rem;
            margin-bottom: .5rem;
        }  

        ul.block-list li:not(:first-child):before {
            padding: 0 .2rem;
        } 

    }

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

        /* Small media+ > General Style */

        /* Small media+ > Layouts */

            /* Small media+ > Layouts > Default */

                /* Small media+ > Layouts > Default > Header */

                /* Small media+ > Layoust > Default > Main */

                /* Small media+ > Layouts > Default > Footer */

        /* Small media+ > Helpers */

            /* Small media+ > Helpers > Custom */

        /* Small media+ > Content */

            /* Small media+ > Content > Sections */

            .artists-buttons {
                flex-direction: row;
                align-items: normal;
            }

            .artists-buttons > button:first-of-type, 
            .artists-buttons > .button:first-of-type {
                margin-bottom: 0;
                margin-right: 1rem;
            }

            /* Small media+ > Content > Elements & Parts */

            .filters-nav {
                margin-top: 1rem;
                justify-content: start;
            }

            .filters-nav > .button:not(:last-of-type) {
                margin-right: 1rem;
            }

            .filters-nav .button {
                width: 23vw;
                max-width: 150px;
                min-width: 100px;
                margin-top: 1rem;
            }

            .programme .filters-nav .button {
                max-width: 180px;
            }

    }

    @media screen and (min-width: 481px) and (max-width: 720px) {

    }

    /*************************************************************************/
    /* 6.2) Medium media (721px +)
    /*************************************************************************/

    @media screen and (max-width: 720px) {

        body > footer .footer-container {
            padding: 4rem 2rem;
        }

        body > footer .footer-container .footer-content {
            padding: 0 !important; /*provisoir*/
        } 

        body > footer .seagull {

            display: none;
            visibility: hidden;

        }

        body > footer .footer-container > .footer-content:not(:last-child) {
            margin-bottom: 4rem;
        }

        body > footer .social-networks {
            max-width: 300px;
            justify-content: space-between;
        }

        /* body > footer .social-networks a.circle-button {
            margin: 0 1rem;
        } */


        body > header .home-banner-news-content .home-banner-news-title {
            margin-bottom: 1rem;
        }

        .slider-edition .slide {
            flex-direction: column;
            /* height: 90vh; */
        }

        .container-404 .bubble-6 {
            top: 9%;
            right: 20%;
        }
        .container-404 .bubble-5 {
            left: 50%;
            bottom: 10%;
        }

        .container-404 .bubble-1 {
            left: 0%;
            bottom: 40%;
        }

        /* Medium media- > General Style */

        /* Medium media- > Layouts */

            /* Medium media- > Layouts > Default */

                /* Medium media- > Layouts > Default > Header */

                body > header .pink-bubble {
                    z-index: -1;
                }

                /* Medium media- > Layosut Default > > Main */

                /* Medium media- > Layouts > Default > Footer */

                    body > footer .sponsors-list {
                        flex-direction: column;
                        align-items: center;
                    }

                    body > footer .sponsors-list a:not(:last-child) {
                        margin-bottom: 1rem;
                    }

        /* Medium media- > Helpers */

            /* Medium media- > Helpers > Custom */

                /* Artists */

                .artist-preview .circle, .artist-preview .preview-info {
                    min-height: 250px;
                    min-width: 250px;
                }

                /* Lightbox */

                .lightbox > .wrapper {
                    padding: 0;
                }

                .lightbox .lightbox-content {
                    padding: 5rem 0 7rem 0;
                }

                .lightbox .slider .slider-nav {
                    top : unset;
                    bottom: -3rem;
                    width: 100%;
                    transform: translateY(0);
                }

                .lightbox-vip .slider .slider-nav {
                    bottom: 2rem;
                }

                .lightbox .slider .slider-nav .slider-nav--content {
                    margin: 0 1rem;
                }


                /* Single content */

                .single-content-img {
                    min-height: 300px;
                }

        /* Medium media- > Content */

            /* Medium media- > Content > Sections */

            /* Medium media- > Content > Elements */


        .highlight-information {
            flex-direction: column;
            align-items: flex-start;
        }

        .highlight-information > .highlight-information--content:not(:first-child) {
            margin: 1rem 0 0 0;
        }
    }

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

        /* Medium media+ > General Style */

        /* Medium media+ > Layouts */

            /*  Medium media+ > Layouts > Default */

                /* Medium media+ > Layouts > Default > Header */

                /* Medium media+ > Layosut Default > > Main */

                /* Medium media+ > Layouts > Default > Footer */

                body > footer .sponsors-list > .sponsor-list-content:not(:last-child) {
                    margin-right: 2rem;
                }

        /* Medium media+ > Helpers */

            /* Medium media+ > Helpers > Custom */

        /* Medium media+ > Content */

            /* Medium media+ > Content > Sections */

            .inner-content-main--container {
                display: flex;
            }

            .inner-content-main--container .content {
                margin-top: 0;
                margin-left: 2rem;
                width: calc(100% - 7rem);
                max-width: 670px;
            }

            .as-wysiwyg .inner-content-main--container .content  {
                margin-left: 0;
            }

/*             .faq .inner-content-main--container .content {
                margin-left: 0;
                width: 100%;
                max-width: unset;
            } */

            .inner-content-main--container .content-icon {
                justify-content: center;
                width: 7rem;
            }

            .inner-content-main--container .content:after {
                width: calc(100% - 2rem);
                left: 2rem;
            }

            .section-footer .section-footer--content .gallery > .gallery--cell:not(:first-of-type) {
                margin-top: 0;
            }

            .tickets .section--inner-content {
                display: flex;
                justify-content: center;
            }

            .section--inner-content > .tickets-container:not(:first-child) {
                margin-top: 0;
                /* margin-left: 1rem; */
            }

            section.history .inner-content-main--container {
                flex-direction: column;
                padding-left: .5rem;
            }
            
            .news-grid .img-box {
                height: 40vh;
            }

            .section-footer .section-footer--content .gallery-img {
                height: 24vh;
            }

            /* Medium media+ > Content > Elements */


    }

    @media screen and (min-width: 721px) and (max-width: 992px) {
        
    }

    /*************************************************************************/
    /* 6.3) Large media (993px +)
    /*************************************************************************/

    @media screen and (max-width: 992px) {

        /* Large media- > General Style */

        html {
            font-size: 16px;
        }

        h1 {
            font-size: 2.8rem;
        }

        h2 {
        	font-size: 1.8rem;
        }

        h3, .as-h3 {
            font-size: 1.5rem;
        }

        .txt-big {
            font-size: 1.2rem;
        }

		.offre-informations {
		    padding: 1rem 0 3rem 0;
		}

        /* Large media- > Layouts */

            /* Large media- > Layouts > Default */

                /* Large media- > Layouts > Default > Header */

                body > header .main-menu-container {

                    padding: 1rem 2rem;

                }

                body > header .main-top-menu {

                    margin: 0 !important;
                    width: 100%;
                    justify-content: center;

                }

                body > header .main-banner-content .home-banner-titles {

                    padding: 8rem 4vw;

                }

                body > header .home-banner-titles .line {

                    min-width: 20px;
                    width: 9vw;
                    margin: 0 1rem;

                }

                body > header .home-banner-titles .header-logo {

                    margin-top: 8rem;
                    max-width: 550px;

                }

                body > header .home-banner-titles .header--festival-name {

                    width: 90%;
                    height: 16vw;
                    margin-top: 2rem;
                    max-width: 750px;

                }

                body > header .home-banner-titles .place {

                    font-size: 5vw;

                }

                body > header .home-banner-news {

                    padding: 0;

                }

                body > header .home-banner-news-box {

                    width: 100%;

                }

                body > header .home-banner-news-box .home-banner-news-content {

                    padding: 2rem 2rem 0 2rem;

                }

                body > header .home-banner-news-box > .home-banner-news-content:last-child {

                    padding-bottom: 1rem;
                    border-bottom: 1px solid var(--black-color);

                }

/*                 body > header .home-banner-news-content {
                    margin-bottom: 4rem;
                } */

                body > header .home-banner-news-content .flex-center,
                body > header .home-banner-news-content .home-banner-news-title {

                    margin-bottom: 1rem;

                }

                body > header .home-banner-news {
                    flex-direction: column;
                }

                body > header .home-banner .as-h4 {
                    margin-top: 2rem;
                    margin-bottom: 1rem;
                }

/*                 body > header .home-banner .bubble:not(.red-bubble):not(.pink-bubble),
                body > header .home-banner > .bubble-1 {
                    display: none;
                }

                body > header .home-banner .red-bubble {
                    top: -31rem;
                    transform: scale(3);
                    left: -9rem;
                    z-index: -1;
                }

                body > header .home-banner .bubble-1 {
                    width: 20rem;
                    height: 18rem;
                    top: -23rem;
                    left: -7rem;
                }

                body > header .home-banner .bubble-6.only-mobile {
                    width: 27rem;
                    height: 19rem;
                    right: -15rem;
                    top: -19rem;
                }

                body > header .home-banner .pink-bubble {
                    transform: scale(3) rotate(-25deg);
                    right: 0;
                } */

                body > header .empty-news-box .circle {

                    display: none;
                    visibility: hidden;

                }

                /* Large media- > Layoust >Default >  Main */

                /* Large media- > Layouts > Default > Footer */

                body > footer .footer-container {
                    margin: auto;
                    display: flex;
                    align-items: center;
                    flex-direction: column-reverse;
                }

                body > footer .footer-content {
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    text-align: center;
                    max-width: 300px;
                    padding-right: 0;
                }

                body > footer .footer-container > .footer-content:nth-child(2) {
                    display: none;
                }

                body > footer .footer-container > .footer-content:first-child {
                    margin-bottom: 0;
                }

                body > footer .footer-container > .footer-content:last-child {
                    margin-bottom: 2rem;
                }

/*                 body > footer .newsletter-form {
                    margin-top: 4rem;
                } */

                body > footer .newsletter-form .button,
                body > footer .highlight-button,
                body > footer .main-top-menu {
                    width: 100%;
                }
                
                body > footer .newsletter-form .button,
                body > footer .highlight-button {
                    margin: 0 auto;
                    max-width: 300px;
                }
                
                body > footer label {
                    max-width: 300px;
                    margin: 0 auto;
                }

                body > footer .input label {
                    margin: 0;
                }

                body > footer .social-networks {
                    width: 100%;
                    justify-content: space-between;
                }




        /* Large media- > Helpers */

                .only-mobile {
                    display: block;
                    visibility: visible;
                }

                .only-desktop {
                    display: none;
                    visibility: hidden;
                }

            /* Large media- > Helpers > Custom */

                aside .anchors-nav {
                    display: none;
                }

                .infos-block {
                    flex-direction: column;
                }

                .info + .info {
                    margin-left: 0;
                }

        /* Large media- > Content */

            /* Large media- > Content > Sections */

            /* Large media- > Content > Elements */

            /* .slider .slider-nav {
                top: unset;
                bottom: 30vh;
                justify-content: space-around;
            } */

            .artists--day-item {
                flex-direction: column;
                position: relative;
            }

            .artists--days-items > .artists--day-item > .artists--day-grid > div.artists--day-grid-cells:nth-child(2) > div {
                align-self: flex-start;
            }

                /* Large media- > Content > Elements & Parts > Lightbox Artist */



            body > footer .footer-content .copyright {
                line-height: 2rem;
                margin-top: 2rem;
            }

            body > footer .footer-container .footer-content .input label {
                width: 300px;
            }


            body > footer .footer-container .footer-content .input {
                display: flex;
                justify-content: center;

            }

            body > footer .newsletter-form .button {
                background-color: var(--black-color);
                color: var(--white-color);
            } 

            

    }

    body > header .home-banner-news-content {
        background-color: var(--white-color);
        color: var(--black-color); 
    }

/*     body > header .home-banner-news-content .button {
        border-color: var(--white-color);
        color: white;
    } */

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


        /* Large media+ > General Style */
        
        a:not(.circle-button):not(.logo):hover,
        .link:hover,
        body > header .icon-favicon:hover,
        .as-wysiwyg .link:hover {
            color: var(--highlight-color);
        }

        .news-link:hover .button,
        button:hover,
        .button:hover,
        .news-grid .grid-cell--inner-content:hover .button,
        .news-grid .grid-cell--inner-content:hover button {
            background-color: var(--black-color);
            color: var(--white-color) !important;
        }

        a.logo:hover {

            color: var(--black-color) !important;

        }

        .home-banner-news-content:hover {

            color: var(--black-color) !important;

        }

        body > header .sponsors-logo a:hover {

            color: inherit !important;
            transform: scale(1.1);

        }

        body > header .main-top-menu .highlight-button {
            width: fit-content;
        }


        body > header .home-banner .sponsors-logo .icon-bcn {
            font-size: 1.4em;
        }

        body > header .home-banner .sponsors-logo .icon-migros {

            font-size: 1.2em;

        }

        .social-networks .circle-button:hover {
            background-color: var(--highlight-color);
        }

        .link:hover:after,
        body > header .main-menu-links .link:hover:after {
            background-color: var(--purple-color);
            opacity: 1;
        }

        body:not(.menu-active) .main-menu-trigger:hover .menu-burger:before {
	        top: 0.75rem
	    }
	    
	    body:not(.menu-active) .main-menu-trigger:hover .menu-burger:after {
	        bottom: 0.75rem
	    }

        a[data-day],
        .button:not(.lift).active,
        button:not(.lift).active {
            transition: var(--transition-speed) var(--transition-easing);
        }

        a[data-day]:hover,
        .button:not(.lift).active:hover,
	    button:not(.lift).active:hover {
	        opacity: .7;
	    }

        body > header .main-menu-links .link:not(.active):hover:after {
            width: 100%;
        }

		.cross:hover:before,
		.cross:hover:after {
	        background-color: var(--white-color);
	    }

	    .lightbox .cross:hover {
	        transform: rotate(90deg);
	        -webkit-transform: rotate(90deg);
	        -moz-transform: rotate(90deg);
	        -ms-transform: rotate(90deg);
	        -o-transform: rotate(90deg);
	    }

		.offre-informations:hover .cross:before,
		.offre-informations:hover .cross:after {
			background-color: var(--purple-color);
		}

	    .lift:hover [class^="icon"] {
	        transform: rotate(-90deg) translate(5px, 2px);
	    }

        body > header .main-menu-submenu:hover .main-menu-submenu-level-2 {
            display: flex;
            justify-content: flex-start;
            flex-direction: column;
        }

        .button[data-day="thursday"]:hover {
            background-color: var(--green-color);
            border-color: var(--green-color);
        }

        .button[data-day="friday"]:hover {
            background-color: var(--red-color);
            border-color: var(--red-color);
        }

        .button[data-day="saturday"]:hover {
            background-color: var(--blue-color);
            border-color: var(--blue-color);
        }

        .button[data-day="sunday"]:hover {
            background-color: var(--purple-color);
            border-color: var(--purple-color);
        }

        .anchors-nav li:hover {
            background-color: var(--purple-color);
            color: var(--white-color);
        }

        .dark-blue-area .button:hover {
            color: var(--dark-blue-color);
            background-color: var(--white-color);
            border-color: var(--white-color);
        }

/*         .blue-area .button:hover,
        body > header .home-banner-news-content .button:hover {
            color: var(--blue-color);
            background-color: var(--white-color);
            border-color: var(--white-color);
        } */

        .artist-preview:hover .preview-info {
	        transform: translateX(0);
	        -webkit-transform: translateX(0);
	        -moz-transform: translateX(0);
	        -ms-transform: translateX(0);
	        -o-transform: translateX(0);
	    }

        .edition-grid--cell .wrapper {
            cursor: pointer;
        }

        .espace_vip .gallery-img-container {
            overflow: hidden;
            cursor: pointer;
        }

	    .gallery .edition-content:hover .bg-img,
	    .news-preview .edition-content:hover .bg-img,
	    .edition-grid--cell .wrapper:hover .bg-img,
	    .espace_vip .gallery-img-container:hover .bg-img {
	        transform: scale(1.1);
	        -webkit-transform: scale(1.1);
	        -moz-transform: scale(1.1);
	        -ms-transform: scale(1.1);
	        -o-transform: scale(1.1);
	    }

        .edition-grid--cell .wrapper:hover .more-overlay,
        .espace_vip .gallery-img-container:hover .more-overlay {
            opacity: 1;
        }

        .cookies-banner .link:hover {
            color: var(--white-color) !important;
        }

        .cookies-banner .link:hover:after {
            background-color: var(--white-color);
        }

        .steps-nav a:hover {
            color: var(--purple-color);
        }

        .sponsors-grid .sponsor-img:hover {
            transform: scale(1.05);
        }

        .active.slider-nav--content:hover * {
            color: var(--purple-color);
        }

/*         .bubble-box {
            display: block;
        } */

        .artists .artists--day-item > header {
            width: calc(100% / 12);
            display: flex;
            align-items: flex-end;
            justify-content: flex-end;
            
        }

        .artists .artists--day-item > header > .content {
            width: 100%;
            height: 100%;
            transform: rotate(180deg);
            padding-left: 1rem;
        }

        .artists .artists--day-item > header > .content > p {
            writing-mode: vertical-rl;
            text-orientation: sideways;
            position: absolute;
            right: 0;
        }

        .artists .artists--day-item > div {
            width: calc((100% / 12) * 11);
        }

        .artists--day-grid-cells {
            flex-direction: row;
        }

        /* Large media+ > Layouts */

            /* Large media+> Layouts > Default */

                /* Large media+ > Layouts > Default > Header */

                body > header:after {

                    position: absolute;
                    content: "";
                    bottom: 0;
                    height: 1px;
                    width: calc(100% - 16vw);
                    background-color: var(--black-color);
                    left: 50%;
                    transform: translateX(-50%);

                }

                body > header .home-banner-news-content:hover button,
                body > header .home-banner-news-content:hover button:hover {
        
                    background-color: var(--highlight-color);
        
                }

                body > header .home-banner-news-content:hover button [class*="icon-"] {

                    color: var(--white-color);

                } 
                
                body > header .header-logo {

                    width: 22vw;
                    max-width: 30vw;
                    height: 3vw;
                    margin-top: 4rem;

                }

                body > header .main-banner-content .header--festival-name {

                    height: 10vw;
                    width: 52vw;
                    margin-top: 6rem;
                    max-width: 1100px;
                    max-height: 200px;

                }

                body > header .home-banner-titles > div:last-of-type {

                    position: absolute;
                    margin: 0;
                    top: 16rem;
                    right: 8vw;
                    font-size: 2vw;
                    font-weight: 600;

                }

                body > header .home-banner-titles .place {

                    font-size: 2vw;
                    font-weight: 600;

                }

/*                 body > header .home-banner-news-content:hover {

                    background-color: white;
                    color: var(--blue-color);
                } */
        
                body > header .home-banner-news-content:hover .category:after {
        
                    background-color: var(--black-color);
        
                }

                body > header .main-banner-content {
                    min-height: 50vh;
                }

                body > header .home-banner {
                    background-color: var(--dark-blue-color);
                }

                body > header .main-banner {
                    position: relative;
                    overflow: hidden;
                }

                body > header .main-banner .main-banner-title {
                    z-index: 3;
                }

                body > header .main-banner-content .home-banner-titles,
                body > header .main-banner-content .home-banner-news {
                    background-color: transparent;
                    background-image: unset;
                }

                body > header .main-banner-content:not(.empty-news-box) .home-banner-news {
                    justify-content: center;
                    flex-wrap: wrap;
                    margin-top: 5rem;
                }

                body > header .main-banner-content .home-banner-news .circle {
                    display: none;
                    visibility: hidden;
                } 

                body > header .home-banner-news-content {
                    height: 20vmax;
                    width: 20vmax;
                    max-height: 400px;
                    max-width: 400px;
                    min-height: 300px;
                    min-width: 300px;
                    justify-content: center;
                    border-radius: 50%;
                    -webkit-border-radius: 50%;
                    -moz-border-radius: 50%;
                    -ms-border-radius: 50%;
                    -o-border-radius: 50%;
                }

                body > header .home-banner-news-content .home-banner-news-title {
                    text-align: center;
                }

                body > header .home-banner-news-content h3.home-banner-news-title {
                    margin: 1rem 0 !important;
                    padding: 0 1rem;
                }

                body > header .home-banner-news > .home-banner-news-box:first-child {
                    display: flex;
                }
        
                body > header .home-banner-news-content {
                    margin: 1rem 2rem;
                }

                body > header .main-banner-content .home-banner-titles {
                    flex-direction: column;
                    /* justify-content: space-between; */
                    align-items: flex-start;
                    padding: 10rem 12vw 0 12vw;
                }

                body > header .main-banner-content .home-banner-titles > div:nth-child(2) {

                    display: flex;
                    width: 100%;
                    align-items: center;
                    margin-top: 5rem;

                }

                body > header .main-banner-content .home-banner-titles > div:nth-child(2) > div {

                    width: 15rem;
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    margin-left: 38vw;

                }

                body > header .main-banner-content .home-banner-titles > div:nth-child(2) > div .line {

                    width: 9vw;
                    height: 1px;
                    background-color: var(--white-color);

                }

                body > header .home-banner-news .home-banner-news-box {
                    display: flex;
                }

                body > header .home-banner-titles {
                    position: relative;
                    height: auto;
                    align-items: baseline;
                    padding: 8rem 4rem 0 4rem;
                }

                body > header .home-banner .icon-logo {
                    position: absolute;
                    left: 50%;
                    transform: translateX(-50%);
                    bottom: 0;
                    font-size: 12rem;
                    margin-top: 0;
                }

                body > header .header-title {
                    text-align: inherit;
                    z-index: 2;
                }

                body > header .main-banner-content .sponsors {
                    align-items: flex-start;
                    z-index: 2;
                }

                body > header .home-banner > .bubble-1 {
                    width: 18rem;
                    height: 15.5rem;
                    top: -2rem;
                    right: 42rem;
                    animation: bubble-home-1 20s infinite;
                }

                body > header .home-banner > .button {
                    border-color: white;
                    color: white;
                    z-index: 50;
                }

                @keyframes bubble-home-1 {
                    0%{
                        transform: translateY(-1rem);
                    } 50%{
                        transform: rotate(20deg) translateY(1rem);
                    } 100%{
                        transform: translateY(-1rem);
                    }
                }

                body > header .home-banner-titles .bubble-6 {
                    width: 21.5rem;
                    height: 15rem;
                    top: 19rem;
                    right: 12rem;
                    z-index: 2;
                    transform: rotate(215deg);
                    animation: bubble-home-6 20s infinite;
                }

                @keyframes bubble-home-6 {
                    0% {
                        transform: rotate(215deg) translateY(-1rem);
                    } 50%{
                        transform: rotate(220deg) translateY(1rem);
                    } 100%{
                        transform: rotate(215deg) translateY(-1rem);
                    }
                }

                body > header .home-banner-news .bubble-1 {
                    width: 18rem;
                    height: 16rem;
                    bottom: -5rem;
                    right: 11rem;
                    z-index: -1;
                    animation: bubble-home-1-2 20s infinite;
                }

                @keyframes bubble-home-1-2 {
                    0%{
                        transform: translateY(-1rem);
                    } 50%{
                        transform: rotate(20deg) translateY(1rem);
                    } 100%{
                        transform: translateY(-1rem);
                    }
                }

                body > header .home-banner-news .bubble-4 {
                    width: 17rem;
                    height: 13.2rem;
                    bottom: -2rem;
                    right: 40rem;
                    z-index: -1;
                    transform: rotate(160deg);
                    animation: bubble-home-4 20s infinite;
                }

                @keyframes bubble-home-4 {
                    0%{
                        transform: rotate(160deg) translateY(-1rem);
                    } 50%{
                        transform: rotate(140deg) translateY(1rem);
                    } 100%{
                        transform: rotate(160deg) translateY(-1rem);
                    }
                }

                body > header .turquoise-bubble {
                    right: 24rem;
                    top: 3rem;
                    z-index: -2;
                    transform: rotate(0deg) scale(3.5);
                    width: 5.5rem;
                }

                body > header .red-bubble {
                    right: 45rem;
                    top: 0rem;
                    z-index: -2;
                    transform: scale(3.5);
                }

                body > header .empty-news-box .red-bubble {
                    right: 55rem;
                }

                body > header .empty-news-box .turquoise-bubble {
                    right: 13rem;
                    top: 1rem;
                }

                body > header .empty-news-box .bubble-6 {
                    top: 2rem;
                }

                body > header .blue-bubble {
                    right: 52rem;
                    top: 17rem;
                    transform: scale(4) rotate(130deg);
                }

                /* Offre banner */

                body > header .offres-banner .bubble-4 {
                    width: 21rem;
                    height: 35vh;
                    top: -6rem;
                    transform: rotate(148deg);
                    left: 10rem;
                }

                body > header .offres-banner .bubble-6 {
                    height: 16rem;
                    width: 23rem;
                    transform: rotate(210deg);
                    right: -9rem;
                    bottom: 4rem;
                }

                /* Infos pratiques banner */
                
                body > header .infos-pratiques-banner .bubble-4 {
                    width: 23.4rem;
                    height: 39vh;
                    transform: rotate(165deg);
                    top: -2rem;
                    right: -3rem;
                }

                body > header .infos-pratiques-banner .bubble-6 {
                    width: 32rem;
                    height: 48vh;
                    bottom: 3rem;
                    transform: rotate(210deg);
                    left: -22rem;
                }

                /* Billetterie banner */
                
                body > header .billetterie-banner .bubble-4 {
                    width: 23rem;
                    height: 17.8rem;
                    transform: rotate(165deg);
                    top: 3rem;
                    right: 0;
                }

                body > header .billetterie-banner .bubble-6 {
                    width: 20rem;
                    height: 13.8rem;
                    top: -6rem;
                    left: -10rem;
                    transform: rotate(220deg);
                }

                /* Festival banner */
                
                body > header .le-festival-banner .bubble-4 {
                    width: 20rem;
                    height: 15.5rem;
                    transform: rotate(165deg);
                    bottom: 2rem;
                    right: 5rem;
                }

                body > header .le-festival-banner .bubble-6 {
                    width: 26rem;
                    height: 18rem;
                    top: -11rem;
                    transform: rotate(210deg);
                    left: 15rem;
                }

                /* Tellement banner */
                
                body > header .tellement-banner .bubble-4 {
                    width: 23rem;
                    height: 17.9rem;
                    transform: rotate(0);
                    top: 4rem;
                    right: 5rem;
                }

                body > header .tellement-banner .bubble-6 {
                    display: none;
                }

                /* Programme banner */
                
                body > header .programme-banner .bubble-4 {
                    width: 20.6rem;
                    height: 34vh;
                    transform: rotate(155deg);
                    top: -1rem;
                    right: -6rem;
                }

                body > header .programme-banner .bubble-6 {
                    display: none;
                }

                /* Actualités header */

                body > header .actualites-banner .bubble-6 {
                    width: 17.4rem;
                    height: 12rem;
                    top: 0;
                    right: -7rem;
                    transform: rotate(218deg);
                }

                /* Large media+ > Layoust >Default >  Main */

                /* Large media+ > Layouts > Default > Footer */

                body > footer .footer-container > .footer-content:nth-child(2) {
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                }

        /* Large media+ > Helpers */

            .only-mobile {
                display: none;
                visibility: hidden;
            }

            .only-desktop {
                display: block;
                visibility: visible;
            }

            /* Large media+ > Helpers > Custom */


            .edition-grid {
                width: calc(100% + 4rem);
                margin-left: -2rem;
            }

        /* Large media+ > Content */

            /* Large media+ > Content > Sections */

            /* Large media+ > Content > Elements */

                /* Large media+ > Content > Elements & Parts > Lightbox Artist */

                .artist-lightbox article header > div:last-child,
                .artist-lightbox article > div > div:last-child {
                    width: 60%;
                }

                .artist-lightbox header {
                    margin-bottom: 2rem;
                }

                .artist-lightbox .details .description {
                    padding-left: 2rem;
                }

        /********************** footer *********************/

        body > footer .footer-container .footer-content input[type="email"]:hover {
            border-color: var(--highlight-color);
        }

        body > footer .footer-container .footer-content .input:hover .label {
            color: var(--highlight-color);
        }

        body > footer .footer-container .footer-content .input:hover .input-checkbox {
            border-color: var(--highlight-color);
        }


    }

    @media screen and (min-width: 993px) and (max-width: 1250px) {
        body > footer .footer-container .footer-content .input {
            height: 5rem;
        }

        body > footer .footer-container .footer-content .input .label {
            width: 80%;
        }


        h3, .as-h3 {
            font-size: 1.5rem;
        }

        body > header .home-banner .pink-bubble {
            transform: scale(5) rotate(-25deg);
            right: 0;
            top: 12rem;
            z-index: -1;
        }

        body > footer .social-networks > .social-networks-logos:not(:first-child) {
            margin-top: .5rem;
        }

        body > footer .footer-content ul.block-list {
            flex-direction: column;
        }

        body > footer .footer-content ul.block-list li {
            padding-bottom: .5rem;
        }

        body > footer .footer-content ul.block-list li:not(:first-child):before {
            display: none;
        }

        .artist-lightbox header h1 {
            margin-bottom: 2rem;
        }

    }

    /*************************************************************************/
    /* 6.4) Huge media (1251px +)
    /*************************************************************************/

    @media screen and (max-width: 1250px) {

        .artist-lightbox header .artist-img {
            min-height: 600px;
        }

        .artist-lightbox article header > div:last-child,
        .artist-lightbox article > div > div:last-child {
            width: 100%;
        }

            .artist-lightbox header .info:first-child {
                margin-bottom: 2rem;

            }

            .artist-lightbox .content .social-networks {
                margin: auto;
                margin-bottom: 2rem;
            }

            .lightbox-content .resume h1 {
                margin-bottom: 2rem;
            }

            h1 {
                font-size: 2.8rem;
            }
    
        .artist-lightbox header .info {
            justify-content: center;
        }

        .artist-lightbox .content header {
            flex-direction: column-reverse;
            text-align: center;
            margin-bottom: 2rem;
        }

        .artist-lightbox .content .details {
            flex-direction: column;
        }

        /* Huge media- > General Style */

        /* Huge media- > Layouts */

            /* Huge media- > Layouts > Default */

                /* Huge media- > Layouts > Default > Header */

                body > header .main-menu,
                body > header .menu-logo-link-container,
                body > header .circle {

                    display: none;
                    visibility: hidden;

                }

                body > header .main-top-menu {

                    margin-left: auto;

                }

                /* Huge media- > Layouts > Default > Main */

                /* Huge media- > Layouts > Default > Footer */

        /* Huge media- > Helpers */

            /* Huge media- > Helpers > Custom */

            aside .anchors-nav {
                display: none;
            }

        /* Huge media- > Content */

            body > main > section .container > div {
                padding: 0;
            }

            /* Huge media- > Content > Sections */

            .infos-pratiques--section,
            .festival--section,
            .offres--section {
                justify-content: center;
            }

            /* Huge media- > Content > Elements */

            .artist-lightbox header .resume {
                display: flex;
                flex-direction: column-reverse;
            }

            .artist-lightbox header .info:first-child {
                flex-direction: column-reverse;
                align-items: center;
            }

            .artist-lightbox header .info span:not(:first-child) {
                flex-direction: column-reverse;
            }

            .artist-lightbox header .button,
            .artist-lightbox header .info:last-child {
                margin-bottom: 2rem;
            }


        }
        

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



        /* Huge media+ > General Style */

        /* Huge media+ > Layouts */

            /* Huge media+ > Layouts > Default */

                .logo-menu {
                    margin-right: 2rem;
                }

                /* Huge media+ > Layouts > Default > Header */

                body > header .home-banner .pink-bubble {
                    transform: scale(5) rotate(-25deg);
                    right: 0;
                    top: 12rem;
                    z-index: -1;
                }

                body > header .main-banner-content:not(.home-banner) {
                    padding: 8rem 4rem;
                }

                /* Huge media+ > Layouts > Default > Main */

                /* Huge media+ > Layouts > Default > Footer */

                body > footer .newsletter-form input {
                    margin-left: 0;
                }

        /* Huge media+ > Helpers */

            /* Huge media+ > Helpers > Custom */

            .offre .offre-icon {
                font-size: 6rem;
            }

        /* Huge media+ > Content */

            /* Huge media+ > Content > Sections */

            .programme .section-container,
            .artists .section-container,
            .actualites .section-container {
                padding: 1rem 4rem 4rem;
            }

            .home-news .section-container {
                padding: 1rem calc(5rem - 5px) 4rem;
            }

            .section-container {
                padding: 1rem 2rem 4rem;
            }

            .offre {
                flex-direction: row;
            }

            .offre-img {
                width: 20%;
                display: flex;
                justify-content: center;
            }

            .offre-informations {
                width: 80%;
                padding-left: 4rem;
            }

            .offre-informations:after {
                left: 4rem;
                width: calc(100% - 4rem);
            }


            /* Huge media+ > Content > Elements */

                .artist-lightbox header .resume {
                    display: flex;
                    flex-direction: column;
                }

                .artist-lightbox header .resume .info:first-child {
                    justify-content: space-between;
                
                }
                .artist-lightbox header .resume {
                    padding-left: 2rem;
                    justify-content: space-between;
                }

                /* Bubbles animations */

                body > header .offres-banner .bubble-4 {
                    animation: bubble-offres-4 20s infinite;
                }

                body > header .offres-banner .bubble-6 {
                    animation: bubble-offres-6 20s infinite;
                }

                body > header .actualites-banner .bubble-6 {
                    animation: bubble-actualites-6 20s infinite;
                }

                body > header .infos-pratiques-banner .bubble-4 {
                    animation: bubble-infos-pratiques-4 20s infinite;
                }

                body > header .infos-pratiques-banner .bubble-6 {
                    animation: bubble-infos-pratiques-6 20s infinite;
                }

                body > header .le-festival-banner .bubble-4 {
                    animation: bubble-le-festival-4 20s infinite;
                }

                body > header .le-festival-banner .bubble-6 {
                    animation: bubble-le-festival-6 20s infinite;
                }

                body > header .tellement-banner .bubble-4 {
                    animation: bubble-tellement-4 20s infinite;
                }

                body > header .programme-banner .bubble-4 {
                    animation: bubble-programme-4 20s infinite;
                }

                /* Offres */

                @keyframes bubble-offres-4 {
                    0%{
                        transform: translateY(-1rem) rotate(148deg);
                    } 50%{
                        transform: translateY(1rem) rotate(168deg) ;
                    } 100%{
                        transform: translateY(-1rem) rotate(148deg);
                    }
                }

                @keyframes bubble-offres-6 {
                    0%{
                        transform: translateY(-1rem) rotate(210deg);
                    } 50%{
                        transform: translateY(1rem) rotate(190deg) ;
                    } 100%{
                        transform: translateY(-1rem) rotate(210deg);
                    }
                }

                /* Actualités */

                @keyframes bubble-actualites-6 {
                    0%{
                        transform: translateY(-1rem) rotate(218deg);
                    } 50%{
                        transform: translateY(1rem) rotate(198deg) ;
                    } 100%{
                        transform: translateY(-1rem) rotate(218deg);
                    }
                }

                /* Infos pratiques */

                @keyframes bubble-infos-pratiques-4 {
                    0%{
                        transform: translateY(-1rem) rotate(165deg);
                    } 50%{
                        transform: translateY(1rem) rotate(145deg) ;
                    } 100%{
                        transform: translateY(-1rem) rotate(165deg);
                    }
                }

                @keyframes bubble-infos-pratiques-6 {
                    0%{
                        transform: translateY(-1rem) rotate(210deg);
                    } 50%{
                        transform: translateY(1rem) rotate(230deg) ;
                    } 100%{
                        transform: translateY(-1rem) rotate(210deg);
                    }
                }

                /* Le Festival */

                @keyframes bubble-le-festival-4 {
                    0%{
                        transform: translateY(-1rem) rotate(165deg);
                    } 50%{
                        transform: translateY(1rem) rotate(145deg) ;
                    } 100%{
                        transform: translateY(-1rem) rotate(165deg);
                    }
                }

                @keyframes bubble-le-festival-6 {
                    0%{
                        transform: translateY(-1rem) rotate(210deg);
                    } 50%{
                        transform: translateY(1rem) rotate(230deg) ;
                    } 100%{
                        transform: translateY(-1rem) rotate(210deg);
                    }
                }

                /* Tellement */

                @keyframes bubble-tellement-4 {
                    0%{
                        transform: translateY(-1rem);
                    } 50%{
                        transform: translateY(1rem) rotate(20deg) ;
                    } 100%{
                        transform: translateY(-1rem);
                    }
                }

                /* Programme */

                @keyframes bubble-programme-4 {
                    0%{
                        transform: translateY(-1rem) rotate(155deg);
                    } 50%{
                        transform: translateY(1rem) rotate(135deg) ;
                    } 100%{
                        transform: translateY(-1rem) rotate(155deg);;
                    }
                }

                .artist-lightbox article header > div:first-child,
                .artist-lightbox article > div > div:first-child {
                    width: 40%;
                }

    }

    @media screen and (min-width: 993px) and (max-width: 1500px) {

	    .artist-preview .circle, 
	    .artist-preview .preview-info {
		    width: 20vmin;
		    height: 20vmin;
		}

		.artist-preview .button {
	        margin-top: .5rem;
	    }

	    .artist-preview-content .circle-button {
	        width: 2rem;
	    	height: 2rem;
	    	font-size: .7rem;
	    }
    }

    @media screen and (min-width: 1251px) and (max-width: 1600px) {

        .with-aside .section-header,
        .with-aside .section-footer {
            margin-left: -18rem;
        }

        body[data-reference-page="offres"] main > .with-aside:first-of-type .section-footer {

            margin-left: 0;

        }

        body[data-reference-page="billetterie"] .with-aside .section-header,
        body[data-reference-page="billetterie"] .with-aside .section-footer {
            margin-left: 0;
        }

        .with-aside .section-container {
            padding-left: 20rem;
        }
        
    	.main-menu-submenu .link {
    		font-size: .8em;
    	}

    	body > header .main-menu-links > .main-menu-submenu:not(:last-child) {
    		margin-right: 1.5rem;
    	}
    }

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

        .with-aside .section-content {
            max-width: 900px;
            margin: auto;
        }

    }

    /*************************************************************************/
    /* 6.5) Custom
    /* the smaller media first */
    /*************************************************************************/

    @media screen and (max-width: 400px) {

        body > header .main-top-menu .highlight-button {
            padding: 1.1rem .7rem 1.2rem .7rem;
            font-size: .8rem;
            height: 3rem;
        }

        .steps-nav a:last-child {
            margin-left: 0.5rem;
        }

    }

    @media screen and (max-height: 600px) {
        body > header .home-banner .icon-logo {
            bottom: -4rem;
        }
    }

    @media screen and (max-height: 800px) {
        body > header .pink-bubble {
            right: -2rem;
        }
    }

/*************************************************************************/

/* 7) Overriden area

/*************************************************************************/
 
/*************************************************************************/

/* 8) Dev / Test

/*************************************************************************/

.corporate-title-section {
    width: 100%;
    height: 5vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--dark-blue-color);
    color: white;
    margin-bottom: 2rem;
}
