/*
 * Theme Name: LeStudio_Remix_2026
 * Description: 
 * Author: Le Studio
 * Version: 0.0.1
 * Tags: 
 */

@font-face {
    font-family: 'MontHeavyDemo';
    src: url('/wp-content/themes/lestudio/fonts/MontHeavyDemo.otf') format('opentype'),
    url('/wp-content/themes/lestudio/fonts/MontHeavyDemo.woff') format('woff'),
    url('/wp-content/themes/lestudio/fonts/MontHeavyDemo.svg#abcd') format('svg'),
    url('/wp-content/themes/lestudio/fonts/MontHeavyDemo.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* lato-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url('/wp-content/themes/lestudio/fonts/lato-v24-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/wp-content/themes/lestudio/fonts/lato-v24-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* lato-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: italic;
  font-weight: 300;
  src: url('/wp-content/themes/lestudio/fonts/lato-v24-latin-300italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/wp-content/themes/lestudio/fonts/lato-v24-latin-300italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* lato-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('/wp-content/themes/lestudio/fonts/lato-v24-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/wp-content/themes/lestudio/fonts/lato-v24-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* lato-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: url('/wp-content/themes/lestudio/fonts/lato-v24-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/wp-content/themes/lestudio/fonts/lato-v24-latin-italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* lato-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('/wp-content/themes/lestudio/fonts/lato-v24-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/wp-content/themes/lestudio/fonts/lato-v24-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* lato-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: url('/wp-content/themes/lestudio/fonts/lato-v24-latin-700italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/wp-content/themes/lestudio/fonts/lato-v24-latin-700italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

body{
	line-height: 1;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	font-size: 1em;
	font-family: 'Lato', sans-serif;
	color: black;
	position: relative;
	overflow-x: hidden;
    margin: 0;
}

h1 { 
    font-size: 3em;
    margin: 0;
}

h2 { 
    font-size: 2.5em; 
    font-weight: 900;
    text-align: center;
    padding: 25px 0;
    margin: 0;
    line-height: 120%;
}

h3 { font-size: 1.17em; margin: 0; line-height: 120%;  margin-bottom: 1em; margin-top: 1.4em;}
h4 { font-size: 1.12em; margin: 0; margin-bottom: 15px;}
h5 { font-size: .83em; margin: 0;}
h6 { font-size: .75em; margin: 0;}

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

body, section, article, div, ul, li, p, img, textarea, input {
    box-sizing: border-box;
}

ul {
    padding: 0;
    margin: 0;
}

p{
    margin: 0;
    margin-bottom: 15px;
    line-height: 1.4em;
}
.wrapper-section-page li, .wrapper-contenu-page li{
    margin: 0;
    margin-bottom: 5px;
    line-height: 1.4em;
}
.wrapper-section-page ul, .wrapper-contenu-page ul{
    margin-bottom: 15px;
}
figure.aligncenter{
    text-align: center;
}
}
.aligncenter iframe{
    margin-left: auto;
    margin-right: auto;
}

a {
    cursor: pointer;
}




/* *** DIAPORAMA *** */

.diaporama{
    display: flex;
    align-items: center;
    justify-content: space-around;
    display: -ms-flexbox;
    -ms-flex-pack: justify;
    -ms-flex-align: center;
    width: 100%;
    height: 40vw;
    position: relative;
}
.diapositives{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #444;
}
.diapo{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    -webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
    opacity: 0;
    z-index: -1;
}
.diapo.active{ 
    opacity: 1;    
    z-index: 1;
}
/*
.next-slide, .prev-slide{
    cursor: pointer;
    width: 50px;
    height: 50px;
    background: red;
    position: absolute;
    z-index: 9;
    top: 50%;
    transform: translateY(-50%);
}
.next-slide{
    right: 0;
}
.prev-slide{
    left: 0;
}
*/

/* *** PHOTOS BACKGROUND *** */

[background-photo] {
  position: absolute;
  z-index: -1;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  display: inline-block;
  width: 100%;
  height: 100%;
}
[background-photo] img {
  display: none;
}



/* *** CLASS FLEX *** */

.flex{
    display: flex;
}
.flex_column{
    display: flex;
    flex-direction: column;
}
.flex_wrap{
    flex-wrap: wrap;
}
.ai_center{
    align-items: center;
}
.ai_flex_start{
    align-items: flex-start;
}
.ai_flex_end{
    align-items: flex-end;
}
.jc_space_around{
    justify-content: space-around; 
}
.jc_space_between{
    justify-content: space-between; 
}
.jc_flex_end{
    justify-content: flex-end;
}
.jc_flex_start{
    justify-content: flex-start;
}
.jc_center{
    justify-content: center;
}


/* *** COULEURS *** */

/*
noir : #1d1d1b;
blanc : #ffffff;
gris: #dedede;
rouge : #eb0028;
rouge fonce : #aa0000;
*/


.btn-lien{
    padding: 5px 20px;
    font-size: 1.2em;
    line-height: 140%;
    font-weight: bold;
    background: #eb0028;
}





/* **** EFFETS **** */

@keyframes offres {
    0% {
        background-color: #1d1d1b;
    }

    50% {
        background-color: #1d1d1b;
    }

    51% {
        background-color: #eb0028;
    }

    100% {
        background-color: #eb0028;
    }

}

#btn-concours {
    animation: offres 1s infinite;
}



/* ************************ GLOBALE ************************ */

.header-page{
    position: relative;
    /* min-height: 260px; */
    padding: 30px 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-transform: uppercase;
    background: #eb0028;
    /* border-radius: 32px; */
    overflow: hidden;
    box-shadow: 0 20px 60px #eb00285e;
}
.header-page-overlay{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
            linear-gradient(135deg, rgba(227,6,19,0.7), rgba(29,29,27,0.4));
    mix-blend-mode: screen;
    height: 17px;
}
.header-page h1{
    position: relative;
    z-index: 2;
    text-align: center;
    font-weight: 900;
}
.header-page h1 span{
    color: #1d1d1b;
    text-transform: initial;
}
.wrapper-contenu-page{
    max-width: 720px;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 40px;
    margin-bottom: 40px;

}

.single-post .wrapper-contenu-page{
    max-width: 1024px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;    
}
.single-post .wrapper-contenu-page > div{
    width: 45%;
}

.wrapper-contenu-page h2 { 
    font-size: 2em; 
    font-weight: 900;
    text-align: center;
    padding: 20;
    margin-top: 20px;
    margin-bottom: 10px;
    line-height: 120%;
}
.wrapper-contenu-page a{
	color: #eb0028;
}




.smush-detected-img {
    box-shadow: inherit !important;
}




/* ************************ HEADER ************************ */

/* *** MENU *** */

main#main{
    padding-top: 66px;
}

#main-nav{
    /*min-height: 100px;*/
    align-items: center;
}
#main-nav.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000; /* Assurez-vous que la valeur de z-index soit supérieure à celle des autres éléments pour que l'élément fixé apparaisse au-dessus d'eux */
    /* Ajoutez d'autres styles personnalisés selon vos besoins */
}


#nav-mobile{
    min-height: 80px;
    align-items: left;
    padding: 10px;
    display: none;
    background-color: #1d1d1b;
}
#nav-mobile img{
    margin-top: 5px;
    width: 220px; 
}
nav {
    background-color: #1d1d1b;
    color: white;
} 

ul#menu-menuprincipal, #nav-page{
    display: flex;
    align-items: center;
}

ul#menu-menuprincipal li, #nav-page li {
    list-style: none;
}

ul#menu-menuprincipal li a, #nav-page li a{
    color: white;
    text-decoration: none;
    font-weight: 700;
    padding: 20px 15px 25px 15px;
    display: block;
    border-top: 5px solid #1d1d1b;
}

#nav-page li:first-child {
    border-right: solid 1px #ffffff4a;
}

#nav-page li:first-child a{
    padding: 5px;
    display: block;
    border-top: 0px solid #1d1d1b;
}
ul#menu-menuprincipal li a:hover, #nav-page li a:hover, #nav-page li.active a{
    color: #eb0028;
    border-top: 5px solid #eb0028;
}
#nav-page li:first-child a{
    padding: 5px;
    display: block;
    border-top: 0px solid #1d1d1b;
}
#nav-page li:first-child a:hover{
    border-top: 0px solid #1d1d1b;
}
#nav-page img{
    margin-right: 30px;
    width: 170px;
}

/*** BANDEAU FIXE ***/
#bandeau-fixe{
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    font-size: 1.1em;
    color: white;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
#bandeau-fixe.bandeau-event{
    bottom: -70px;
    box-shadow: -2px 0px 12px rgba(0, 0, 0, 0.7);
    background: #eb0028;
}
#bandeau-fixe.bandeau-event > div{
    justify-content: space-between;
}
#bandeau-fixe.bandeau-home.bandeau-event{
	bottom: -70px;
}
#bandeau-fixe.bandeau-home.bandeau-event.active{
	bottom: 0px;
}
#bandeau-fixe a{
    color: white;
    text-decoration: none;
}
#bandeau-fixe-liens{
    background: #eb0028;
}
#bandeau-fixe-asso img, #bandeau-fixe-decompte img{
    width: 30px;
    height: auto;
    margin-bottom: 5px;
}
#bandeau-fixe-liens{
    width: 66vw;
    padding: 8px;
    text-align: center;
    background: #eb0028;
}
#bandeau-fixe-asso{
    width: 17vw;
    padding: 8px;
    text-align: center;
    background: #1d1d1b;
}
#bandeau-fixe-decompte{
    width: 17vw;
    padding: 8px;
    text-align: center;
    background: #aa0000;
}
#bandeau-fixe p{
    margin-bottom: 0;
}

/* ************************ PAGE ... ************************ */

/*** ACCUEIL ***/
#bandeau-photo-page{
    position: relative;
    width: 100%;
    overflow: hidden;
}
#bandeau-photo-page .diaporama{
    height: 45vw;
    max-height: 1200px;
}

#bandeau-evenement{
    width: 100%;
    padding: 0;
    margin: 0;
    background: #fff;
}
#grille-accueil{
    height: 44vw;
    overflow: hidden;
    background: white;
    width: 100%;
    margin: 0;
}

.grid-container {
  display: grid;
  grid-template-columns: 33% 33% 17% 17%;
  grid-template-rows: 34% 6% 30% 18% 12%;
  grid-template-areas: "presentation-grid presentation-grid annee-grid date-grid" "presentation-grid presentation-grid annee-grid horaire-grid" "presentation-grid presentation-grid annee-grid lieu-grid" "presentation-grid presentation-grid decompte-grid asso-grid" "programme-grid billet-grid decompte-grid asso-grid";
}

.presentation-grid {grid-area: presentation-grid;}

.annee-grid { grid-area: annee-grid; background: white;}

.date-grid { grid-area: date-grid; }

.horaire-grid { grid-area: horaire-grid; }

.lieu-grid { grid-area: lieu-grid; }

.decompte-grid { grid-area: decompte-grid; }

.asso-grid { grid-area: asso-grid; }

.programme-grid { grid-area: programme-grid; }

.billet-grid { grid-area: billet-grid; }

.grid-container.sans-programme {
  grid-template-areas: "presentation-grid presentation-grid annee-grid date-grid" "presentation-grid presentation-grid annee-grid horaire-grid" "presentation-grid presentation-grid annee-grid lieu-grid" "presentation-grid presentation-grid decompte-grid asso-grid" "billet-grid billet-grid decompte-grid asso-grid";
}

.billet-grid.avec-concours > * {
  width: 50%;
}

.billet-grid.sans-concours > * {
  width: 100%;
}




/*.grid-container {
  display: grid;
  grid-template-columns: 1.5fr 1.5fr 1fr 1fr;
  grid-template-rows: 1.2fr 0.3fr 1fr 1fr;
  grid-template-areas: "presentation-grid presentation-grid annee-grid date-grid" "presentation-grid presentation-grid annee-grid horaire-grid" "presentation-grid presentation-grid annee-grid lieu-grid" "btns-grid btns-grid decompte-grid asso-grid";
}

.presentation-grid { grid-area: presentation-grid; }

.annee-grid { grid-area: annee-grid; }

.date-grid { grid-area: date-grid; }

.horaire-grid { grid-area: horaire-grid; }

.lieu-grid { grid-area: lieu-grid; }

.decompte-grid { grid-area: decompte-grid; }

.asso-grid { grid-area: asso-grid; }

.btns-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1.5fr 1fr;
  grid-template-areas: ". ." "programme-grid billet-grid";
  grid-area: btns-grid;
}

.programme-grid { grid-area: programme-grid; }

.billet-grid { grid-area: billet-grid; }*/
.annee-grid{
    position: relative;
}
#annee-evt{
 
    position: absolute;
    bottom: -50%;
    left: 0;
    height: 16vw;
    width: 28vw;
    transform-origin: 0 0%;
    transform: rotate(-90deg);
    font-size: 8vw;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'MontHeavyDemo';
}
#annee-evt span{
    color: #eb0028;
}
.date-grid, .lieu-grid{
    position: relative;
    background: #eb0028;
    color: white;
}
#jour-evt, #lieu-evt, #asso-evt{
    width: 100%;
    height: 100%;
    font-weight: bold;
    font-size: 1.3vw;
}
#jour-evt img, #lieu-evt img{
    max-width: 50px;
    margin-bottom: 10px;
}
.horaire-grid{
    color: #eb0028;
    font-weight: bold;
    font-size: 1vw;
}
#horaire-evt{
    width: 100%;
    height: 100%;
}
#lieu-evt p{
    width: 10vw;
    text-align: center;
    margin-bottom: 0;
}
#lieu-evt p span{
    color: #1d1d1b;
}
.asso-grid{
    background: #1d1d1b;
    color: white;
}
#asso-evt img{
    max-width: 80px;
    margin-bottom: 10px;
}
.decompte-grid{
    background-color: #aa0000;
}
#decompte-evt{
    position: relative;
    width: 100%;
    height: 100%;
    font-weight: bold;
    font-size: 3vw;
}
#decompte-evt p{
    position: relative;
    z-index: 2;
    margin-bottom: 0;
    color: white;
}
#decompte-evt:before{
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(/wp-content/uploads/2020/02/bg-compteur.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.12;
    z-index: 1;

}
.billet-grid a, .programme-grid a, .asso-grid a{
    color: white;
    text-decoration: none;
}
#btn-acheter-billet{
    width: 100%;
    height: 100%;
    position: relative;
    background: #eb0028;
    color: white; 
    font-weight: bold;
    font-size: 1.3vw;
    padding: 1vw;
}
.inner-btn-acheter{
    width: 100%;
    height: 100%;
    border: 2px solid white;
    text-align: center;
    padding: 15px;
}

#btn-concours{
    width: 100%;
    height: 100%;
    position: relative;
    background: #1d1d1b; 
    color: white; 
    font-weight: bold;
    font-size: 1.3vw;
    padding: 15px;
}

.programme-grid{
    background: white;
}
#btn-decouvrir-programme{
    width: 100%;
    height: 100%;
    border: 2px solid #eb0028;
    color: #eb0028;
    font-weight: bold;
    font-size: 1.3vw;
}
#presentation-evt{
    width: 100%;
    height: 100%;
    /* padding: 1vw; */
}
#logo-grid{
    width: 35%;
}
#illustration-grid{
    /* width: 65%; */
    /* height: 100%; */
    text-align: center;
    background: none !important;
    background-size: initial !important;
    background-repeat: no-repeat !important;
}
#illustration-grid img{
    max-height: 100%;
    width: auto;
    object-fit: contain;
}

/*** ACTUS ***/
#bandeau-actus{
    width: 100%;
    padding: 30px 0 50px;
    background: #1d1d1b;
}
#bloc-actualites{
    width: 100%;
    max-width: 1280px;
    padding: 0 30px;
    margin: 0 auto;
}
#bloc-actualites h2{
    text-align: left;
    margin-bottom: 25px;
    color: #ffffff;
}
#bloc-actualites .home-actus-grid{
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(320px, 1fr);
    gap: 30px;
    width: 100%;
    align-items: stretch;
}
#actu-une{
    min-height: 100%;
}
#actu-breves{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}
#bloc-actualites .btn-lien{
    color: #ffffff;
    background: #e30613;
    padding: 12px 26px;
    border-radius: 999px;
    font-weight: 700;
    transition: background 0.3s ease;
}
#bloc-actualites .btn-lien-wrapper{
    margin-top: 35px;
}
#bloc-actualites .btn-lien:hover{
    background: #ff1929;
}
.home-actu-feature{
    background: rgba(255,255,255,0.05);
    border-radius: 26px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    box-shadow: 0 30px 80px rgba(0,0,0,0.15);
}
.home-actu-feature__media{
    position: relative;
    height: 260px;
}
.home-actu-feature__media img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.home-actu-feature__media::after{
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,0.55) 100%);
}
.home-actu-feature__badge{
    position: absolute;
    top: 20px;
    left: 20px;
    background: #e30613;
    color: #fff;
    padding: 8px 18px;
    border-radius: 999px;
    font-size: 0.85em;
    font-weight: bold;
    z-index: 2;
}
.home-actu-feature__content{
    padding: 34px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex: 1;
    color: #ffffff;
}
.home-actu-feature__date{
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.85em;
    margin: 0;
    color: rgba(255,255,255,0.7);
}
.home-actu-feature__title{
    margin: 0;
    font-size: 2em;
    line-height: 130%;
}
.home-actu-feature__title a{
    color: #ffffff;
    text-decoration: none;
}
.home-actu-feature__title a:hover{
    color: #e30613;
}
.home-actu-feature__excerpt{
    color: rgba(255,255,255,0.85);
    line-height: 1.6;
    margin: 0;
}
.home-actu-feature__cta{
    margin-top: auto;
    align-self: flex-start;
    border: 1px solid rgba(255,255,255,0.4);
    padding: 10px 20px;
    border-radius: 999px;
    text-decoration: none;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background 0.3s ease, color 0.3s ease;
}
.home-actu-feature__cta:hover{
    background: #ffffff;
    color: #1d1d1b;
}
.home-actu-breve{
    background: rgba(255,255,255,0.05);
    border-radius: 16px;
    padding: 12px;
    color: #ffffff;
    border: 1px solid rgba(255,255,255,0.08);
    display: flex;
    gap: 14px;
}
.home-actu-breve__media{
    width: 80px;
    flex-shrink: 0;
    overflow: hidden;
    border-radius: 12px;
}
.home-actu-breve__media img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.home-actu-breve__content{
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.home-actu-breve__date{
    margin: 0 0 6px;
    font-size: 0.8em;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.65);
}
.home-actu-breve__title{
    margin: 0 0 8px;
    font-size: 1.05em;
    line-height: 140%;
}
.home-actu-breve__title a{
    color: #fff;
    text-decoration: none;
}
.home-actu-breve__title a:hover{
    color: #e30613;
}
.home-actu-breve__excerpt{
    margin: 0 0 10px;
    color: rgba(255,255,255,0.8);
    line-height: 1.4;
    font-size: 0.95em;
}
.home-actu-breve__link{
    text-transform: uppercase;
    font-size: 0.75em;
    letter-spacing: 0.1em;
    color: #e30613;
    text-decoration: none;
}

#presentation-tedx{
    padding: 50px;
}
.contenu-tedx{
    margin-bottom: 30px;
}
#presentation-tedx .wrapper-contenu{
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}
#presentation-tedx details summary{
    background-color: #1d1d1b;
    color: white;
    text-align: center;
    cursor: pointer;
    display: flex;
    justify-content: center;
}
#presentation-tedx details summary::-webkit-details-marker {
  display:none;
}
#presentation-tedx details summary h3{
    line-height: 150%;
    padding: 10px;
    margin-top:  0;
}
#presentation-tedx details summary h3 span{
    color: #eb0028;
}
#presentation-tedx details {
    margin-bottom: 20px;
}
#presentation-tedx details p, #presentation-tedx details h2, #presentation-tedx details h3{
    margin-top: 15px;
    margin-bottom: 0px;
}
#presentation-tedx details iframe{
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}


.fb_iframe_widget span {
  box-shadow: 0 0 145px rgba(0,0,0,0.3);
}

/*** GRILLE EDITION ***/
#grille-edition-2018{
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
   
}
#edtion-2018{
    position: relative;
    background: linear-gradient(135deg, #eb0028 0%, #1d1d1b 80%);
    padding-top: 30px;
    padding-bottom: 80px;
}
#edtion-2018 h2{
    color: #ffffff;
}
.bloc-edition a{
    text-decoration: none;
    color: white;
}
.bloc-edition{
    height: 33vw;
    max-height: 396px;
    width: 33%;

    position: relative;
}
#bloc-titre-edition{
    padding: 20px;
    background: #f1eeee; 
}
.bloc-edition:nth-child(2), .bloc-edition:nth-child(5), .bloc-edition:nth-child(8), .bloc-edition:nth-child(11){
    width: 34%;
}
#bloc-titre-edition .lien-programme{
    text-align: right;
}
#bloc-titre-edition .lien-programme .btn-lien{
    display: inline-block;
}
.video-preview{
    position: relative;
    position: absolute;
    height: 100%;
    width: 100%;
}
.pop label video{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.picto-video{
    background: url(/wp-content/uploads/2020/02/picto_video.svg);
    background-size: 25% auto;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0; bottom: 0; left: 0; right: 0;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.video-preview:hover .picto-video{
    opacity: 0;
}
.video-preview .loader{
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    position: absolute;
    top: 0; bottom: 0; right: 0; left: 0;
}

#bloc-tedx-images{
    position: relative;
    background: url(/wp-content/uploads/2021/10/51246900433_f9eaa2de49_w.jpg);
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

#bloc-tedx-images .overlay{
    background: rgba(227, 6, 19, 1);
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    /*mix-blend-mode: multiply;*/
    opacity:  0.8;
    transition: all 0.2s ease-in-out;
    z-index: 1;
}
#bloc-tedx-images a:hover .overlay{
    opacity:  0.6;
}

#bloc-tedx-images h3{
    position: relative;
    z-index: 2;
    font-size: 3em;
    font-weight: 900;
    text-align: center;
}
#bloc-titre-edition h3{
    font-size: 2.5em;
    font-weight: 900;
}
#bloc-titre-edition h3 span{
    font-size: 1.8em;
    color: #eb0028;

}
#bloc-titre-edition p{
    color: white;
    background: #eb0028;
    display: inline-block;
    padding: 5px;
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom: 0;
}
#bloc-acheter{
    padding: 10px;
    background: #1d1d1b; 
}

#edtion-2018 #bloc-acheter{
    background-color:  white;
}

#acheter-billet{
    max-width: 540px;
    padding: 15px;
    border: 1px solid #1D1D1D;
    font-size: 1.2em;
}
#acheter-billet span{
    color: #eb0028;
}
#bloc-acheter a{
    text-decoration: none;
    color: #1D1D1D;
}
#bloc-titre-edition .btn-lien{
    font-size: 1em;
}

/*** PARTIE NOUS SOUTENIR ***/
#bandeau-soutien{
    position: relative;
    background-color: #1d1d1b;

}
.inner-bandeau-soutien{
    position: relative;
    padding-top: 25vw;
    z-index: 1;
}
#bandeau-soutien [background-photo]{
    top: 0;
    left: 0;
}
#sous-pages-asso .liste-sous-pages{
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    transform: translateY(-50%);
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    z-index: 2;
    position: relative;
}
.sous-page-asso{
    max-width: 420px;
    margin-left: 15px;
    margin-right: 15px;
    background: #eb0028;
    color: white;
    padding: 20px;
    box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.7);
    margin-top: 15px;
    -webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}
.sous-page-asso:hover{
    margin-top: 0px;
    margin-bottom: 15px;
}
.sous-page-asso a{
    text-decoration: none;
    color: white;
}
.sous-page-asso:last-child{
    background: white;
    color: #1D1D1D;
}
.sous-page-asso:last-child a{
    color: #1D1D1D;
}
.sous-page-asso h3{
    font-size: 1.8em;
    margin-bottom: 0.5em;
}



/* ************************ PARTIE NEWSLETTER ************************ */

#newsletter {
    background-color: #1d1d1b;
    padding-top: 0px;
    padding-bottom: 50px;
    padding-left: 20px;
    padding-right: 20px;
}

#newsletter h2 {
    text-transform: uppercase;
    font-weight: 300;
    letter-spacing: 10px;
    color: white;
}

.intro_newsletter {
    text-align: center;
    max-width: 500px;
    margin: 0 auto;
    color: white;
    font-weight: 300;
}

.formulaire_newsletter {
    max-width: 720px;
    margin: 0 auto;
}

.mailpoet_form .mailpoet_form_shortcode {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.mailpoet_text {
    background-color: black;
    border: none;
    color: white;
    padding: 15px 25px;
    font-size: 1em;
    font-weight: 500;
    font-style: italic;
}
#newsletter .mailpoet_form{
    margin-top: 30px;
}
#newsletter .mailpoet_submit{
    background: #eb0028;
    height: 52px;
    color: white;
    border-radius: 0;
    border: none;
    font-size: 1em;
    margin-top: 20px;
}
#newsletter .mailpoet_text{
    width: 500px !important;
}

/* ************************ PARTIE CONTACT ************************ */
#contact{
    padding-bottom: 50px
}
#contact > article{
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

#contact > article > section {
    width: 45%;
}

#wrapper_illustration_contact img {
    width: 70%;
}

#wrapper_formulaire_contact {
    padding: 25px;
}

#wrapper_formulaire_contact input {
    border: none;
    border-radius: 600px;
    background-color: #dedede;
    font-family: 'Lato', sans-serif !important;
    font-size: 0.9em !important;
    padding: 15px;
    margin-bottom: 5px;
    width: 100%;
}

#wrapper_formulaire_contact textarea {
    border: none;
    border-radius: 15px;
    background-color: #dedede;
    font-family: 'Lato', sans-serif !important;
    font-size: 0.9em !important;
    padding: 15px;
    margin-bottom: 5px;
    width: 100%;
}

#wrapper_formulaire_contact .wpcf7-submit {
    background: linear-gradient(#eb0028, #c3040f);
    color: white;
    font-size: 1.1em;
    font-weight: 900;
    margin-top: 15px;
    cursor: pointer;
}

#wrapper_formulaire_contact .wpcf7-acceptance input {
    width: inherit;
    margin-left: 0;
}

#wrapper_formulaire_contact span.wpcf7-list-item {
    margin: 0;
}

#wrapper_formulaire_contact span.wpcf7-list-item a {
    color: #eb0028;
}



/***** PAGE CONTRIBUER *****/
#bandeau-soutien-v2{
    margin-bottom: 80px;
}
#bandeau-soutien-v2 #sous-pages-asso .liste-sous-pages{
    transform: translateY(0%);
}

/***** PAGE SOUTENIR *****/

.wrapper-section-page{
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    margin-bottom: 30px;
    background: #efefef;
    padding: 20px;
}
.wrapper-section-page h2{
    text-align: left;
}
.inner-section-page{
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
#etre-adherent .btn-lien, #etre-partenaire .btn-lien, #page-etre-benevole .btn-lien{
    text-decoration: none;
    color: white;
    margin-top: 20px;
    display: inline-block;
    width: auto;
}

#liste-formules-partenaire{
    margin-top: 30px;
    margin-bottom: 30px;
}
.formule-partenaire{
    padding: 12px;
    border-right: 2px solid white;
}
.formule-partenaire:last-child{
    border-right: 0px solid white;
}

.picto-formule{
    margin-bottom: 20px;
    text-align: center;
}
.picto-formule img{
    max-width: 80%;
}
.titre-formule{
    text-align: center;
    text-transform: uppercase;
}
.prix-formule{
    text-align: center;
    margin-bottom: 15px;
}
.contenu-formule ul li{
    position: relative;
    list-style: none;
    margin-left: 25px;
}
.contenu-formule ul li:before{
    content: "\f058";
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    left: -25px;
    top: 0;
}
.citation-partenaire{
    position: relative;
    font-size: 1.2em;
    margin-top: 50px;
    padding: 100px 80px 80px 80px;
}
.citation-partenaire:before{
    position: absolute;
    content: "";
    top: 20px;
    left: 20px;
    width: 50px;
    height: 50px;
    background: url(/wp-content/uploads/2020/02/quotes.svg);
    background-size: 100%;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}
.citation-partenaire:after{
    position: absolute;
    content: "";
    bottom: 70px;
    right: 20px;
    width: 50px;
    height: 50px;
    background: url(/wp-content/uploads/2020/02/quotes.svg);
    background-size: 100%;
}

/***** PAGE PARTENAIRES *****/
.partenaire{
    position: relative;
    width: 150px;
    height: 150px;
    margin: 10px;
    padding: 5px;
}
.partenaire img{
    position: relative;
    width: 140px;
    height: 140px;
    object-fit: contain;
    object-position: 50% 50%;

}

/***** PAGE EQUIPE *****/
#bandeau-photo-equipe{
    /*max-width: 1600px;
    margin-left: auto;
    margin-right: auto;*/
}
#bandeau-photo-equipe img{
    width: 100%;
    height: 350px;
    object-fit: cover;
}

#liste-membres-equipe{
    max-width: 1600px;
    margin-right: auto;
    margin-left: auto;
    padding: 20px;
    margin-bottom: 80px;
    flex-wrap: wrap;
}
.membre-equipe{
    width: 25%;
    padding: 10px;
    text-align: center;
}
.photo-membre{
    position: relative;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    overflow: hidden;
    transform: translateY(50%);
    margin-left: auto;
    margin-right: auto;
    box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.7);
}
.description-membre{
    background: #efefef;
    padding: 120px 10px 20px 10px;
}
.photo-membre img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.nom-membre{
    font-weight: 900;
    margin-bottom: 15px;
}
.titre-membre{
    color: #eb0028;
}


/*** PAGE EDITIONS PRECEDENTES ***/
#liste-editions-precedentes{
    margin-bottom: 50px;
}
.bloc-titre-ep{
    position: relative;
    height: 300px;
    width: 100%;
    background: black;
    overflow: hidden;
}
.photo-ep{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
}
.photo-ep img{
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.titre-ep{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 2;
    background: rgba(0,0,0,0.6);
    padding: 15px;
}
.titre-ep h2{
    text-align: left;
    color: white;
    line-height: 120%;
    font-size: 1.6em;
    margin-top: 0;
    padding-top: 0;
}
.titre-ep span{
    color: #eb0028;
    font-size: 1.85em;
}
.bloc-lien-ep a{
    color: white;
    text-decoration: none;
}
.bloc-lien-ep > div:nth-child(1){
    width: 34%;
    background: #1d1d1b;
}
.bloc-lien-ep > div:nth-child(2){
    width: 33%;
    background: #eb0028;
}
.bloc-lien-ep > div:nth-child(3){
    width: 33%;
    background: #be0a15;
}
.bloc-lien-ep > div:nth-child(1) i{
    color: #eb0028;
}
.ep-btn-programme, .ep-btn-photos, .ep-btn-videos{
    text-align: center;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    font-weight: bold;
}


/*** PAGE ACTUS ***/
#page-actu .wrapper-contenu-page{
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 30px 40px;
}
body #page-actu{
    background: #1d1d1b;
    padding-bottom: 60px;
}
#page-actu .header-page{
    margin: 0 auto 40px;
    /* max-width: 1180px; */
}
#page-actu .wrapper-contenu-page .liste-articles{
    margin-top: 35px;
}
.liste-articles{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 32px;
    width: 100%;
}
.actu-card{
    background: #ffffff;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0,0,0,0.12);
    display: flex;
    flex-direction: column;
    min-height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.actu-card:hover{
    transform: translateY(-6px);
    box-shadow: 0 30px 80px rgba(0,0,0,0.16);
}
.actu-card__media{
    position: relative;
    display: block;
    overflow: hidden;
}
.actu-card__media img{
    width: 100%;
    height: 260px;
    object-fit: cover;
    transition: transform 0.4s ease;
    display: block;
}
.actu-card__media:hover img{
    transform: scale(1.05);
}
.actu-card__tag{
    position: absolute;
    top: 18px;
    left: 18px;
    background: rgba(0,0,0,0.7);
    color: #fff;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 0.8em;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.actu-card__body{
    padding: 26px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    flex: 1;
}
.actu-card__date{
    font-size: 0.85em;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: rgba(0,0,0,0.55);
    margin: 0;
}
.actu-card__title{
    margin: 0;
    font-size: 1.4em;
    line-height: 130%;
}
.actu-card__title a{
    color: #1d1d1b;
    text-decoration: none;
}
.actu-card__title a:hover{
    color: #e30613;
}
.actu-card__excerpt{
    margin: 0;
    line-height: 1.6;
    color: rgba(0,0,0,0.8);
    flex: 1;
}
.actu-card__cta{
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    border-radius: 999px;
    background: #f7f7f7;
    color: #1d1d1b;
    text-decoration: none;
    font-weight: 600;
    border: 1px solid rgba(0,0,0,0.05);
    transition: background 0.2s ease, color 0.2s ease;
}
.actu-card__cta:hover{
    background: #e30613;
    color: #fff;
}
.actus-load-more-wrapper{
    text-align: center;
    margin-top: 35px;
}
.actus-load-more{
    background: #e30613;
    color: #fff;
    border: none;
    border-radius: 999px;
    padding: 14px 32px;
    font-size: 1em;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease;
}
.actus-load-more:hover{
    background: #ff2a36;
    transform: translateY(-2px);
}
.actus-load-more.is-loading{
    opacity: 0.7;
    pointer-events: none;
}
.article-card{
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 20px 45px rgba(0,0,0,0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.article-card:hover{
    transform: translateY(-6px);
    box-shadow: 0 30px 60px rgba(0,0,0,0.12);
}
.article-card__media{
    display: block;
    position: relative;
    overflow: hidden;
}
.article-card__media img{
    width: 100%;
    height: 240px;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}
.article-card__media:hover img{
    transform: scale(1.05);
}
.article-card__body{
    padding: 24px 24px 28px;
    display: flex;
    flex-direction: column;
    flex: 1;
}
.article-card__date{
    font-size: 0.85em;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: rgba(0,0,0,0.5);
    margin: 0 0 10px;
}
.article-card__title{
    font-size: 1.35em;
    line-height: 130%;
    margin: 0 0 15px;
}
.article-card__title a{
    color: #1d1d1b;
    text-decoration: none;
    transition: color 0.2s ease;
}
.article-card__title a:hover{
    color: #e30613;
}
.article-card__excerpt{
    flex: 1;
    margin: 0 0 20px;
    line-height: 1.6;
    color: rgba(0,0,0,0.8);
}
.article-card__cta{
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 999px;
    border: 1px solid #e30613;
    color: #e30613;
    text-decoration: none;
    font-weight: 600;
    transition: background 0.2s ease, color 0.2s ease;
}
.article-card__cta span{
    font-size: 1.1em;
    line-height: 1;
}
.article-card__cta:hover{
    background: #e30613;
    color: #fff;
}
.image-article{
    text-align: center;
    margin-bottom: 15px;
}
.image-article img{
    max-width: 100%;
    height: auto;
}
@media(max-width: 991px){
    #bloc-actualites{
        padding: 0 20px;
    }
    #bloc-actualites .home-actus-grid{
        grid-template-columns: 1fr;
    }
    #actu-breves{
        grid-template-columns: 1fr;
    }
}
@media(max-width: 767px){
    .bloc-actus{
        padding: 24px;
    }
    .home-actu-feature__media{
        height: 200px;
    }
    .liste-articles{
        grid-template-columns: 1fr;
        gap: 24px;
    }
    .actu-card__media img{
        height: 220px;
    }
}
.pagination-articles{
    display: inline-block;
    align-items: center;
    justify-content: center;
}
.pagination-articles li{
    margin: 5px;
    list-style: none;
    color: black;
    float: left;
    padding: 8px 16px;
    text-decoration: none;
}

/*** PAGE PROGRAMME ***/
#page-programme .horaire-programme{
    background: black;
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
    color: white;
    font-size: 1.6em;
    font-weight: bold;
    text-align: center;
    padding: 15px;
    border-radius: 30px;
    margin-top: 50px;
}
#page-programme .horaire-programme span{
    color: #eb0028;
}
#bandeau-speakers{
    padding: 10px;
    margin-bottom: 50px;
}
#liste-des-speakers{
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.speaker{
    margin-bottom: 50px;
}
.titre-speaker{
    background: #eb0028;
    color: white;
}
.speaker h2{
    font-size: 1.5em;
    font-weight: 900;
    text-align: center;
    padding: 10px;
    margin: 0;
}
.details-speaker{
    background: #efefef;
    padding: 15px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.details-speaker > div{
    width: 50%;
    padding: 15px;
}
.profil-speaker{
    text-align: right;
}
.photo-speaker{
    position: relative;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 15px;
    margin-left: auto;
}
.photo-speaker img{
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.nom-speaker{
    font-weight: 900;
    color: #eb0028;
    margin-bottom: 10px;
}


/*** POPUP ***/

.pop {
  /*position: absolute;
  width: 50%;
  margin: auto;
  padding: 20px;
  height: 50%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;*/
  position: relative;
  height: 100%;
  width: 100%;
}
@media (max-width: 640px) {
  .pop {
    position: relative;
    width: 100%;
  }
}
.pop .modal {
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transition: opacity 500ms ease-in-out;
  transition: opacity 500ms ease-in-out;
}
.pop .modal__inner {
  -webkit-transform: translate(-50%, -50%) scale(0.75);
          transform: translate(-50%, -50%) scale(0.75);
  top: 50%;
  left: 50%;
  width: 50%;
  /*max-width: 580px;*/
  background: white;
  padding: 30px;
  position: absolute;
  color: black;
}
@media (max-width: 640px) {
  .pop .modal__inner {
    width: 100%;
  }
}
.pop label {
  display: inline-block;
  cursor: pointer;
  width: 100%;
  height: 100%;
}
.pop label.open {
  color: turquoise;
  -webkit-transition: color 200ms ease-in-out;
  transition: color 200ms ease-in-out;
  text-decoration: underline;
}
.pop label.open:hover {
  color: paleturquoise;
}
.pop input {
  display: none;
}
.pop input:checked + .modal {
  opacity: 1;
  visibility: visible;
}
.pop input:checked + .modal .modal__inner {
  -webkit-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
}
.pop input:checked + .modal .modal__inner p {
  font-size: 1.25rem;
  line-height: 125%;
  display: flex;
  justify-content: center;
  margin-bottom: 0;
}
.pop input:checked + .modal label {
  position: absolute;
  top: 0;
  right: 0;
  height: 30px;
  width: 30px;
  background: #666666;
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
}
.pop input:checked + .modal label:hover {
  background: #333333;
}
.video-container { 
  position: relative; 
  padding-bottom: 56.25%; 
  height: 0; 
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto;
}
.video-container iframe, .video-container object, .video-container embed, .video-container video { 
  position: absolute; 
  top: 0; 
  left: 0; 
  right: 0;
  width: 100%;
  height: 100%;
}


/*** boutons ***/
.wp-block-button__link.has-blanc-color{
    color: white;
}
.wp-block-button__link.has-cadmium-red-background-color{
    background: #eb0028;
}


/* ************************ FOOTER ************************ */


/* *** RESEAUX SOCIAUX FOOTER *** */

#reseaux_sociaux_footer {
    position: relative;
}

#reseaux_sociaux_footer > section {
    max-width: 1200px;
    margin: 0 auto;
}

.liste_reseaux_sociaux img {
    width: 30px;
    margin: 3px;
}

.logo_footer {
    width: 250px; 
    padding: 15px;
}

.illustration_footer {
    position: absolute;
    bottom: 0;
    left: 48vw;
    width: 650px;
}


/* *** MENU FOOTER *** */

#menu_footer {
    background-color: #eb0028;
}

#menu_footer ul {
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    align-items: center;
    justify-content: space-between;
}

#menu_footer ul li {
    list-style: none;
    padding: 25px 15px;
}

#menu_footer ul li a {
    text-decoration: none;
    color: white;
    font-weight: 700;
    text-align: center;
}


/* *** COPYRIGHT *** */

#copyright {
    padding: 15px;
    max-width: 1200px;
    margin: 0 auto;
    color: grey;
    font-weight: 300;
    position: relative;
}

#copyright a {
    color: grey;
    font-weight: 300;
}


/* *** LE STUDIO *** */

.lestudio {
    background-color: black;
    padding-bottom: 75px;
}

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

.lestudio img {
    margin: 5px;
    width: 200px;
}

/* *** TARTE AU CITRON *** */

#tarteaucitronAlertBig #tarteaucitronPersonalize {
    background-color: green !important;
}

#tarteaucitronAlertBig #tarteaucitronCloseAlert {
    background-color: white !important;
}

.grecaptcha-badge{
    display: none;
}



/***** MEDIA QUERIES *****/
/*************************/
@media only screen and (max-width : 1400px) {

}

@media only screen and (min-width: 1200px) {
    #bandeau-evenement {
        width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding: 0;
    }
}

@media only screen and (max-width : 1220px) {
    #bloc-actualites > div{
        flex-direction: column;
    }
    #actu-une, #actu-breves{
        width: 100%;
        padding-bottom: 20px;
        margin-bottom: 20px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.5);
    }
    #actu-breves{
        width: 40%;
        display: none;
    }

    #nav-page li a {
        font-size: 0.9em;
    }

}

@media only screen and (max-width : 1023px) {
    #bandeau-photo-page .diaporama{
        height: 45vw;
    }
    .illustration_footer {
        position: initial;
        width: 100%;
    }

    #copyright {
        padding: 0;
        display: flex;
        flex-direction: column;
    }

    .contener_copyright {
        padding: 15px;
    }

    #grille-accueil{
        height: 150vw;
        overflow: hidden;
        background: white;
    }
    .grid-container {
      display: grid;
      grid-template-columns: 50% 50%;
      grid-template-rows: 42% 7% 10% 18% 5% 17%;
      grid-template-areas: "presentation-grid presentation-grid" "programme-grid billet-grid" "annee-grid annee-grid" "date-grid lieu-grid" "horaire-grid lieu-grid" "decompte-grid asso-grid"; 
    }

    .grid-container.sans-programme {
      display: grid;
      grid-template-columns: 50% 50%;
      grid-template-rows: 45% 5% 10% 18% 5% 17%;
      grid-template-areas: "presentation-grid presentation-grid" "billet-grid billet-grid" "annee-grid annee-grid" "date-grid lieu-grid" "horaire-grid lieu-grid" "decompte-grid asso-grid"; 
    }
    .annee-grid{
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #annee-evt{
        position: relative;
        bottom: 0;
        left: 0;
        transform: rotate(0deg);
        height: auto;
    }
    #jour-evt, #lieu-evt, #asso-evt, #btn-decouvrir-programme, #btn-acheter-billet, #decompte-evt{
        font-size: 2vw;
    }
    .horaire-grid{
        font-size: 1.8vw;
    }
    #lieu-evt p{
        width: 80%;
    }
    #illustration-grid img{
        width: 100%;
        height: auto;
        max-height: none;
    }

    #bandeau-actus{
        flex-direction: column;
    }
    #bloc-actualites, #bloc-facebook{
        width: 100%;
    }
    #bloc-facebook{
        display: none;
    }
    .bloc-edition, .bloc-edition:nth-child(2), .bloc-edition:nth-child(5), .bloc-edition:nth-child(8), .bloc-edition:nth-child(11){
        height: 50vw;
        width: 50%;
    }
    #bloc-tedx-images{
        width: 100%
    }

    #sous-pages-asso .liste-sous-pages{
        transform: translateY(0);
        flex-direction: column;
        align-items: center;
        padding-bottom: 50px;
        padding-top: 50px;
    }
    #bandeau-soutien{
        padding-top: 0;
    }
    #liste-membres-equipe{
        flex-wrap: wrap;
    }
    .membre-equipe{
        width: 50%;
    }

    #main-nav{
        display: none;
    }
    #nav-mobile{
        display: block;
    } 
    main#main{
        padding-top: 0px;
    }
    .single-post .wrapper-contenu-page{
        max-width: 720px;
    }
    .single-post .wrapper-contenu-page > div{
        width: 100%;
    }


}

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

    #reseaux_sociaux_footer > section {
        flex-direction: column;
    }

    #contact > article > section {
        width: 100%;
    }

    #menu_footer ul {
        flex-direction: column;
        text-align: center;
        padding: 15px 0;
    }

    #menu_footer ul li {
        padding: 12px 25px;
    }

    #contact > article > section {
        justify-content: center;
    }

    #bloc-titre-edition{
        width: 100%;
        flex-direction: row;
        align-items: center;
    }
    #bloc-titre-edition .lien-programme{
        text-align: center;
        margin-left: 10px;
    }
    #bloc-acheter{
        width: 100%;
        order: 9;
    }
    #bloc-tedx-images{
        order: 8;
    }
    #newsletter .mailpoet_text{
        width: 100% !important;
    }
    .mailpoet_form .mailpoet_form_shortcode{
        display: block;
    }
    #newsletter .mailpoet_submit{
        margin-left: 0;
    }
    #newsletter h2{
        letter-spacing: 3px;
    }

    .billet-grid {
        flex-direction: column;
    }

    .billet-grid > * {
        width: 100% !important;
    }

}

@media only screen and (max-width : 720px) {
    #bandeau-photo-page .diaporama{
        height: 45vw;
    }
    #grille-accueil{
        height: auto;
        overflow: hidden;
        padding-bottom: 20px;
        padding-left: 0;
        padding-right: 0;
    }
    .grid-container {
      display: grid;
      grid-template-columns: 50% 50%;
      grid-template-rows: repeat(7, auto);
      grid-template-areas: "presentation-grid presentation-grid" "programme-grid programme-grid"  "billet-grid billet-grid"  "annee-grid annee-grid" "date-grid lieu-grid" "horaire-grid lieu-grid" "decompte-grid asso-grid"; 
      grid-auto-rows: auto;
      gap: 0;
      align-items: start;
      row-gap: 0.5rem;
    }
    .grid-container.sans-programme {
      display: grid;
      grid-template-columns: 50% 50%;
      grid-template-rows: repeat(6, auto);
      grid-template-areas: "presentation-grid presentation-grid"  "billet-grid billet-grid"  "annee-grid annee-grid"  "date-grid lieu-grid"  "horaire-grid lieu-grid"  "decompte-grid asso-grid"; 

      grid-auto-rows: auto;
      gap: 0;
      align-items: start;
      row-gap: 0.5rem;

    }
    .annee-grid{
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #annee-evt{
        position: relative;
        bottom: 0;
        left: 0;
        transform: rotate(0deg);
        height: auto;
        font-size: 4em;
    }
    #jour-evt, 
    #lieu-evt, 
    #asso-evt, 
    #btn-decouvrir-programme, 
    #btn-acheter-billet, 
    #decompte-evt,
    #btn-concours{
        font-size: 1.2em;
    }
    .horaire-grid{
        font-size: 1em;
    }
    #horaire-evt{
        min-height: 45px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0.5rem 0;
    }
    #presentation-evt{
        padding: 0;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
    }
    #illustration-grid{
        width: 100%;
        /* max-width: 330px; */
        height: auto;
        background: none !important;
        background-size: initial !important;
        background-repeat: no-repeat !important;
    }
    #illustration-grid img{
        width: 100%;
        height: auto;
        display: block;
        max-height: none;
        object-fit: contain;
    }
    .annee-grid{
        padding: 0.5rem 0;
    }
    .date-grid, .lieu-grid, .horaire-grid, .asso-grid{
        padding: 0.8rem 0;
    }
    #jour-evt, #lieu-evt, #asso-evt{
        font-size: 1.25rem;
        padding: 0.5rem 0.75rem;
        text-align: center;
    }
    #jour-evt img, #lieu-evt img, #asso-evt img{
        margin-bottom: 10px;
        max-width: 60px;
    }
    #logo-grid{
        width: 100%;
        max-width: 280px;
    }
    #liste-formules-partenaire{
        flex-direction: column;
        align-items: center;
    }
    .formule-partenaire{
        border-right: 0px solid white;
    }
    #liste-des-partenaires{
        justify-content: space-around;
    }
    #page-actu .article > div{
        flex-direction: column;
        align-items: center;
    }
    #page-actu .detail-article-archive{
        width: 100%;
        margin-top: 15px;
    }
    .details-speaker{
        flex-wrap: wrap;
    }
    .details-speaker > div{
        width: 100%;
    }
    .profil-speaker{
        text-align: center;
    }
    .photo-speaker{
        margin-left: auto;
        margin-right: auto;
    }
    iframe, video{
		max-width: 100%;
		height: auto;
	}
	.wrapper-contenu figure{
		margin: 0;
	}
	#bandeau-fixe-liens{
	    width: 50vw;
	    font-size: 1em;
	}
	#bandeau-fixe-asso, #bandeau-fixe-decompte{
	    width: 25vw;
	}
	#bandeau-fixe{
		font-size: 0.9em;
	}
    #wrapper_illustration_contact img {
        width: 20%;
    }

}

@media only screen and (max-width: 480px) {
    .membre-equipe{
        width: 100%;
    }

}
