/*
Theme Name: Multiworld
Text Domain: https://www.multiworld.com/
Version: 1.1
Description: Thème sur-mesure pour Multiworld
Author: Groupe Spirale
Author URI: https://groupe-spirale.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: #000000;
	--white: #fff;
	--main : #5d2de6;
	--lightmain : #afb6ef;
	--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
======================================================*/


#top-header {
	color: var(--white);
	background-color: var(--black);
	padding-top: 5px;
}

#top-header .header-widget { width: 1000%; }


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

#header .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#header #open-menu {
	display: none;
	width: 45px;
  height: 45px;
  margin-left: auto;
  border: 0;
  border-radius: 50px;
  color: var(--white);
  background-color: var(--black);
}

#header .custom-logo { 
	min-width: 180px;
	margin: 10px 0;
}

#header .logo img { 
	transition: all .5s ease 0s;
	display: block;
	width: 300px;
  filter: brightness(100);
}

#header .contact-widget { margin-left:20px; }
#header .wp-block-buttons .wp-block-button__link { margin-top:0; }

#header nav { 
	padding: 0;
  margin-left: auto;
  max-width: none;
  border-radius: 0;
  position: relative;
}

#header nav ul.menu {
	display: flex;
	gap: 2em;
	justify-content: flex-end;
	align-items: center;
}

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

#header nav ul.menu > li > a {
  padding: 20px 0px;
  text-transform: uppercase;
  color: var(--black);
  font-weight: bold;
  display: block;
  text-align: center;
  line-height: 1.1;
  position: relative;
  justify-content: center;
  align-items: center;
  display: flex;
}

.sub-arrow {
  font-size: .6em;
  display: inline-block;
  margin-left: 5px;
}

#header nav ul.menu a:hover {
	opacity: .5;
}

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

#header nav ul.menu .sub-menu {
	background-color: #fff;
  border-top: 2px solid var(--red);
  position: absolute;
  margin-left: 2em;
  opacity: 0;
  visibility: hidden;
  transition: all .5s ease 0s;
  width: 200px;
  padding: 0;
  border-radius: 0;
  border-radius: 0 0 10px 10px;
}
#header nav ul.menu .sub-menu .sub-menu {
 left: 100%;
  min-width: 230px;
  top: -1px;
  font-size: 0.9em;
  line-height: 1.3;
}

#header nav ul.menu li:hover > .sub-menu {
	opacity: 1;
	visibility: visible;
	margin-left: 0px;
}

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

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

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

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

#header.scrolled { position:fixed; background-color: var(--white);}
#header.scrolled .custom-logo {min-width: 120px; }
#header.scrolled #top-header {
	width: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  right: 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-federer .wp-block-column.has-background figure {
	animation: floating 3s ease-in-out infinite;
}

@keyframes floating {
  0% {
      transform: translateY(0);
  }

  50% {
      transform: translateY(-10px);
  }

  100% {
      transform: translateY(0);
  }
}


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

/*Heading*/
#site-heading { 
	padding: 0;
	position:relative;
  background-color: var(--lightgray);
  position: relative;
  padding: 3em 0;
}

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

.has-layout-vertical-left .wp-block-getwid-tabs__nav-links { padding-top: 1em; }
.wp-block-getwid-tabs__tab-content { border: 0; padding: 0; }
.wp-block-getwid-tabs__nav-link a { display: flex; align-items: center; position: relative; color: var(--flashblue); border-radius:10px 0 0 10px; }
.has-layout-vertical-left > .wp-block-getwid-tabs__nav-links .wp-block-getwid-tabs__nav-link { border:0; border-radius:10px 0 0 10px; }
.ui-tabs-active.wp-block-getwid-tabs__nav-link a {  color: var(--white); background-color: var(--flashblue); }

.has-layout-vertical-left .wp-block-getwid-tabs__nav-link a::after {
	content: "";
  width: 25px;
  height: 16px;
  display: inline-block;
  background-image: url('assets/images/arrow-right.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  filter: brightness(100);
  margin-left: 25px;
  transition: all .5s ease 0s;
}

.wp-block-buttons .wp-block-button__link { position:relative; }
.has-layout-vertical-left .ui-tabs-active.wp-block-getwid-tabs__nav-link a::after { margin-left: 10px; }

.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-family: var(--wp--preset--font-family--mw-mark); 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 .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; }

.page-content mark { font-family: var(--wp--preset--font-family--mw-mark); font-size: 1.4rem; line-height: 1; }

.is-style-reddeco::before {background: transparent url("assets/images/deco-red.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 ul li:not([class]) { 
	position: relative;
	margin-bottom: .5em;
	list-style-type: none;
}
.page-content ul:not(.is-style-valideliste) li:not([class]):not([role])::before {
  content: "";
	width: 6px;
  height: 6px;
  background-color: var(--wp--preset--color--main);
  display: block;
  border-radius: 100%;
  position: absolute;
  top: 8px;
  left: -20px;
}

.page-content .has-purple-background-color ul li:not([class]):not([role])::before,
.page-content .has-black-background-color ul li:not([class]):not([role])::before {
  background-color: var(--white);
}	

.page-content ul.is-style-valideliste li::before { background-color: transparent !important; content: "\f00c" !important; }
.page-content ul.is-style-valideliste li.cross::before { content: "\f00d" !important; }

.page-content ul.is-style-cloudliste li::before { display:none !important; }

.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; }

.page-content .wp-block-group.is-position-sticky { top: 200px; }

.slick-next, .slick-prev { top: auto; }
.slick-prev {left: calc(50% - 30px); bottom: -30px; }
.slick-next {right: calc(50% - 30px); bottom: -30px; }

.slick-next:before,
.slick-prev:before {
  background-image: url('assets/images/arrow-right.svg');
  width: 25px;
  height: 25px;
  display: block;
  content: "";
}
.slick-prev:before {
  transform:rotate(180deg)
}

.wp-block-getwid-images-slider__item { padding-bottom:30px; }
.wp-block-getwid-images-slider__item img { border-radius: 10px; }

.wp-block-getwid-images-slider__wrapper[data-center-mode="true"] .slick-list { margin: 0 !important }

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

.wp-block-getwid-accordion:not(.vertical-accordion) .wp-block-getwid-accordion__header-wrapper {
  background-color: var(--white);
  color: var(--black);
  margin-bottom: 0px;
  border-radius: 50px;
  border: 0;
  border: 2px solid var(--wp--preset--color--main);
}

.wp-block-getwid-content-timeline-item__content-wrapper .wp-block-getwid-accordion .wp-block-getwid-accordion__header-wrapper {
	margin-top: 1.5em;
}

.wp-block-getwid-accordion:not(.vertical-accordion) .wp-block-getwid-accordion__header {
	padding: .5em 1em;
}

.wp-block-getwid-accordion:not(.vertical-accordion) .wp-block-getwid-accordion__header-wrapper.ui-accordion-header-active {
	background-color: var(--wp--preset--color--main);
  color: var(--white);
}

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

.wp-block-getwid-accordion:not(.vertical-accordion) .wp-block-getwid-accordion__content {
	border: 0;
  background-color: rgba(255,255,255,.2);
}

.col-price .wp-block-group.has-border-color { border-radius: 20px; padding-top: 65px; }
.col-price .wp-block-group.has-border-color:has( p.has-main-background-color ) { padding-top:0; }
.col-price p.has-main-background-color { display: block; margin: 0 auto !important; max-width: 170px; padding: 12px !important; border-radius: 0 0 20px 20px !important; }
.price-text .wp-block-group.is-vertical { min-height:70px; }
.price-text .has-xx-large-font-size { font-size: 2.7rem !important; margin-bottom: 0 !important; }
.price-text .wp-block-group.is-layout-constrained p { margin-bottom:0; }
.col-price .is-style-valideliste { max-width: none; padding: 0 !important; border-radius: 0 0 14px 14px !important;  }


.wpcf7 .form-col { display: flex; gap: 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(--black);
	border: 1px solid var(--black);
	padding: 5px 15px;
	border-radius: 50px;
	margin-bottom: 0px;
	width: 100%;
	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(--black);
	color: var(--black);
}

.wpcf7 .wpcf7-form-control.wpcf7-submit {
	padding: 7px 25px;
  float: right;
  color: var(--white);
  font-weight: bold;
  background-color: var(--wp--preset--color--main);
  border-radius: 50px;
  border: 0;
}

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

.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;
}


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

.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(--red);
  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); }

.wpcf7-form { display: flex; flex-wrap: wrap; gap: 0 1em; justify-content:space-between; }
.wpcf7-form .col-100 { width:100%; }
.wpcf7-form .col-50 { width: calc(50% - 1em); }

.wpcf7-form label { font-size: .8em; font-weight:bold; margin-left: 10px; }

.wpcf7-form .wpcf7-acceptance label { display: flex; line-height: 1.1; gap: 1em; align-items: center; }
.wpcf7-form .wpcf7-acceptance label span { opacity: .7; }

.wpcf7-spinner { position:absolute; }

#page.page-content .wp-block-group .has-verylightblue-background-color.has-small-font-size {
  min-width: 120px;
  padding: 1em .5em;
  text-align: center;
  border-radius: 50px;
  margin-bottom: 0;
}

.wp-block-getwid-image-box.has-image-left .wp-block-getwid-image-box__image-wrapper {
	border-radius: 100px;
  overflow: hidden;
  max-width: 150px;
}

#form-button {
	position: fixed;
  background-color: var(--red);
  color: var(--white);
  padding: 1.5em 2em;
  display: flex;
  align-items: center;
  bottom: 0;
  left: 0;
  width: 210px;
  border: 0;
  justify-content: space-between;
  font-weight: bold;
  opacity: 0;
  visibility: hidden;
  display: none;
  z-index: 10;
  border-top-right-radius: 50px;
  font-family: var(--wp--preset--font-family--heading);
}

#close-form {
	width: 42px;
  height: 42px;
  line-height: 42px;
  text-align: center;
  position: absolute;
  top: -1em;
  right: -1em;
  background-color: var(--red);
  border: 0px;
  color: var(--white);
  border-radius: 50px;
  cursor: pointer;
  transition: 0.5s;
  display: none;
}

/*=====================================================
	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: space-between;
}

#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(--red);
  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
======================================================*/


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

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(--white);
  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(--red);
  text-align: center;
  border-radius: 100px;
  font-size: 1.4em;
}

#credits {
  text-align: center;
  padding: 1em 0 3em;
  color: var(--white);
}

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

#credits a { color: var(--white); opacity:.8; }
#credits a:hover { text-decoration:underline; }


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


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

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

/*une formation*/
	#forma-left { max-width: calc( 100% * 2 / 3); }
	#forma-right { width: calc( 100% * 1 / 3); font-size: .9em; }
	.formation-content .wp-block-getwid-section:not(.getwid-section-content-full-width) .wp-block-getwid-section__inner-wrapper {
		max-width: calc( 100% * 2 / 3);
	  margin-left: calc(-1 * ((100% * 2 / 3) / 2));
	}

/*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-content, .page-content .container { padding-left: 15px; padding-right: 15px; }
	#credits { padding-bottom:2em; }
	#credits .container { padding-top:2em; }
	.page-content .wp-block-getwid-section { margin-left:-15px; }
	footer .footer-widget:last-child { right:15px; }

}

@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*/
	#header nav { 
	  position: fixed;
    top: 177px;
    background-color: var(--black);
    height: calc(100vh - 177px);
    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;
    padding: 20px;
	}
	#header.scrolled nav { top: 99px; height: calc(100vh - 99px); }

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

	#header nav.open { display: block; 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;
		border-top: 1px solid var(--black);
	  opacity: 1;
	  visibility: visible;
	  margin: 0;
	  width: auto;
	  border-right: 0;
	  border-left: 0;
	  border-bottom: 0;
    border-radius: 0;
	}
	#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 { color: var(--white); font-size: .9em; font-size: inherit; padding: 10px 25px; display: block; min-height: auto; text-align: left; font-weight: bold; }
	#header nav ul.menu .sub-menu li:not(:last-child) {  }
	#header nav ul.menu .sub-menu li a { padding: 7px 25px; font-size: .8em; }
	#header .sub-arrow { display:none; }

	#header-links { margin-left: auto; }
	#header.scrolled #header-links { 
		width: auto;
		overflow: visible;
		visibility: visible;
		position: relative;
		right: auto;
		opacity: 1;
		color: var(--blue);
	}
	#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*/
	.page-content .wp-block-list.is-style-cloudliste li:nth-child(4n+1) { margin-left: 30% !important; }
	.page-content .wp-block-list.is-style-cloudliste li:nth-child(3n+1) { margin-right: 5% !important; }
	.page-content .wp-block-list.is-style-cloudliste li:nth-child(2n+1) { margin-left: 20% !important; }

	.wp-block-group.big-bubble { max-width: 460px; padding-top: 60px !important; padding-bottom: 110px !important; margin-left: auto; margin-right: auto; }
	.page-content mark { font-size: 1.2rem; }

	.page-content .wp-block-columns.col-4 { flex-wrap: wrap; }
	.page-content .wp-block-columns.col-4 .wp-block-column { flex-basis: calc(50% - 1em); }

}

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

	/*header*/
	#top-header .wp-block-columns { gap: 0; }
	#top-header .wp-block-social-links.is-content-justification-right { justify-content: center; }

	/*front*/
	.wp-block-group.has-purple-background-color.has-background { margin-bottom:20px !important; }

	.page-content .wp-block-list.is-style-cloudliste { margin: 0; justify-content: center; gap: .5em; flex-direction: row; flex-wrap: wrap; }
	.page-content .wp-block-list.is-style-cloudliste li:nth-child(4n+1) { margin-left: 0 !important; }
	.page-content .wp-block-list.is-style-cloudliste li:nth-child(3n+1) { margin-right: 0 !important; }
	.page-content .wp-block-list.is-style-cloudliste li:nth-child(2n+1) { margin-left: 0 !important; }

	#front-hello .wp-block-getwid-section__wrapper .getwid-padding-top-large { padding-top: 80px; }
	#front-hello .wp-block-image { margin-bottom: -20px !important; }

	.wp-block-column .wp-block-image.alignright { margin-top:0 !important; margin-right:0 !important; }

	.wp-block-columns:has(.is-style-cloudliste) .wp-block-group.has-main-background-color { margin-bottom:20px !important; }

}

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

	/*front*/
	#header .custom-logo { min-width: 100px;} 
	#header .contact-widget { margin-left: 5px; }
	#header .wp-block-buttons .wp-block-button__link { font-size: .8em; }

	.page-content mark { font-size: 1.1rem; }
	.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; }

	.page-content .wp-block-group.big-bubble { font-size: 0.8em; padding-top: 30px !important; padding-bottom: 70px !important; }
	.page-content .wp-block-group.big-bubble mark { font-size: 0.7em; }
	.page-content .wp-block-group.big-bubble p { line-height: 1.2; padding-right: var(--wp--preset--spacing--60); }

	.wpcf7 .form-col { gap: 0; flex-direction: column; }
	.wpcf7 .form-col > * { width: 100%; margin-bottom: 0 !important; }

}

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

	#header .wp-block-buttons .wp-block-button:last-child { display:none; }

	.page-content .wp-block-list.is-style-cloudliste li { font-size: 0.7rem; text-align:center; }

	.wp-block-column .wp-block-image.alignright { float: none !important; margin-right: auto !important; margin-left: 0; }

}