/*
Theme Name: Avant l'été Child 
Description: Theme enfant du theme Divi. 
Author: samloorie / Collectif sur le pont
Author URI: http://samloorie.fr
Template: Divi
Version: 1.0
*/


@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap');
@font-face {
    font-family: 'Oliver';
    src: url('/wp-content/themes/avantlete-child/font/Oliver.ttf');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html  {
  --txt: #000000; 
  --couleur1: #f9e701;/*Jaune */ 
  --couleur2: #4191ce; /* bleu clair */
  --couleur3: #8ec100; /* vert */
  --fond: #f6f4f9; /*gris clair*/
  --black : 900;
  --titre :  'Oliver', cursive;
    --font :   "Space Mono", monospace;
  --manuscrit :  'Oliver', cursive;
  --ombre : 5px 4px 0 #000000;
}


.couleur1, .couleur2, .couleur3{ padding:1vh 1vw;}
.couleur1{ background-color:var(--couleur1); color:var(--txt;)}/** jaune **/
.couleur2{ background-color:var(--couleur2); color:#fff;}/** violet **/
.couleur3{ background-color:var(--txt); color:#fff!important;}/** noir **/ .couleur3 a { color:#fff!important;}
.fond { background-color: var(--fond); }
.ombre { border:1px solid var(--txt); box-shadow:var(--ombre); border-radius: 5px;}
.focus {  background-color: var(--fond); padding:2em; margin:10px auto; }

.encadre { border:1px solid var(--txt); box-shadow:var(--ombre); padding:2em; margin:10px auto; border-radius:4px; }

.surligne  {z-index: 50;
  position: relative;
   transform: rotate(-10deg) skew(-3deg);
     left: -20px;
  display: inline-block;
  font-size: 18px;
  color: var(--txt) !important;
  border-bottom: 0;
  padding-bottom: 0;
  background: var(--couleur2);
  padding: 0 20px; 
  line-height: 30px;
  margin-bottom: 20px;
  border-radius: 4px;
}

.surligne2 {
         background: linear-gradient(180deg, transparent 0%, #f9e701 50%, #f9e701 100%);

}

.surligne a{  color:var(--txt) !important; }

.point {
  font-size: inherit;
  color: var(--couleur1);
  vertical-align: top;
  line-height: 1;
  font-family: var(--titre);
}

/*** barre verticale**/
hr{ 
  
display: block;
width: 100%;
background: var(--txt) ;
height: 1px;
border: none;
margin:2% auto;
}


.bigtitre { 
    letter-spacing: 3px;
text-transform: uppercase;
font-family:  var(--titre);
margin:10px auto;
font-size:6em;
}

/* ---------------------------
Typo générale
-----------------------------*/

/* du fond */

body{ 
color: var(--txt);
font-family: var(--font);
font-size: calc( 24px + 2 * (100vw / 1500));
line-height: 1.5em; 
font-weight: normal;


  
}

p, .et_pb_post p,
.et_pb_text,
.et_pb_text_inner, .et_pb_text_inner p { 
color: var(--txt);
font-family:  var(--font);
font-size: calc( 12px + 2 * (100vw / 1500));line-height: 1.5em; 
font-weight: normal;

}

p li, .et_pb_text p li { 
color: var(--txt);
font-family:  var(--font);
font-size: calc( 16px + 2 * (100vw / 1500));
line-height: 1.5em; 
list-style-type: none;
  position: relative;
  margin: 1px;
  padding: 0.5em 0.5em 0.5em 2em;}

.et_pb_text  ul {list-style: none}

.et_pb_text li::before {
    content: "—"; 
color: var(--couleur1);
display: inline-block; 
margin-right: 1em;
margin-left: -1em;}

blockquote, blockquote p {
 margin: 10px auto !important;
    padding: 0;
    font-weight: 800 !important;
    border: none !important;
    transform: skewY(-3deg);
    max-width: 60%;

}





.et_pb_text_inner a { color:var(--txt);  font-family:var(--titre); }
.et_pb_text_inner a:hover { text-decoration:underline; color: var(--couleur2);}


h1 { 
text-transform: uppercase;
font-family:  var(--titre);
}


h1, h2, h3, h4 {
	margin:0;
color:var(--txt);
font-family:  var(--titre);
font-weight:var(--black);

}


h5 {

  color:var(--txt);
margin:0;
font-weight:900;

}

h6 {
	font-weight:800;
}

.wp-caption {
  border: 1px solid var(--couleur1);
  text-align: center;
  background-color: transparent;
 
}
.bouton-liste {
	display:inline-block; 
	font-weight:600;
line-height:1em;
	border:2px solid transparent;
	background-color:var(--couleur3);
	padding:6px 12px;
	 margin:10px 3px;
	color:var(--txt)!important;}

.bouton-liste:hover {border:2px solid var(--txt); background-color:transparent;}
.et_pb_button, .bouton, .give-btn, .bouton { 
background:transparent; 
color:var(--txt); 
 border-radius :0; 
border:1px solid var(--txt);
 margin:10px;
font-weight:800;
line-height:1em;
font-family:var(--titre);
box-shadow: var(--ombre);
  }
 
.et_pb_button:hover, .bouton:hover, .give-btn:hover { 
	
  border:1px solid var(--couleur2)!important; 
  background:transparent;
  color:var(--couleur2)!important;
box-shadow: 7px 6px 0 var(--couleur2);
text-decoration:none!important;}


#gallery-1 img {
  border: 1px solid transparent !important;
}

/*** centrer les textes verticalement***/

.centrer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
}


.et_pb_scroll_top.et-pb-icon {
  background: var(--couleur1);
  border-radius: 0;
  color: #000;
}

/*.entry-content  {
  margin:20px auto;
  }*/

/**--------------------

Programmations 

-----------------------*/




/*** Version vignette template-realisations .php --*/

.vignette-resultats {
  margin: 1% 10px 0 0;
  width: 31.1%;
 /* float:right;*/
 display:inline-block;
 /* background-color:var(--fond);*/
  padding:5px;
  min-height:580px;
}

.vignette-resultats .pastille p {
font-size:1em;
background-color:var(--couleur2)!important;
color:#fff!important;
display:inline-block;
margin:-1.5em 0 1em 0;
padding:2px 8px;
font-weight:900;
z-index:999;
}

.vignette-resultats .categories {text-transform: uppercase; font-weight:900; font-size:0.9em;}
.vignette-resultats .lieu { font-weight:300; font-size:1.1em;}
.vignette-resultats .item { display:block;}
.vignette-resultats .item svg { width:20px; margin-right:10px;}
.vignette-resultats a{color:var(--txt);}

 .vignette-resultats .img-vignette, .colonne2 .img-vignette {
background-size: cover !important;
  background-position: center !important;
  width: auto;
  height: 300px;
  overflow: hidden;
  margin: 2vh auto 0 auto;}

  .archives .vignette-resultats {min-height: 200px;}
  .archives .vignette-resultats h2 {font-size:1.2em; margin-top:2vh;}


.archives .vignette-resultats .img-vignette {
background-size: cover !important;
background-position: center !important;
width:auto;
  height: 200px;
  overflow: hidden;
  margin: 2vh auto 0 auto;}



.et_pb_tabs_controls li {
  border-right: 1px solid #fff !important;
   border-bottom: 1px solid var(--couleur1);
  }

.et_pb_tabs_controls li a {
  padding: 4px 30px 4px 30px;
}

.et_pb_tabs_0_tb_body.et_pb_tabs .et_pb_tabs_controls li a {
  color: #000000 !important;
  border-left:0;
  border-right:0;
  margin: 4px;
}

.et_pb_tabs_controls li.et_pb_tab_active  {
  color: var(--couleur1);
  border-bottom: 4px solid var(--couleur1);
  padding: 4px 30px 2px 30px;
}

ul.et_pb_tabs_controls {
  background-color: transparent;
}

ul.et_pb_tabs_controls::after {
  visibility: hidden;
}

/**** Vignettes artistes ***/

.vignettes-artistes .et_pb_post .et_pb_image_container {
  margin: 0;
}

.et_pb_grid_item,.vignettes-artistes .et_pb_post {
  float: left;
  position: relative;
  text-align: center;
  border: 2px solid var(--txt)!important;
  padding: 10px;
}

.et_pb_grid_item:hover, .vignettes-artistes .et_pb_post:hover {
  box-shadow:var(--ombre)!important;
  }


.et_pb_filterable_portfolio .et_pb_portfolio_filters li a {
  color: var(--txt);
  padding: 10px 20px;
  border: 0;
  display: block;
  height: auto;
  overflow: hidden;
  margin: 0 3px;
  background-color: var(--couleur3);
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active {
 
}
/* ---------------------------
Menu
-----------------------------*/

#main-header { 
-webkit-box-shadow: none!important;
-moz-box-shadow: none!important;
box-shadow: none!important;
padding-bottom: 15px;
}

#top-menu li {
  display: inline-block;
  font-size: 14px;
  padding-right: 12px;
  text-transform: uppercase;
  font-family: var(--titre);
  letter-spacing: 1px;
}


#top-menu a {
    font-size: 1em;
    font-weight: 800 !important;
    color: var(--txt);
    padding: 6px !important;
    background-color:var(--couleur1);
    box-shadow: inset 0 0 0 0 var(--txt); /* Initial : pas de soulignement */
    transition: color .3s ease-in-out, box-shadow .3s ease-in-out;
    text-decoration: none;
    position: relative;
    display: inline-block;
    border-radius:4px; 
}

#top-menu a:hover {
    color: #fff;
    background-color: var(--txt) !important;
    box-shadow: inset 200px 0 0 0 var(--txt); /* Soulignement animé */
    opacity: 1 !important;
}

#top-menu li li a { /* sous menu */
    padding: 6px 20px;
    width: 200px;
    border: none !important;
    box-shadow: 0 !important;
    color: var(--txt);
    transition: color .3s ease-in-out, box-shadow .3s ease-in-out;
}

#top-menu li li a:hover {
    color: var(--couleur2) !important;
    background: #fff;
    box-shadow: inset 200px 0 0 0 #fff; /* Soulignement blanc au survol */
    border: 0;
}

#top-menu li.current-menu-item > a,
#top-menu li.current_page_item > a {
    color: #fff;
    background-color: var(--txt) !important;
    box-shadow: inset 200px 0 0 0 var(--txt); /* Soulignement pour l’élément actif */
}

#top-menu .menu-item-has-children > a:first-child::after {
    font-family: 'ETmodules';
    content: "3";
    font-size: 20px;
    position: absolute;
    top: 5px;
    font-weight: 800;
    right: 10px; /* Ajout pour positionner l’icône à droite */
}

#top-menu .menu-item-has-children > a:first-child {
    padding-right: 20px !important;
}


/* ------------------------------
Bloc Header

------------------------

.header-page .bloc-titre {
  display:block;
  background-color:var(--couleur3);
    clip-path:  polygon(5% 0%, 100% 0%, 95% 100%, 0% 100%);;
  width: 90%;
  margin:5px auto;
  padding: 8vh 5vw;
 text-align: center!important;
}
  

.header-page h1 { 
    color:#fff!important;
    letter-spacing: 2px;
text-transform: uppercase;
font-family:  var(--titre);
text-shadow: 4px 4px 0 var(--txt);
-webkit-text-stroke: 1px var(--txt);
text-stroke:  1px var(--txt);
margin:10px auto;
font-size:4em;
}

.header-page { 
  margin:3vh auto;
   text-align: center!important;
   width:90%;

  }

  .header-page .aioseo-breadcrumbs {font-size:0.9em;}*/

  /****nouvelle version titre -----*/

.bloc-bandeau {
margin-bottom: 0;
  padding: 10vh 2vw;
  display: flex;
  justify-content: center;
  align-items: center;
  border-top: 20px solid var(--couleur2);
  background-color: var(--couleur1);

}

.bloc-bandeau h1 {
  color: #fff !important;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-family: var(--titre);
  text-shadow: 4px 4px 0 var(--txt);
  -webkit-text-stroke: 1px var(--txt);
  text-stroke: 1px var(--txt);
  margin: 10px auto;
  font-size: 4em;
}

.container-bandeau {
    display: grid;
    grid-template-columns: 2fr 1fr; /* contenu 2/3, image 1/3 */
    gap: 40px;
    align-items: center;
    max-width: 1050px;
    width: 100%;

}

.bandeau-contenu {
    color: var(--txt);
     transform: rotate(-3deg) skew(-3deg);
}

.bandeau-fil {
    font-size: 0.9rem;
    margin-bottom: 10px;
}

.bandeau-titre {
    font-size: clamp(1.9rem, 5vw, 3rem);;
    font-weight: 700;
    margin: 10px 0;
}



/* Image à droite */
.bandeau-image img {
 max-height: 250px;
  border-radius: 20px;
  background-color: white;
  border: 1px solid black;
  transform: rotate(3deg);
   
}

/* Responsive : image en haut */
@media (max-width: 768px) {
    .container-bandeau {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .bandeau-image {
        order: -1; /* image au-dessus sur mobile */
    }
}



#main-content .container::before {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  width: 0;
  background-color: transparent;
}



/* ---------------------------
Vignettes Pages ACF
-----------------------------*/

.vignettes-pages li{
  display:inline-block;
  margin:1%;
 text-align:center;
  width: 30%;
  background: var(--fond) /*url("./img/bck-points.png") repeat*/;
}

.vignettes-pages li p {
padding:3px 10px;
color:var(--couleur-txt)!important;
}





.vignettes-pages .vignette-img {
display:block;
height:45vh;
overflow:hidden;
background-size: cover!important;
     background-position:bottom!important;  padding:0!important;
    margin: 0 auto!important;
}
.vignettes-pages li .cta-pages h5 {
margin: 20vh 2vw 5vh 0;
display:inline-block;
float:left;
color: var(--txt) !important;
padding: 0 1vw 1vh 1vw;
text-align: left;
font-size: 1em;
font-weight: 800;
background: var(--couleur1);
}

.vignettes-pages li .cta-pages h5:hover  {
background: var(--couleur3);
}

.vignettes-pages li .bouton-vignette:hover {
  background: var(--couleur2);
}





.search {
background:var(--fond);
margin:0;
width:100%;
}


.et_full_width_page #left-area article, .et_no_sidebar #left-area article{
  float: none;
  width: 100% !important;
  max-width: 800px;
  margin: 4px auto;
}
/* ---------------------------
Style formulaire 
-----------------------------*/

input[type="text"], select, input[type="email"], 
input[type="number"], input[type="date"], input[type="tel"], input[type="select"], textarea {
  width: 100%;
  padding: 10px 6px;
  margin:4px auto;
  background:#fff;
  border: 2px solid var(--txt);
font-size: 14px;
  border-radius:0!important;
  color:var(--couleur-txt);
  

}
.wpcf7 input[type="text"]:focus{
    border: 2px solid var(--txt);

}

.wpcf7 .wpcf7-number {
     padding: 6px;
  margin:4px auto;
  background:var(--fond);
}

.wpcf7-submit, .em.em-search .em-search-main.em-search-main-bar > .em-search-submit button{
  float: center;
  color: var(--txt); 
      font-size: 14px; 
      height: 50px; 
      font-weight: 800; 
      background-color: #ffffff; 
       text-transform: uppercase; 
       border: 2px solid var(--txt);  
       padding: 0.3em 1em !important;
}
.wpcf7-submit:hover{
  background: var(--couleur2);
      color: #ffffff;
      border: 2px solid var(--couleur2);  
  }
span.wpcf7-not-valid-tip{
  text-shadow: none;
  font-size: 12px;
  color: #fff;
  background: #ff0000;
  padding: 5px;
}
div.wpcf7-validation-errors { 
  text-shadow: none;
  border: transparent;
  background: #f9cd00;
  padding: 5px;
  color: #9C6533;
  text-align: center;
  margin: 0;
  font-size: 12px;
}
div.wpcf7-mail-sent-ok{
  text-align: center;
  text-shadow: none;
  padding: 5px;
  font-size: 12px;
  background: #749FE8;
  border-color: #749FE8;
  color: #fff;
  margin: 0;
}

#bloc-responsive {
  max-width:600px /*-- à modifier en fonction de la largeur désirée --*/;
  margin:0 auto;
        width:100%;
}
.rang-form {
  width: 100%;
}
.demi-colonne, .colonne {
  float: left;
  position: relative;
  padding: 0.65rem;
  width:100%;
  -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box
}
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/**---------------- Media query ----------------**/
@media only screen and (min-width: 48em) { 
  .demi-colonne {
    width: 50%;
  }
}


/* ---------------------------
Footer
-----------------------------*/

.fwidget .et_pb_widget .widget_nav_menu {
color:#fff;}

.fwidget .et_pb_widget .widget_custom_html p {
color:#fff;}

.footer-widget li, .footer-widget li a, #footer-info {
    font-size: 1.15em;
} 



#footer-widgets .footer-widget a, #footer-widgets .footer-widget li a, #footer-widgets .footer-widget li a:hover {
    color: #ffffff!important;
    background:none!important;
    margin-left:0!important;
    padding-left:0!important;
}

#footer-widgets .footer-widget li a {color:#fff!important;}


/**---------------------------

RESPONSIVE 

______________________________*/
.et_mobile_menu li a { border-bottom: 1px solid var(--txt);}
.et_mobile_menu li a:hover { background-color: #fff;
opacity: 1;
color: var(--couleur1);}
.et_mobile_menu { border-color: #fff;}
.mobile_menu_bar::before {
  color: var(--txt); font-size: 40px;
}

  @media (max-width: 980px){

      h2 { font-size:34px;}

      .vignette-resultats {
  margin: 1% 1% 0 0;
  width: 100%;
  display: block;
  height: auto;

  padding: 20px;
}
   
    .et_mobile_menu {background-color: #fff;}

    .et_pb_column .et_pb_row_inner, .et_pb_row {width: 92%; }

    .et_pb_text_0_tb_body h1 {font-size: 3em;}

    .couleur1, .couleur2, .couleur3 {
      line-height: 2em;
    }

    .header-page .bloc-titre {
      display:block;
      background-color:var(--couleur3);
        clip-path: polygon(0 10%, 100% 0, 95% 100%, 2% 100%);
      width: 96%;
      margin:5px auto;
      padding: 2vh 2vw;
    }
      
.aioseo-breadcrumbs {text-align:center;}
    .header-page h1/*, .bigtitre*/ { 
        color:#fff!important;
        letter-spacing: 3px;
    text-transform: uppercase;
    font-family:  var(--titre);
    text-shadow: 3px 3px 0 var(--txt);
    -webkit-text-stroke: 2px var(--txt);
    text-stroke:  2px var(--txt);
    margin:10px auto;
    font-size:3em;
    text-align:center;
    }

   .bigtitre, .not-found-title { 
        color:var(--titre);
        letter-spacing: 2px;
    text-transform: uppercase;
    font-family:  var(--titre);
    margin:10px auto;
    font-size:3em;
    }



  .vignettes-pages li {display: block; width:100%; margin: 15px auto;}
  .vignettes-pages .vignette-img {height: 15vh;}
  .vignettes-pages li .cta-pages h5 {margin: 5vh 2vw 5vh 0;}

   }