



html{
  font-size: 18px;
}
@media (min-width: 2000px){
  :root, html { font-size: 24px; }
}

/* Titles */
/* body{
  font-family: 'Minion Pro';
} */

img{
    max-width: 100%;
    height: auto;
}

.h1, h1 {
  font-size: calc(2rem + 1.5vw);
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  text-transform: uppercase;
  color:inherit;
  text-wrap: balance;
}

.barlow-condensed-light {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.barlow-condensed-regular {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.align-top { vertical-align: top!important }
.align-middle { vertical-align: middle!important }
.align-bottom { vertical-align: bottom!important }

.align-items-start { align-items: flex-start!important }
.align-items-end { align-items: flex-end!important }
.align-items-center { align-items: center!important }

.bigger { font-size:larger }

.border-primary{ border:2px solid var(--primary) }
.border-secondary{ border:2px solid var(--secondary) }
.border-radius { border-radius:var(--border-radius) }
.border-none { border:none !important }

.clamp{ overflow:hidden; display:-webkit-box; text-overflow:ellipsis; -webkit-box-orient:vertical }
.clamp p{ margin:0; }
.clamp.clamp-1{ max-height:calc(1 * var(--line-height)); -webkit-line-clamp:1 }
.clamp.clamp-2{ max-height:calc(2 * var(--line-height)); -webkit-line-clamp:2 }
.clamp.clamp-3{ max-height:calc(3 * var(--line-height)); -webkit-line-clamp:3 }
.clamp.clamp-4{ max-height:calc(4 * var(--line-height)); -webkit-line-clamp:4 }

.font-primary{ font-family:var(--font-primary) }
.font-secondary{ font-family:var(--font-secondary) }

.fw-lighter { font-weight: lighter!important }
.fw-light { font-weight: 300!important }
.fw-normal { font-weight: 400!important }
.fw-medium { font-weight: 500!important }
.fw-semibold { font-weight: 600!important }
.fw-bold { font-weight: 700!important }
.fw-bolder { font-weight: bolder!important }

.g-0{ gap:0 !important }
.g-1{ gap:1rem !important }
.g-2{ gap:2rem !important }
.g-3{ gap:3rem !important }

.m-0{ margin:0 !important }
.m-auto{ margin: auto!important }

.mb-0{ margin-bottom:0 !important }
.mb-1{ margin-bottom:1rem !important }
.mb-2{ margin-bottom:2rem !important }
.mb-3{ margin-bottom:3rem !important }
.mb-4{ margin-bottom:4rem !important }
.mb-5{ margin-bottom:5rem !important }

.mt-0{ margin-top:0 !important }
.mt-1{ margin-top:1rem !important }
.mt-2{ margin-top:2rem !important }
.mt-3{ margin-top:3rem !important }
.mt-4{ margin-top:4rem !important }
.mt-5{ margin-top:5rem !important }

.d-inline { display: inline!important }
.d-inline-block { display: inline-block!important }
.d-inline-flex { display: inline-flex!important }
.d-block { display: block!important }
.d-flex { display: flex!important }
.d-none { display: none!important }

.h-100{ height:100% !important }
.h-auto{ height:auto !important }

.img-circle { border-radius:50% }

.overflow-visible{ overflow:visible !important }
.overflow-hidden { overflow:visible !important }
.overflow-scroll { overflow:scroll  !important }

.lead { font-size:1.25rem; font-weight:300 }

.lh-1 { line-height: 1!important }
.lh-sm { line-height: 1.25!important }
.lh-base { line-height: 1.5!important }
.lh-lg { line-height: 2!important }

.p-0{ padding:0 !important }
.p-1{ padding:1rem !important }
.p-2{ padding:2rem !important }

.pt-0{ padding-top:0 !important }
.pt-1{ padding-top:1rem !important }
.pt-2{ padding-top:2rem !important }
.pt-3{ padding-top:3rem !important }
.pt-4{ padding-top:4rem !important }
.pt-5{ padding-top:5rem !important }

.pb-0{ padding-bottom:0 !important }
.pb-1{ padding-bottom:1rem !important }
.pb-2{ padding-bottom:2rem !important }
.pb-3{ padding-bottom:3rem !important }
.pb-4{ padding-bottom:4rem !important }
.pb-5{ padding-bottom:5rem !important }

.smaller { font-size:smaller }

.sr-only { border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.sr-only-focusable:active,
.sr-only-focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

.td-none { text-decoration: none!important }
.td-underline { text-decoration: underline!important }
.td-line-through { text-decoration: line-through!important }

.text-lowercase { text-transform: lowercase!important }
.text-uppercase { text-transform: uppercase!important }
.text-capitalize { text-transform: capitalize!important }

.text-left{ text-align:left }
.text-center{ text-align:center }
.text-right{ text-align:right }

.text-wrap { white-space: normal!important }
.text-nowrap { white-space: nowrap!important }
.text-break { word-wrap: break-word!important; word-break: break-word!important }

.z-n1 { z-index:-1!important }
.z-0 { z-index: 0!important }
.z-1 { z-index: 1!important }
.z-2 { z-index: 2!important }
.z-3 { z-index: 3!important }

.zoom-img:hover img,
.zoom-img:focus img{ transform:scale(1.05) }


.format-video:before{ content:""; pointer-events: none; z-index: 3; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.4) }
.format-video:after{ content:""; pointer-events: none; z-index:4; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background:url(../images/play.svg) no-repeat center center }



/* Colors text ---------------------------------------------------------------*/
.color-primary{ color:var(--primary) }
.color-secondary{ color:var(--secondary) }
.color-tertiary{ color:var(--tertiary) }


/* Icons ---------------------------------------------------------------------*/

i.icon { width:2em; height:2em; font-size:1rem; background:var(--bg-darker); display:inline-flex; align-items:center; justify-content:center; max-width:initial; vertical-align:middle }

/* Icons Sizes */
i.medium { font-size:2rem }
i.large { font-size:2.8rem }

/* Icons shapes */
i.square  { border-radius:0px }
i.rounded { border-radius:4px }
i.circle  { border-radius:50% }

/* Colors */
i.primary { color:var(--primary) }

i.reverse,
i.primary.reverse { background:var(--primary); color:#fff }

i.border { background:transparent; border:var(--border) }
i.border-primary { background:transparent; border:1px solid var(--primary) }

.bg-primary i:not([class*="color-"]).primary{ color:var(--body-color) }
.bg-primary i:not([class*="color-"]).border-primary { border-color:var(--body-color) }
.bg-primary i:not([class*="color-"]).reverse { background:var(--black); color:#fff }
.bg-primary i:not([class*="color-"]).primary.reverse { background:#fff; color:var(--primary) }

.bg-primary i[class*="color-"].reverse:not(.primary) { color:var(--primary) }

.bg-dark i.reverse { color:var(--black) }
.bg-dark i.reverse[class*="color-"]:not(.primary) { color:var(--primary) }

/* Backgrounds  ------------------------------------------------------------- */

.bg-grey{ background:var(--grey) }

.bg-white{ background:var(--white) }

.bg-light{ background:var(--light) }


.bg-black{ background:var(--black) }
.bg-dark{ background:var(--dark) }
.bg-primary{ background:var(--primary) }
.bg-secondary{ background:var(--secondary) }

.bg-tertiary{ background:var(--tertiary) }
.bg-body { background-color:var(--body-bg) }

.bg-lighter{ background:var(--bg-lighter) }
.bg-darker{ background:var(--bg-darker) }

.bg-none{ background:none }
.bg-transparent{ background:transparent }

.has-primary-background-color{ background-color:var(--primary) !important }
.has-secondary-background-color{ background-color:var(--secondary) !important }
.has-tertiary-background-color{ background-color:var(--tertiary) !important }
.has-light-background-color{ background-color:var(--light) !important }
.has-dark-background-color{ background-color:var(--dark) !important }

.has-primary-to-secondary-gradient-background { background:linear-gradient(115deg, var(--primary) 0%, var(--secondary) 100%) }
.has-primary-to-tertiary-gradient-background { background:linear-gradient(115deg, var(--primary) 0%, var(--tertiary) 100%) }


/* Texts color */
.has-primary-color{ color:var(--primary) !important }
.has-secondary-color{ color:var(--secondary) !important }
.has-tertiary-color{ color:var(--tertiary) !important }
.has-light-color{ color:var(--light) !important }
.has-dark-color{ color:var(--dark) !important }

/* Grid custom -------------------------------------------------------------- */
.grid{ --columns:3; display: grid; grid-template-columns:repeat(var(--columns), minmax(100px, 1fr)); grid-gap:2rem }
.grid > div:empty{ display:none }
.grid--align-center{ align-items:center }
.grid.grid-1{ --columns:1 }
.grid.grid-2{ --columns:2 }
.grid.grid-3{ --columns:3 }
.grid.grid-4{ --columns:4 }
.grid.grid-5{ --columns:5 }
.grid.grid-6{ --columns:6 }
@media (max-width:1199px){
  .grid.grid-6{ --columns:3 }
}
@media (max-width:991px){
  .grid.grid-5,
  .grid.grid-3,
  .grid.grid-4{ --columns:3 }
}
@media (max-width:781px){
  .grid.grid-2,
  .grid.grid-3,
  .grid.grid-4,
  .grid.grid-5,
  .grid.grid-6{ --columns:1 }
}
@media (max-width:781px){
  .grid.grid-sm-2{ --columns:2 }
  .grid.grid-sm-3{ --columns:3 }
  .grid.grid-sm-4{ --columns:4 }
  .grid.grid-sm-5{ --columns:5 }
}
@media (max-width:550px){
  .grid.grid-xs-2{ --columns:2 }
  .grid.grid-xs-3{ --columns:3 }
  .grid.grid-xs-4{ --columns:4 }
  .grid.grid-xs-5{ --columns:5 }
}

/* Grid flex ---------------------------------------------------------------- */
.grid-flex > div{ margin-bottom:3rem }
.grid-flex > div:last-of-type{ margin-bottom:0 }
@media (min-width:782px) {
  .grid-flex{ display:flex }
  .grid-flex > div{ flex:1; margin:0 1rem }
  .grid-flex > div:first-of-type{ margin-left:0 }
  .grid-flex > div:last-of-type{ margin-right:0 }
}



/* Layout ------------------------------------------------------------------- */
@media (max-width:589px){
  .hide-xs{ display:none }
  /* xs reverse */
  .is-style-columns-xs-reverse,
  .xs-reverse{ flex-direction:column-reverse; flex-wrap:initial !important }

  .text-xs-left{ text-align:left }
  .text-xs-center{ text-align:center }
  .text-xs-right{ text-align:right }
}
@media (min-width:590px) and (max-width:781px){
  .hide-sm{ display:none }
  /* sm row */
  .sm-row{ flex-direction: row; flex-wrap: nowrap !important; }
  .sm-row.is-style-columns-sm-reverse{ flex-direction: row-reverse; }
  /* sm reverse */
  .sm-reverse{ flex-direction: column-reverse; flex-wrap: initial !important; gap:30px }
  .sm-reverse.sm-row{ flex-direction:row-reverse }
  .is-style-columns-sm-reverse{ flex-direction:column-reverse; flex-wrap: initial !important; gap: 30px; }
  .is-style-columns-sm-reverse.sm-row{ flex-direction:row-reverse; }
  .is-style-columns-sm-reverse.sm-row > .wp-block-column{ margin-left:0; margin-right:0 }
}
@media (min-width:782px) and (max-width:991px){
  /* md column */
  .md-column{ flex-direction:column; flex-wrap:nowrap }
  .md-column .wp-block-column{ margin-left:0; margin-right:0 }
  .is-style-columns-md-column{ flex-direction:column; flex-wrap:nowrap }
  .is-style-columns-md-column .wp-block-column{ margin-left:0 !important; margin-right:0 !important }
}


/* Form 7 ------------------------------------------------------------------- */
.wpcf7 label{ display:block; font-weight:600 }
.wpcf7 p:last-of-type{ margin-bottom:0 }
.wpcf7 .wpcf7-acceptance input { margin-right:10px }
.wpcf7 .wpcf7-acceptance label { font-weight:normal; font-size:.95rem }
.wpcf7 .wpcf7-not-valid-tip { font-size:.9rem }
.wpcf7 .wpcf7-spinner { display: block; text-align: center; margin: 1rem auto 0 auto; }

/* Form Contact simple */
.contact-form-simple{ display: grid; grid-template-columns: 1fr 1fr; grid-gap:0 30px }
.contact-form-simple p:nth-of-type(n+3){ grid-column: 1 / span 2 }
@media (max-width:781px){
  .contact-form-simple{ display:block }
}

/* Image formats ------------------------------------------------------------ */
.format{ display:block; position:relative; overflow:hidden }

.format iframe,
.format object,
.format embed,
.format img{ position:absolute; top:0; left:0; width:100%; height:100%; }
.format img{ object-fit:cover; transition:all 200ms ease }

.format-3-1{ padding-bottom:33.33% }
.format-16-9{padding-bottom:56.25% }
.format-4-3{ padding-bottom:75% }
.format-1-1{ padding-bottom:100% }
.format-6-7{ padding-bottom:116.66% }
.format-3-4{ padding-bottom:133.33% }

.format .components-resizable-box__container {
  position: static !important;
}


/* Social networks ---------------------------------------------------------- */
.social-networks{ margin:0; padding:0; list-style:none; font-size:1rem; display:block }
.social-networks li{ display:inline-block; margin:2px; transition:all 200ms ease }
.social-networks li:hover{ transform:rotate(360deg) }
.social-networks li a{ display: inline-flex; width: 30px; height: 30px; background: var(--primary); padding: 7px; border-radius: var(--border-radius); text-decoration:none; justify-content: center; }
.social-networks li a svg{ fill:white }
.social-networks li.network-facebook { --primary:#4c66a4 }
.social-networks li.network-twitter{ --primary:#15b4c9 }
.social-networks li.network-linkedin{ --primary:#006599 }
.social-networks li.network-instagram{ --primary:#bc2a8d }
.social-networks li.network-skype{ --primary:#40beee }
.social-networks li.network-youtube{ --primary:#cc2423 }
.social-networks li.network-twitch { --primary:#9147ff }
.social-networks li.network-steam { --primary:#171a21 }
.social-networks li.network-pinterest { --primary:#bd081c }
.social-networks li.network-whatsapp { --primary:#4CAF50 }
.social-networks li.network-email { --primary:#171a21 }
.social-networks li.network-url { --primary:#171a21 }
.social-networks li.network-myspace { --primary:#003398 }
.social-networks li.network-soundcloud { --primary:#F75219 }
.social-networks li.network-wikipedia { --primary:#000000 }
.social-networks li.network-tumblr { --primary:#34526F }
.header-top .social-networks li{ padding:0; border-top:none }


.is-style-chapeau{ font-size:1.25rem; line-height: 2.25rem; font-weight:600 }

.pt-blog { margin:0 0 1rem 0; position: relative }
.pt-blog .pt-blog-image{ margin:0 0 1.7rem 0 }
.pt-blog .pt-blog-description{ margin:0 0 1.5rem 0 }

/* FAQ */
.pt-faq-toggle { position:relative; display:block; border-bottom:var(--border) }
.pt-faq-toggle .pt-faq-title{ position: relative; display:block; padding:22px 50px 22px 0; text-decoration:none }
.pt-faq-toggle .pt-faq-title h3{ margin:0; font-size:1.2rem; font-weight:600; }
.pt-faq-toggle .pt-faq-title svg { width:16px; fill:currentColor; font-size: 1.5rem; position: absolute; top: 0; right:20px; height: 100%; display: flex; align-items: center; justify-content: center; transition:all 200ms ease }
.pt-faq-toggle .pt-faq-title.opened svg { transform:rotate(180deg) }
.pt-faq-toggle .pt-faq-description{ display:none; margin-top:-10px }

/* Button */
.wp-block-button__link { 
  background:var(--primary); 
  border:2px solid var(--primary);
  color:#fff; 
  padding:var(--button-padding); 
  text-decoration:none; 
  font-size:1rem; 
  font-weight:500; 
  border-radius:var(--border-radius); 
  position: relative; 
  overflow: hidden!important; 
  transition: all 200ms ease-in-out;   
  z-index:1; 
  display: inline-block;
  font-family: var(--font-primary);
  text-transform: none;
}
.wp-block-button__link:hover,
.wp-block-button__link:focus{ color: var(--primary); text-decoration: none;  }
.wp-block-button__link::before { content: ''; height:100%;; width: 100%; display: block;  position: absolute; left: 0; opacity: 0; bottom: 0; background: #fff; z-index: -1; transform: scale(0);  transition: all 200ms cubic-bezier(0.77, 0, 0.175, 1);  } 
.wp-block-button__link:hover::before,
.wp-block-button__link:focus::before{ opacity:1; transform: scale(1);  }
.wp-block-button__link.has-secondary-background-color{  border-color:var(--secondary) }
.wp-block-button__link.has-tertiary-background-color{ border-color:var(--tertiary) }
.wp-block-button__link.has-light-background-color{ border-color:var(--light); color: var(--gray-500) !important; }
.wp-block-button__link.has-dark-background-color{ border-color:var(--dark) }
.wp-block-button__link.has-secondary-background-color:hover,
.wp-block-button__link.has-secondary-background-color:focus{ color:var(--secondary) }
.wp-block-button__link.has-tertiary-background-color:hover,
.wp-block-button__link.has-tertiary-background-color:focus{ color:var(--tertiary) }
.wp-block-button__link.has-light-background-color:hover,
.wp-block-button__link.has-light-background-color:focus{ color:var(--light) }
.wp-block-button__link.has-dark-background-color:hover,
.wp-block-button__link.has-dark-background-color:focus{ color:var(--dark) }
.wp-block-button__link[style*="background-color"]{ border-color:transparent }  /* Custom color */

.is-style-outline { color:var(--primary) }
.is-style-outline .wp-block-button__link{ background:transparent }
.is-style-outline .wp-block-button__link::before { background:var(--primary)  } 
.is-style-outline .wp-block-button__link:hover,
.is-style-outline .wp-block-button__link:focus { color: #fff !important; border-color:var(--primary) } 
.is-style-outline .wp-block-button__link.has-secondary-color{ border-color:var(--secondary) }
.is-style-outline .wp-block-button__link.has-tertiary-color{ border-color:var(--tertiary) }
.is-style-outline .wp-block-button__link.has-light-color{  border-color:var(--light) }
.is-style-outline .wp-block-button__link.has-dark-color{ border-color:var(--dark) }
.is-style-outline .wp-block-button__link.has-secondary-color::before{ background:var(--secondary);  }
.is-style-outline .wp-block-button__link.has-tertiary-color::before{ background:var(--tertiary); }
.is-style-outline .wp-block-button__link.has-light-color::before{ background:var(--light);  }
.is-style-outline .wp-block-button__link.has-dark-color::before{ background:var(--dark); }
.is-style-outline .wp-block-button__link[style*="color"]:hover, /* Custom color */
.is-style-outline .wp-block-button__link[style*="color"]:focus{ color:var(--dark) !important; }
.is-style-outline .wp-block-button__link[style*="color"]::before{ background:transparent }

.wpcf7 input[type="submit"]{
    background: var(--primary);
    border: 2px solid #fff;
    color: #fff;
    padding: var(--button-padding);
    text-decoration: none;
    font-family: var(--font-primary);
    font-size: 1rem;
    text-transform: none;
    font-weight: 500;
    border-radius: var(--border-radius);
    position: relative;
    overflow: hidden !important;
    transition: all 200ms ease-in-out;
    z-index: 1;
    min-width: 200px;
}
.wpcf7 input[type="submit"]:hover,
.wpcf7 input[type="submit"]:focus{
    background: #fff;
    color: var(--primary);
}


.chapeau{ font-size:1.25rem; line-height: 2.25rem; }

.container-medium { margin: auto; max-width: 750px; }

.wp-block-group.bg-primary + .wp-block-group.bg-primary{ margin-top:1px; }


.layout-content input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), 
.layout-content select, 
.layout-content textarea { background-color: transparent; border: none; border-bottom: 1px solid #000; border-radius: 0; padding: 12px 0px; }

.layout-content :is(.texte-claire) :is(input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), select, textarea) { color: #fff; border-bottom: 1px solid #fff; }

:is(.texte-sombre) ::-webkit-input-placeholder { color:var(--body-color) !important; }
:is(.texte-sombre) :-moz-placeholder { color:var(--body-color) !important; opacity:  1; }
:is(.texte-sombre) ::-moz-placeholder { color:var(--body-color) !important; opacity:  1; }
:is(.texte-sombre) :-ms-input-placeholder { color:var(--body-color) !important; }
:is(.texte-sombre) ::-ms-input-placeholder { color:var(--body-color) !important; }
:is(.texte-sombre) ::placeholder { color:var(--body-color) !important; }

:is(.texte-claire) ::-webkit-input-placeholder { color: var(--bleu) !important; }
:is(.texte-claire) :-moz-placeholder { color: var(--bleu) !important; opacity:  1; }
:is(.texte-claire) ::-moz-placeholder { color: var(--bleu) !important; opacity:  1; }
:is(.texte-claire) :-ms-input-placeholder { color: var(--bleu) !important; }
:is(.texte-claire) ::-ms-input-placeholder { color: var(--bleu) !important; }
:is(.texte-claire) ::placeholder { color: var(--bleu) !important; }


.overlay-sombre,
.overlay-clair{ position: relative; }
.overlay-sombre:before,
.overlay-clair:before{ background:rgba(0, 0, 0, .7); content:''; display:block; position:absolute; top:0; left:0; width:100%; height:100%; z-index:1 }
.overlay-sombre > *:not(img){ position:relative; z-index:2 }
.overlay-clair:before{ background:rgba(255, 255, 255, .7) }


@media (max-width: 781px) {
  .grid.grid-2-sm {
      --columns: 2 !important;
  }
}


ul ::marker, ol ::marker {
  color: #000;
}
b, strong{ font-weight:700  }

span.ico{ color: transparent; width: 50px; height: 50px; border-radius: 50%; background: var(--primary) no-repeat center center; background-size: 30px; display: inline-block; vertical-align: middle; margin: 0 10px 0 0; }
span.ico.ico-calendar{ background-image: url(../images/calendar.svg);}
span.ico.ico-pin{ background-image: url(../images/pin.svg); } 
@media (max-width:767px) {
  .blibli{ padding: 0 }
}