/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Author: Totem Web
Author URI: https://totemweb.design
Version: 1.0.0
Template: generatepress
Text Domain: generatepress-child
*/

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap');

/* VARIABLES 
	--blanc: #fff;
	--gris: #F8F8F8;
	--noir: #1F1F1F;
	--principale: #D92031;
	--accent: #00B7B0;
	--gris-fonce: #453D38;
*/

html, body {
	overflow-x:hidden;
}

body {
	background-color: var(--blanc);
}

body * {
	transition: 0.5s;
}

/*.inside-header.grid-container,
.footer-widgets-container.grid-container {
	max-width:1280px;
}*/

.separate-containers .site-main {
	margin:0px!important;
}

.site {
	padding:0px!important;
	min-width:100%!important;
}
.site-content #primary.content-area-full {
	min-width:100%;
}

.section-padding {
	margin-bottom: 0px;
	padding: 100px 0px!important;
}


/* TYPOGRAPHIES */
h1 {
	font-style: italic;
	letter-spacing: 2px;
}
h2 {
	font-style: italic;
	letter-spacing: 1.5px;
}

h4 {
	font-size: 18px;
	font-weight: 600;
	font-style: italic;
}

a i {
	transition:0s;
}


p.small {
	font-size: 14px;
}

p b, p span {
	display: inline-block;
}

a { 
	text-decoration: none;
	display: inline-block;
	color: #222;
}

a:hover { 
	color: var(--accent);
	cursor:pointer;
}

section p a {
	color: var(--principale);
	font-weight: 600;
	line-height: 1em;
	font-style: italic;
	border-bottom: 2px solid var(--principale);
}

section p a:hover {
	color: var(--accent);
	border-bottom: 2px solid var(--accent);
}

ul, ol {
	margin-left: 25px;
}

ul li , ol li {
	line-height: 25px;
	margin-bottom: 10px;
}

hr {
	display: inline-block;
	width: 100%;
	color: #B9B9B9;
	margin: 0;
	margin-top: 10px;
	margin-bottom: 20px;
	border: 1px solid #B9B9B9;
}

sub, sup {
	font-size: 60%;
}

b, .bold { font-weight: 800; }
.italic { font-style: italic; }
.uppercase { text-transform: uppercase; }
.text-center { text-align: center; }
.text-right { text-align: right; }

/* IMAGES */
img {
	max-width: 100%;
}

/* PADDING */
.pad10 { padding: 10px; }
.pad20 { padding: 20px; }
.pad30 { padding: 30px; }
.pad40 { padding: 40px; }
.pad50 { padding: 50px; }
.pad60 { padding: 60px; }
.pad80 { padding: 80px; }

.padT10 { padding-top: 10px; }
.padT20 { padding-top: 20px; }
.padT30 { padding-top: 30px; }
.padT40 { padding-top: 40px; }
.padT50 { padding-top: 50px; }
.padT60 { padding-top: 60px; }
.padT80 { padding-top: 80px; }

.padB10 { padding-bottom: 10px; }
.padB20 { padding-bottom: 20px; }
.padB30 { padding-bottom: 30px; }
.padB40 { padding-bottom: 40px; }
.padB50 { padding-bottom: 50px; }
.padB60 { padding-bottom: 60px; }
.padB80 { padding-bottom: 80px; }

.padL10 { padding-left: 10px; }
.padL20 { padding-left: 20px; }
.padL30 { padding-left: 30px; }
.padL40 { padding-left: 40px; }
.padL50 { padding-left: 50px; }
.padL60 { padding-left: 60px; }
.padL80 { padding-left: 80px; }

.padR10 { padding-right: 10px; }
.padR20 { padding-right: 20px; }
.padR30 { padding-right: 30px; }
.padR40 { padding-right: 40px; }
.padR50 { padding-right: 50px; }
.padR60 { padding-right: 60px; }
.padR80 { padding-right: 80px; }

.noPad { padding: 0px; }
.noPadT { padding-top: 0px; }
.noMPadB { padding-bottom: 0px; }
.noPadR { padding-right: 0px; }
.noPadL { padding-left: 0px; }

/* MARGIN */
.marg10 { margin: 10px; }
.marg20 { margin: 20px; }
.marg30 { margin: 30px; }
.marg40 { margin: 40px; }
.marg50 { margin: 50px; }
.marg60 { margin: 60px; }
.marg80 { margin: 80px; }

.margT10 { margin-top: 10px; }
.margT20 { margin-top: 20px; }
.margT30 { margin-top: 30px; }
.margT40 { margin-top: 40px; }
.margT50 { margin-top: 50px; }
.margT60 { margin-top: 60px; }
.margT80 { margin-top: 80px; }

.margB4 { margin-bottom: 4px; }
.margB10 { margin-bottom: 10px; }
.margB20 { margin-bottom: 20px; }
.margB30 { margin-bottom: 30px; }
.margB40 { margin-bottom: 40px; }
.margB50 { margin-bottom: 50px; }
.margB60 { margin-bottom: 60px; }
.margB80 { margin-bottom: 80px; }

.margL10 { margin-left: 10px; }
.margL20 { margin-left: 20px; }
.margL30 { margin-left: 30px; }
.margL40 { margin-left: 40px; }
.margL50 { margin-left: 50px; }
.margL60 { margin-left: 60px; }
.margL80 { margin-left: 80px; }

.margR10 { margin-right: 10px; }
.margR20 { margin-right: 20px; }
.margR30 { margin-right: 30px; }
.margR40 { margin-right: 40px; }
.margR50 { margin-right: 50px; }
.margR60 { margin-right: 60px; }
.margR80 { margin-right: 80px; }

.noMarg { margin: 0px!important; }
.noMargT { margin-top: 0px!important; }
.noMargB { margin-bottom: 0px!important; }
.noMargR { margin-right: 0px!important; }
.noMargL { margin-left: 0px!important; }

/* DISPLAY */
.block { display: block; }
.inline-block { display: inline-block; }
.flex { display: flex; }
.hidden { display: none!important; }
.visibility-hidden { visibility: hidden; }
.fullwidth { width: 100%;}

/* FLEX */
.row-reverse { flex-direction:row-reverse; }
.justify-start { justify-content: flex-start; }
.justify-end { justify-content: flex-end; }
.justify-center { justify-content: flex-end; }
.justify-space-between { justify-content: space-between; }
.wrap { flex-wrap: wrap; }
.align-items-center { align-items: center; }
.align-items-end { align-items: flex-end; }
.align-content-center { align-content: center; }
.align-self-center { align-self: center; }
.col-gap-20 { column-gap:20px; }
.col-gap-40 { column-gap:40px; }
.col-gap-60 { column-gap:60px; }

/* BORDER RADIUS */
.radius10 { border-radius: 10px; }
.radius20 { border-radius: 20px; }
.radius30 { border-radius: 30px; }

/* OPACITY */
.opacity-10 { opacity: 0.1;}
.opacity-20 { opacity: 0.2;}
.opacity-30 { opacity: 0.3;}
.opacity-40 { opacity: 0.4;}
.opacity-50 { opacity: 0.5;}
.opacity-60 { opacity: 0.6;}
.opacity-70 { opacity: 0.7;}
.opacity-80 { opacity: 0.8;}
.opacity-90 { opacity: 0.9;}

/* SHADOW */
.box-shadow { box-shadow: 0px 3px 6px rgba(0,0,0,0.2) }

/* FLOATS & CLEAR */
.float-right { float: right;}
.float-left { float: left;}
.clear { clear: both; }

/* BOUTON */
.boutons {
	margin-bottom:30px;
}
button, .button, 
.btn, 
input[type="submit"], 
button[type="submit"], 
.btn-header a, 
.wp-block-button__link {
	padding: 15px 30px!important;
	background-color: var(--principale);
	border: none;
	color: white;
	font-weight: 600;
	text-decoration: none;
	font-style:italic;
	letter-spacing: 0.5px;
	font-size: 18px!important;
	text-transform: uppercase;
	border-radius:0px;
}

.btn-inscription,
.wp-block-button__link {
	padding: 15px 20px 15px 30px!important;
}

.btn-inscription::after,
.wp-block-button__link::after {
	content: '';
    position: absolute;
    display: inline-block;
    margin-left: 20px;
    margin-top: -15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 57px 15px 0 0;
    transition: 0s;
    border-color: var(--principale) transparent transparent transparent;
}

.bg-principale .btn-inscription {
	background-color: white;
	color: var(--principale);
}

.bg-principale  .btn-inscription::after {
    border-color: white transparent transparent transparent;
}

.btn.bg-blanc {
	color:var(--noir);
}


.btn i, button i, .button i {
	color: white;
}

.btn:hover, button:hover, .button:hover, input[type="submit"]:hover {
	background-color: var(--accent);
	color: white;
}


.btn-inscription:hover::after,
.wp-block-button__link:hover::after {
	transition: 0s;
	border-color: var(--accent) transparent transparent transparent;
}

.btn-icon-right { padding: 10px 20px 10px 24px; }
.btn-icon-right i { margin-left: 6px; }

.btn-icon-left{ padding: 10px 24px 10px 20px; }
.btn-icon-left i { margin-right: 6px; }


.btn-lien {
	width:100%;
	background-color: transparent;
	border: none;
	color: white;
	font-weight: 600;
	text-decoration: none;
	font-style:italic;
	letter-spacing: 0.5px;
	font-size: 18px!important;
	line-height: 22px;
	text-transform: uppercase;
	border-radius:0px;
	margin-bottom: 8px;
}

.btn-lien:hover {
	color: var(--accent)!important;
}

.bloc-liens:last-child {
	margin-bottom: 0px;
}






/* COULEURS */
.coul-blanc, .coul-blanc, .coul-hover-blanc:hover { color:var(--blanc); }
.bg-blanc, .bg-blanc, .bg-hover-blanc:hover { background-color:var(--blanc); }
.border-blanc, .border-hover-blanc:hover { border: 2px solid var(--blanc); }

.coul-gris, .coul-hover-gris:hover { color:var(--gris); }
.bg-gris, .bg-hover-gris:hover { background-color:var(--gris); }
.border-gris, .border-hover-gris:hover { border: 2px solid var(--gris); }

.coul-noir, .coul-hover-noir:hover { color:var(--noir); }
.bg-noir, .bg-hover-noir:hover { background-color:var(--noir); }
.border-noir, .border-hover-noir:hover { border: 2px solid var(--noir); }

.coul-principale, .coul-hover-principale:hover { color:var(--principale); }
.bg-principale, .bg-hover-principale:hover { background-color:var(--principale); }
.border-principale, .border-hover-principale:hover { border: 2px solid var(--principale); }

.coul-accent, .coul-hover-accent:hover { color:var(--accent); }
.bg-accent, .bg-hover-accent:hover { background-color:var(--accent); }
.border-accent, .border-hover-accent:hover { border: 2px solid var(--accent); }

.coul-vert, .coul-hover-vert:hover { color:var(--vert); }
.bg-vert, .bg-hover-vert:hover { background-color:var(--vert); }
.border-vert, .border-hover-vert:hover { border: 2px solid var(--vert); }

.coul-gris-fonce, .coul-hover-gris-fonce:hover { color:var(--gris-fonce); }
.bg-gris-fonce, .bg-hover-gris-fonce:hover { background-color:var(--gris-fonce); }
.border-gris-fonce, .border-hover-gris-fonce:hover { border: 2px solid var(--gris-fonce); }


/* HEADER */
header.site-header {
	position: fixed;
    width: 100%;
    z-index: 10000;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.3);
}
header .inside-header {
	    padding: 40px 0px 0px 0px;
}
header .site-logo img.header-image {
	margin-bottom: -18px;
}
.main-navigation .main-nav {
	margin-bottom: -2px;
}
.main-navigation .main-nav > ul.menu {
	height: 52px;
    align-items: center;
}

.main-navigation .main-nav ul > li {
	margin-bottom:0px;
}

.main-navigation .main-nav ul li a {
    line-height: 22px;
    font-style:italic;
    font-size: 16px;
	font-weight:600;
	letter-spacing: 0.5px;
    text-transform: uppercase;
	padding: 15px 15px;
}

.main-navigation .main-nav ul li ul.sub-menu {
	min-width: 275px;
}

.main-navigation .main-nav ul li:first-of-type ul.sub-menu {
	min-width: 350px;
}

.main-navigation .main-nav ul li ul.sub-menu li {
	border-bottom: 2px solid rgba(0,0,0,0.05);
}

.main-navigation .main-nav ul li ul.sub-menu li:last-of-type {
	border-bottom: none;
}

.main-navigation .main-nav ul li ul.sub-menu li a {
    font-style:initial;
	text-transform: initial;
    font-size: 18px;
	font-weight:500;
	padding: 15px 15px;
}

.menu-item-has-children .dropdown-menu-toggle {
	padding: 0px 15px 0px 6px;
}

li.btn-header {	
	margin-left: 20px;
}

.btn-header a {	
	font-size: 18px!important;
	padding: 15px 30px 15px 20px!important;
}

.btn-header a::before {
    content: '';
    position: absolute;
    display: inline-block;
    margin-left: -35px;
    margin-top: -15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 52px 15px;
    border-color: transparent transparent var(--principale) transparent;
}

.menu-bar-items {
	background-color: var(--gris);
    height: 52px;
    margin-top: 2px;
}

.menu-bar-items > span {
    height: 52px;
}

.main-navigation .menu-bar-item>a {
	padding-top: 0px;
	padding-bottom: 10px;
	padding-left: 15px;
    padding-right: 15px;
    display: flex;
    align-items: center;
    height: 52px;
}
.main-navigation .menu-bar-items:hover {
	background-color: var(--accent);
}

.main-navigation .menu-bar-items:hover a svg path{
	fill: var(--blanc);
}

.gp-icon {
	width: 22px;
    height: 22px;
}

.menu-bar-items .pro-menu-bars svg {
	zoom: 2;
}

#generate-slideout-menu {
    z-index: 1000!important;
}

.menu-bar-items .pro-menu-bars svg path,
.slideout-navigation .pro-close svg path {
	fill: var(--noir);
}

.slideout-navigation {
	margin: 0 auto;
    max-width: 1260px;
    top: 95px!important;
}

.slideout-navigation .inside-navigation {
	background-color: var(--gris);
	box-shadow: 0px 0px 20px rgba(0,0,0,0.3);
	max-width: 231px!important;
	float: right;
	padding: 0px!important;
}

.slideout-navigation.do-overlay .inside-navigation .main-nav, .slideout-navigation.do-overlay .inside-navigation .slideout-widget {
	min-width: 200px!important;
}


.slideout-navigation .inside-navigation ul li a {
	color: var(--noir);
	width: 100%;
    text-align: left;
    text-align: left;
    padding: 8px 10px 8px 30px;
    line-height: 20px;
    font-style: initial;
}

.slideout-navigation .inside-navigation .main-nav {
	margin-bottom: 0px;
	min-width: auto;
	padding: 22px 0px;
}

.slideout-navigation .inside-navigation .main-nav .slideout-menu {
	max-width: 234px;
    margin: 0px
}

.slideout-navigation .slideout-exit {
	display: none;
}

.slideout-navigation .inside-navigation ul li.burger-contact a {
	font-size: 18px;
    text-transform: uppercase!important;
    font-style: italic;
    font-weight: 600!important;
    letter-spacing: 0.5px;
    color: var(--principale);
}

.slideout-navigation .inside-navigation ul li.suivez-nous a {
    font-style: italic;
    font-weight: 500!important;
}

.slideout-navigation .inside-navigation ul li.suivez-nous a:hover {
    color: var(--noir)!important;
    cursor: initial!important;
}

.slideout-navigation .inside-navigation li.header-social {
    width: auto!important;
    margin-left: 30px;
    margin-right: -20px;
}

.slideout-navigation .inside-navigation .header-social a {
	background-color: white;
    display: flex!important;
    width: 45px;
    height: 45px;
    justify-content: center;
    align-items: center;
    padding: 0px;
    float: left;
}


/* EN-TÊTE */
.entete {
	padding: 200px 80px 40px 0px;
	margin-bottom: 0px;
	background-size: cover;
	background-position: center;
}

.entete .entete-contenus,
.entete-accueil .entete-contenus {
	padding-left:150px;
	color:white;
}
.entete .entete-contenus a,
.accordeon_info a,
.section-contenus > p > a {
	font-weight: 600;
	color: var(--principale)!important;
	font-style: italic;
	border-bottom: 1px solid var(--principale);
}

.bg-principale .section-contenus > p > a {
	color: var(--noir)!important;
	border-bottom: 1px solid var(--noir);
}

.section-contenus > p > a:hover {
	color: var(--accent)!important;
	border-bottom: 1px solid var(--accent);
}

.entete .entete-contenus > *:last-child {
	margin-bottom:0px;
}


/* EN-TÊTE ACCUEIL */
.entete-accueil {
	padding-bottom: 80px;
	margin-bottom: 0px;
	height: 100vh;
	min-height: 740px;
	background-size: cover;
	background-position: center;
	position: relative;
	display: flex;
	align-items: center;
}

.entete-accueil:before {
	content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: linear-gradient(to right, black, rgba(0,0,0,0.1));
}

.entete-accueil .grid-container {
	z-index: 1;
	width: 100%;
}

.entete-accueil .entete-contenus {
	max-width: 760px;
}

.entete-accueil h1 {
	font-size: 80px;
	line-height: 70px;
	letter-spacing: 5px;
	margin-bottom: -2px;
	padding-bottom: 30px;
	border-bottom: 2px solid #B9B9B9;
}

.entete-accueil .edition-dates {
	font-size: 24px;
	font-weight: 300;
	line-height: 28px;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 15px;
}

.entete-accueil .edition-dates span {
	text-transform: initial;
}

.entete-bottom {
	position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
}

.entete-statistiques {    
    width: 50%;
    background-color: rgba(0,0,0,0.5);
    padding: 30px 100px 30px 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    column-gap: 50px;
}

.entete-statistique {    
	text-align: center;
}

.entete-statistiques .stat-chiffre {
	font-size: 48px;
	line-height: 52px;
	font-weight: 600;
	color: var(--accent)!important;
	margin-bottom: 10px;
	font-style: italic;
}

.entete-statistiques .stat-titre {
	font-size: 18px;
	line-height: 21px;
	font-weight: 600;
	font-style: italic;
	margin-bottom: 0px;
}

.entete-promo {    
    width: 50%;
    height: 150px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    background-color: white;
    justify-content: center;
}

.entete-promo:before {
    content: '';
    position: absolute;
    display: inline-block;
    left: 50%;
    margin-left: -50px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1px 0 150px 50px;
    border-color: transparent transparent var(--blanc) transparent;
}

.entete-promo h3 {
	font-size: 24px;
    font-style: italic;
    padding: 15px 30px;
    background-color: var(--accent);
    text-align: right;
    margin-top: -30px;
    margin-bottom: 30px;
} 

.entete-promo h3:before {
    content: '';
    position: absolute;
    display: inline-block;
   	margin-left: -45px;
    margin-top: -15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1px 0 58px 15px;
    border-color: transparent transparent var(--accent) transparent;
}

.entete-promo .entete-promo-texte {
	padding: 0px 30px 30px 30px;
	text-align: right;
} 


.entete-promo .entete-promo-texte * {
	color: var(--noir)!important;
}

.entete-promo .entete-promo-texte :last-of-type {
	margin-bottom: 0px;
}

.entete-promo .entete-promo-texte a {
	font-weight: 600;
}

.entete-promo .entete-promo-texte a:hover {
	color: var(--accent)!important;
}


/* ENTETE DÉFI  */
.entete-defi {
	position: relative;
}
.entete-defi:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0,0,0,0.6);
}
.entete-defi > .grid-container {
	position: relative;
}

.entete-defi-contenus {
	width: 70%;
}


.entete-defi-contenus .slogan-partenaire {
	display: flex;
    justify-content: space-between;
    column-gap: 60px;
}

.entete-defi-contenus .defi-slogan {
	font-style: italic;
	font-weight: 500;
	letter-spacing: 1px;
}

.slogan-partenaire .partenaire-presentateur img {
	max-width: 180px;
    max-height: 80px;
    height: auto;
    width: auto;
}

.partenaire-presentateur p {
	margin-bottom: 4px;
	font-style: italic;
	margin-top: -10px;
}

.entete-defi-contenus .defi-infos {
	display: flex;
	column-gap: 60px;
}

.entete-defi-contenus .defi-infos .date,
.entete-defi-contenus .defi-infos .discipline {
	display: flex;
	align-items: center;
	column-gap: 15px;
}

.entete-defi-contenus .defi-infos .discipline {
	margin-bottom: 10px;
}

.entete-defi-contenus .defi-infos .discipline:last-of-type {
	margin-bottom: 0px;
}

.entete-defi-contenus .defi-infos .date i,
.entete-defi-contenus .defi-infos .discipline i {
	 color: var(--accent);
    font-size: 40px;
}

.entete-defi-contenus .defi-infos .date p,
.entete-defi-contenus .defi-infos .discipline p {
	margin-bottom: 0px;
	font-weight: 600;
	text-transform: uppercase;
	line-height: 18px;
}

.entete-defi-contenus .defi-infos .date p span,
.entete-defi-contenus .defi-infos .discipline p span {
	font-weight: 300;
}

.entete-defi-contenus .discipline svg {
	height: 40px;
}

.entete-defi-contenus .discipline svg path {
	fill: var(--accent);
}

.entete-defi-contenus .defi-intro {
	margin-top: 40px;
}

.entete-defi-image {
	width: 30%;
}


/* DÉFI - Étapes  */
.defi-tarifs {
	float: right;
	margin-top: 0px;
}

.tarif-max {
	font-weight: 600;
	font-style: italic;
	color: #666;
	margin-bottom: -10px;
	text-decoration: line-through;
}

.defi-tarif-actuel {
	display: flex;
	align-items: flex-end;
}

.defi-tarifs p.date {
	font-style: italic;
	margin-right: 10px;
	margin-bottom: 0px;
}

.defi-tarifs p.tarif {
	font-size: 32px;
	font-weight: 600;
	font-style: italic;
	margin-bottom: -6px;

}


.btn-parcours i {
	margin-left: 4px;
}
.btn-parcours i.fa-minus {
	display: none;
}
.section-defi-etape {
	background-color: white;
}

.section-defi-etape:nth-of-type(odd) {
	background-color: var(--gris);
}

.etape-parcours {
	margin-top: 20px;
	display: none;
}

.etape-parcours-description {
	padding-top: 20px;
}

.show-parcours .etape-parcours {
	display: block;
}

.show-parcours .btn-parcours i.fa-minus {
	display: inline-block;
}

.show-parcours .btn-parcours i.fa-plus {
	display: none;
}



/* SECTION DE BASE */
h2.section-titre {
	margin-bottom: -2px;
	padding-bottom: 12px;
	border-bottom: 2px solid #B9B9B9;
}

.bg-principale *:not(.btn),
.bg-gris-fonce *:not(.btn),
.bg-noir *:not(.btn),
.bg-vert *:not(.btn)
{
	color: white;
}

img.section-titre-ligne {
	margin-bottom:30px;
}

.section-image{
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	position: relative;
	min-height: 400px;
    /*height: 0;*/
}
.section-image-50{
	background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
	background-position: right;
	position: relative;
    /*height: 0;*/
}

.section-contenus .btn:not(:last-child) {
	margin-bottom: 10px;
}

.section-contenus .btn.bg-noir:nth-of-type(2) {
	margin-left: 2px;
}

.section-contenus *:last-child {
	margin-bottom:0px;
}

section.bg-noir,
section.bg-gris-fonce {
	color:white;
}


/* SECTION DÉFIS */
.section-defis {
	display: flex;
	flex-wrap: wrap;
	column-gap: 4%;
	row-gap: 30px;
}

.section-defis .defi-plein {
	width: 100%;
}

.section-defis .defi-demi {
	width: 48%;
}

.section-defis .defi .defi-top {
	min-height: 300px;
	display: flex;
	position: relative;
    justify-content: space-between;
    align-items: flex-end;
    padding: 30px 30px 30px 30px;
	background-color: var(--noir);
	margin-bottom: -25px;
	background-position: center;
	background-size: cover;
}

.section-defis .defi .defi-top:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6));
}

.section-defis .defi .defi-top:hover:before {
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6));
}

.section-defis .defi .defi-top .defi-texte,
.section-defis .defi .defi-top .defi-logo {
	z-index: 1;
}

.section-defis .defi .defi-top h3 {
	line-height: 34px;
	color: white;
	font-style: italic;
	margin-top: 0px;
	z-index: 1;
}

.section-defis .defi .defi-top p.defi-slogan {
	color: white;
	margin-bottom: 10px;
	margin-top: 20px;
	z-index: 1;
	display: none;
}

.section-defis .defi-top img.presentateur-logo  {
	max-width: 180px;
	max-height: 60px;
	float: right;
	margin-right: -10px;
    margin-bottom: -10px;
    z-index: 1;
}

.section-defis .defi .defi-date {
	height: 50px;
	padding: 0px;
	background-color: white;
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	box-shadow: 3px 3px 6px #00000029;
	z-index: 1;
	position: relative;
	margin-right: -4px;
}

.section-defis .defi .defi-date::after {
    content: '';
    position: relative;
    display: inline-block;
    margin-right: -15px;
    width: 0;
    right: 0;
    height: 0;
    border-style: solid;
    border-width: 50px 15px 0 0;
    border-color: var(--blanc) transparent transparent transparent;
}

.section-defis .defi .defi-date i {
	color: var(--principale);
	font-size: 24px;
	margin-right: 10px;
	margin-left: 20px;
}

.section-defis .defi .defi-date p {
	text-transform: uppercase;
	font-weight: 500;
	color: var(--noir);
	margin-bottom: 0px;
	margin-right: 20px;
	margin-top: 2px;
}


.section-defis .defi .defi-fleche {
	height: 50px;
	padding: 0px;
	background-color: var(--principale);
	display: none;
	flex-wrap: wrap;
	align-items: center;
	box-shadow: 3px 3px 6px #00000029;
	z-index: 1;
	position: relative;
	margin-right: -10px;
}

.section-defis .defi .defi-fleche::after {
    content: '';
    position: relative;
    display: inline-block;
    margin-right: -15px;
    width: 0;
    right: 0;
    height: 0;
    border-style: solid;
    border-width: 50px 15px 0 0;
    border-color: var(--principale) transparent transparent transparent;
}

.section-defis .defi .defi-fleche i {
	color: white;
	font-size: 24px;
	margin-right: 20px;
	margin-left: 20px;
}

.section-defis .defi-disciplines {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.section-defis .defi .defi-top:hover {
	cursor: pointer;
}

.section-defis .defi .defi-top p.discipline-distance {
   	display: none;
}

.section-defis .defi:hover .defi-disciplines .discipline p.discipline-distance,
.section-defis .defi:hover .defi-slogan {
   	display: block;
}

.section-defis .defi:hover .defi-fleche {
   	display: inline-flex;
}

.section-defis .defi .defi-top:hover .defi-disciplines .discipline svg path {
   	fill: var(--accent);
}

.section-defis .defi .defi-top:hover .defi-disciplines .discipline {
   	border-right: 2px solid var(--accent);
   	padding-right: 15px;
}

.section-defis .defi .defi-top:hover .defi-disciplines .discipline:last-of-type {
   	border-right: 0px solid var(--accent);
}


/* DISCIPLINE */
.section-defis .discipline {
	margin-right: 15px;
}
.section-defis .discipline svg {
	height: 30px;
	margin-bottom: 10px;
}
.section-defis .discipline p.discipline-distance {
	color: white;
	font-weight: 600;
	color: var(--accent);
	margin-bottom: 0px;
}


/* ICONES */
.section_statistiques {
	display:flex;
	flex-wrap: wrap;
	column-gap: 2%;
	row-gap: 30px;
}

.stat-element {
	width:48%;
	display:flex;
	column-gap: 20px;
	align-items:center;
}

.section_statistiques-fullwidth .stat-element {
	width:23%;
}

.stat-element h4 {
	margin-bottom:2px;
}

.stat-element .stat-element-icone {
	display:flex;
	align-items:center;
}

.stat-element .stat-element-icone i {
	font-size:36px;
}

.stat-element .stat-element-icone img {
	width: 60px;
	height: 60px;
}

.show-tablet {display:none;}



/* ACCORDEONS */
.section-accordeons .accordeon-titre:hover {
	color: var(--accent);
}
.section-accordeons .accordeon_info {
	display: none;
	margin-top:20px;
}
.section-accordeons .accordeon_info p:last-of-type {
	margin-bottom:0px;
}
.section-accordeons .accordeon {
	padding:15px 20px;
	margin-bottom:20px;
}
.section-accordeons .accordeon:last-of-type {
	margin-bottom:0px;
}
.section-accordeons .accordeon h3 {
	font-size:24px;
	line-height:30px;
	margin-bottom: 0px;
}

.section-accordeons .accordeon .accordeon_container:hover {
	cursor: pointer!important;
}


/* SECTION LOGOS */
.section-logos {
	display:flex;
	flex-wrap:wrap;
	column-gap:1%;
	row-gap:10px;
}

.section-logos .logo {
	width:19%;
	padding:10px;
}


/* SECTION APPEL À L'ACTION  */
.section-type-cta h2.section-titre {
	font-size: 80px;
	line-height: 90px;
}
.section-cta-contenus {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.section-cta-contenus .section-cta-texte {
	width: 50%;
}

.section-cta-contenus .section-cta-texte > *:last-of-type {
	margin-bottom: 0px;
}

.section-cta-contenus .section-cta-boutons {

}

.section-bg-image {
	background-position: center;
    background-size: cover;
}

/* FORM */
.contact-champs {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	column-gap: 2%;
}

.contact-champs .contact-col-1,
.contact-champs .contact-col-2 {
	width: 49%;
}

.contact-champs .contact-col-1 {
	display: flex;
    flex-wrap: wrap;
    column-gap: 2%;
}

.contact-champs .contact-col-1 br {
	display: none;
}

.wpcf7-form-control-wrap {
	width: 100%;
}

.wpcf7 p {
	margin-bottom:0px;
}

#ecrivez-nous .section-colonnes .colonne-demi:nth-of-type(1) {
	flex: 1;
}

#ecrivez-nous .section-colonnes .colonne-demi:nth-of-type(2) {
	flex: 2;
}

.contact-champs .contact-col-1 .wpcf7-form-control-wrap input {
	margin-bottom: 0px;
}

.contact-champs .contact-col-1 .wpcf7-form-control-wrap:last-of-type {
	width: 100%;
}

.contact-champs .contact-col-2 textarea {
	height: 150px;
}


input[type="text"], input[type="email"], input[type="password"], select {
	font-size: 14px;
    font-weight: 400;
    color: #333;
	background-color: white;
	border:none;
	width: 100%;
	height: 40px;
	padding-left: 20px;
	margin-bottom: 15px!important;
}
textarea {
	width: 100%;
	border:none;
	background-color: white;
	font-size: 14px;
    font-weight: 400;
    color: #333;
}
select {
    padding: 10px 20px;
}

form.wpcf7-form .grid-50:nth-child(odd) {
	padding-right:0px!important;
}

form.wpcf7-form .grid-50:nth-child(even) {
	padding-left:0px!important;
}

form.wpcf7-form .grid-100 {
	padding-right:0px!important;
	padding-left:0px!important;
}

input[type="submit"] {
	float:right;
}

.bg-blanc input[type="text"], .bg-blanc input[type="email"], .bg-blanc input[type="password"], .bg-blanc select, .bg-blanc textarea {
	background-color: var(--gris);
}


/* BLOCS */
.section-blocs .bloc {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 30px;

}

.section-blocs .bloc:not(:first-child) {
	margin-top: 30px;
}

.section-blocs .bloc:nth-child(even) {
	flex-direction: row-reverse;
}

.section-blocs .bloc .bloc-contenu {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.section-blocs .bloc:nth-child(odd) .bloc-contenu * {
	text-align: right;
}

.section-blocs .bloc:nth-child(even) .bloc-contenu * {
	text-align: left;
}

.section-blocs .bloc-contenu * {
	color: white;
	text-align: left;
}

.section-blocs .bloc-contenu.bg-blanc *,
.section-blocs .bloc-contenu.bg-gris * {
	color: var(--noir);
}

.section-blocs .bloc .bloc-contenu {
	flex: 4;
    padding: 30px;
    min-height: 365px;
}

.section-blocs .bloc .bloc-image {
	flex: 10;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	min-height: 300px;
}


/* COLONNES  */
.section-colonnes {
	display: flex;
	flex-wrap: wrap;
	column-gap: 3%;
	row-gap: 30px;
	width:100%;
}

.section-colonnes .colonne {
	padding: 0px!important;
}

.section-colonnes .colonne-demi {
    width: 47%;
}

.section-colonnes .colonne-tier {
    width: 30%;
}

.section-colonnes .colonne-quart {
    width: 22%;
}

.section-colonnes .colonne img {
	margin-bottom: 20px;
}


/* GALERIE D'IMAGES */
.section-galerie {
	display: flex;
	flex-wrap: wrap;
	column-gap: 0px;
	row-gap: 0px;
}

.section-galerie .galerie-image {
	width: 25%;
	height: 290px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}



/* HORAIRE */
.section-horaire .horaire {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-bottom: 20px;
}

.section-horaire .horaire:last-of-type {
	margin-bottom: 0px;
}

.section-horaire .horaire-heure {
	width: 200px;
	text-align: center;
	display: flex;
    align-items: center;
    justify-content: center;
}

.section-horaire .horaire-heure p {
	margin-bottom: 0px;
	font-size: 20px;
	font-weight: 600;
}

.section-horaire .horaire-contenu {
	width: -webkit-calc(100% - 340px);
    width:    -moz-calc(100% - 340px);
    width:         calc(100% - 340px);
	padding: 30px;
}

.section-horaire .horaire-contenu h3 {
	font-size: 20px;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.section-horaire .horaire-contenu *:last-child {
	margin-bottom: 0px;
}

.section-horaire .horaire-icone {
	width: 140px;
	padding: 10px;
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}




/* TÉMOIGNAGES */
.citation_info {
	text-align:center;
}
.citation_info .citation-texte {
	font-size:22px;
	font-weight:800;
}
.citation_info img {
	max-width:120px;
	margin: 0 auto 20px auto;
}
.citation_infoPersonne p {
	margin-bottom:0px;
}




/* ONGLETS */
.tab_content {
	padding:0px!important;
}
.nav {
	padding:0px!important;
}

.nav-link {
	margin-bottom: 12px;
	background-color: #f4f4f6 !important;
	border-radius: 30px!important;
	color: black !important;
	text-align: left !important;
	padding: 11px 20px;
    font-size: 18px;
    letter-spacing: 0.4px;
    font-weight: 600;
}

section.bg-gris-pale .nav-link {
	background-color: #fff !important;
}

.nav-link.active {
	background-color: var(--accent)!important;
	color: white !important;
}

.nav-link:hover {
	background-color: var(--principale)!important;
	color: white !important;
	cursor:pointer;
}

.nav-link.active:hover {
	background-color: var(--accent)!important;
}




/* FILTRES */

.sf-field-taxonomy-membres_categorie ul.children {
	display:none;
}

.searchandfilter > ul {
	margin-left:0px;
}
.searchandfilter ul li li {
	padding: 0px;
}

.searchandfilter .sf-label-checkbox {
	max-width: 90%;
	line-height: 20px;
}

.searchandfilter .sf-input-checkbox {
	vertical-align: top;
    margin-top: 6px;
}

.sf-field-sort_order {
	display:none!important;
}

.chosen-container-multi .chosen-choices {
	padding:6px 10px;
	background-image:none;
	border: 1px solid #eee;
}

.chosen-container-multi .chosen-choices li.search-choice {
	background: #eee;
    border: 0px;
    padding: 6px 20px 8px 10px;
}

/* DOCUMENTATION */
.documents .document {
	display:flex;
	margin-bottom:20px;
	background-color: white;
	padding: 20px 30px;
	column-gap:30px;
}
.documents .document:last-of-type {
	margin-bottom:0px;
}

.bg-blanc .documents .document {
	background-color: var(--gris);
}

.documents .document img {
	width:160px;
	min-width:160px;
	margin-top:10px;
}

.documents .document .doc-infos p.btn {
	margin-bottom:0px;
}

/* ÉVÉNEMENTS*/
.evenement {
	display:flex;
	align-items:center;
	margin-bottom:20px;
	background-color: white;
	padding: 40px;
	column-gap:30px;
}

.bg-blanc .evenement {
	background-color: var(--gris);
}

.evenement img {
	width:100%;
}

.evenement .evenement-infos p.btn {
	margin-bottom:0px;
}

/* COMMUNIQUÉ */
.communique {
	display:flex;
	align-items:center;
	margin-bottom:20px;
	background-color: white;
	padding: 40px;
	column-gap:30px;
}

.bg-blanc .communique {
	background-color: var(--gris);
}

.communique img {
	width:100%;
}

.communique .communique-infos p.btn {
	margin-bottom:0px;
}

.communique .communique-infos .extrait {
	margin-bottom:20px;
}

/* MEMBRES */
.membres .membre {
	display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: center;
	padding:0px;
	margin-bottom:30px;
	border-width:3px;
}

.membres .membre .membre-logo {
	flex: 1;
    height: 100%;
    min-height: 300px;
    background-color: white;
    background-position: center;
    background-size: 200px;
    background-repeat: no-repeat;
}

.membres .membre .membre-infos {
	flex:3;
	padding: 30px 40px;
}

.membres .membre .membre-adresse {
	width:100%;
	margin-bottom:10px;
}

.membres .membre .membre-adresse p:last-of-type{
	margin-bottom:0px;
}

.membre .membre-ressource {
	margin-bottom:6px;
}

.membre .membre-telephone {
	float: left;
    margin-right: 30px;
	margin-bottom:6px;
}

.membre .membre-courriel {
	margin-bottom:6px;
}

.membres .membre .membre-infos .btn {
	margin-top:6px;
	margin-bottom:0px;
}

.membres .membre .membre-contenus {
	display: none;
}


/* SLIDER PARTENAIRES */
.partenaires-logos {
	margin-bottom:40px;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.partenaires .partenaires-logos:last-of-type {
	margin-bottom:0px;
}
.partenaire-logo {
    min-width: 170px;
    min-height: 140px;
    vertical-align: middle;
    margin: 10px;
    display: inline-block;
    text-align: center;
    background-color: white;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 90%;
	filter: grayscale(1);
}

a .partenaire-logo:hover {
	filter: grayscale(0);
}

.partenaires-logos .slick-arrow {
	width: 50px;
	height: 50px;
}

.partenaires-logos .slick-arrow:before {
	color: #ddd;
    font-style: initial;
    font-size: 30px;
}

/* FOOTER */
.site-footer .footer-widgets .footer-widgets-container {
	padding:80px 0px 60px 0px;
}
.footer-widget-1 {
	flex:3!important;
}
.footer-widget-2 {
	flex:4!important;
}

.footer-widget-3 {
	flex: 6!important;
    display: flex;
    flex-wrap: wrap;
}

.footer-widget-3 aside:nth-of-type(1) {
	width:60%;
	margin-bottom:0px;
}

.footer-widget-3 aside:nth-of-type(2) {
	width:40%;
	margin-bottom:0px;
}

.footer-widget-3 aside:nth-of-type(3) {
	width:100%;
}

.site-footer ul.menu li.menu-item-has-children {
	margin-bottom:30px;
}

.site-footer ul.menu > li.menu-item a,
.site-footer .footer-title { 
	font-size: 20px;
    text-transform: uppercase;
    font-style: italic;
    font-weight: 600;
    letter-spacing: 0.5px;
    color: var(--principale);
    margin-bottom: 10px;
}

.site-footer ul.menu > li.menu-item a:hover { 
    color: var(--accent);
}

.site-footer ul.menu > li.menu-item .sub-menu {
	margin-left:0px;
}

.site-footer ul.menu > li.menu-item .sub-menu li a, 
.site-footer p {
	font-size:18px;
	color: var(--gris-fonce);
	font-style:initial;
	font-weight:400;
	text-transform:initial;
	margin-bottom:0px;
}

.site-footer .footer-social p {
	margin-bottom:6px;
	display:flex;
}

.site-footer .footer-social a {
	width:45px;
	height: 45px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-right:10px;
	float:left;
	background-color:white;
}

.site-footer input[type="email"] {
	width:70%;
	height: 50px;
	background-color: var(--gris);
	border: 1px solid #D3D3D3;
	margin-top:20px;
	font-size: 16px;
}

.site-footer input[type="submit"] {
	width:30%;
	height: 50px;
	background-color: #D3D3D3;
	border: none;
	color: var(--gris-fonce);
	margin-top:20px;
	padding:0px!important;
}



/* SLICK SLIDER  */

.slick-prev {
	left: -75px;
}

.slick-next {
	right: -40px;
}

.bg-principale .slick-arrow,
.bg-gris-fonce .slick-arrow,
.bg-noir .slick-arrow,
.bg-vert .slick-arrow
{
	color: transparent;
	font-style: initial;
}



/* COPYRIGHT */
.copyright-bar {
	display:none;
}
.footer-bar {
	width: 100%;
    display: flex;
    justify-content: space-between;
}
.footer-bar p {
	margin-bottom:0px;
}





/* RESPONSIVE */
@media screen and (max-width:1260px) {
	header .inside-header .site-logo {
		padding-left: 20px;
	}

	.site-header .header-image {
	    width: 200px;
	}

	header .main-navigation .main-nav > ul > li > a  {
		letter-spacing: 0.25px;
		padding: 15px 4px;
	}

	.slideout-navigation {
	    max-width: 100%;
	    margin-right: 10px;
	   top: 94px!important;
	}

	.slideout-navigation .inside-navigation {
   		max-width: 229px!important;
	}

	.entete-accueil {
		height: auto;
		display: block;
		padding-bottom: 0px;
	}
	.entete-accueil .grid-container{
		position: relative;
	}
	.entete-accueil .entete-contenus {
		padding: 160px 0px 60px 100px;
		max-width: 700px;
		
	}
	.entete-bottom {
		display: block;
		position: relative;
	}
	.entete-bottom .entete-statistiques {
		width: 100%;
		padding: 30px;
		justify-content: center;
	}

	.entete-bottom .entete-promo {
		width: 100%;
		padding-left: 0px;
		height: auto;
		text-align: center;
	}
	.entete-bottom .entete-promo:before,
	.entete-bottom .entete-promo h3:before {
		display: none;
	}
	.entete-bottom .entete-promo h3 {
		margin-top: 0px;
		width: 100%;
		text-align: center;
	}

	.entete-bottom .entete-promo .entete-promo-texte {
		width: 100%;
		text-align: center;
	}

	.site-footer .footer-widgets .footer-widgets-container {
		padding: 60px 40px 40px 40px;
	}
}


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

	header .site-logo img.header-image {
	    margin-bottom: -15px;
	}

	header .main-navigation .main-nav > ul > li > a {
		font-size: 15px;
		letter-spacing: 0.25px;
		padding: 10px 2px;
	}

	#menu-menu-principal {
		margin-top: 2px;
	}

	.main-navigation .main-nav > ul.menu {
		height: 44px;
	}

	.menu-bar-items {
		height: 44px;
		margin-top: 7px;
	}

	.menu-bar-items > span {
	    height: 44px;
	} 

	.main-navigation .menu-bar-item>a {
		height: 44px;
		padding-bottom: 6px;
	    padding-left: 12px;
	    padding-right: 12px;
	}

	.gp-icon svg {
	    height: 11px;
	    width: 11px;
	}

	.slideout-navigation {
	   top: 88px!important;
	}

	button, .button, .btn, input[type="submit"], button[type="submit"], .btn-header a, .wp-block-button__link {
		padding: 10px 20px!important;
		font-size: 16px!important;
	}

	.btn-lien {
		font-size: 16px!important;
	}

	.btn-header a {
	    font-size: 15px!important;
	    padding: 11px 15px 11px 15px!important;
	}
	.btn-header a::before {
	    margin-left: -30px;
	    margin-top: -12px;
	    border-width: 0 0 45px 15px;
	}

	.btn-inscription, .wp-block-button__link {
	    padding: 10px 15px 10px 20px!important;
	}

	.btn-inscription::after, .wp-block-button__link::after {
		margin-left: 15px;
    	margin-top: -10px;
    	border-width: 45px 15px 0 0;
	}

	h1 {
		font-size: 60px;
		line-height: 52px;
	}

	h2 {
		font-size: 46px;
	}

	.section-type-cta h2.section-titre {
	    font-size: 70px;
	    line-height: 80px;
	}

	h3 {
		font-size: 28px;
	}

	h4 {
		font-size: 17px;
	}

	.stat-element .stat-element-icone i {
	    font-size: 30px;
	}

	img.section-titre-ligne {
	    margin-bottom: 20px;
	}

	p {
		font-size: 16px;
		margin-bottom: 1em;
	}

	.section-padding {
		padding: 80px 0px!important;
	}

	section > .grid-container {
		padding-left: 40px;
		padding-right: 40px;
	}

	.entete-accueil h1 {
		font-size: 60px;
		line-height: 52px;
	}

	.entete-accueil .entete-contenus {
		max-width: 600px;
		
	}

	.entete {
		padding: 160px 80px 60px 0px;
	}

	.entete .entete-contenus {
		padding-left: 90px;
	}

	.section-galerie .galerie-image {
		width: 33.33%;
	}

	.section-logos .logo {
		width: 24%;
	}

	.section_statistiques {
		row-gap:  15px;
	}

	.slick-prev {
	    left: -60px;
	} 
}

.menu-mobile {
	display: none;
}


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

	header .main-navigation .inside-navigation {
		padding-right: 0px!important;
		padding-left: 0px!important;
	}
	.slideout-navigation {
		margin-right: 0px;
	}

	.slideout-navigation .inside-navigation ul li a {
		padding-left: 20px;
	}
	.main-navigation .menu-bar-items {
		margin-top: 5px;
	}
	#menu-menu-principal li {
		display: none;
	}
	.menu-mobile {
		display: block;
	}
	.menu-mobile > a {
		text-transform: uppercase!important;
	    font-weight: 600!important;
	    font-size: 20px!important;
	}

	.menu-mobile:last-of-type {
		margin-bottom: 30px;
	}

	.menu-mobile.menu-item-has-children > a {
	    display: flex!important;
	    align-items: center!important;
	    justify-content: space-between!important;
	}

	.main-navigation .main-nav ul li ul.sub-menu li a {
		padding-left: 20px;
	}

	.menu-mobile a .gp-icon svg {
	    height: 30px;
    	width: 20px;
	}

	.menu-mobile .dropdown-menu-toggle {
		padding-right: 30px!important;
		padding-left: 40%!important;
		border-left:  none!important;
	}
	#menu-menu-principal li.btn-header {
		display: block;
	}
	.menu-bar-item.hide-on-mobile {
	    display: block !important;
	}

	.slideout-navigation .inside-navigation,
	.slideout-navigation .inside-navigation .main-nav, 
	.slideout-navigation .inside-navigation .main-nav .slideout-menu {
		width: 100%;
    	max-width: 100%!important;
	}
	.section-defis .defi-demi {
		width: 100%;
	}
}


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

	h1 {
		font-size: 50px;
		line-height: 42px;
	}

	h2 {
		font-size: 42px;
	}

	.section-type-cta h2.section-titre {
	    font-size: 50px;
	    line-height: 50px;
	}

	h3 {
		font-size: 26px;
	}

	h4 {
		font-size: 16px;
	}

	.inside-header {
	    flex-direction: row;
	    text-align: left;
	}

	.entete {
	    padding: 160px 0px 60px 0px;
	}

	.entete-accueil .entete-contenus {
	    max-width: 70%;
	    padding: 140px 0px 40px 0px;
	}

	.entete .entete-contenus {
	    padding-left: 0px;
	}

	.entete-defi > .flex {
		flex-direction: column;
	}

	.entete-defi .entete-defi-contenus {
		width: 100%;
	}

	.entete-defi .slogan-partenaire .partenaire-presentateur img {
	    max-width: 160px;
	    max-height: 60px;
	}

	.entete-defi .entete-defi-image {
		display: none;
	}

	.section-padding {
	    padding: 60px 0px!important;
	}

	.section-type-base > .grid-container > .flex {
		flex-direction: column!important;
		row-gap: 40px;
	}

	.section-type-blocs .section-blocs .bloc {
		flex-direction: column!important;
		row-gap: 0px;
	}

	.section-blocs .bloc .bloc-contenu {
	    min-height: 300px;
	}

	.section-blocs .bloc:nth-child(odd) .bloc-contenu * {
	    text-align: left;
	} 

	.section-galerie .galerie-image {
	    width: 50%;
	}

	.section-colonnes .colonne-tier {
	    width: 48%;
	}

	.section-logos .logo {
	    width: 32%;
	}

	.section-horaire .horaire-heure {
    	width: 100%;
    	padding: 10px 0px;
	}

	.section-horaire .horaire-contenu {
		width: calc(100% - 100px);
		padding: 20px;
	}

	.section-horaire .horaire-icone {
    	width: 100px;
	}

	.section_statistiques-fullwidth .stat-element {
	    width: 48%;
	}

	.contact-champs {
		flex-direction: column;
	}

	.contact-champs .contact-col-1, .contact-champs .contact-col-2 {
	    width: 100%;
	}

	.footer-widget-1 > aside {
		width: 48%;
		float: left;
	}

	.footer-widget-1 > aside#block-8,
	.footer-widget-1 > aside#block-11,
	.footer-widget-1 > aside#block-17 {
		width: 48%;
		float: right;
	}

	.footer-social p:nth-of-type(2) {
		display: flex;
	}

	#menu-menu-footer-colonne-1 > li {
		width: 48%;
		float: right;
	}

	#menu-menu-footer-colonne-1 > li:first-of-type {
		float: left;
	}

	.footer-widget-3 {
		justify-content: space-between;
	}

	.footer-widget-3 aside:nth-of-type(1),
	.footer-widget-3 aside:nth-of-type(2) {
		width: 48%;
	}

	.footer-widget-3 aside:nth-of-type(2) {
		float: right;
	}

	.footer-bar {
		display: block;
	}

	
}

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

	h1 {
		font-size: 36px;
		line-height: 36px;
	}

	h2 {
		font-size: 30px;
	}

	.section-type-cta h2.section-titre {
	    font-size: 36px;
	    line-height: 36px;
	}

	h3 {
		font-size: 22px;
	}

	section > .grid-container {
	    padding-left: 20px;
	    padding-right: 20px;
	}

	.section-padding {
	    padding: 40px 0px!important;
	}

	.entete {
	    padding: 100px 0px 60px 0px;
	}

	.entete-accueil .entete-contenus {
	    max-width: 100%;
	    padding: 120px 0px 40px 0px;
	}

	header .inside-header {
	    flex-direction: row;
	    text-align: left;
	    padding: 0px 0px 0px 0px;
	}

	header .inside-header .site-logo {
	    padding-left: 10px;
	}

	header .site-logo img.header-image {
		width: 170px;
	    margin-bottom: -19px;
	}

	.menu-mobile .dropdown-menu-toggle {
		padding-right: 20px!important;
		padding-left: 50px!important;
		border-left:  none!important;
	}

	.main-navigation .main-nav {
	    margin-bottom: 0px;
	}

	.main-navigation .menu-bar-items {
	    margin-top: 0px!important;
	}

	.slideout-navigation {
	    top: 44px!important;
	    margin-right: 0px;
	}

	.entete-defi-contenus .slogan-partenaire {
		flex-direction: column;
		row-gap: 20px;
		margin-bottom: 20px;
	}
	.entete-defi-contenus .defi-infos {
		flex-direction: column;
		row-gap: 20px;
	}

	.section_statistiques-fullwidth .stat-element,
	.section_statistiques .stat-element {
	    width: 100%;
	}

	.section-galerie .galerie-image {
		height: 160px;
	}

	.section-colonnes .colonne {
		width: 100%!important;
	}

	.section-horaire .horaire-contenu {
		width: calc(100% - 80px);
		padding: 20px;
	}

	.section-horaire .horaire-icone {
    	width: 80px;
	}

	.section-cta-contenus {
	    flex-direction: column;
	    row-gap:  20px;
	}

	.section-cta-contenus .section-cta-texte {
		width: 100%;
	}
	
}

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

	header .inside-header {
	    padding: 0px 0px 0px 0px!important;
	}

	#menu-menu-principal, .menu-bar-items {
		margin-top: 0px;
	}

	header .site-logo img.header-image {
		width: 140px;
    	margin-bottom: -19px;
	}

	.btn-header a {
	    font-size: 13px!important;
	    padding: 11px 10px 11px 10px!important;
	}

	.btn-header a::before {
	    margin-left: -25px;
	}

	
}


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


	header .site-logo img.header-image {
		width: 120px;
    	margin-bottom: -19px;
	}

	
}









