/*
Theme Name: CFCDG
Description: Theme custom pour CFCDG
Author: Bourrasque
Author URI: http://bourrasque.ca/
Version: 0.1.0
Text Domain: cfcdg
*/

/* *********** RESET CSS ***********************/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, img, ins, kbd, q, s, samp, small, strike, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: top;
	box-sizing: border-box;
	outline: none;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* ************* default wordpress ************** */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

img,
video {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

embed,
iframe,
object {
	margin-bottom: 1.5em;
	max-width: 100%;
}

hr {
	background-color: #bbb;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

p:not(:last-child), ul:not(:last-child) {
	margin-bottom: 1em;
}

a {
	text-decoration: none;
}

/* *************** CFCDG ******************** */

:root {
  --main-light-blue: #5caae0;
  --main-dark-blue: #0b4075;
  --main-very-dark-blue: #0e0e0e;
  --secondary-light-blue: #3f8fc6;
  --secondary-dark-blue: #16508c;
  --tertiary-light-blue: #cee3f1;
  --main-yellow: #f7e43b;
  --main-dark-yellow: #d0bf25;
  --main-red: #fd3939;
  --main-black: #05262f;
  --main-grey: #7f7a7a;
  --main-green: #84b305;
}


body {
	font-size: 16px;
	line-height: 1.4em;
	color: var(--main-black);
	font-family: 'Open Sans', sans-serif;
}

h1 {
	font-size: 2.65em;
	margin-bottom: 30px;
	line-height: 1.1em;
	text-transform: uppercase;
	position: relative;
	font-family: 'Roboto Slab', serif;
	font-weight: bold;
	color: #0E0E0E;
}

h2 {
	font-size: 2.65em;
	margin-bottom: 20px;
	line-height: 1.3em;
	position: relative;
	font-family: 'Roboto Slab', serif;
	font-weight: 700!important;
	color: #0E0E0E;
}

h3 {
	font-size: 1.9em;
	margin-bottom: 15px;
	line-height: 1.1em;
	font-weight: bold!important;
	font-family: 'Roboto Slab', serif;
	color: var(--main-light-blue);
}


h4 {
	font-size: 1.65em;
	margin-bottom: 12px;
	line-height: 1.1em;
	font-weight: bold;
	font-family: 'Open Sans', sans-serif;
	color: #114174;
}

h5 {
	font-size: 1.3em;
	/*margin-bottom: 12px;*/
	line-height: 1.1em;
	font-weight: bold;
	font-family: 'Roboto', sans-serif;
	color: var(--secondary-light-blue);
}

h6 {
	font-size: 1.3em;
	/*margin-bottom: 12px;*/
	line-height: 1.1em;
	font-weight: bold;
	font-family: 'Roboto', sans-serif;
	text-transform: uppercase;
	color: var(--secondary-dark-blue);
}

p>a:hover {
	text-decoration: underline;
}

a {
	color: var(--secondary-dark-blue);
}

i {
	vertical-align: middle;
}

.container, .site-main {max-width: min(1450px, 94%);	margin: 0 auto;}
.site-main {padding: 80px 0;}
#header-title-wrapper + .container {margin-top: 80px; margin-bottom: 80px;}
body > .menu-menu-principal-container {max-width: min(1450px, 94%);	margin: 0 auto; margin-top: 80px; margin-bottom: 80px;  font-family: 'Roboto', sans-serif; font-weight: 700; color: #006bb7; font-size: 1em;}

.dark h1, .dark h2, .dark h3, .dark h4, .dark p, .dark div.wpcf7-validation-errors, .dark div.wpcf7-acceptance-missing, .dark a:not(.elementor-button), .dark li {
	color: #fff; font-weight: 300;}
.page>.container ul, .elementor-widget-text-editor ul, .single>.container ul  {list-style-type: disc; padding-left: 20px;}
.page>.container ol, .elementor-widget-text-editor ol, .single>.container ol  {padding-left: 20px;}
.page>.container ul li, .elementor-widget-text-editor ul li, .single>.container ul li {margin-bottom: 10px;}
.page>.container p+h3, .page>.container p+h4,.page>.container ul+h3, .page>.container ul+h4, .elementor-widget-text-editor p+h3, .elementor-widget-text-editor p+h4,.elementor-widget-text-editor ul+h3, .elementor-widget-text-editor ul+h4,.elementor-widget-text-editor ol+h3, .elementor-widget-text-editor ol+h4,.page>.container ol+h3, .page>.container ol+h4, .single>.container p+h3, .single>.container p+h4,.single>.container ul+h3, .single>.container ul+h4, .single>.container ol+h3, .single>.container ol+h4 {margin-top: 30px;}
ol + ul {margin-top: 1em;}

.container.no-margin {margin-top: 0!important; margin-bottom: 0!important;}

body.elementor-editor-active .elementor-edit-area-active {width: 100%;}
.page-child-list a:hover {text-decoration: underline;}
.bg-gradient-blue {background: rgb(26,74,118); background: linear-gradient(0deg, rgba(26,74,118,1) 16%, rgba(10,32,66,1) 44%, rgba(10,32,66,1) 56%, rgba(26,74,118,1) 84%);}

#gallery-1 .gallery-caption {font-size: 0.8em; margin-top: 3px;}

/* elementor */
.elementor .elementor-column-gap-default>.elementor-column>.elementor-element-populated {padding: 0;}
/*.elementor .e-con-full, .elementor .e-con>.e-con-inner {padding-left: 0; padding-right: 0;}*/
.elementor .e-con.e-child >.e-con-inner {padding-top: 0px; padding-bottom: 0px;}
.elementor-widget-image-box.elementor-position-left .elementor-image-box-img {text-align: center;}
.elementor[data-elementor-type='wp-page'] > .e-con {--padding-top: 30px; --padding-bottom: 30px;}
/*.elementor[data-elementor-type='wp-page'] > .e-con:last-child > .e-con-inner{padding-top: 30px; padding-bottom: 80px;}*/
.e-con[data-element_type='container'] .e-con[data-element_type='container'] + .e-con[data-element_type='container']>.e-con-inner {--padding-top: 40px!important;}
.elementor .elementor-widget-container hr {background-color: #ccc!important; margin-bottom: 10px!important;}
.home-banner-container .e-con {padding: 0px;}
.home-banner-container .e-con-inner {padding: 0px !important;}
.home-alerts {padding: 0px !important;}

/* *********** HEADER *************** */
#header {	position: relative;	z-index: 2;}
.header-gov {background-color: #095797; min-height:72px; font-family: 'Roboto', sans-serif;}
.header-gov .container {height: 100%;}

.header-gov a {color: #fff;}
.header-logo {display: flex; align-items: center; height: 100%;}
.header-logo-text {font-size: 18px; margin-left:30px;}
.header-logo img {height: 100%;}
.header-gov-opt {display: flex; flex-direction: row; justify-content: center; align-items: center;}
.header-gov-opt>*:not(:last-child) {margin-right: 2vw;}
.header-contact {font-size: 18px; text-transform: uppercase;}
.header-gov .fa-search {font-size: 32px;}

.header-search-btn {position: relative;}
.header-search-btn>i {cursor: pointer; color: #fff; transition: all 0.35s;}
.header-search-btn>i:hover {color: var(--main-light-blue);}
.header-search-wrapper {position: absolute; top: 50%; transform: translateY(-50%); right: -5px; width: 340px; height: 45px;  border: solid 3px transparent;  border-radius: 25px; background-clip: padding-box; display: none;}
.header-search-wrapper:before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 0; margin: -3px; /* !importanté */ border-radius: inherit; /* !importanté */  background: linear-gradient(126deg, rgba(228,219,134,1) 37%, rgba(49,152,210,1) 63%); }
.searchform-header{background-color: var(--main-light-blue); border-radius: 25px; z-index: 1; height: 100%; padding: 0 10px;}
.searchform-header>div {display: flex; flex-direction: row; }
.header-search-input {color: var(--main-dark-blue); background-color: transparent; border: none!important; box-shadow: none!important; outline: none!important; border-radius: 0!important; padding: 10px 12px!important; font-size: 16px!important;}
.searchform-header ::placeholder {font-style: italic; color: var(--main-dark-blue);}
.header-search-submit {background: none!important; padding: 0!important; border-radius: unset!important; margin-left: 10px; color: #fff; transition: all 0.35s; border: none;}
.header-search-submit:hover {color: var(--main-very-dark-blue)!important;}

.header-gov .container, .menu-secondaire .container{padding-left: 1.5vw;}
.header-gov>div, .menu-secondaire>div {display: flex;flex-direction: row;	justify-content: space-between; align-self: center;}

/* menu principal */
.menu-principal {	height: 100%; position: relative;	}
.menu-principal ul.menu {display: flex;	flex-direction: row;	justify-content: center;	height: 100%; font-family: 'Roboto', sans-serif; position: relative;}
.menu-principal ul.menu>li {	flex: 1 1 auto; position:relative; }
.menu-principal ul.menu>li>a {	display: block;	transition: all 0.2s ease-in-out; color: var(--main-dark-blue); font-weight: bold; font-size: 1.7em; letter-spacing: 1px; text-transform: uppercase; padding: 40px 15px; text-align: center;}
.menu-principal>div {	width: 100%;}
.menu-principal ul.menu li a:before {  display: inline-block;  vertical-align: middle;  height: 100%;  content: '';}
.menu-principal ul.menu>li.current-menu-item>a, .menu-principal ul.menu>li.current-menu-parent>a {	font-weight: bold;	color: #29abe2;}
.menu-principal ul.menu>li:hover>a{	background-color: var(--main-dark-blue);	color: #fff;}



/* submenu */
.menu-principal ul.menu .sub-menu-wrap {visibility: hidden; opacity: 0; position: absolute; top: 100%; padding: 20px; left: 0; width: 100%; background-color: var(--main-dark-blue); }
.menu-principal ul.menu>li:hover>a + .sub-menu-wrap {visibility: visible; opacity: 1;}
.menu-principal ul.menu .sub-menu-wrap>ul {max-width: 1450px; margin: 20px auto; /*columns: 4; -webkit-columns: 4; -moz-columns: 4;*/}
.menu-principal ul.menu .sub-menu-wrap>ul>li {/*page-break-inside: avoid; break-inside: avoid-column;*/ /*display:table;*/}
.menu-principal .menu-primaire-divide {/*page-break-inside: unset!important; break-inside: unset!important;*/}
.menu-principal ul.menu .sub-menu-wrap>ul>li:not(.menu-item-has-children) + li {margin-top: 12px;}
.menu-principal ul.menu .sub-menu-wrap>ul ul {margin-bottom: 20px; margin-left: 20px; margin-top: 3px;}
.menu-principal ul.menu .sub-menu-wrap>ul ul>li { }
.menu-principal ul.menu .sub-menu-wrap a {color: #fff; display: inline-block;}
.menu-principal ul.menu .sub-menu-wrap>ul>li>a {font-weight: bold; font-size: 1em;}
.menu-principal ul.menu .sub-menu-wrap li ul a {font-size: 0.95em; margin-bottom: 7px;}
.menu-principal ul.menu .sub-menu-wrap a:hover {text-decoration: underline;}

/* menu secondaire */
.menu-secondaire {background-color: #7ac2ea;}
.menu-secondaire a {color: #fff; font-family: 'Roboto', sans-serif;}
.social-medias-wrapper-block {display: flex; flex-direction: column; justify-content: center;}
.social-medias-wrapper {display: flex; flex-direction: row; align-items: center;}
.social-medias-wrapper a:hover i {	color: #fff; background-color: #226cb4;}
.social-medias-wrapper i {	width: 35px; height: 35px; font-size: 18px; background-color: #fff; color: #5caae0;	margin: 0 2px 0 6px;	transition: all 0.25s; border-radius: 50%;     display: flex; flex-direction: row; justify-content: center; align-items: center;}
.menu-secondaire ul {display: flex; flex-direction: row;}
.menu-secondaire ul li:not(:last-child) {margin-right: 40px;}
.menu-secondaire ul li a {z-index: 1; font-size: 24px; line-height: 1em; display: inline-block; text-transform: uppercase; font-weight: bold; color: #fff; padding: 18px 18px 17px 18px; position: relative;}
.menu-secondaire ul li.current-menu-item a:after {z-index: -1;position: absolute; width: 42px; height: 38px; transform:translateY(-50%) ;top: 47%; left: 0; content: ""; background-image:url('images/icon/icon-menu-secondary-active.png'); background-repeat: no-repeat;}

.cart-icon-menu {position: relative;}
.cart-icon-menu span {position: absolute; bottom: -5px; right: -3px; background-color: var(--secondary-light-blue); border-radius: 25px; padding: 2px; aspect-ratio: 1; font-size: 11px; width: 16px; height: 16px; line-height: 13px; text-align: center;}

/* menu mobile */
.menu-mobile { display: none;	position: relative; 	background-color: var(--main-light-blue);	width: 100%;	/*display: flex;*/	-webkit-flex-direction: row;	flex-direction: row;	justify-content: center;    align-items: center;}
.menu-mobile-block {display: none;	position: absolute;	left: 0;	top: 100%;	width: 100%;	background: url('images/general/menu-mobile-bg.png') no-repeat #fff;	z-index: 9; border-bottom: 6px solid var(--main-light-blue); background-size: contain; background-position: center top;}

.menu-mobile a.link-menu-icon{	color: #000;	font-size: 2.5em;	padding: 15px;	display: block;}
.header-mobile-search { flex: 1 1 auto; text-align: right;}
.header-mobile-link {/*width: 60px;*/}
.btn-mobile-menu.open a {	background-color: #fff;}
.btn-mobile-menu.open a i {	color: var(--main-light-blue);}

#menu-mobile ul {margin-bottom: 0;}
#menu-mobile .sub-menu {display: none;}
#menu-mobile .menu-item-has-children, #menu-mobile .page_item_has_children {display: flex; flex-wrap: wrap;}
#menu-mobile .menu-item-has-children>a, #menu-mobile .page_item_has_children>a {order: 1; flex: 1 1 calc(100% - 60px);}
#menu-mobile .menu-item-has-children>.submenu-btn, #menu-mobile .page_item_has_children>.submenu-btn {order: 2; width: 60px; flex: 1 1 auto; display: flex;  align-items: center; justify-content: center; padding: 15px; cursor: pointer; color: var(--main-light-blue); font-size: 1.8em;}
#menu-mobile .menu-item-has-children>ul, #menu-mobile .page_item_has_children>ul {order: 3; width: 100%;}

.menu-mobile-block ul ul {background-color: rgba(17,65,116,0.08); }
.menu-mobile-block li a {	color: var(--main-dark-blue); display: block; font-family: 'Roboto', sans-serif; font-size: 1.8em;	line-height: 1.2em;	padding: 20px min(20px, 2%);}


.mobile-social { margin-top: 30px; margin-bottom: -30px; z-index: 1;}
.mobile-social .social-medias-wrapper {justify-content: flex-end;}
.mobile-social a i {width: 55px; height: 55px; font-size: 30px; box-shadow: 2px 2px 3px rgba(230,230,230,0.25);}

/* header single page */
#header-title-wrapper {height: 330px;  position: relative; background-color: #226cb4; }
#header-title-wrapper >.container {display: flex; align-items: center; height: 100%}
#header-title-wrapper .header-entete-img { width: min(50%, 730px); flex: 0 1 auto; height: 100%; padding: 18px 0; position: relative;}
#header-title-wrapper .header-entete-img:after {content: ""; position: absolute; left: 6px; top: 24px; width: calc(100% - 12px); height: calc(100% - 48px); border: 2px solid var(--main-green); box-sizing: border-box; box-shadow: -3px 3px 15px rgba(0,0,0,0.3);}
#header-title-wrapper .header-entete-img img { max-height: 100%; height: 100%!important; object-fit: cover; width: 100%; mix-blend-mode: luminosity; opacity: 0.76;}
#header-title-wrapper .header-title {width: 50%; flex: 1 1 50%}
#header-title-wrapper .header-title h1 {font-family: 'Roboto', sans-serif; font-size: 3em; font-weight: bold; color: #fff; line-height: 1em; letter-spacing: 0.05em; margin-bottom: 5px; min-height: 2.1em; text-transform: initial;}
.header-title {height: 100%; padding: 35px 0 45px 0; display: flex; flex-direction: column; align-items: space-between; justify-content: space-between;}
#header-title-wrapper:after {content: ""; position: absolute; bottom: 15px; height: 6px;  width: 100%; left: 0; background-color: var(--main-green);}

/* fil ariane */
.fildariane {display: flex; flex-direction: row;}
.fildariane a {position: relative; display: flex; color: #fff; flex-direction: row;  justify-content: flex-start;  align-items: center; }
.fildariane a .ariane-title {display: inline;}
.fildariane a:not(:last-child):after {content: " / "; color: #fff; margin-left: 5px; margin-right: 8px;}
.fildariane a:is([href]):hover .ariane-title {text-decoration: underline;}

/* ***************************** home ******************* */
/* home quicklinks */
.home-quicklinks a {display: block; padding: 20px 15px 15px 15px; transition: all 0.35s;}
.home-quicklinks a:hover {background-color: var(--secondary-dark-blue);}
.home-quicklinks .elementor-heading-title, .home-quicklinks a {display: flex; height: 100%; justify-content: center; align-items: center; width: 100%;}

/* home event */
.list-single-event a:hover {text-decoration: none!important;}
.single-event-short {padding: 8px; color: var(--main-black);}
.single-event-short-img {margin-bottom: 20px; text-align: center;}
.single-event-short-title {margin-bottom: 15px;}
h4.single-event-short-title {color: var(--main-black); font-weight: bold;}
.single-event-short-excerpt {margin-bottom: 20px; margin-top: 20px;}
.single-event-short-btn {text-align: center;  }
.single-event-short-btn span {font-family: "Roboto", Sans-serif; font-weight: 700; text-transform: uppercase; color: #fff; font-size: 16px; background-color: var(--main-dark-blue); border-radius: 5px 5px 5px 5px; padding: 15px 60px 15px 60px; display: inline-block;}
.list-single-event a:hover .single-event-short-btn span {text-decoration: underline;}


.home-list-event-wrapper {padding: 20px;}
.home-list-event {list-style-type: none;}
.list-event-basic-link a {font-size: 1.4em; line-height: 1.15em; color: var(--main-black)!important; font-family: "Roboto Slab", Sans-serif; font-weight: 500;}
.list-event-basic-link:not(:last-child) {margin-bottom: 10px;}
.list-event-basic-link span {font-size: 0.75em; display: block;}

.small-calendar .fc-toolbar.fc-header-toolbar {flex-direction:column;} 
.small-calendar .fc-toolbar-chunk { display: table-row; text-align:center; padding:5px 0; } 
.small-calendar #event-calendar {background: #fff;}
.small-calendar h2, .small-calendar a { color: var(--main-black)!important;}
.small-calendar .fc-daygrid-day-number { font-size: 0.75em; padding: 2px; line-height: 1em;}
.small-calendar .fc .fc-daygrid-day-bottom .fc-daygrid-more-link { font-size: 0.65em; padding: 2px; line-height: 1em; background-color: var(--main-dark-blue); color: #fff!important;}
.small-calendar .fc .fc-button-primary {background-color: var(--main-dark-blue); border-color: var(--main-dark-blue);}
.small-calendar .fc .fc-button-primary:hover {background-color: var(--main-very-dark-blue); border-color: var(--main-very-dark-blue);}
.fc-toolbar-title {text-transform: capitalize;}

/* home list formation slidr */
.list-formations-slider-bloc>a {display: flex; flex-direction: column; text-align: center;}
.list-formations-slider-bloc h4 {font-family: "Roboto", Sans-serif; font-size: 1.3em; line-height: 1.15em; min-height: 2.3em; font-weight: 500;}
.list-formations-slider-bloc .list-formations-slider-bloc-img {margin: 5px 0 15px 0;}
.list-formations-slider-bloc-content {margin-top: auto; flex: 1 1 auto}
.list-formations-slider-bloc .list-formations-slider-bloc-meta {min-height: 2em;}

.home-list-formations-slider.tns-slider { display: flex;}
.home-list-formations-slider .tns-item { height: 100%;}

/* slider nav */
.home-list-formations-slider-wrapper {position: relative;}
.list-formations-slider-nav {position: absolute; height: 100%; width: 100%; top: 0; right: 0; bottom: 0; left: 0;}
.list-formations-slider-nav .prev, .list-formations-slider-nav .next {/*width: 0; height: 0;*/ /*border-top: 60px solid transparent; border-bottom: 60px solid transparent;*/ top: 50%; transform: translateY(-50%); position: absolute; cursor: pointer; transition: all 0.35s;}
.list-formations-slider-nav .prev[aria-disabled="true"], .list-formations-slider-nav .next[aria-disabled="true"],  {opacity: 0.5; cursor: not-allowed;}
.list-formations-slider-nav .prev {/*border-right: 60px solid var(--main-green);*/ left: -55px!important; color: var(--main-green); font-size: 70px;}
.list-formations-slider-nav .next {/*border-left: 60px solid var(--main-green);*/ right: -55px!important; color: var(--main-green); font-size: 70px;}

.tns-outer {position: relative;}
.tns-controls {position: absolute; top: 50%; transform: translateY(-50%); width: 100%}
.tns-controls button[data-controls=prev], .tns-controls button[data-controls=next] {top: 50%; transform: translateY(-50%); position: absolute; cursor: pointer; transition: all 0.35s; background-color: transparent!important; padding: 0!important; border: none;}
.tns-controls button[data-controls=prev][disabled], .tns-controls button[data-controls=next][disabled] {opacity: 0.5; cursor: not-allowed;}
.tns-controls button[data-controls=prev] {left: -55px!important; color: var(--main-green); font-size: 70px;}
.tns-controls button[data-controls=next] {right: -55px!important; color: var(--main-green); font-size: 70px;}
.sb_youtube #tns1 > .tns-item {padding-right: 35px!important}

/* home gallery */
.home-gallery .elementor-swiper-button-prev {left: -60px!important; top: 60%!important; }
.home-gallery .elementor-swiper-button-next {right: -60px!important; top: 60%!important; }
.home-gallery .elementor-swiper-button-prev svg, .home-gallery .elementor-swiper-button-next svg{width: 40px!important; height: 80px!important;}
.home-gallery .swiper-slide-inner {display: flex; flex-direction: column;}
.home-gallery .swiper-slide-inner .swiper-slide-image {order: 2;}
.home-gallery .swiper-slide-inner .elementor-image-carousel-caption {order: 1; min-height: 2.5em; margin-bottom: 5px;}


/* *********************** le centre ********************** */ 
.centre-listicon {max-width: 80%; margin-left: auto!important; margin-right: auto!important;}
.centre-listicon .elementor-image-box-img {padding: 15px; border-radius: 100px; background-color: #ccc; width: min(100%, 100px)!important; aspect-ratio: 1; max-height: 100px; border: 3px solid #fff; box-shadow: 3px 3px 5px rgba(0,0,0,0.5); margin-right: min(10%, 75px)!important;}
.centre-listicon .elementor-image-box-img img {height: 100%; width: auto;}
.centre-listicon .elementor-image-box-description {margin-left: min(10%, 75px)!important; margin-top: 20px!important;}
.centre-listicon .elementor-image-box-description:before {content: "> "; margin-right: 3px;}

/* ********************** archives ******************* */
.container-archives {display: flex; flex-direction: row;}
.archives-left {flex: 1 1 auto;}
.archives-right {flex: 0 0 min(500px, 40%); margin-left: 30px;}

.sidebar-search {background-color: var(--secondary-dark-blue); padding: 40px min(30px, 5%);}
.sidebar-search .searchform {background-color: #fff;}
.sidebar-search .searchform>div {display: flex; flex-direction: row;}
#sidebar-search-input {color: #7f7a7a; outline: unset; border: none!important; box-shadow: none!important; font-size: 18px;}
.sidebar-search button[type=submit] {font-size: 18px; background: none!important; border: none!important; box-shadow: unset!important; padding: 15px!important;  outline: none!important; color: #7f7a7a;}
.sidebar-search {position: relative;}
#sidebar-search-input::placeholder {color: #7f7a7a;}

.sidebar-news>*:not(:last-child) {margin-bottom: 30px;}
.sidebar-news h3 {color: #0e0e0e; font-family: 'Roboto Slab', serif; font-weight: bold; margin-bottom: 25px;}
.sidebar-bloc-widget {background-color: var(--main-light-blue); padding: 40px min(30px, 5%);}
.sidebar-single-cat a {background-color: #fff; color: #7f7a7a; font-family: 'Roboto', sans-serif; font-weight: 500; display: flex; flex-direction: row; padding: 15px; font-size: 1.05em; align-items: center; transition: all 0.35s;}
.sidebar-single-cat a:hover {background-color: var(--main-dark-blue); color: #fff; }
.sidebar-single-cat a i {margin-right: 8px;}
.sidebar-single-cat:not(:last-child) {margin-bottom: 15px;}
.single-cat-count {margin-left: auto;}

.sidebar-single-post a {display: flex; flex-direction: row; background-color: #fff; transition: all 0.35s; align-items: center;}
.sidebar-single-post a:hover {background-color: var(--main-dark-blue);}
.sidebar-single-post a:hover .sidebar-single-post-title, .sidebar-single-post a:hover .sidebar-single-post-date {color: #fff;}
.sidebar-single-post:not(:last-child) {margin-bottom: 30px;}
.sidebar-single-post-img {flex: 0 0 110px;}
.sidebar-single-post-content {padding: 7px 10px;}
.sidebar-single-post-title {color: #7f7a7a ; font-size: 0.8em; line-height: 1.2em;}
.sidebar-single-post-date {color: #072a68; /*font-size: 1.1em; */font-family: 'Roboto Slab', serif; font-weight: bold; margin-top: 2px;}

/* navigation */
.navigation.pagination {margin-top: 40px;}
.navigation.pagination .nav-links {text-align: center; }
.navigation.pagination .nav-links a, .navigation.pagination .nav-links span{	display: inline-block;	padding: 5px 8px;	background-color: var(--main-dark-blue);	color: #fff;}
.navigation.pagination .nav-links a:hover, .navigation.pagination .nav-links span{	opacity: 0.7;}

/* ********************** nouvelles ******************* */
.list-article-block {background-color: #fff; box-shadow: 0 0 15px rgba(190, 210, 220, 0.2);}
.list-article-block:not(:last-child) {margin-bottom: 40px;}
.blog-list-content-wrapper {padding: 40px min(30px, 5%);}
.blog-list-content-wrapper>*:not(:last-child) {margin-bottom: 30px;}
.blog-meta {display: flex; flex-direction: row;}
.blog-meta>*:not(:last-child) {margin-right: 25px;}
.list-article-title h4 {margin-bottom: 0; color: #000; font-family: 'Roboto Slab', serif; font-weight: bold; font-size: 2.65em;}
.list-article-excerpt {/*font-size: 1.2em;*/ color: #7f7a7a; line-height: 1.7em;}
.list-article-link a {background-color: var(--main-light-blue); color: #fff; border-radius: 5px; padding: 20px; text-transform: uppercase; font-family: 'Roboto', sans-serif; display:inline-block; font-weight: bold; font-size: 1.1em; transition: all 0.35s;}
.list-article-link a:hover {background-color: var(--main-dark-blue); color: var(--main-yellow);}

.blog-meta .fa-user {color: #48cee5!important;}
.blog-meta .fa-heart {color: #d068e5!important;}
.blog-meta {font-size: 1.05em;}

/* nouvelle */
.single .blog-thumb, .single .blog-meta, .single .list-article-title {margin-bottom: 30px;}

/* offre emploi */
.joboffer-cf7 {background-color: var(--tertiary-light-blue); padding: 50px; margin-top: 80px;}

/* event */
.list-event-date span {font-style: italic;}
.list-event-date:last-child() {	margin-bottom: 20px;}
#scl-map {margin-top: 35px;}

/* formation */
.single-formation table tr:last-child {font-weight: bold; }

/* **************************** list formation ********************* */
.formations-list-cats {display: flex;	flex-direction: row;	flex-wrap: wrap;	justify-content: center;	margin-bottom: 60px;}
.formations-list-cats a {	position: relative;	width: 25%;	border: 1px solid #a7a7a7;}
.formations-list-cats a img {	filter: grayscale(100%);	transition: all 0.35s;}
.formations-list-cats a:hover img {	filter: grayscale(0);}
.formations-list-cats a>div {	position: absolute;	width:100%;	height: 100%;	top:0;	left:0;	display: flex;	justify-content: center;	align-items: center;	background-color: rgba(0,0,0,0.4);	padding: 10px;}
.formations-list-cats a>div h4 {	color: #fff;	text-align: center;}
.formations-cat-list {	display: flex;	flex-direction: row;	flex-wrap: wrap;	margin-bottom: 60px;}
.formation-bloc {	width: 25%;	position: relative;	border: 1px solid #a7a7a7;}
.formation-thumb-content {	position: absolute;	width:100%;	height: 100%;	top:0;	left:0;	display: flex;	flex-direction: column;	justify-content: center;	align-items: center;	background-color: rgba(0,0,0,0.5);	color: #fff;	padding: 15px;	text-align: center;}
.formation-thumb-content h4 {	font-size: 1em; color: #fff}
.formation-btn {	border: 2px solid var(--secondary-light-blue);	padding: 6px 20px;}
.formation-btn:hover {	background-color: var(--secondary-light-blue);}

/* single formation */
/* ************************** single formation ********************** */
.formation-banner {margin: 0 10%;	text-align: center;}
#banniere-formation{	margin: 0 auto;    border: 1px solid #ddd;    border-radius: 4px;}
.formation-meta {	display: flex;	flex-direction: row;	background-color: var(--main-dark-blue);	color: #fff;	margin-top: 60px;	margin-bottom:60px;}
.formation-meta-bloc {	padding: 15px;	flex: 1 1 auto;    width: 0;}
.formation-meta-bloc h4 {	font-weight: bold;	margin-bottom: 10px; color: #fff;}
.formation-meta-bloc:not(:last-child) {	border-right: 2px solid #fff;}
.cfcdg-btn-inscription-row {	text-align: center;	margin: 50px auto;}
.cfcdg-btn-inscription {	display: inline-block;  margin: 0 auto;  padding: 8px 20px;  border: 4px solid var(--main-dark-blue);  font-size: 1.8em; line-height: 1em;   font-weight: bold;  color: #000; transition: all 0.35s;}
.cfcdg-btn-inscription:hover {background-color: var(--main-dark-blue);	color: #fff;}
.single-formation .page-title {text-align: center;}



/* ************** footer *************** */
#footer {position: relative;}
.footer-tpl h3 {color: var(--main-light-blue)!important;}
.footer-tpl .elementor-button-link:hover {background-color: var(--main-dark-blue)!important; color: var(--main-yellow)!important;}
.footer-tpl .elementor-icon-box-icon span, .footer-tpl .elementor-icon-box-icon a {color: var(--main-light-blue)!important;}
#footer a:not(.elementor-icon) {font-size: 0.9em;}

.footer-contact-icon-list .elementor-icon-box-title {margin-bottom: 0;}
.footer-contact-icon-list .elementor-icon {background-color: #fff; padding: 7px; border-radius: 5px;}
.footer-contact-icon-list .elementor-icon-box-wrapper {align-items: center!important;}

.footer-content {	display: flex;	flex-direction: row;	padding: 65px 65px 40px 65px;	background-color: #ededed;}

.copyright {text-align: center;	padding: 20px;}
.copyright img {display: block; margin: 0 auto 15px auto}
.copyright a {text-decoration: underline!important;}

/* *************** form ****************** */
form {position: relative;}
form h3 {margin-top: 30px;}
form label {display: none; color: var(--main-light-blue);}
.showlabel label {display: block; margin-bottom: 5px;}
.wpcf7-form .form-row p {width: 100%;}
form input:not([type=checkbox]):not([type=radio]), form textarea, form select {	padding: 20px;	font-size: 1em;	font-family: 'Roboto', sans-serif!important;	border: 2px solid var(--tertiary-light-blue);	border-radius: 5px;	display: block;	max-width: 100%; box-shadow: 0 3px 12px 0 rgba(101,101,101,0.25);}

form input[type=file] {background-color: #fff;}

.wpcf7-form .form-row {	display: flex;	flex: 1 1 auto;}
.wpcf7-form .form-row>div {	flex: 1 1 auto;}
.wpcf7-form .form-row>div:not(:last-child) {margin-right: 20px;}
.form-row:not(:last-child) {margin-bottom: 15px;}
form input:not([type=checkbox]):not([type=radio]), form textarea, form select, form .row-submit button, form .row-submit input[type=submit] {width: 100%; box-sizing: border-box;	-webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; -o-appearance: none; appearance: none;}
.wpcf7-form-control-wrap label {display: block;} 
/*form .row-submit {text-align: center;	justify-content: center; margin-top: 20px;}
form .row-submit button, form .row-submit input[type=submit] {display: block;	color: var(--main-light-blue);	font-weight: bold;	border: 3px solid var(--main-light-blue);	border-radius: 5px; font-size: 1.10em;	padding: 15px;	transition: all 0.35s;	cursor: pointer; text-transform: uppercase; background-color: transparent;}
form .row-submit button:hover, form .row-submit input[type=submit]:hover {color: #fff; background-color: var(--main-light-blue);}*/

form .row-submit {text-align: center;}
form .row-submit button, form .row-submit input[type=submit] {display: inline-block; width: auto;	color: #fff; background-color: var(--main-green); border:none;	font-weight: bold;	border-radius: 5px; font-size: 1.10em;	padding: 15px 50px;	transition: all 0.35s;	cursor: pointer; text-transform: uppercase;}
form .row-submit button:hover, form .row-submit input[type=submit]:hover {transform: scale(1.1);}

::placeholder {  color: var(--main-light-blue); opacity: 1; }
:-ms-input-placeholder { color: var(--main-light-blue);}
::-ms-input-placeholder { color: var(--main-light-blue);}

/* *********************** woocommerce **************** */
.container-shop {padding: 80px 0;}
.woocommerce-ordering, .woocommerce-breadcrumb {display: none;}
.main-shop-content .product, .related.products .product {background-color: var(--secondary-light-blue); color: #fff; text-align: center; display: flex; flex-direction: column;}
.main-shop-content .product h2, .related.products .product h2 {color: #fff;}
.main-shop-content .product .price, .related.products .product .price {color: #fff!important;}
.main-shop-content .product .button, .related.products .product .button {margin-bottom: 8px; margin-top: auto!important; margin-right: 10px; margin-left: 10px;}
.main-shop-content .product img, .related.products .product img {margin-bottom: 0px!important;}
.main-shop-content .woocommerce-result-count {text-align: center; float: unset!important;}
.woocommerce ul.products li.product .button, .wc-block-cart__submit-button {background-color: var(--main-green); color: #fff; transition: all 0.35s; }
.woocommerce ul.products li.product .button:hover, .wc-block-cart__submit-button { background-color: #618306; }
.wc-block-cart__submit-button {border-radius: 3px;}
.products.columns-4, .products.columns-3 {display: flex; flex-direction: row; gap: 20px; flex-wrap: wrap;}
.products.columns-4:before, .products.columns-3:before {content: none!important;}
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {flex: 0 0 calc(25% - 20px); margin: 0!important;}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt {background-color: var(--main-green);}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt:hover {background-color: #618306; }

#primary + #sidebar-shop {display: none;}
.wc-block-components-panel__button {background-color: transparent!important;}


/* ********************* galerie ************************* */
.single-rl_gallery .rl-gallery-caption {position: static!important; flex: 1 1 auto; background-color: var(--main-dark-blue)!important;}
.single-rl_gallery .rl-gallery .rl-gallery-link {display: flex; flex-direction: column; height: 100%;}
.galerie-btn {margin-top: 10px;}
.galerie-btn a {fill: var(--e-global-color-primary); color: var(--e-global-color-primary)!important; background-color: var(--e-global-color-365ad6c)!important;}



/*  *************** erreur 404 ***************** */
.page404 {text-align: center;}
.page404 .sidebar-search {margin: 0 auto 50px auto; width: min(500px, 100%);}

/* ************** search ************************ */
.list-search-block:not(:last-child) {margin-bottom: 35px;}
.list-search-title {display: flex; flex-direction: row; align-items: center;}
.list-search-title>*:not(:last-child) {margin-right: 10px;}
.list-search-title h4 {margin-bottom: 0;}

/* ************** fichiers ******************** */
.files-render-bloc {margin-bottom: 50px;}

/* ************** table ******************** */
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) {border-collapse: separate; border-spacing: 0; margin-bottom: 35px;}
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) tr:first-child {background-color: var(--main-very-dark-blue); color: var(--main-light-blue); font-weight: bold; }
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) tr:first-child td {border-top: 1px solid var(--main-light-blue); padding: 12px; }
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) tr {border-bottom: 1px solid var(--main-light-blue);}
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) td {padding: 6px 10px; border-right: 1px solid var(--main-light-blue); border-bottom: 1px solid var(--main-light-blue);}
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) td:first-child {border-left: 1px solid var(--main-light-blue);}
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) td:not(:last-child) {border-right: 2px solid var(--main-light-blue);}
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) tr:first-child td:first-child { border-top-left-radius: 15px; border-collapse: separate}
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) tr:first-child td:last-child {border-top-right-radius: 15px; border-collapse: separate}
table:not(.fc-scrollgrid):not(.fc-col-header ):not(.fc-scrollgrid-sync-table):not(.wc-block-cart-items) tr:not(:first-child):nth-child(odd) {background-color: rgba(0,0,0,0.05);}


/* ***************** elementor module ************* */
/* list post  */
.list-post-short-wrapper {display: flex; flex-direction: row; justify-content: space-between;}
.list-post-short-wrapper>a {width: 48%;}
.article-short {color: var(--main-black); display: flex; flex-direction: row; box-shadow: 0 0 rgba(0,0,0,0); transition: all 0.35s;}
.article-short:hover {box-shadow: 3px 3px 10px rgba(0,0,0,0.2);}
h4.article-short-title  {color: var(--main-black)!important; font-size: 1.45em;}
.article-short-img {position: relative; width: 45%;}
.article-short-img img {width: 100%; height: 100%!important; object-fit: cover;}
.article-short-date {position: absolute; width: 70px; padding: 14px; bottom: 10px; right: 15px; background-color: var(--main-light-blue); color: #fff; font-size: 30px; text-align: center; line-height: 0.8em; font-family: 'Roboto Slab', serif; font-weight: bold; }
.article-short-date span {font-size: 19px; font-family: 'Roboto', sans-serif; }
.article-short-cat {color: var(--main-grey);}
.article-short-cat i {color: var(--main-light-blue); margin-right: 5px;}
.article-short-header:after {content: ""; display: block; margin-left: -15px; width: 40%; height: 2px; background-color: #fbf7f2; margin-top: 15px;}
.article-short-content {width: 55%;  border-top: 2px solid #fbf7f2; border-right: 2px solid #fbf7f2; border-bottom: 2px solid #fbf7f2;}
.article-short-content>div {padding: 15px;}
.article-short-excerpt {font-size: 0.9em;}
.no-news-list {margin-bottom: 30px;}

/*  list carriere cat */
.home-list-emploi-cats {/*background-color: #ebf6fc; border-radius: 10px;*/ padding: 12px 25px;}
.home-list-emploi-cats a {display: block; font-size: 1.15em; font-style: italic; font-weight: 600;}
.home-list-emploi-cats a:hover {text-decoration: underline;}
.home-list-emploi-cats a i {margin-right: 12px;}
.home-list-emploi-cats a:not(:last-child) {margin-bottom: 15px;}

/* list links */
.list-links-wrapper a {transition: all 0.35s; display: inline-block;}
.list-links-wrapper a i {margin-right: 8px;}
.list-links-wrapper>div:not(:last-child) {margin-bottom: 15px;}
.list-links-wrapper a:hover {color: var(--main-light-blue); transform: translateX(10px);}

/* embed pdf */
.embed-pdf, .elementor-widget-csscc_pdf_embed {width: 100%; height: max(90vh, 1000px);}
.embed-pdf object {width: 100%; height: max(90vh, 1000px);}
.pdf-mobile {display: none; text-align: center;}
.pdf-mobile.show {display: block;}
.pdf-desktop.hide {display: none;}
.pdf-mobile canvas {max-width: 100%;}
.pdf-mobile.is_loading {}
.pdf-mobile .loading {padding: 50px 0;}
.pdf-mobile .loading div {border-top: 8px solid var(--main-dark-blue);border-radius: 50%;	width: 60px;	height: 60px;	animation: spin 2s linear infinite; margin: 0 auto;}
.joboffer-link-pdf {display: inline-block; margin-bottom: 15px; font-size: 1.2em; text-decoration: underline;}

/* list galerie plugin */
/* plugin slider gallery lightbox */
img.mfp-img {padding: 70px 0 !important}
.mfp-bottom-bar {margin-top: -65px!important;}
.mfp-figure:after {top: 70px; bottom: 70px!important;}

.list-galeries h4 {/*color: #000; */margin-bottom: 5px; min-height: unset;}
#swipebox-bottom-bar {bottom: 50%!important; transform: translateY(50%)!important; -webkit-transform: translateY(50%)!important; background: unset!important;}
#swipebox-bottom-bar a {padding: 10px; background-color: var(--main-dark-blue);}
#swipebox-arrows {max-width: unset!important;}
body>.rl-gallery-container {display: none;}

/* plugin list video youtube */
.sby_video_thumbnail {height: unset!important; padding-top: 56%;}


.elementor-widget-container a:hover {text-decoration: underline;}


/* ************** elementor editor debut *************** */
.elementor-editor-active .home-list-formations-slider {display: flex; flex-direction: row; gap:3%;}
.elementor-editor-active .home-list-formations-slider>* {flex: 0 0 22%;}
.elementor-editor-active .home-list-formations-slider>*:nth-child(n+5) {display: none; }
.elementor-editor-active .list-galeries .home-list-formations-slider .rl-gallery>*:nth-child(n+2) {display: none; }