/*
Theme Name: Ofelia
Text Domain: https://ofelia.fr
Version: 1.1
Description: Thème sur-mesure pour Ofelia
Author: Groupe Spirale
Author URI: https://spirale-developpement.com/

License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/**
 * Normalize
 *
 * Normalizing styles have been helped along thanks to the fine work of
 * Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
 */
 * {
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box; 
}

html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

h1, h2, h3 { font-weight: normal; }

a, button, .btn {
	background-color: transparent;
	text-decoration: none;
	-webkit-transition: all .5s ease 0s;
	-o-transition: all .5s ease 0s;
	transition: all .5s ease 0s;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: 700;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 0;
}

hr {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

code,
kbd,
pre,
samp {
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
	-webkit-transition: all .5s ease 0s;
	-o-transition: all .5s ease 0s;
	transition: all .5s ease 0s;
}

select {
	text-transform: none;
}

button {
	overflow: visible;
}

button,
input,
select,
textarea {
	max-width: 100%;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
	opacity: .5;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input[type="checkbox"],
input[type="radio"] {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-right: 0.4375em;
	padding: 0;
}

input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button,
input[type="time"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-outer-spin-button,
input[type="datetime-local"]::-webkit-inner-spin-button,
input[type="datetime-local"]::-webkit-outer-spin-button,
input[type="week"]::-webkit-inner-spin-button,
input[type="week"]::-webkit-outer-spin-button,
input[type="month"]::-webkit-inner-spin-button,
input[type="month"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #d1d1d1;
	margin: 0 0 1.75em;
	min-width: inherit;
	padding: 0.875em;
}

fieldset > :last-child {
	margin-bottom: 0;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

optgroup {
	font-weight: bold;
}


.nomargint {
	margin-top: 0!important;
}

.nomarginb {
	margin-bottom: 0!important;
}

/**
 * Alignments
 */

.alignleft {
	float: left;
	margin: 0.375em 1.75em 1.75em 0;
}

.alignright {
	float: right;
	margin: 0.375em 0 1.75em 1.75em;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto 1.75em;
}

blockquote.alignleft {
	margin: 0.3157894737em 1.4736842105em 1.473684211em 0;
}

blockquote.alignright {
	margin: 0.3157894737em 0 1.473684211em 1.4736842105em;
}

blockquote.aligncenter {
	margin-bottom: 1.473684211em;
}



/**
 * Captions
 */

.wp-caption {
	margin-bottom: 1.75em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0;
}

.wp-caption .wp-caption-text {
	color: #686868;
	font-size: 13px;
	font-size: 0.8125rem;
	font-style: italic;
	line-height: 1.6153846154;
	padding-top: 0.5384615385em;
}


/**
 * Galleries
 */

.gallery {
	margin: 0 -1.1666667% 1.75em;
}

.gallery-item {
	display: inline-block;
	max-width: 33.33%;
	padding: 0 1.1400652% 2.2801304%;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-1 .gallery-item {
	max-width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-icon img {
	margin: 0 auto;
}

.gallery-caption {
	color: #686868;
	display: block;
	font-size: 13px;
	font-size: 0.8125rem;
	font-style: italic;
	line-height: 1.6153846154;
	padding-top: 0.5384615385em;
}

.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
	display: none;
}

/* Wordpress wp-adminbar not fixed < 600 */
@media screen and (max-width: 600px) {
	body.logged-in #site-header.scrolled {
		margin-top: 0!important;
	}
}

/**
* End Normalize
*/

/*=====================================================
	GENERAL
======================================================*/

:root {
	--black: #333;
	--white: #fff;
	--yellow: #ffdc4e;
	--lightyellow : #ffe683;
	--red : #e94559;
	--lightred : #fdecee;
	--darkblue : #20388a;
	--lightgray : #f2f2f2;
}

.grecaptcha-badge { opacity:0; visibility:hidden; }
#cmplz-document { margin: 50px auto; }

body {
	font-size: 16px;
}

.container {
	max-width: 1080px;
	margin: 0 auto;
}

img { max-width:100%; height:auto; }

/*=====================================================
	HEADER
======================================================*/

#header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 200;
  padding: 0;
  background-color: var(--white);
}

#top-header {
	display:block;
	overflow: hidden;
}

#top-header .container {
	padding-top: 10px;
	padding-bottom: 10px;
}

#main-header > .container {
	display: flex;
	align-items: center;
	padding-top: 10px;
	justify-content: space-between;
	padding-bottom: 10px;
	max-width: 1080px;
}

#top-header ul { 
	gap: 1em;
	list-style-type: none;
	display: flex;
	justify-content: flex-end;
}

#top-header a {
	margin-top: 0;
}

#top-header a:hover { opacity: .5; }

#header #open-menu {
  display: none;
  background-color: var(--darkblue);
  color: var(--white);
  border: 1px solid var(--darkblue);
  width: 40px;
  height: 40px;
  margin-left: auto;
  font-size: 1.2em;
  margin-left: 20px;
  border-radius: 5px;
  line-height: 40px;
}

#header .custom-logo-link {
	display: block;
  margin-top: -70px;
  margin-bottom: 0;
}

#header .custom-logo { 
	transition: all .5s ease 0s;
	display: block;
	width:100px;
	margin: 0;
}

#main-header > .container > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: calc(100% - 187px);
}

#header nav { width:100%; font-size: .9em; }

#header nav ul.menu {
	display: flex;
	gap: .5em;
	position: relative;
}

#header nav ul.menu li {
	list-style-type: none;
}

#header nav ul.menu > li { 
	position: relative;
}

#header nav ul.menu > li > a {
	padding: 12px 10px;
  color: var(--darkblue);
  font-weight: bold;
  display: block;
  width: 100%;
  text-align: center;
}

#header nav ul.menu > li.current_page_item > a { opacity: .8; }

#header nav ul.menu .sub-menu::before {
	position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50px;
  background-color: var(--red);
  top: -5px;
  left: 10px;
}

#header nav ul.menu .sub-menu {
	background-color: #fff;
  position: absolute;
  margin-top: 2em;
  opacity: 0;
  visibility: hidden;
  transition: all .5s ease 0s;
  min-width: 220px;
  padding: 0;
  border-radius: 0 0 10px 10px;
  border-top: 1px solid var(--darkblue);
}

#header nav ul.menu li:hover > .sub-menu {
	opacity: 1;
	visibility: visible;
	margin-top: .5em;
}

#header nav ul.menu .sub-menu li:not(:last-child) {
	border-bottom: 1px solid var(--lightgray);
}

#header nav ul.menu .sub-menu li a {
	display: block;
	padding: 12px 18px;
	color: var(--darkblue);
}

#header nav ul.menu .sub-menu li a:hover { 
	background-color: var(--lightgray);
}

#header nav ul.menu .sub-menu li.current_page_item > a {
	font-weight: bold;
}

#header .sub-arrow {
	font-size: 0.7em;
  margin-left: 5px;
}

#header.scrolled { background-color: var(--white); }
#header.scrolled #top-header { display:none; }
#header.scrolled .custom-logo-link { margin-bottom: 0; max-width: 100px; margin-top: 0; }

/*=====================================================
	Front Page
======================================================*/

#site-main { min-height: 60vh; }

.wp-block-getwid-section:not(.getwid-section-content-full-width) .wp-block-getwid-section__inner-wrapper { max-width: 1080px; }

.page-content .wp-block-getwid-section + .wp-block-getwid-section { margin-top: 0; margin-bottom: 0em; }

#front-hero .wp-block-getwid-section__divider { z-index:50; }
#front-hero .wp-block-getwid-media-text-slider.has-dots-inside .slick-dots { bottom: 100px; z-index: 100; }
.slick-dots li button::before { font-size: 13px; }


#front-number .wp-block-getwid-section__wrapper { padding:0 }
#front-number .wp-block-group { padding-right: calc((100vw - 1080px) / 2 ); margin-left: calc((100vw - 1080px) / 2 ); }
.wp-block-getwid-counter__wrapper { flex-wrap: wrap; display: flex; }
.wp-block-getwid-counter__number { font-size: 4em; line-height: 1; font-weight: bold; }
.wp-block-getwid-counter__prefix { width: 100%; padding-bottom: 0; margin-bottom: 5px !important; }

#front-vousetes { z-index:10; }

#front-ref { padding-right: calc((100vw - 1080px) / 2 ); }
#front-ref .wp-block-group { padding-left: calc((100vw - 1080px) / 2 ) !important; padding-bottom: 50px !important; }
#front-ref .slick-next, #front-ref .slick-prev {
	top: auto;
	bottom: -50px;
}
.slick-next::before, .slick-prev::before {
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	color: var(--red) !important;
}
#front-ref .slick-prev { left:45% }
#front-ref .slick-next { right:45% }
.slick-prev::before {content: "\f053"; }
.slick-next::before {content: "\f054"; }

#front-news .wp-block-group .wp-block-buttons { flex-basis: 270px; }
#front-news .wp-block-group .wp-block-buttons .wp-block-button__link { margin-top:0; }


/*=====================================================
	PAGES
======================================================*/

/*Heading*/
#site-heading { 
	position:relative;
  background-color: var(--lightgray);
  position: relative;
  padding: 2em 0 3em;
  text-align: center;
  overflow: hidden;
}

#heading-content::before {
	content: "";
  position: absolute;
  top: 0;
  right: calc((100vw - 1080px) / 2);
  width: 100%;
  opacity: .1;
  height: 100%;
  background: transparent url('assets/images/deco-heading.svg') no-repeat scroll bottom right / contain;
}

#heading-content > * {
	position: relative;
	z-index: 10;
}

/*heading formation*/

#site-heading.heading-formation { padding: 0; }

#site-heading.heading-formation .container {
	display: flex;
	align-items: center;
  text-align: left;
} 

#site-heading.heading-formation #heading-content::before { display:none; }

#site-heading.heading-formation .heading-left {
	width: 65%;
	padding: 0 2em 2em 25px;
}

#site-heading.heading-formation .heading-left h1 { margin-bottom: 20px; color: var(--darkblue); }

#site-heading.heading-formation .heading-right {
	width: calc(35% + ((100vw - 1080px) / 2));
	margin-right: calc( -1 * ((100vw - 1080px) / 2));
	position: relative;
	z-index: 0;
}

#site-heading.heading-formation .heading-right figure {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	max-height: 370px;
	overflow: hidden;
}

#site-heading.heading-formation .heading-right figure img { width: 100%; height: 100%; object-fit: cover; }

.heading-buttons {
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 1.5em;
}

.heading-buttons a {
	color: var(--darkblue);
	padding: .7em 1em;
	font-weight: bold;
	border-radius: 50px;
	border: 2px solid var(--yellow);
	position: relative;
}

.heading-buttons a:first-child::before {
	content: '';
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  top: 0px;
  left: -4px;
  background: var(--wp--preset--color--yellow);
  border: 3px solid var(--wp--preset--color--lightgray);
  border-radius: 50px;
}

.heading-buttons a:last-child {
	background-color: var(--yellow);
}

.heading-buttons a:hover { opacity: .5; }

.page-content .wp-block-getwid-tabs__nav-links { margin-left: 0; }
.wp-block-getwid-tabs__nav-link { border-radius: 10px 10px 0 0; }
.wp-block-getwid-tabs__nav-link.ui-tabs-active { border-color: var(--darkblue); }
.ui-tabs-active.wp-block-getwid-tabs__nav-link a {  color: var(--darkblue); }
.wp-block-getwid-tabs__tab-content { border: 1px solid var(--darkblue); border-radius: 0 10px 10px 10px; }

.wp-block-getwid-section:has(.has-lightyellow-background-color) .is-style-withdeco .wp-block-button__link::before { border-color: var(--lightyellow); }
.wp-block-getwid-section:has(.has-yellow-background-color) .is-style-withdeco .wp-block-button__link::before { border-color: var(--yellow); }
.wp-block-getwid-section:has(.has-lightgray-background-color) .is-style-withdeco .wp-block-button__link::before { border-color: var(--lightgray); }
.wp-block-getwid-section:has(.has-lightgray-background-color) .has-white-background-color .is-style-withdeco .wp-block-button__link::before { border-color: var(--white); }

.is-style-withdeco .wp-block-button__link.has-red-border-color::before { background-color: var(--red); }
.is-style-withdeco .wp-block-button__link.has-red-border-color i { color: var(--red); }
.is-style-withdeco .wp-block-button__link.has-red-border-color:hover { color:var(--red); }

.wp-block-button__link:hover::after { margin-left:15px; }
.has-white-color.wp-block-button__link:hover { opacity:.8; }

.wp-block-column:has(a.wp-block-getwid-image-box__image-wrapper) { position: relative; cursor: pointer; }
.wp-block-column:has(a.wp-block-getwid-image-box__image-wrapper)::after { 
	content: "";
  display: inline-block;
  border-radius: 100%;
  width: 25px;
  height: 15px;
  text-align: center;
  margin-left: 10px;
  background-image: url('assets/images/arrow-right.svg');
  transition: all .5s ease 0s;
  position: absolute;
  right: 20px;
  filter: brightness(100);
  bottom: 10px;
}

#heading-content h1, #heading-content .h1 { color: var(--black); font-weight:bold; font-size: 1.6em; }
#breadcrumbs, .breadcrumbs { margin-top: 0; padding: 1em 0 !important; font-size: .68em; text-transform:uppercase; }
#breadcrumbs a, .breadcrumbs a { font-weight:bold;  }
#breadcrumbs i.fa-arrow-right, .breadcrumbs i.fa-arrow-right {
  text-align: center;
  margin: 0 10px;
  font-size: 0.8em;
}
#breadcrumbs a, #breadcrumbs span, #breadcrumbs i { color: var(--black); }


.page-content .container { padding: 4em 0; }
.page-content.not-found-page { min-height: 300px; }

#page .container:has(.wp-block-getwid-section:first-child) { padding-top: 0; }
#page .container:has(.wp-block-getwid-section:last-child) { padding-bottom: 0; }

.page-content p a { font-weight:bold; text-decoration: underline; }
.page-content li:not([class]) a { font-weight:bold; text-decoration: underline; }

.page-content h2:not(:last-child) { margin-bottom:1em; }
.page-content h3:not(:last-child) { margin-bottom:1em; }
.page-content h4:not(:last-child) { margin-bottom:1em; }
.page-content h5:not(:last-child) { margin-bottom:1em; }

.page-content h2:not(:first-child) { margin-top:1em; }
.page-content h3:not(:first-child) { margin-top:1em; }
.page-content h4:not(:first-child) { margin-top:1em; }
.page-content h5:not(:first-child) { margin-top:1em; }

.page-content iframe { display:block; }

.is-style-reddeco::before {background: transparent url("assets/images/deco-red.svg") scroll no-repeat center center / contain; }
.is-style-bluedeco::before {background: transparent url("assets/images/deco-blue.svg") scroll no-repeat center center / contain; }
.is-style-yellowdeco::before {background: transparent url("assets/images/deco-yellow.svg") scroll no-repeat center center / contain; }
.is-style-whitedeco::before {background: transparent url("assets/images/deco-white.svg") scroll no-repeat center center / contain; }

.page-content .wp-block-getwid-section {
  width: 100vw;
  margin: 2.5em 0 0;
  margin-left: calc(-1 * ((100vw - 1080px) / 2));
}

.page-content .wp-block-getwid-section:first-child { margin-top:0; }
.page-content .wp-block-getwid-section:last-child { margin-bottom:0; }

.page-content ul, .page-content ol { margin-left: 2em; }
.page-content .wp-block-group.has-background ul.wp-block-list { margin-left: 2em !important; }

.page-content ul li:not([class]) { 
	position: relative;
	margin-bottom: .5em;
	list-style-type: none;
}
.page-content ul li:not([class]):not([role])::before {
  content: "";
	width: 6px;
  height: 6px;
  border: 2px solid var(--red);
  display: block;
  border-radius: 100%;
  position: absolute;
  top: 8px;
  left: -20px;
}

.page-content ul.wp-block-list.is-style-blueli li::before { border-color: var(--darkblue); }
.page-content ul.wp-block-list.is-style-yellowli li::before { border-color: var(--yellow); }

.page-content .has-background:not(.wp-block-getwid-section__background):not(.wp-block-getwid-icon__wrapper):not(.wp-block-getwid-content-timeline__bar):not(.wp-block-getwid-icon-box__icon-wrapper):not(.wp-block-media-text):not(.wp-block-getwid-progress-bar__bar):not(.wp-block-button__link):not(:has(.wp-block-cover)) {
  padding: 2em 2.5em;
  border-radius: 10px;
}
.page-content .wp-block-column.has-background:has(.wp-block-cover) {border-radius: 10px; }

.page-content .wp-block-separator {padding: 0 !important; }
.page-content .wp-block-separator.is-style-default { max-width: 200px; margin: 3em  auto; }

.page-content article p:not(:last-child) { margin-bottom: 1em; }

.page-content .wp-block-columns:not(:last-child) { margin-block-end: 3em; }
.page-content .wp-block-columns:not(:first-child) { margin-block-start: 3em; }
.page-content .wp-block-columns .wp-block-columns:not(:first-child) { margin-block-start: 0em; }

.wp-block-getwid-accordion:not(:last-child), .wp-block-getwid-icon-box:not(:last-child) {
  margin-bottom: 1.5em;
}

.wp-block-getwid-accordion .wp-block-getwid-accordion__header-wrapper {
  background-color: var(--white);
  margin-bottom: 0px;
  border-radius: 50px;
  font-weight: bold;
  color: var(--darkblue);
}

.wp-block-getwid-accordion .wp-block-getwid-accordion__header { padding: .7em 1.5em; }

.wp-block-getwid-accordion .wp-block-getwid-accordion__header-wrapper.ui-accordion-header-active {
	background-color: var(--darkblue);
	color: var(--white);
  border-radius: 15px 15px 0 0;
}

.wp-block-getwid-accordion__content-wrapper { margin-bottom: 6px; }

.wp-block-getwid-accordion .wp-block-getwid-accordion__content {
	border: 0;
	border-radius: 0 0 15px 15px;
  background-color: rgba(255,255,255,1);
}

.wpcf7 .form-col { display: flex; gap: 1em; }
.wpcf7 .form-col-100:not(:last-child) { margin-bottom:1em; }
.wpcf7 .form-col > * { width: calc(50% - .5em); }

.wpcf7 div[class^="form-col"] p > label { color:var(--black); }


.wpcf7 input::placeholder { color: var(--black); }

.wpcf7 .wpcf7-form-control:not(.wpcf7-acceptance):not(.wpcf7-submit) {
	color: var(--blue);
	border: 0;
	padding: 10px 15px;
	border-radius: 50px;
	margin-bottom: 0px;
	width: 100%;
	background-color: var(--lightgray);
	resize: none;
}

.wpcf7 .wpcf7-form-control.wpcf7-textarea { max-height: 150px; border-radius: 10px !important; }

.wpcf7 .wpcf7-form-control:not(.wpcf7-acceptance):not(.wpcf7-submit):focus { 
	border-color: var(--blue);
	color: var(--blue);
}

.wpcf7 .wpcf7-form-control.wpcf7-submit {
	padding: 7px 25px;
  float: right;
  color: var(--darkblue);
  font-weight: bold;
  background-color: var(--white);
  border-radius: 50px;
  border: 2px solid var(--yellow);
}

.wpcf7 .wpcf7-form-control.wpcf7-submit:hover {
	color: var(--yellow);
}

.contact-content .wpcf7-form-control.wpcf7-submit {
  margin-top: 1em;
  float: left;
}

.contact-content .contact-content {
  margin-left: auto;
  display: flex;
  flex-direction: column;
  gap: 1em;
  padding: 2em;
  border-radius: 20px;
  background-color: var(--lightgray);
}

.contact-content .contact-content > * {
  display: flex;
  align-items: center;
}

.contact-content .contact-content address {
  margin-bottom: 1em;
  font-style: normal;
}

.contact-content .contact-content .contact-link:hover { opacity: .5; }

.contact-content .contact-content i:not(.fab) {
	margin-right: 10px;
}

/*=====================================================
	formations
======================================================*/

#forma-wrapper { position:relative; }

#forma {
	display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  gap: 3em;
  margin-left: 0;
  margin-top: 3em;
}

#forma li {
	max-width: calc((100% - 6em) / 3);
}

.forma-content li a {
	background-color: var(--white);
	display: block;
	border-radius: 10px;
	overflow: hidden;
	height: 100%;
	box-shadow: 0 10px 20px rgba(0,0,0,.2);
}
.forma-content li a:hover { transform: scale(1.05); }

.forma-content li figure { 
	width: 100%;
	height: 150px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.forma-content li figure img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.one-forma-content {
	padding: 1em 1.5em;
}

.forma-content .forma-title { 
	font-weight: bold;
	font-size: var(--wp--preset--font-size--large);
	margin-bottom: 1em;
	color: var(--darkblue);
	line-height: 1.2;
}

/*slide formation*/
#forma-wrapper .bx-wrapper { margin: 0 auto; }
#forma-wslide {margin-left: 0; }
#forma-wslide li { padding:2em 1em; }
#forma-wslide li a { min-height: 391px }


/*prochaine formation*/
.prochaine-formation-date, .formation-item {
	display: flex;
  gap: 2em;
  align-items: center;
}

.formation-thumbnail { width: 200px; overflow:hidden; border-radius: 10px; }
.formation-thumbnail figure { height: 200px; display: flex; justify-content:center; align-items:center; }
.formation-thumbnail figure img { height:100%; width:100%; object-fit:cover; }

.prochaine-formation-date .next-forma-title,
.formation-item .forma-title {
	font-weight: bold;
  color: var(--darkblue);
  font-size: var(--wp--preset--font-size--large);
  margin-bottom: .5em;
}

.date-infos {
	display: flex;
  gap: 2em;
  padding: 10px 20px;
  background-color: #ffffff7d;
  border-radius: 10px;
  margin-top: 13px;
  font-size: .9em;
  border: 2px solid var(--white);
}

.date-text { width: calc(100% - (460px + 4em)); }

.date-infos i { color:var(--darkblue); }

.forma-buttons {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 1.5em;
  min-width: 260px;
}

.forma-buttons a {
	width: 100%;
	color: var(--darkblue);
  padding: .7em 1em;
  font-weight: bold;
  border-radius: 50px;
  border: 2px solid var(--yellow);
  position: relative;
}

.forma-buttons a:first-child::before {
	content: '';
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  top: 0px;
  left: -4px;
  background: var(--wp--preset--color--yellow);
  border: 3px solid var(--wp--preset--color--white);
  border-radius: 50px;
}

.prochaine-formation-date .forma-buttons a:first-child::before {
  border: 3px solid var(--wp--preset--color--lightgray);
}

.forma-buttons a:last-child {
  background-color: var(--yellow);
}

.forma-buttons a:hover { opacity: .7; }

/*liste formation*/
.forma-filters { 
	margin-top: 25px;
	display: flex;
	flex-wrap: wrap;
	gap: 1em 2em;
}

.forma-filters select {
  border: 2px solid var(--yellow);
  font-weight: bold;
  padding: 10px 40px 10px 30px;
  border-radius: 50px;
  appearance: none;
  background: var(--white) url("assets/images/arrow-down.svg") no-repeat scroll 95% center / 16px auto;
}

.formations-liste {
	margin-top: 3em;
	display: flex;
	flex-direction: column;
	gap: 2em;
}

.formation-item {
  background-color: var(--white);
  padding: 1em;
  box-shadow: 0 0 10px #e1e1e1;
  border-radius: 20px;
}

.formation-item .date-infos {
  background-color: #f8f8f8;
  border: 2px solid var(--lightgray);
}

#noItemsFoundMessage {
	background-color: var(--white);
  padding: 1.5em 3em;
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 0 10px #e1e1e1;
}

#noItemsFoundMessage p {
	font-size: var(--wp--preset--font-size--large);
	text-align: center;
}

#noItemsFoundMessage a {
	background-color: var(--darkblue);
  color: var(--white);
  padding: 10px 20px;
  border-radius: 10px;
  display: inline-block;
  margin-top: 0px;
  cursor: pointer;
}

#noItemsFoundMessage a:hover {
	opacity: .7;
}



/*=====================================================
	Temoignages
======================================================*/

#tem-noslide {
	display: flex;
  flex-wrap: wrap;
  gap: 2em;
  justify-content: center;
}

.tem-wrapper:not(:has(#tem-noslide)) { padding:0 3em; margin-top: 2em; position: relative; overflow: hidden;}

#tem-noslide .one-tem { max-width: 370px; }
#tem-noslide .one-tem-content { align-items: flex-start; }
#tem-noslide .one-tem-content .tem-text { height: 100%; display: flex; flex-direction: column; }
#tem-noslide .one-tem-content .tem-bottom { margin-top: auto; }

ul.tem-content { margin-left:0 !important; }

.one-tem { padding: 15px; }

.one-tem-content {
	padding: 2.5em 2.5em 2em;
	color: var(--blue);
	background-color: var(--white);
	border-radius: 10px;
	height: 100%;
	display: flex;
	align-items: center;
	position: relative;
}

.one-tem-content .tem-content { font-size: .9em; height: 250px; overflow-y: auto; }

.one-tem .tem-author-content {
	margin-top: 1.2em;
}

.one-tem .tem-author-content p:first-child {
	font-weight: bold;
	font-size: 1.1em;
	line-height: 1;
	margin-bottom: .4em;
	color: var(--darkblue);
}

.one-tem .tem-author-content p:last-child {
	font-size: .8em;
	min-height: 40px;
}

.one-tem .tem-bottom {
	margin-top: 1em;
	display: flex;
	justify-content: space-between;
}

.one-tem .tem-bottom time {
	background-color: var(--verylightblue);
	padding: 5px 15px;
	border-radius: 50px;
}

.one-tem .tem-bottom i { 
	width: 35px;
	height:35px;
	text-align: center;
	line-height: 35px;
	color: var(--white);
	background-color: var(--blue);
	border-radius: 50px;
}

.one-tem:nth-child(3n-1) .tem-bottom i { background: var(--lightblue); }
.one-tem:nth-child(3n-2) .tem-bottom i { background-color: var(--blue); }
.one-tem:nth-child(3n-3) .tem-bottom i { background-color: var(--red); }


.bx-controls {
	position: absolute;
  width: 100%;
  top: calc(50% - 16px);
}

.bx-controls-direction {
	display: flex;
  justify-content: space-between;
  width: 100%;
  margin-left: -2.5em;
}

.bx-controls-direction a  {
	width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  color: var(--yellow);
  font-size: 1.7em;
}

.bx-controls-direction a:hover { color: var(--black); }


/* PAGINATION */

#pagination {
	width: 100%;
  	margin: 2.5em 0 0;
}

#pagination ul {
	display: flex;
	justify-content: center;
	margin: 0;
}

#pagination ul li { list-style-type: none; margin: 0 5px;}
#pagination a, #pagination span { height: 35px; line-height: 35px; font-size: .9; font-weight: bold; color: var(--black); border-radius:50px; text-align:center; padding:2px 5px; display:block; min-width: 30px}
#pagination .prev, #pagination .next { display:flex; align-items:center; }
#pagination .prev i { margin-right:5px; }
#pagination .next i { margin-left:5px; }

#pagination a:not(.next):not(.prev), #pagination span:not(.next):not(.prev) {
	width: 35px;
	
}

#pagination a:hover { background-color: var(--lightyellow); }
#pagination span.current { color: var(--white); background-color: var(--red); }



/*=====================================================
	Home
======================================================*/

#home { position:relative; z-index:10; }

#filter { margin-top: .5em; }

#filter ul {
  display: flex;
  justify-content: center;
  list-style-type: none;
  gap: .8em;
  flex-wrap: wrap;
}

#filter ul li a {
  border-radius: 50px;
  padding: 5px 15px;
  font-size: small;
  font-weight: bold;
  background-color: var(--white);
}

#filter ul li a:hover {
	background-color: var(--red);
	color: var(--white);
}

#home .container {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	padding-top: 40px;
	padding-bottom: 60px;
	gap: 1.5em 3em;
	justify-content: flex-start;
}

#home article {
	width: calc((100% - 6em) / 3);
	min-height: 350px;
	position: relative;
}

#home article a {
	background-color: var(--white);
	color: var(--black);
	box-shadow: rgba(0,0,0,.2);
	position: relative;
	display: block;
	height: 100%;
	position: relative;
	box-shadow: none;
	font-size: .9em;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-shadow: 0 10px 20px rgba(0,0,0,.2);
}

#home article a:hover {
	background-color: var(--lightgray);
}

.one-news figure {
  display: flex;
  height: 200px;
  overflow: hidden;
  width: 100%;
  align-items: center;
  justify-content: center;
  border-radius: 10px 10px 0 0;
  margin: 0 0 5%;
  transition: all .5s ease 0s;
}

.one-news figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .news-text {
	padding: 20px 30px 20px;
}

#home .news-text .news-title {
	margin-bottom: 10px;
	color: var(--black);
	line-height: 1.2;
	font-weight: bold;
	font-size: 1.2em;
}

#home a.no-thum .news-text {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

.one-news-bottom span {
	display: flex;
	font-weight: bold;
	align-items: center;
	justify-content: flex-end;
}

#home a button {
	border: 0;
  display: block;
  width: 35px;
  height: 35px;
  line-height: 35px;
  text-align: center;
  border-radius: 100%;
  right: 20px;
  bottom: 15px;
  color: var(--yellow);
  transition: all .5s ease 0s;
}


/*=====================================================
	Single
======================================================*/

#page.single-content {
  max-width: 900px;
  margin: 0 auto;
}

#page.single-content .wp-block-getwid-section { margin-left: calc(-1 * ((100vw - 900px) / 2)); }

#single-header { margin-bottom:2em; }
#page .container #single-header h1 { margin-bottom: 0; line-height: 1.5; }

.single-meta {
	display: flex;
  gap: 1em;
  background-color: var(--lightgray);
  padding: 5px 15px;
  border-radius: 50px;
  font-size: .8em;
}

#more-single { padding-top:2em }

#more-single .container > p {
	font-size: var(--wp--preset--font-size--x-large);
	font-family: var(--wp--preset--font-family--heading);
	text-align: center;
}


/*=====================================================
	FOOTER
======================================================*/

.deco-foot {
	margin-top: -120px;
	width: 100%;
  overflow: hidden;
}

.deco-foot svg {
	width: 100%;
  transform: translateX(-50%) rotate(180deg) translateY(-1px);
  position: relative;
  display: block;
  left: 50%;
  transform: ;
  width: calc(100% + 2px);
}

footer {
	background-color: var(--yellow);
	font-size: .8em;
}

footer #footer-content { padding:3em 0em 2em; position: relative; }

footer .widget_nav_menu .widgettitle {
  font-size: var(--wp--preset--font-size--normal);
  font-family: var(--wp--preset--font-family--body);
  font-weight: bold;
  padding: 1em;
  border-bottom: 1px solid var(--blue);
  margin-bottom: 2em;
}

footer .widget_nav_menu .menu { list-style-type: none; margin-left:1.2em; }
footer .widget_nav_menu .menu a { display: inline-block; padding: 5px 0; }
footer .widget_nav_menu .menu a:hover { opacity: .7; }

footer .contact-content {
	display: flex;
  flex-direction: column;
  gap: 1em;
}

footer .contact-address {
	display: flex;
	gap: 1em;
	align-items: center;
	line-height: 1.3;
}

footer .contact-address i,
footer a.contact-link i { font-size: 1.2em; }

footer a.contact-link { display: flex; gap: 1em; align-items: center;}
footer a.contact-link:hover { opacity:.5 }

#list_rs { display: flex; gap: .5em; align-items:center; }
#list_rs a {
	width: 20px;
  height: 20px;
  line-height: 20px;
  color: var(--darkblue);
  text-align: center;
  border-radius: 100px;
  font-size: 1.4em;
}

#credits {
  text-align: center;
  padding: 1em 0 3em;
}

#credits .container {
	display: flex;
	gap: .5em;
	flex-direction: column;
	justify-content: space-between;
	border-top: 1px solid var(--black);
	padding-top: 2em;
}

#credits a { color: var(--black); }
#credits a:hover { text-decoration:underline; }


/****************************
 * RESPONSIVE
 * **************************/

/*Mega menu*/
@media screen and (min-width: 1025px) {

    #header nav ul.menu > li.mega-menu {
        position: unset;

        & > ul {
            min-width: 100%;
            max-width: none;
            display: flex;
            left: 0;
            flex-wrap: wrap;
            max-height: 0;           
            overflow: hidden;
            transition: all .5s ease 0s;

            & > li {
                width: calc(100% / 5);
                & > a { font-weight: bold; cursor: default; }
                & > a:hover { background-color: #fff; }
                .sub-arrow { display: none !important; }
            }

            ul.sub-menu {
                position: relative;
                margin-top: 0;
                opacity: 1;
                visibility: visible;
                border-top: 0;
                min-width: auto;

                & > li > a {
                    padding: 5px 18px;
                    font-size: .85em;
                }
            }

            ul.sub-menu::before {
                display: none;
            }
        }
    }

    #header nav ul.menu > li.mega-menu:hover > ul.sub-menu,
    #header nav ul.menu > li.mega-menu > a:focus + ul.sub-menu {
        max-height: 500px;
        overflow: inherit;
    }

    #header nav ul.menu > li.mega-menu > a:hover ~ ul.sub-menu,
    #header nav ul.menu > li.mega-menu > ul.sub-menu:hover {
        max-height: 500px;
        overflow: inherit;
    }

}


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

/*general*/
	#header .container, #credits .container, footer #footer-content, .page-content .container,
	.wp-block-getwid-section:not(.getwid-section-content-full-width) .wp-block-getwid-section__inner-wrapper { padding-left: 15px; padding-right: 15px; }
	.page-content .wp-block-getwid-section { margin-left:-15px; }

/*	header*/
	#top-header { padding-top: 5px; }
	#header .custom-logo-link { margin-top: -45px; margin-bottom: 5px; }
	#main-header > .container > div { width: calc(100% - 120px); }

/*home*/
	#home .container { padding-left: 15px; padding-right: 15px; }

/*single*/
	#page.single-content .wp-block-getwid-section { margin-left: calc(-1 * ((100vw - 860px) / 2)); }

/*footer*/
	footer .footer-widget:last-child { right:15px; }
	#credits { padding: 1em 0 1em; }
	#credits .container { padding-top: 1em; }
}

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

/*general*/
	:root {
		--wp--preset--font-size--xx-large : 2.5em;
		--wp--preset--font-size--x-large : 1.8em;
		--wp--preset--font-size--large : 1.3em;
	}

	body { font-size: 15px; }
	.wpcf7-form .col-50 { width: calc(50% - .5em); }

/*header*/
	#main-header > .container > div { justify-content: flex-end; }
	#header .custom-logo-link { margin-top: -75px; margin-bottom: 0; }

	#header nav { 
	  position: fixed;
	  top: 132px;
    background-color: var(--white);
    height: calc(100vh - 132px);
	  width: 320px;
	  padding: 0;
	  opacity: 0;
	  visibility: hidden;
	  right: -320px;
	  transition: all .5s ease 0s;
	  max-width: none;
	  border-radius: 20px 0 0;
	  display: none;
	}
	#header.scrolled nav {top: 91px; height: calc(100vh - 91px); }

	#header #open-menu { display: block; }

	#header nav.open { display: block; box-shadow: 0 0 15px #D2D2D2; opacity: 1; visibility: visible; right: 0px; }

	#header nav > div { height: 100%; overflow-y: auto; }

	#header nav ul.menu { display: block; }
	#header nav ul.menu > li .sub-menu::before,
	#header nav ul.menu .sub-menu li.menu-item-has-children > a::after { display:none; }
	
	#header nav ul.menu .sub-menu {
		position: relative;
	  opacity: 1;
	  visibility: visible;
	  margin: 0;
	  width: auto;
	  border: 0;
	  background-color: #f8f8f8;
	}
	#header nav ul.menu li { min-width: auto; max-width: none; }
	#header nav ul.menu li:hover > .sub-menu { margin-top:0; }
	#header nav ul.menu .sub-menu .sub-menu { left: 0; border: 0; margin-top: 0; background-color: #fefefe !important; }
	#header nav ul.menu .sub-menu li:hover > .sub-menu { margin-top:0; }

	#header nav ul.menu > li > a { border-bottom: 1px solid; color: var(--darkblue); font-size: inherit; padding: 10px 25px; display: block; min-height: auto; text-align: left; font-weight: bold; }
	#header nav ul.menu .sub-menu li a { color: var(--blue); padding: 7px 25px; font-size: .9em; }
	#header nav ul.menu > li.current_page_item > a { color: var(--red); }
	#header .sub-arrow { display:none; }

	#header-links { margin-left: auto; }
	#header.scrolled .custom-logo-link { max-width: 60px; }
	#header.scrolled #header-links { 
		width: auto;
		overflow: visible;
		visibility: visible;
		position: relative;
		right: auto;
		opacity: 1;
	}
	#header.scrolled #header-links a { color: var(--blue); }
	#header.scrolled #header-links a i { color:var(--white);  }
	#header.header-page.scrolled #header-links a#header-contact { background-color: var(--verylightblue); }

/*FRONT*/
	#front-hero .wp-block-getwid-section__divider.is-bottom-divider .wp-block-getwid-section__divider-svg-negative { height:80px !important; }
	#front-hero .wp-block-getwid-media-text-slider.has-dots-inside .slick-dots { bottom: 80px; }
	#front-hero .wp-block-getwid-media-text-slider-slide-content { max-width: none; }
	
/*	home*/
	#home .container { gap: 1.5em; }
	#home article { width: calc((100% - 3em) / 3); }

/*formation calendar*/
	.date-infos { flex-direction: column; gap: .6em; }

/*single formation	*/
	#site-heading.heading-formation .heading-left > div { padding: 2em 0; }
	#site-heading.heading-formation .heading-right { width: calc(35% + 15px); margin-right: -15px; }
	#forma-wrapper { padding: 0 3em; }

/*footer*/
	footer .footer-widget:last-child { position: relative; top: 0; right:auto; }
	footer .footer-widget:last-child .wp-block-group.is-vertical { align-items: center; flex-direction: row; justify-content: center; }

}

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

/*formation list*/
	#forma li { max-width: calc((100% - 3em) / 2); }

}

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

/*header*/
	#header-tel span { display:none; }
	#header-contact span, #header-contact i.fa-arrow-right { display:none; }
	#header-links a { padding: 5px 10px; }
	#header-links a#header-contact { padding:0; }
	#header-links a#header-contact i.fa-envelope { display:block; margin:0; }

/*formation calendar*/
	.formation-item, .prochaine-formation-date { flex-wrap: wrap;  }
	.forma-buttons { width: 100%; flex-direction: row; }
	.date-text { width: calc(100% - (200px + 2em)); }

/*single formation*/
	.heading-buttons { gap: 1em 1.5em; font-size: .9em; }

/*footer*/
	.footer-widget .wp-block-columns { flex-wrap:wrap !important; }
	.footer-widget .wp-block-columns .wp-block-column:last-child { flex-basis: 100%; }
	footer .contact-content { flex-direction: row; justify-content: center; flex-wrap: wrap; gap: 1em 2em; }

}

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

/*general*/
	.wp-block-image.is-style-reddeco { max-width: 400px; margin-left: auto; margin-right: auto; margin-bottom: auto !important; }
	.wp-block-group:has(.wp-block-buttons) {flex-wrap: wrap; gap: .5em; }

/*front*/
	#front-testimonials { margin-top: -70px !important; }

/*formations*/
	 .bx-controls { top: auto; }
	 .bx-controls-direction { justify-content: center; margin-left: auto; }
	 #forma-wrapper { padding: 0; }
	 #forma-wrapper:has(#forma-wslide) { padding-bottom:40px; }
	 .tem-wrapper:not(:has(#tem-noslide)) { padding: 0 0em 3em; }

/*single formation*/
	#site-heading.heading-formation .container { flex-direction: column-reverse; }
	#site-heading.heading-formation .heading-left { width: 100%; }
	#site-heading.heading-formation .heading-right {width: 100%; }
	#site-heading.heading-formation .heading-right figure { max-height: 200px; }
	#site-heading .wp-block-getwid-section__divider.is-bottom-divider .wp-block-getwid-section__divider-svg-negative { height: 50px !important; }

/*home*/
	 #home article {width: calc((100% / 2) - 0.8em); }

/*footer*/
	footer .wp-block-columns:not(.is-not-stacked-on-mobile) .wp-block-column:has(.widget_nav_menu) { flex-basis: 47% !important; }

}

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

	/*general*/
	:root {
		--wp--preset--font-size--xx-large : 2em;
		--wp--preset--font-size--x-large : 1.5em;
		--wp--preset--font-size--large : 1.2em;
	}

	body { font-size: 14px; }
	.page-content .has-background:not(.wp-block-getwid-section__background):not(.wp-block-getwid-icon__wrapper):not(.wp-block-getwid-content-timeline__bar):not(.wp-block-getwid-icon-box__icon-wrapper):not(.wp-block-media-text):not(.wp-block-getwid-progress-bar__bar):not(.wp-block-button__link):not(:has(.wp-block-cover)) { padding: 1em 1.5em; }

	/*front*/
	#front-hero .wp-block-getwid-section__divider.is-bottom-divider .wp-block-getwid-section__divider-svg-negative { height: 50px !important; }

/*formations*/
	#forma li { max-width: 100%; }
	.forma-filters { justify-content: center; }
	.formation-thumbnail, .date-text { width: 100%; }
	.forma-buttons { flex-direction: column; gap: 1em; }

/*home*/
	#home article {width: 100%; }

/*footer*/
	.deco-foot { margin-top: -70px; }
	.deco-foot svg { height: 50px !important; }

}

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

	#top-header .wp-block-buttons .wp-block-button__link {font-size: .85em !important; padding: 5px 8px; }
	 #header .custom-logo-link { margin-top: -65px; }

	.wpcf7 .form-col { flex-wrap: wrap; gap: 0; margin-bottom: 1em; }
	.wpcf7 .form-col > * { width: 100%; }

}