@font-face {
  font-family: "Roboto";
  src: url("../fonts/roboto/Roboto-VariableFont_wdth,wght.ttf") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Roboto";
  src: url("../fonts/roboto/Roboto-Italic-VariableFont_wdth,wght.ttf") format("truetype");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Paquito";
  src: url("../fonts/Paquito_Complete/Paquito-Variable.ttf") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {

  --blanc:#ffffff;
  --noir:#000000;
  --bleu:#0068ff;
  --jaune:#ffec00;
  --vert:#00ff79;
  --violet:#4a01c1;
  --orange:#FFA200;
  --rouge:#FC1010;

  --ff-1: "Roboto", sans-serif;
  --ff-2: "Paquito", sans-serif;
  --ff-2: "Roboto", sans-serif;

  --fs-body-big: 16px;
  --fs-body-small: 12px;
  --fs-body-verysmall: 10px;

  --wp--preset--font-size--x-large: var(--fs-body-big);
  --wp--preset--font-size--large: var(--fs-body-big);
  --wp--preset--font-size--medium: var(--fs-body-small);
  --wp--preset--font-size--small: var(--fs-body-verysmall);
  
  --fs-title: 16px;  

  --padding-body-inline: 15px;
  --padding-body-block: 10px;
}

@media only screen and (min-width: 1000px) {
  :root {
    --fs-body-big: 24px;
    --fs-body-small: 16px;
    --fs-body-verysmall: 14px;
    
    --fs-title: 24px; 

    --padding-body-inline: 20px;
    --padding-body-block: 10px;
  }
}

body{
  font-family: var(--ff-1);
  font-size: var(--fs-body-small);
}

@media only screen and (min-width: 1000px) {
  
}

/**********************
*** FONTS ********/
/**********************/

*:not(img, video, iframe, audio, svg, canvas, picture, code, div){
  line-height: 1.5 !important;
}

.has-x-large-font-size{
  font-size: var(--fs-body-big) !important;
}

.has-large-font-size{
  font-size: var(--fs-body-big) !important;
}

.has-medium-font-size{
  font-size: var(--fs-body-small) !important;
}

.has-small-font-size{
  font-size: var(--fs-body-verysmall) !important;
}


/**********************/
/****** HEADINGS ********/
/*********************/


h2, h3, h4, h5, h6 {
  font-family: var(--ff-2);
}

h2{
  font-size: var(--fs-title);
}

h3{
  font-size: calc(var(--fs-title) * 0.9);
}

h4{
  font-size: calc(var(--fs-title) * 0.8);
}

h5{
  font-size: calc(var(--fs-title) * 0.7);
}

h6{
  font-size: calc(var(--fs-title) * 0.6);
}

/**********************/
/****** EDITOR ********/
/*********************/

.editor-styles-wrapper{
  padding:0px;
}

/**********************/
/****** COLUMNS ********/
/*********************/

:where(.wp-block-columns.is-layout-flex){
  row-gap: calc(var(--padding-body-block) * 2);
}

.section-content > .wp-block-columns > .wp-block-column:first-child > .wp-block-image:first-child,
.section-content > .wp-block-columns > .wp-block-column:first-child  .gallery-swiper:first-child{
  margin-top: calc(var(--padding-body-block) * -2);
}

.section-content > .wp-block-columns > .wp-block-column:last-child > .wp-block-image:last-child{
  margin-bottom: calc(var(--padding-body-block) * -2);
}

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

  .single-content > figure:first-child{
    margin-bottom: calc(var(--padding-body-block) * -3) !important;
  }

  .section-content > .wp-block-columns > .wp-block-column > .wp-block-image:first-child{
    margin-top: calc(var(--padding-body-block) * -2);
  }

  .section-content > .wp-block-columns > .wp-block-column:last-child .gallery-swiper{
    margin-right:calc(var(--padding-body-inline) * -1);
  }

  .section-content > .wp-block-columns > .wp-block-column:first-child .gallery-swiper{
    margin-left:calc(var(--padding-body-inline) * -1);
  }

  .section-content > .wp-block-columns > .wp-block-column:last-child > .gallery-container{
    margin-bottom:calc(var(--padding-body-block) * -2);
    margin-top:calc(var(--padding-body-block) * -2);
  }

  .section-content > .gallery-container > .gallery-swiper{
    margin-right:calc(var(--padding-body-inline) * -1);
  }

  .section-content > .gallery-container > .gallery-swiper{
    margin-left:calc(var(--padding-body-inline) * -1);
  }

  .gallery-thumbs{
    margin-top: 0;
  }

  .gallery-thumbs .swiper-slide{
    margin-top: var(--padding-body-block) !important;
  }

  .swiper-gallery, .swiper-wrapper, .swiper-slide, .swiper-slide img{
    width: auto;
    min-height: 100% !important;
    margin-top: 0 !important;
    margin-bottom:  0 !important;
    line-height: 0 !important;
  }

  .swiper-caption{
    line-height: 1.2;
  }

}

/**********************
/****** SECTIONS ********/
/*********************/

.section-header{
  padding-left:var(--padding-body-inline);
  padding-right: var(--padding-body-inline);
  padding-top: var(--padding-body-block);
  padding-bottom: var(--padding-body-block);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  cursor: pointer;
}

.section-title{
  text-transform: uppercase;
}

.section-content {
  padding-left:var(--padding-body-inline);
  padding-right: var(--padding-body-inline);
  padding-top: calc(var(--padding-body-block) * 2);
  padding-bottom: calc(var(--padding-body-block) * 2);;
}

.section-content > .archive-grid{
  padding:0;
}

.archive-grid-excerpt{
  margin-top: var(--padding-body-block);
}

.wp-block-post-title{
  margin:0;
  padding-left: var(--padding-body-inline);
  padding-right: var(--padding-body-inline);
  padding-top: var(--padding-body-block);
  padding-bottom: var(--padding-body-block);
}

.block-editor-page.post-type-sections .editor-post-title{
  font-family: var(--ff-2);
  font-size: var(--fs-title);
}

.block-editor-page.post-type-sections .wp-block-post-content{
  padding-left: var(--padding-body-inline);
  padding-right: var(--padding-body-inline);
  padding-top: var(--padding-body-block);
  padding-bottom: var(--padding-body-block);
}

.wp-block{
  margin-left: 0px !important;
  margin-right: 0px !important;
  max-width: 100% !important;
}

.section-content > .gallery-container:first-child{
  margin-top: calc(var(--padding-body-block) * -2);
}

.section-content > .gallery-container:last-child{
  margin-bottom: calc(var(--padding-body-block) * -2);
}

/**********************/
/****** FORMS ********/
/*********************/

input::placeholder, textarea::placeholder {
  font-weight: bold;  /* rend le placeholder en gras */
}

input, textarea, select{
  font-size: inherit;
  background-color:transparent;
  box-shadow: none !important;
  border:none;
  padding:.7em;
  max-width: 100%;
}

input:focus-visible, textarea:focus-visible, select:focus-visible{
  outline: var(--vertfonce) solid 2px;
  border-color:transparent;
}

/**********************/
/****** BOUTONS ********/
/*********************/

.wp-block-buttons{
  gap: var(--padding-body-block);
}

.wp-block-buttons > .wp-block-button{
  width: 100%;
}

@media only screen and (min-width: 1000px) {
  .wp-block-buttons > .wp-block-button{
    width: auto;
  }
}

button,
input[type="submit"],
input.tnp-submit,
.wp-block-button__link,
button[type="submit"]
{
  background-color:transparent;
  border: none;
  cursor: pointer;
  box-shadow: none;
  color:inherit;
}

.search-submit,
.boutons-footer a,
input.tnp-submit,
.wp-block-button__link,
button.voir-plus,
.pagination button,
.pagination a,
.pagination span,
.article-de-presse__bouton,
button[type="submit"]
{
  font-family: var(--ff-2);
  text-transform: uppercase;
  border: solid 1px var(--noir);
  padding-left: var(--padding-body-inline);
  padding-right: var(--padding-body-inline);
  padding-top: var(--padding-body-block);
  padding-bottom: var(--padding-body-block);
  font-size: var(--fs-body-big);
  transition: ease-in-out 0.2s;
  border-radius: 3px;
}

button.voir-plus,
.pagination-mosaique button,
.article-de-presse__bouton,
.liste-evenements .wp-block-button__link,
.event-button.wp-block-button__link,
.pagination a,
.pagination span
{
  font-size: inherit;
  padding-block: calc(var(--padding-body-block) * 0.5);
}

@media only screen and (min-width: 1000px) {
  button.voir-plus,
.pagination-mosaique button,
.article-de-presse__bouton,
.liste-evenements .wp-block-button__link,
.event-button.wp-block-button__link,
.pagination a,
.pagination span{
    padding-block: calc(var(--padding-body-block) );
  }
}

.bouton-retour{
  padding-block: calc(var(--padding-body-block) * 0.5);
  font-family: var(--ff-1);
  margin-right: var(--padding-body-inline);
  border-color: var(--hover-text-color);
  font-weight: 200;
}


button.voir-plus{
  margin-top: calc(var(--padding-body-block) * 2); 
}

button.voir-plus:last-child{
  margin-bottom: calc(var(--padding-body-block));
}

.liste-evenements .wp-block-button__link:not(:first-child){
  margin-top: var(--padding-body-block);
}

.boutons-footer a,
.tnp-submit,
.liste-evenements .wp-block-button__link,
.event-button.wp-block-button__link{
  display: inline-block;
}

.boutons-footer li:not(:last-child){
  margin-bottom: calc(var(--padding-body-block));
}

.wp-block-button__link:hover,
button.voir-plus:hover,
.pagination-mosaique .show-all:hover, 
.article-de-presse__bouton:hover{
  background-color: var(--hover-color);
  color: var(--hover-text-color);
  text-decoration: none;
}

button.voir-plus:hover a{
  text-decoration: none;
}

.search-submit:hover,
.boutons-footer a:hover{
  background-color: var(--noir);
  color: var(--blanc);
  text-decoration: none;
}

/**********************/
/****** ARCHIVE ********/
/*********************/

.archive-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--padding-body-block);

  padding-left: var(--padding-body-inline);
  padding-right: var(--padding-body-inline);
  padding-top: calc(var(--padding-body-block) * 2);
  padding-bottom: calc(var(--padding-body-block) * 2);
}

.archive-grid > article:not(:last-child){
  margin-bottom: calc(var(--padding-body-block) * 2);
}

.archive-grid-thumb{
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 3px;
}

.archive-grid-thumb img{
  border-radius: 3px;
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform 0.3s linear;
}

.archive-grid-thumb img:hover{
  transform: scale(1.01);
}

.achive-grid-placeholder-text{
  display: block;
  padding-left: var(--padding-body-inline);
  padding-right: var(--padding-body-inline);
  padding-top: var(--padding-body-block);
  padding-bottom: var(--padding-body-block);
}

.achive-grid-placeholder-text + .archive-grid-title{
  display: none;
}

.achive-grid-placeholder-text h2{
  margin: 0;
}

.archive-grid-title{
  margin-top:var(--padding-body-block);
  margin-bottom:var(--padding-body-block);
}

.archive-grid-title a:hover{
  text-decoration: none;
}

@media only screen and (min-width: 1000px) {
  .archive-grid{
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: var(--padding-body-inline);
    row-gap: var(--padding-body-block);
  }
}

/**********************/
/****** BLOCKS MEMBRES TROUPE ********/
/*********************/


.bloc-membres-troupe__grid{
  display: grid;
  grid-template-columns: 1fr;
  row-gap: calc(var(--padding-body-block) * 2);
}

.bloc-membres-troupe__photo img{
  border-radius: 100%;
}

.bloc-membres-troupe__name{
  text-align: center;
}

.bloc-membres-troupe__bio{
  text-align: justify;
}

@media only screen and (min-width: 800px) {
  .bloc-membres-troupe__grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: calc(var(--padding-body-inline) * 2);
  }
}

@media only screen and (min-width: 1000px) {
  .bloc-membres-troupe__grid{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

/**********************/
/****** BLOCK PARTENAIRES ********/
/*********************/

.bloc-partenaires__list{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(99px, 1fr));
  gap: calc(var(--padding-body-inline));
  align-items: center;
}

.bloc-partenaire__logo img{
  max-width: 99px;
}