/* BASE & IMPORTS
==============================================================================*/
@layer base, utils, specific;
@import url(bootstrap-grid.css) layer(base);

@layer base {
  @font-face {
    font-family: 'VG5000_regular';
    src: url('../font/LS_VG5000/LS-VG5000-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    size-adjust: 145%;
  }

  @font-face {
    font-family: 'VG5000_regular_italic';
    src: url('../font/LS_VG5000/LS-VG5000-RegularShifted.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    size-adjust: 145%;
  }

  @font-face {
    font-family: 'VG5000_light';
    src: url('../font/LS_VG5000/LS-VG5000-Light.woff2') format('woff2');
    font-weight: light;
    font-style: normal;
    size-adjust: 145%;
  }

  @font-face {
    font-family: 'VG5000_light_italic';
    src: url('../font/LS_VG5000/LS-VG5000-LightShifted.woff2') format('woff2');
    font-weight: light;
    font-style: normal;
    size-adjust: 145%;
  }

  @font-face {
    font-family: 'VG5000_bold';
    src: url('../font/LS_VG5000/LS-VG5000-Bold.woff2') format('woff2');
    font-weight: bold;
    font-style: normal;
    size-adjust: 145%;
  }

  @font-face {
    font-family: 'VG5000_bold_italic';
    src: url('../font/LS_VG5000/LS-VG5000-BoldShifted.woff2') format('woff2');
    font-weight: bold;
    font-style: normal;
    size-adjust: 145%;
  }

  @font-face {
    font-family: PixelOperatorMono8;
    src: url(../font/pixel_operator/PixelOperatorMono8.ttf);
  }

  :root {
    /*colors*/
    --custom_black: #000000;
    --custom_darkGray: #171717;
    --custom_gray: #7f7f7f;
    --custom_white: #efefef;
    --custom_blue: #0012ff;
    --custom_red: #e41421;
    --custom_yellow: #feec00;
    --custom_green: #00ff00;
    --White: #fff;
    --Red: #990000;
    --Redgrey: #993333;

    color-scheme: light only;

    /*SIZES*/
    --size_0050: calc(1em * 0.05);
    --size_0100: calc(1em * 0.1);
    --size_0125: calc(1em * 0.125);
    --size_0200: calc(1em * 0.2);
    --size_0250: calc(1em * 0.25);
    --size_0300: calc(1em * 0.3);
    --size_0400: calc(1em * 0.4);
    --size_0500: calc(1em * 0.5);
    --size_0600: calc(1em * 0.6);
    --size_0700: calc(1em * 0.7);
    --size_0800: calc(1em * 0.8);
    --size_0900: calc(1em * 0.9);
    --size_1000: calc(1em * 1);
    --size_1500: calc(1em * 1.5);
    --size_2000: calc(1em * 2);
    --size_2500: calc(1em * 2.5);
    --size_4000: calc(1em * 4);
  }

  html {
    color: var(--custom_black);
    font-family: 'VG5000_regular';
    text-align: left;
    line-height: 1.7;
  }

  body {
    background-color: var(--custom_white);
    margin: 0;
    height: 100%;
  }

  *:focus-visible {
    outline: 4px solid #00ff00;
    text-decoration: underline;
  }

  h1 {
    line-height: 1.2;
    font-weight: normal;
  }

  h2 {
    line-height: 1.2;
    font-weight: normal;
  }

  h3,
  h4,
  h5,
  h6 {
    text-align: left;
    line-height: 1.2;
  }

  a {
    font-size: 1rem;
  }

  a:link {
    text-decoration: underline;
  }

  a:link:visited,
  a:link:active {
    text-decoration: none;
  }

  a:link:hover {
    text-decoration: underline;
    color: white;
    cursor: pointer;
    background: black;
  }

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

    iframe {
      max-width: 100%;
    }

    p,
    a,
    span,
    i,
    footer,
    figure,
    figcaption,
    li {
      font-size: 0.9rem;
    }

    h1 {
      font-size: 1.9rem;
    }

    h2 {
      font-size: 1.4rem;
    }
  }

  /* clears the 'X' from Internet Explorer */
  input[type=search]::-ms-clear {
    display: none;
    width: 0;
    height: 0;
  }

  input[type=search]::-ms-reveal {
    display: none;
    width: 0;
    height: 0;
  }

  /* clears the 'X' from Chrome */
  input[type="search"]::-webkit-search-decoration,
  input[type="search"]::-webkit-search-cancel-button,
  input[type="search"]::-webkit-search-results-button,
  input[type="search"]::-webkit-search-results-decoration {
    display: none;
  }


}


/* Class utilitaires
==============================================================================*/
@layer utils {


  b,
  strong {
    font-family: 'VG5000_bold';
  }

  .petiteFont {
    font-size: calc(0.8rem);

  }

  .noselect {
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
  }

  .disappear {
    visibility: hidden;
    display: none;
    opacity: 0;
    -webkit-transition: visibility 0s, opacity 0.4s linear;
    /* Safari */
    transition: visibility 0s, opacity 0.4s linear;

  }

  .hide {
    display: none;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: visibility 0s, opacity 0.4s linear;
    /* Safari */
    transition: visibility 0s, opacity 0.4s linear;
  }

  .contenaire {
    padding-top: 4vw;
    margin: auto;
    min-height: calc(100vh - (1.5vw + 300px));
    margin-bottom: 100px;
    display: -webkit-box;
    /* OLD - iOS 6-, Safari 3.1-6, BB7 */
    display: -ms-flexbox;
    /* TWEENER - IE 10 */
    display: -webkit-flex;
    /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
    display: flex;
    /* NEW, Spec - Firefox, Chrome, Opera */
    background-color: var(--custom_white);
  }

  @media only screen and (max-width: 769px) {
    .contenaire {
      padding-left: 1rem;
      padding-right: 1rem;
      display: flow-root;
    }

    .ebull_logo {
      max-width: 100%;
      max-height: 63px;
    }

    .hideonmobile {
      display: none !important;
    }
  }

  @media only screen and (max-width: 1200px) {
    .hide_under_xl {
      display: none !important;
    }
  }

  @media only screen and (min-width: 768px),
  (min-height:1051px) {
    .hideondesktop {
      display: none !important;
    }
  }


  /* Formulaires */

  form#contact-form {
    padding: 25px;
    background-color: var(--custom_black);
    color: var(--custom_white);
  }

  form#contact-form .form-control {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    background-clip: padding-box;
    -moz-appearance: none;
    appearance: none;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;

    font-size: 1.2rem;
    border: 2px solid var(--custom_darkGray);
    border-radius: 0;
    margin-bottom: 10px;
  }

  form#contact-form h1 {
    text-align: center;
  }

  form#contact-form .form-control:focus {
    font-weight: 600;
    border-color: var(--custom_black);
    box-shadow: 0 0 0 0.25rem rgba(0, 0, 0, 0.42);
  }

  form#contact-form .form-control::placeholder {
    font-size: 0.8rem;
    font-family: 'VG5000_light' !important;
    color: var(--custom_gray);
  }


  form#contact-form input[type=date] {
    font-size: 0.8rem;
    font-family: 'VG5000_light' !important;
    color: var(--custom_gray);
    background: var(--custom_white);
  }

  form#contact-form button.form-control,
  form input[type=button].form-control {
    background-color: var(--custom_yellow);
    color: var(--custom_black);
    font-size: 1.2rem;
    font-family: 'VG5000_regular';
    line-height: 1.8;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 0;
  }

  form#contact-form button.form-control:focus {
    border-radius: 0;
  }

  form#contact-form button:hover {
    cursor: pointer;
  }

  form#contact-form p.champsRequis {
    font-size: 10px;
    padding-bottom: 10px;
  }

  form#contact-form .error {
    display: none;
  }

  form#contact-form.error .error {
    display: flex;
    color: var(--custom_red);
  }

  /* When form is completed and successd*/
  form#contact-form.success h1,
  form#contact-form.success h2,
  form#contact-form.success p,
  form#contact-form.success input,
  form#contact-form.success textarea,
  form#contact-form.success button,
  form#contact-form.success>div>div {
    display: none;
    padding: 0;
  }

  form#contact-form.success p#form-submitSuccess {
    background-color: var(--custom_yellow);
    color: black;
    height: 200px;
    font-size: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin: 0;
    padding: 15px;
  }

  form#contact-form.success p#form-submitSuccess {
    background-color: var(--custom_yellow);
    color: black;
    height: 200px;
    font-size: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin: 0;
    padding: 15px;
  }

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

    form#contact-form {
      padding: 15px;
    }

    form#contact-form input {
      margin-bottom: 10px;
    }

    form#contact-form h1 {
      padding: 15px 0;
    }

    form#contact-form p:first-of-type {
      margin-top: 5px;
      margin-bottom: 20px;
    }

    form#contact-form.success p#form-submitSuccess {
      font-size: 1.4rem;
    }
  }

  /*  Custom checkbox */

  .c-checkbox .checkbox {
    display: block;
    position: relative;
    padding-left: 50px;
    margin-bottom: 8px;
    font-size: 0.8rem;
    user-select: none;
  }

  .c-checkbox .checkbox input {
    position: absolute;
    top: 0;
    left: 0;
    width: 36px;
    height: 36px;
  }

  .c-checkbox label {
    user-select: none;
    font-size: 0.7rem;
  }

  .c-checkbox .checkmark {
    position: absolute;
    top: 1px;
    left: 2px;
    height: 40px;
    width: 40px;
    border: 2px solid var(--custom_white);
    background-color: white;
  }

  .c-checkbox .checkbox:hover input~.checkmark {
    cursor: pointer;
  }

  .c-checkbox .checkbox input:checked~.checkmark {
    background-color: var(--custom_green);
  }

  .c-checkbox .checkbox .checkmark:after {
    top: 8px;
    width: 34px;
    left: 2px;
    color: white;
    font-size-adjust: 1;
    font-size: 15px;
  }

  .c-checkbox .checkbox input:checked~.checkmark:after {
    display: block;
  }


  .c-checkbox .checkmark:after {
    content: '✓';
    position: absolute;
    display: none;
  }

}

@layer specific {

  /* Footer
==============================================================================*/
  footer {
    background-color: var(--custom_white);
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  footer .sponsors {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-around;
    padding: 15px;
  }

  footer .sponsors a:hover>img {
    filter: invert(1) grayscale(1);
    box-sizing: border-box;
  }

  footer .social {
    display: flex;

  }

  footer .social a {
    display: flex;
  }

  footer .social img {
    height: 50px;
    padding: 5px;
  }

  footer .social img:hover {
    filter: invert(1);
  }

  footer .sponsors div {
    width: 10rem;
    padding: 0.3rem;
  }

  footer .sponsors div a{
    display: block;
  }

  footer .sponsors div img {
    width: 100%;
    filter: grayscale(1) brightness(0.937);
  }

  footer .sponsors div:hover{
    background-color: white;
  }

  footer .sponsors div:hover img{
    filter: grayscale(0);
  }

  footer .sponsors div:hover a:link:hover {
    background: none;
  }

  footer .credits {
    padding: 0 0 0 1rem;
    color: black;
  }

  footer .credits a {
    color: var(--custom_red);
    text-decoration: none;
  }

  @media only screen and (max-width: 769px) {
    footer .sponsors div {
      width: calc(100% / 5);
    }
  }

  /* NAVBAR (Logo, frequence, menu) + textCentral
==============================================================================*/

  .navbar {
    position: sticky;
    top: 0;
    z-index: 99;
    padding-top: 0.1rem;
    padding-bottom: 0.5rem;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    background-color: var(--custom_white);
  }

  .navbar .navbar-top {
    height: 150px;
    padding: 20px;
    display: flex;
  }

  .navbar .navbar-top .logoheader {
    display: flex;
    align-items: center;
  }

  .navbar .navbar-top .logoheader a {
    width: 100%;
  }

  .navbar .navbar-bottom a:hover {
    background-color: var(--custom_gray);
    cursor: pointer;
  }

  .navbar .navbar-top .logoheader a:hover {
    background-color: transparent;
  }

  .navbar .navbar-links {
    display: flex;
    flex-direction: row;
    width: -webkit-fill-available;
  }

  .navbar .navbar-bottom>a::after {
    content: ",";
  }

  .navbar .navbar-bottom>a:last-of-type::after {
    content: "";
  }

  .navbar .navbar-bottom>a {
    font-size: calc(0.9rem + 0.4vw);
    color: var(--custom_black);
    padding: 0px 3px;
    line-height: 1.8;
    text-decoration: none;
    display: inline-block;
  }

  .navbar .lang {
    padding-right: 10px;
    display: flex;
    justify-content: flex-end;
  }

  .navbar .lang a {
    color: var(--custom_black);
    font-size: 1rem;
    padding: 0.4rem;
    text-decoration: none;
    background: none;
    border: 0;
    height: fit-content;
    padding-bottom: 0.3rem;
    text-transform: uppercase;
  }

  .navbar .lang a:hover {
    cursor: pointer;
    background: #4d4d4d;
  }

  .navbar .lang a.langSelected {
    background-color: var(--custom_blue);
    color: var(--custom_white);
    text-decoration: underline;
  }

  #audiowaveContainer {
    padding: 5px !important;
    z-index: 3;
  }

  #navbar .logoheader img {
    width: 100%;
    filter: invert(1);
  }

  #navbar .logoheaderMobile {
    visibility: hidden;
    height: 0;
  }

  #navbar #link-cinebullition {
    color: var(--custom_red);
  }

  #textCentralOnHoverAudiowave {
    position: fixed;
  }

  #textCentralOnHoverAudiowave.showTextCentralContainer {
    z-index: 100;
  }

  #textCentralOnHoverAudiowave>div {
    display: none;
  }

  #textCentralOnHoverAudiowave>div.showTextCentral {
    position: fixed;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: fit-content;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    line-height: 1;
  }

  #textCentralOnHoverAudiowave>div.showTextCentral>p {
    font-size: calc(10px + 3vw);
    color: var(--custom_white);
    background-color: black;
    padding: 30px;
    text-transform: uppercase;
    text-align: center;
    text-shadow: 0.05em 0.05em 0px black;
    max-width: 88vw;
    margin: 1rem;
    line-height: 1.3;
  }

  #textCentralOnHoverAudiowave>div.showTextCentral.cinebullition>p {
    color: var(--custom_red);
  }

  #textCentralOnHoverAudiowave .isSoldout {
    color: var(--custom_red) !important;
  }

  #banner {
    text-align: center;
    width: 100%;
    padding: 15px;
    background-color: var(--custom_red);
    color: var(--custom_white);
  }

  #banner>a,
  #banner>p {
    font-family: 'VG5000_regular_italic';
    text-decoration: none;
    margin: 0;
  }

  #banner>a:link,
  #banner>a:visited {
    color: inherit;
  }

  #banner>a:hover {
    text-decoration: underline;
    cursor: pointer;
    background-color: transparent;
  }

  #bouncing-div {
    display: none;
    position: absolute;
    will-change: transform;
    z-index: 100;
  }

  #bouncing-div img {
    width: 30vw;
    height: auto;
  }

  #bouncing-div a {
    height: 100%;
    display: block;
    padding: 10px;
  }

  #bouncing-div a:hover {
    filter: invert(1);
    background-color: transparent;
  }

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

    .navbar {
      padding: 1rem;
      justify-content: center !important;
      position: relative;
    }

    .navbar .navbar-top {
      visibility: hidden;
      padding: 0;
      height: 0;
      margin: 0;
    }

    #audiowave {
      display: none;
    }

    #navbar .logoheader {
      padding: 0;
      height: 0;
    }

    #navbar .logoheaderMobile {
      visibility: visible;
      padding-bottom: 10px;
      height: auto;
    }

    #navbar .logoheaderMobile a {
      display: flex;
      justify-content: center;
    }

    #navbar .logoheaderMobile a:hover {
      background-color: var(--custom_white);
    }

    .navbar .navbar-bottom {
      display: flex;
      flex-direction: row;
      padding: 0px;
      flex-wrap: wrap;
      justify-content: center;
    }

    .navbar .navbar-bottom a {
      font-size: 0.9rem;
      width: fit-content;
    }

    .navbar .navbar-links {
      flex-direction: column-reverse;
    }

    .navbar .lang {
      display: flex;
      justify-content: center;
      margin: 10px 0;
    }

    .navbar .lang a {
      line-height: 1.3;
    }

    .ebull_logo {
      max-width: 300px;
      filter: invert(1);
    }

    #bouncing-div img {
      width: 45vw;
    }
  }

  /* /programmation
==============================================================================*/

  .contenaire.page_programmation {
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }


  .page_programmation .eventListElement {
    cursor: pointer;
    color: var(--custom_black);
    padding: calc(1rem + 0.4vw) 1rem;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    max-width: fit-content;
  }

  .page_programmation>a:focus-visible {
    outline: none;
    text-decoration: none;
  }

  .page_programmation>a {
    text-decoration: none;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .page_programmation>a.semainePaire {
    background-color: black;
  }

  .page_programmation>a.semainePaire .eventListElement {
    color: var(--custom_white);
  }

  .page_programmation>a.semaineImpaire:link:hover {
    text-decoration: none;
    background-color: var(--custom_white);
  }

  .page_programmation .eventListElement .prix {
    padding-top: 0.5rem;
  }

  .page_programmation .eventListElement .prix p {
    margin: 0;
  }

  .page_programmation a:focus-visible .eventListElement>div:nth-child(1) {
    outline: 5px solid #33ff00;
    outline-offset: 3px;
  }

  .page_programmation .eventListElement>div:nth-child(1) {
    border-right: 10px solid;
    border-bottom: 5px solid;
    padding: 1rem 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .page_programmation .eventListElement>div:nth-child(2) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  .page_programmation .eventListElement>div:nth-child(2) p {
    text-transform: capitalize;
    padding-left: 2rem;
    margin: 0;
    line-height: 1.5;
    font-size: 0.9rem;
  }

  .page_programmation .eventListElement .isSoldout {
    margin: 0;
    margin-bottom: 0.3rem;
    font-size: 1.5rem;
    color: var(--custom_red);
  }

  .page_programmation .eventListElement .artiste {
    font-size: calc(1rem + 0.4vw);
    line-height: 1.5;
    margin: 0;
  }

  .page_programmation .eventListElement:hover>div:nth-child(1) {
    font-family: 'VG5000_regular_italic';
    border-right: 6px solid;
    border-bottom: 3px solid;
    padding-right: calc(2rem + 4px);
    padding-bottom: calc(1rem + 2px);
  }

  .page_programmation .eventListElement.cinebullition:hover * {
    border-color: var(--custom_red) !important;
  }

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

    .page_programmation>a {
      width: 100%;
    }

    .page_programmation .main-left .eventListElement:last-child {
      border-bottom: 10px solid black;
    }

    .page_programmation .eventListElement .artiste {
      font-size: 1.4rem;
    }

    .page_programmation .eventListElement>div:nth-child(1) {
      border-right: 7px solid;
      border-bottom: 3px solid;
      padding: 1rem 1.5rem 0.5rem 2.5rem;
    }

    .page_programmation .eventListElement>div:nth-child(2) {
      padding-top: 1rem;
    }

    .page_programmation .eventListElement>div:nth-child(2) p {
      padding-left: 1rem;
    }

    .page_programmation .eventListElement .prix,
    .page_programmation .eventListElement .date,
    .page_programmation .eventListElement .type {
      font-size: 0.8rem;
      padding: 0;
    }

    .page_programmation .eventListElement {
      padding: 1.6rem 1rem;
      display: flex;
      flex-direction: column;
    }

  }

  /* /Event?{id}
==============================================================================*/

  .contenaire.page_soiree {
    display: flex;
    padding: 0;
    margin-top: 15px;
    align-items: center;
    justify-content: center;
  }

  .contenaire.page_soiree>div {
    display: flex;
    flex-direction: row-reverse;
  }

  .contenaire.page_soiree .infosEvent {
    margin-top: 60px;
  }

  .contenaire.page_soiree .infosEvent .detailsEvent p {
    margin: 0;
    line-height: 1.1;
    margin-bottom: 5px;
  }

  .contenaire.page_soiree .infosEvent .detailsEvent p.titre {
    line-height: 1.2;
    font-size: 1.6rem;
  }

  .contenaire.page_soiree .infosEvent .detailsEvent p.titre.archives {
    color: var(--custom_gray);
    margin-bottom: 15px;
  }

  .contenaire.page_soiree .infosEvent .detailsEvent p.titre.isSoldout {
    color: var(--custom_red);
    margin-bottom: 15px;
  }

  .contenaire.page_soiree .infosEvent .detailsEvent p.titre:not(:has(+ p.titre)) {
    margin-bottom: 40px;
  }

  .contenaire.page_soiree .infosEvent .detailsEvent p.date,
  .contenaire.page_soiree .infosEvent .detailsEvent p.type {
    text-transform: capitalize;
  }

  .contenaire.page_soiree .infosEvent .detailsEvent p.prix {
    padding-top: 30px;
  }

  .contenaire.page_soiree .infosEvent .detailsEvent p.prix~p.prix {
    padding-top: 0;
  }

  .contenaire.page_soiree .infosEvent .billeterie {
    padding-top: 1rem;
    margin-inline-start: -2px;
  }

  .contenaire.page_soiree .infosEvent .billeterie a {
    font-size: 20px;
    padding: 10px 20px;
    height: fit-content;
    background: var(--custom_yellow);
    color: var(--custom_black);
    width: fit-content;
    display: block;
    user-select: none;
    margin-bottom: 10px;
    text-decoration: none;
  }

  .contenaire.page_soiree .infosEvent .billeterie a:hover {
    text-decoration: underline;
  }

  .contenaire.page_soiree .infosEvent .billeterie .CTA {
    display: flex;
    flex-direction: column;
  }

  .contenaire.page_soiree .descriptionEvent {
    padding: 40px;
    overflow: auto;
    color: var(--custom_black);
    border-right: 10px solid;
    border-bottom: 5px solid;
    display: flex;
    flex-direction: column;
    justify-content: safe center;
    align-content: center;
  }

  .contenaire.page_soiree #mdDescription {
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
  }

  .contenaire.page_soiree #mdDescription p {
    padding: 0 20px;
  }

  .contenaire.page_soiree #mdDescription a {
    word-break: break-all;
  }

  .contenaire.page_soiree #mdDescription li {
    list-style: square;
    list-style-position: inside;
  }

  .contenaire.page_soiree #mdDescription iframe {
    border: 10px solid;
    height: calc(30vw /1.77);
    width: 30vw;
  }

  .contenaire.page_soiree .descriptionEvent .performersLinks {
    /* margin-top: 40px; */
    flex-direction: column;
    align-items: left;
    display: flex;
    position: relative;
  }

  .contenaire.page_soiree .descriptionEvent .performersLinks a {
    margin-bottom: 5px;
    color: var(--custom_blue);
    text-align: left;
  }


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

    .contenaire.page_soiree {
      padding: 0 3% !important;
      height: auto;
      max-height: fit-content;
    }

    .contenaire.page_soiree .infosEvent {
      margin-top: 0;
      border-bottom: 5px solid;
      border-right: 10px solid;
    }

    .contenaire.page_soiree>div {
      padding: 0;
      background-color: var(--custom_white);
      flex-direction: column;
    }

    .contenaire.page_soiree #mdDescription p {
      text-transform: none;
      margin-bottom: 15px;
      padding: 0 10px;
    }

    .contenaire.page_soiree .infosEvent .billeterie {
      padding: 10px;
      padding-top: 20px;
    }

    .contenaire.page_soiree .infosEvent .billeterie .CTA {
      flex-direction: row;
      flex-wrap: wrap;
    }

    .contenaire.page_soiree .infosEvent .billeterie p {
      padding-bottom: 10px;
      margin-right: 10px;
    }

    .contenaire.page_soiree .infosEvent .billeterie a {
      margin-right: 10px;
    }

    .contenaire.page_soiree .infosEvent .detailsEvent {
      padding: 50px 10px 10px;
      border: 0;
    }

    .contenaire.page_soiree .infosEvent .detailsEvent p:not(:first-child) {
      margin-bottom: 0;
      text-align: right;
      line-height: 1.6;
    }

    .contenaire.page_soiree .infosEvent .detailsEvent p.titre {
      font-size: 1.5rem;
      text-align: left;
      margin-bottom: 0;
    }

    .contenaire.page_soiree .descriptionEvent {
      padding: 0px;
      min-height: auto;
      margin-top: 20px;
      border: 0;
    }

    .contenaire.page_soiree #mdDescription iframe {
      height: calc(80vw /1.6);
      width: 100%;
      max-width: -webkit-fill-available;
    }
  }


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

    .contenaire.page_soiree .top .type {
      width: calc(42% + 10px);
    }

    .contenaire.page_soiree .top .prix {
      width: calc(58% - 10px);
    }

  }

  /* /archives
==============================================================================*/

  .contenaire.page_archives {
    max-width: 100%;
    padding: 0;
    padding-top: 4vw;
    flex-direction: column;
  }

  #archives-list {
    width: 100%;
    padding: 0;
  }

  #archives-list a {
    text-decoration: none;
  }

  #archives-list a:focus-visible {
    outline: none;
  }

  .contenaire.page_archives .eventListElement {
    color: white;
  }

  .contenaire.page_archives .eventListElement p {
    font-size: 1.3rem;
    line-height: 1.5;
    margin: 0;
    color: var(--custom_black);
  }

  .contenaire.page_archives a:hover>.eventListElement {
    background: var(--custom_yellow);
    color: var(--custom_black);
  }

  .contenaire.page_archives a:focus-visible>.eventListElement {
    box-shadow: inset var(--custom_green) 0px 0px 0 5px
  }

  .contenaire.page_archives .eventListElement {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: auto 3fr 1fr;
    grid-template-areas: "archives-date archives-nom archives-type ";
    border-bottom: 4px solid var(--custom_yellow);
    padding-left: 40px;
  }

  .contenaire.page_archives .eventListElement>div {
    padding: 1rem 0.5rem 1.3rem 0.5rem;
  }

  .contenaire.page_archives .eventListElement .archives-grid-nom {
    grid-area: archives-nom;
  }

  #archives-list a:focus-visible .archives-grid-nom {
    outline: 3px solid #00ff00;
    outline-offset: -8px;
  }

  .contenaire.page_archives .eventListElement .archives-grid-type {
    grid-area: archives-type;
    padding: 0.5em 2em;
  }

  .contenaire.page_archives .eventListElement .archives-grid-date {
    grid-area: archives-date;
    background-color: var(--custom_yellow);
    color: var(--custom_black);
    border-left: 5px solid;
    border-right: 5px solid;
    width: 6rem;
  }

  .contenaire.page_archives .eventListElement .archives-grid-date>p {
    text-align: center;
    font-size: 2rem;
  }

  .contenaire.page_archives .archives-Y-title {
    background-color: var(--custom_yellow);
    color: black;
    margin: 0;
    line-height: normal;
    padding-left: 50px;
    position: sticky;
    top: 0;
    z-index: 3;
    height: 100px;
    display: flex;
    align-items: center;
  }

  .contenaire.page_archives .archives-M-title {
    background-color: var(--custom_black);
    text-transform: capitalize;
    color: var(--custom_white);
    line-height: normal;
    padding: 10px;
    padding-left: 50px;
    border-bottom: 4px solid var(--custom_yellow);
    margin: 0;
    position: sticky;
    top: 100px;
    height: 70px;
    display: flex;
    align-items: center;
    z-index: 2;
  }

  .contenaire.page_archives #archives-search {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 50% 1fr auto auto;
    grid-template-areas: "a-s-nom a-s-type a-s-annee a-s-button";
    max-width: 1300px;
    margin: auto;
    padding: 20px;
    padding-bottom: 30px;
  }

  .contenaire.page_archives #archives-search .archives-search-nom {
    grid-area: a-s-nom;
  }

  .contenaire.page_archives #archives-search .archives-search-type {
    grid-area: a-s-type;
  }

  .contenaire.page_archives #archives-search .archives-search-jour {
    grid-area: a-s-jour;
  }

  .contenaire.page_archives #archives-search .archives-search-mois {
    grid-area: a-s-mois;
  }

  .contenaire.page_archives #archives-search .archives-search-annee {
    grid-area: a-s-annee;
  }

  .contenaire.page_archives #archives-search>div>input::-webkit-search-cancel-button {
    filter: brightness(0);
  }

  .contenaire.page_archives #archives-search>div {
    display: flex;
    flex-direction: column;
  }

  .contenaire.page_archives #archives-search>div>select:hover,
  .contenaire.page_archives #archives-search>div>option:hover {
    cursor: pointer;
  }

  .contenaire.page_archives #archives-search>div>select,
  .contenaire.page_archives #archives-search>div>input {
    font-family: 'VG5000_regular';
    margin: 10px;
    padding: 5px 10px;
    appearance: none;
    border: 0;
  }

  .contenaire.page_archives #archives-search>div>label {
    padding: 3px 18px;
    font-size: 1.2rem;
  }

  .contenaire.page_archives .eventArchive {
    text-decoration: none;
  }

  .contenaire.page_archives .archives-M a.archives-hide-name,
  .contenaire.page_archives .archives-M a.archives-hide-type,
  .contenaire.page_archives .archives-M a.archives-hide-annee,
  .contenaire.page_archives .archives-M a.archives-hide-mois,
  .contenaire.page_archives .archives-M a.archives-hide-jour {
    display: none;
  }

  html[data-page="archives"] #navbar {
    position: relative;
  }

  .contenaire.page_archives .archives-search-button {
    padding-left: 20px;
    padding-top: 0;
    display: flex;
    justify-content: flex-end;
  }

  .contenaire.page_archives .archives-search-button button {
    font-family: 'VG5000_regular';
    background-color: var(--custom_green);
    border: 0;
    padding: 10px 20px;
    font-size: 1em;
    border-bottom: 3px solid;
    border-right: 7px solid;
  }

  .contenaire.page_archives .archives-search-button button:hover {
    cursor: pointer;
    font-family: 'VG5000_regular_italic';
  }

  .contenaire.page_archives .archives-metadata {
    display: flex;
    justify-content: center;
    font-family: 'VG5000_regular_italic';
  }

  .contenaire.contenaire.page_archives .archives-pagination {
    display: flex;
    margin: 10px;
    justify-content: center;
    flex-wrap: wrap;
  }

  .contenaire.contenaire.page_archives .archives-pagination a {
    padding: 5px;
    width: 36px;
    text-align: center;
    margin: 5px;
    background-color: var(--custom_green);
    border-bottom: 3px solid;
    border-right: 6px solid;
    user-select: none;
  }

  .contenaire.contenaire.page_archives .archives-pagination a:hover {
    cursor: pointer;
    color: var(--custom_green);
    border-color: var(--custom_black);
    background-color: var(--custom_black);
  }

  .contenaire.contenaire.page_archives .archives-pagination p.isSelected {
    padding: 5px;
    width: 36px;
    text-align: center;
    margin: 5px;
    border-bottom: 3px solid;
    border-right: 6px solid;
    background-color: var(--custom_black);
    border-color: var(--custom_black);
    color: var(--custom_green);
    user-select: none;
  }

  @media only screen and (max-width: 993px) {
    .contenaire.page_archives .eventListElement {
      padding-right: 10px;
      padding-left: 10px;
    }

    .contenaire.page_archives .eventListElement .archives-grid-date>p {
      font-size: 20px;
    }

    .contenaire.page_archives .eventListElement .archives-grid-nom {
      padding: 1rem 1.5rem 1rem 0.5rem;
    }

    .contenaire.page_archives .eventListElement .archives-grid-type {
      padding: 10px 5px 5px 40px
    }

    .contenaire.page_archives .eventListElement .archives-grid-type p {
      text-align: right;
    }

    .contenaire.page_archives #archives-search {
      grid-template-columns: auto;
      grid-template-areas:
        "a-s-nom  a-s-nom  a-s-nom"
        "a-s-type a-s-type a-s-annee";
    }

    .contenaire.page_archives #archives-search>div>label {
      margin: auto;
    }

    .contenaire.page_archives .archives-Y-title {
      padding-left: 20px;
      height: 80px;
    }

    .contenaire.page_archives .archives-M-title {
      padding-left: 20px;
      height: 60px;
      top: 80px;
    }

    .contenaire.page_archives .eventListElement p {
      font-size: 0.9rem;
    }

    .contenaire.page_archives #archives-search>div>label {
      font-size: 0.9rem;
    }

    .contenaire.page_archives .eventListElement .archives-grid-date {
      width: 4rem;
    }
  }


  /* /membre
==============================================================================*/

  .page_membres .left {
    padding-right: 100px;
    padding-left: 0;
  }

  .page_membres .left ul {
    margin: 30px 0;
  }

  .page_membres .right {
    padding: 0;
  }

  .page_membres .right>div {
    margin-bottom: 40px;
    padding: 15px 5%;
    border-bottom: 5px solid;
    border-right: 10px solid;
  }

  .page_membres form {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
  }

  .page_membres form .form-group {
    padding: 0 5px;
  }

  .page_membres .success .c-checkbox {
    display: none;
  }

  .page_membres .right>div::before {
    content: "";
    position: absolute;
    display: none;
    background-image: url(../img/arrow.png);
    background-size: 70px;
    background-repeat: no-repeat;
    background-position: center;
    right: 5px;
    top: calc(50% - 35px);
    z-index: 1;
    height: 70px;
    width: 70px;
  }

  @media only screen and (max-width: 991px) {
    .page_membres {
      display: flex;
      flex-wrap: wrap;
    }

    .page_membres .right {
      padding: 0;
      margin-bottom: 30px;
      margin-top: 40px;
    }

    .page_membres .left {
      padding-right: 0px;
    }
  }

  @media only screen and (max-width: 769px) {
    .page_membres .right {
      display: flex;
      flex-wrap: wrap;
    }

    .page_membres .right>div {
      margin: 20px 0 0 0;
      padding: 20px 5px;
    }

    .page_membres form .form-group {
      padding: 0;
    }
  }

  /* /benevole
==============================================================================*/

  .contenaire.page_staffs {
    display: flex;
    flex-wrap: wrap;
  }

  .page_staffs .descriptions {
    padding: 0 100px 40px 0;
    display: flex;
    flex-direction: column;
    max-height: 100%;
  }

  .page_staffs .staffTypes {
    display: flex;
    flex-wrap: wrap;
  }

  .page_staffs .staffTypes button {
    padding: 0 0 10px 0;
    background: none;
    box-shadow: none !important;
    border: 0;
  }

  .page_staffs .staffTypes button.actif p,
  .page_staffs .staffTypes button:hover p,
  .page_staffs .formulaireStaff .btn:hover {
    background: var(--custom_blue);
    color: var(--custom_white);
    cursor: pointer;
  }

  .page_staffs .staffTypes button p {
    font-size: 1.3rem;
    color: var(--custom_white);
    margin: 0 10px 0 0;
    background: var(--custom_black);
    padding: 0.5rem 1rem 0.4rem;
    font-family: 'VG5000_regular';
  }

  .page_staffs .descriptionPoste {
    padding: 2rem;
    margin-bottom: 40px;
    border-bottom: 5px solid;
    border-right: 10px solid;
  }

  .page_staffs .descriptionDetail h1 {
    text-align: center;
    margin-top: 0.5rem;
  }

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

    .page_staffs .descriptions {
      padding: 0;
    }

  }

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

    .page_staffs .formulairePostes {
      padding: 0;
    }

  }


  /* /association
==============================================================================*/

  .page_association {
    display: flex;
    flex-wrap: wrap;
  }

  .page_association .historique>div {
    padding-right: 100px;
  }

  .page_association .equipe {
    padding: 25px 30px;
    height: fit-content;
    width: auto;
  }

  .page_association .equipe>h1 {
    font-size: 1.3rem;
  }

  .page_association .equipe>ul {
    padding: 0;
  }

  .page_association .equipe>ul>li {
    margin-bottom: 10px;
    list-style: none;
  }

  .page_association .equipe>ul>li>p {
    margin-bottom: 0;
  }

  .page_association .equipe li>p:not(:nth-child(1)) {
    margin-top: 0;
  }

  .page_association .equipe li>p:nth-child(1) {
    width: fit-content;
    background: black;
    color: white;
    padding: 3px 10px 0;
    font-family: VG5000_bold;
    margin-bottom: 3px;
  }

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

    .page_association .equipe {
      padding: 0px;
    }

  }

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

    .page_association .historique {
      padding: 0;
    }

    .page_association .historique>div {
      padding-right: 0;
    }

  }

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

    .page_association .historique>div {
      padding: 0px;
    }

    .page_association .equipe {
      margin-top: 30px;
    }

  }

  /* /cinebullition
==============================================================================*/

  .contenaire.page_cinebullition+#navbar {
    display: none;

  }


  /* /portfolio
==============================================================================*/

  #contenaire.page_portfolio {
    flex-direction: column;
    align-items: center;
  }

  #portfolio {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
  }

  #portfolio .separationsAnnees {
    width: 100%;
    text-align: center;
    padding: 10px;
  }

  #portfolio>div {
    margin: 2vw;
    position: inherit;
  }

  #portfolio>div img {
    max-width: 20vw;
  }

  #portfolio div.creditsItem {
    display: none;
  }

  #portfolio div:hover {
    cursor: pointer;
  }

  #portfolio div:hover .creditsItem {
    display: flex;
    flex-direction: column;
    position: absolute;
    width: 100%;
    top: 0;
    padding: 10px;
    background-color: #000000d1;
    mix-blend-mode: luminosity;
    height: 100%;
  }

  #portfolio>div:hover img {
    filter: contrast(10) invert(1);
  }

  #portfolio div:hover .creditsItem>p {
    font-size: calc(8px + 0.8vw);
    color: var(--custom_yellow);
    padding: 3px;
    margin: 0;
  }

  #portfolio div:hover .creditsItem>p:first-of-type {
    font-size: 3rem;
    line-break: anywhere;
  }

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

    #portfolio>div img {
      max-width: 30vw;
    }
  }

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

    #portfolio>div img {
      max-width: 80vw;
    }
  }

  /* /abonnements
==============================================================================*/

  .contenaire.page_abonnements>div {
    padding: 0;
    margin: auto;
  }

  .contenaire.page_abonnements>div h1 {
    text-align: center;
  }

  .contenaire.page_abonnements>div h1:not(:first-of-type) {
    margin-top: 3rem;
  }

  /* /aretga
==============================================================================*/

  .contenaire.page_aretha>.description {
    padding-right: 10%;
  }

  .contenaire.page_aretha>div>p {
    padding-bottom: 10px;
  }

  /* Charte */
  .contenaire.page_aretha>.description img {
    max-width: 100%;
    padding: 20px;
  }

  .contenaire.page_aretha .aretha_formulaire .detail {
    color: var(--custom_red);
    line-height: 1.2;
  }

  @media only screen and (max-width: 991px) {
    .contenaire.page_aretha {
      flex-direction: column;
    }

    .contenaire.page_aretha .aretha_formulaire {
      margin-top: 40px;
      padding: 0;
    }

    .contenaire.page_aretha>div:first-child {
      margin-bottom: 0;
      padding: 0;
    }

    .contenaire.page_aretha>.description {
      padding: 0;
    }

  }

  /* /contact
==============================================================================*/

  #contenaire.page_contacts {
    display: flex;
  }

  #contenaire.page_contacts .planAcces {
    background-color: var(--custom_blue);
    height: fit-content;
    padding: 20px;
  }

  #contenaire.page_contacts .planAcces img {
    width: 100%;
    filter: invert(1) brightness(1.5);
  }

  #contenaire.page_contacts .infos {
    padding-right: 5vw;
  }

  #contenaire.page_contacts .infos h2:not(:first-of-type) {
    margin-top: 30px;
  }

  #contenaire.page_contacts .infos h2:last-of-type~p {
    margin: 0;
  }

  @media only screen and (max-width: 769px) {
    #contenaire.page_contacts {
      flex-direction: column-reverse;
    }
  }

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

    #contenaire.page_contacts .planAcces {
      margin-bottom: 30px;
    }

    #contenaire.page_contacts .infos {
      padding: 0;
    }

    #contenaire.page_contacts .planAcces img {
      width: inherit;
    }
  }

  /* /Sponsors
==============================================================================*/
  #contenaire.page_sponsors {
    display: flex;
  }

  #contenaire.page_sponsors .blocks {
    width: calc(70%);
    padding-right: 150px;
  }

  #contenaire.page_sponsors .blocks h1 {
    font-size: 2rem;
  }

  #contenaire.page_sponsors .sponsor_file {
    width: 30%;
    max-width: 250px;
  }

  #contenaire.page_sponsors .sponsor_file a {
    border-top: none;
  }

  #contenaire.page_sponsors .sponsor_file a img {
    border: 10px solid var(--custom_blue);

    width: 250px;
    padding: 10px;
  }

  #contenaire.page_sponsors .sponsor_file a p {
    text-decoration: none;
    text-align: center;
    color: var(--custom_black);
  }

  #contenaire.page_sponsors .sponsor_file a:hover p {
    color: var(--custom_blue);
  }

  #contenaire.page_sponsors .sponsor_file a:hover {
    text-decoration: none;
    border-top: none;
    background: var(--custom_white);
  }

  #contenaire.page_sponsors .sponsor_file a:hover img {
    filter: invert(16%) sepia(84%) saturate(5243%) hue-rotate(349deg) brightness(90%) contrast(98%);
  }



  @media only screen and (max-width: 769px) {
    #contenaire.page_sponsors {
      flex-direction: column-reverse;
    }

    #contenaire.page_sponsors .blocks {
      width: 100%;
      padding-right: 0;
    }

    #contenaire.page_sponsors .sponsor_file {
      width: 100%;
      max-width: 100%;
    }

    #contenaire.page_sponsors .sponsor_file a {
      display: flex;
    }

    #contenaire.page_sponsors .sponsor_file a img {
      width: 150px;
    }

    #contenaire.page_sponsors .sponsor_file a p {
      text-align: left;
      padding-left: 10px;
    }
  }

  /* /Popup
==============================================================================*/

  #popup {
    opacity: 1;
    width: 100vw;
    height: 100vh;
    position: fixed;
    background-color: #000000;
    top: 0;
    color: white;
    z-index: 101;
    display: block;
  }

  #popup.hide {
    opacity: 0;
    color: transparent;
  }

  #popup>div {
    display: flex;
    flex-direction: column;
    padding: 20px;
    height: 100%;
    max-width: 1000px;
    overflow-y: auto;
  }

  #popupCTA {
    padding: 10px;
    margin-top: 50px;
    padding-left: 0;
    flex-grow: 3;
  }

  #popup a {
    color: #dfff00;
    padding: 3px;
    text-decoration: underline;
    width: fit-content;
  }

  #popupCTA a {
    font-size: calc(1rem + 2vw);
  }

  #popup a:hover {
    background-color: #dfff00;
    color: black;
    cursor: pointer;
  }

  /* /error
==============================================================================*/

  #errorPage {
    margin: 0;
  }

  #errorPage .errorInfo {
    margin-bottom: 30px;
    flex-direction: column;
  }

  #errorPage .errorInfo span {
    padding-bottom: 5px;
  }

  #errorPage>div {
    display: flex;
    flex-direction: row;
    font-family: 'PixelOperator';
    color: white;
    padding: 10px;
    box-sizing: content-box;
  }

  #errorPage #countdown {
    font-size: 60px;
    padding: 0 15px 0 10px;
    color: var(--custom_blue);
    font-family: 'PixelOperatorBold';
  }

  #errorPage>div>div {
    display: flex;
    flex-direction: column;
  }

  #errorPage>div>div>span {
    font-size: 20px;
  }
}
