a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
button,
input,
label,
select,
textarea {
  margin: 0;
  border: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  background: 0 0;
  line-height: 1;
  font-size: 13px;
  font-family: Arial;
}
input:focus {
  outline: 0;
}
input,
textarea {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
button,
input[type="button"],
input[type="checkbox"],
input[type="radio"],
input[type="reset"],
input[type="submit"],
select {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
input[type="checkbox"],
input[type="radio"] {
  width: 13px;
  height: 13px;
}
input[type="search"] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
}
::-webkit-search-decoration {
  display: none;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  overflow: visible;
  width: auto;
}
::-webkit-file-upload-button {
  padding: 0;
  border: 0;
  background: 0 0;
}
textarea {
  vertical-align: top;
  overflow: auto;
}
select[multiple] {
  vertical-align: top;
}

:root {
  --margindebasehorizontal: 20px;
  --margindebasevertical: 20px;
  --nombredecolonnes: 12;
  --tailleheader: 100px;
  /*--tailleheaderfooter:0px;*/
  --largeurmenu: 250px;
  --largeursite: 1170px;
  /*--taillecover:600px;*/
  --color1: #132136;
  --color2: #61cddc;
  --color3: #f9f9fc;
  --color4: #defbff;
  --color5: #efeff0;
  --color6: #15518d;
  --color7: #d6e4ff;
  --color8: #afb1b6;
  --color9: #4d4d4d;
}

::selection {
  background: var(--color1);
  color: #fff;
}
::-moz-selection {
  background: var(--color1);
  color: #fff;
}

*:not(a) {
  transition: all 0.1s ease;
}

*:not(a):hover {
  transition: all 0.3s ease;
}

@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");

/*=============================Bases=================================
=====================================================================
===================================================================*/

body {
  font-display: auto;
  font-family: "Inter", sans-serif;
  color: var(--color1);
  overflow-x: hidden;
  word-wrap: break-word;
  font-size: 16px;
  line-height: 30px;
  background: var(--color3);
}

section {
}

img {
  max-width: 100%;
}

hr {
  border-style: solid;
  border-bottom: 0;
  margin: 0;
}

h1 {
  text-decoration: none;
  text-transform: inherit;
}

h2 {
  text-decoration: none;
  line-height: 1.25;
}

h3 {
  text-transform: inherit;
  text-decoration: none;
}

h4 {
  text-transform: inherit;
  text-decoration: none;
}

p {
  text-transform: none;
  line-height: 30px;
}

ul li {
  line-height: 25px;
  text-decoration: none;
  text-transform: inherit;
}

ul li:before {
  content: "";
  display: inline-block;
  height: 8px;
  width: 8px;
  margin-right: 5px;
  border-radius: 256px;
  background: var(--color2);
}

ol li {
  text-transform: inherit;
  list-style-type: decimal;
  margin-left: 15px;
}

a,
a:not(.cta):visited {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

a:hover {
  color: var(--color2);
  transition: color 0.3s ease;
}

table,
table td {
  border: 1px solid;
}

table td {
  padding: 5px;
}

input:not([type="checkbox"]):not([type="radio"]),
textarea {
  -webkit-appearance: none;
}

/*=============================Grilles===============================
=====================================================================
===================================================================*/

article {
  margin: auto;
  margin-top: var(--tailleheader);
  box-sizing: border-box;
  position: relative;
  min-height: calc(100vh - var(--tailleheader));
}

article > section,
footer > section {
  width: var(--largeursite);
  box-sizing: border-box;
  margin: auto;
}

article section.full {
  width: 100%;
  position: relative;
  box-sizing: border-box;
}

article section.full-bg,
article section.full-bg-img,
footer section.full-bg {
  width: var(--largeursite);
  padding: 0 calc((100% - var(--largeursite)) / 2);
  margin: auto;
  box-sizing: content-box;
  position: relative;
}

article
  section.full-bg-img
  > div:first-of-type
  > picture:first-of-type
  > img:first-of-type {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  object-fit: cover;
}

article section.full-bg-img:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: -1;
}

article section.no-filter:before {
  background: initial;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.grid {
  display: flex;
  flex-wrap: wrap;
}

.normal {
  font-weight: normal;
}

.bold,
strong,
b {
  font-weight: bold;
}

.italic,
i,
em {
  font-style: italic;
}

.light {
  font-weight: lighter;
}

.center {
  text-align: center;
  margin: auto;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.justify {
  text-align: justify;
}

.center-h {
  justify-content: space-around;
  display: flex;
}

.center-v {
  align-items: center;
  display: flex;
}

.center-vh {
  justify-content: space-around;
  align-items: center;
  display: flex;
}

.left-h {
  justify-content: flex-start;
  display: flex;
}

.left-v {
  align-items: flex-start;
  display: flex;
}

.left-vh {
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.right-h {
  justify-content: flex-end;
  display: flex;
}

.right-v {
  align-items: flex-end;
  display: flex;
}

.right-vh {
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.flex-space-between {
  justify-content: space-between;
  display: flex;
}

.flex-space-around {
  justify-content: space-around;
  display: flex;
}

.flex-center {
  justify-content: center;
  display: flex;
}

.align-space-between {
  align-content: space-between;
}

.align-space-raound {
  align-content: space-around;
}

.column {
  display: flex;
  flex-direction: column;
}

.column-reverse {
  display: flex;
  flex-direction: column-reverse;
}

.row {
  display: flex;
  flex-direction: row;
}

.row-reverse {
  display: flex;
  flex-direction: row-reverse;
}

/*.e1
{
	width:calc((100% / var(--nombredecolonnes)) - var(--margindebasehorizontal))!important;
	}*/

/*.e1.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 1)!important;
	box-sizing:border-box;
	}*/

.e08 {
  width: calc((100% / var(--nombredecolonnes)) * 0.8) !important;
  box-sizing: border-box;
}

.e1 {
  width: calc((100% / var(--nombredecolonnes)) * 1) !important;
  box-sizing: border-box;
}

/*.e2
{
	width:calc(((100% / var(--nombredecolonnes)) * 2) - var(--margindebasehorizontal))!important;
}

.e2.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 2)!important;
	box-sizing:border-box;
	}*/

.e2 {
  width: calc((100% / var(--nombredecolonnes)) * 2) !important;
  box-sizing: border-box;
}

/*.e3
{
	width:calc(((100% / var(--nombredecolonnes)) * 3) - var(--margindebasehorizontal))!important;
}

.e3.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 3)!important;
	box-sizing:border-box;
	}*/

.e3 {
  width: calc((100% / var(--nombredecolonnes)) * 3) !important;
  box-sizing: border-box;
}

/*.e4
{
	width:calc(((100% / var(--nombredecolonnes)) * 4) - var(--margindebasehorizontal))!important;
}

.e4.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 4)!important;
	box-sizing:border-box;
	}*/

.e4 {
  width: calc((100% / var(--nombredecolonnes)) * 4) !important;
  box-sizing: border-box;
}

/*.e5
{
	width:calc(((100% / var(--nombredecolonnes)) * 5) - var(--margindebasehorizontal))!important;
}

.e5.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 5)!important;
	box-sizing:border-box;
	}*/

.e5 {
  width: calc((100% / var(--nombredecolonnes)) * 5) !important;
  box-sizing: border-box;
}

/*.e6
{
	width:calc(((100% / var(--nombredecolonnes)) * 6) - var(--margindebasehorizontal))!important;
}

.e6.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 6)!important;
	box-sizing:border-box;
	}*/

.e6 {
  width: calc((100% / var(--nombredecolonnes)) * 6) !important;
  box-sizing: border-box;
}

/*.e7
{
	width:calc(((100% / var(--nombredecolonnes)) * 7) - var(--margindebasehorizontal))!important;
}

.e7.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 7)!important;
	box-sizing:border-box;
	}*/

.e7 {
  width: calc((100% / var(--nombredecolonnes)) * 7) !important;
  box-sizing: border-box;
}

/*.e8
{
	width:calc(((100% / var(--nombredecolonnes)) * 8) - var(--margindebasehorizontal))!important;
}

.e8.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 8)!important;
	box-sizing:border-box;
	}*/

.e8 {
  width: calc((100% / var(--nombredecolonnes)) * 8) !important;
  box-sizing: border-box;
}

/*.e9
{
	width:calc(((100% / var(--nombredecolonnes)) * 9) - var(--margindebasehorizontal))!important;
}

.e9.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 9)!important;
	box-sizing:border-box;
	}*/

.e9 {
  width: calc((100% / var(--nombredecolonnes)) * 9) !important;
  box-sizing: border-box;
}

/*.e10
{
	width:calc(((100% / var(--nombredecolonnes)) * 10) - var(--margindebasehorizontal))!important;
}

.e10.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 10)!important;
	box-sizing:border-box;
	}*/

.e10 {
  width: calc((100% / var(--nombredecolonnes)) * 10) !important;
  box-sizing: border-box;
}

/*.e11
{
	width:calc(((100% / var(--nombredecolonnes)) * 11) - var(--margindebasehorizontal))!important;
}

.e11.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 11)!important;
	box-sizing:border-box;
	}*/

.e11 {
  width: calc((100% / var(--nombredecolonnes)) * 11) !important;
  box-sizing: border-box;
}

/*.e12
{
	width:calc(((100% / var(--nombredecolonnes)) * 12) - var(--margindebasehorizontal))!important;
}

.e12.margin-0
{
	width:calc((100% / var(--nombredecolonnes)) * 12)!important;
	box-sizing:border-box;
	}*/

.e12 {
  width: calc((100% / var(--nombredecolonnes)) * 12) !important;
  box-sizing: border-box;
}

section.grid > * {
  box-sizing: border-box;
}

/*=============================Header================================
=====================================================================
===================================================================*/

header {
  height: var(--tailleheader);
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  z-index: 100;
}

header > nav {
  max-width: var(--largeursite);
  height: var(--tailleheader);
  margin: auto;
}

header ul:not(.sous-menu) > li {
  display: flex;
  position: relative;
  height: 100%;
  align-items: center;
}

header ul:not(.sous-menu) {
  height: 100%;
}

header ul.sous-menu {
  position: absolute;
  left: 0;
  margin: auto;
  top: 100%;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  width: 200px;
}

header ul.sous-menu li {
  display: none;
  align-items: center;
  height: calc(var(--margindebasehorizontal) * 1.5);
}

header ul li:before {
  display: none;
}

header li:hover ul.sous-menu li {
  display: flex;
}

header .logo {
  width: 150px !important;
}

header .logo-fb {
  width: 38px;
}

header > nav > ul > li:hover > a > span,
header ul.sous-menu li a span:hover {
  color: var(--color2);
}

/*=========================Footer Header=============================
=====================================================================
===================================================================*/

/*=============================CTA===================================
=====================================================================
===================================================================*/

.cta {
  font-family: "Inter", sans-serif;
  background: var(--color1);
  padding: 14px 10px;
  color: #fff;
  font-size: 16px;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  border: 1px solid var(--color1);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
  cursor: pointer;
  box-shadow: 0 5px 30px rgba(21, 81, 141, 0.1);
}

.cta:hover {
  color: var(--color1) !important;
  background: transparent;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

.cta.b-color1:hover {
  color: var(--color1) !important;
  background: transparent !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

.cta.b-color2:hover {
  color: var(--color2) !important;
  background: transparent !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

.cta.b-color3:hover {
  color: var(--color3) !important;
  background: transparent !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

.cta.b-color4:hover {
  color: var(--color4) !important;
  background: transparent !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

.cta.b-color5:hover {
  color: var(--color5) !important;
  background: transparent !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

.cta.b-color6:hover {
  color: var(--color6) !important;
  background: transparent !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

.cta.b-color7:hover {
  color: var(--color7) !important;
  background: transparent !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

.cta2 {
  font-family: "Inter", sans-serif;
  background: var(--color1);
  padding: 10px 10px;
  color: #fff;
  font-size: 16px;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  border: 1px solid var(--color1);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
  cursor: pointer;
  box-shadow: 0 5px 30px rgba(21, 81, 141, 0.1);
}

.cta2:hover {
  color: #fff !important;
  background: var(--color2) !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
  border: 1px solid var(--color2);
}

.cta5 {
  font-family: "Inter", sans-serif;
  background: #fff;
  padding: 14px 10px;
  color: var(--color1) !important;
  font-size: 16px;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  border: 1px solid #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
  cursor: pointer;
  box-shadow: 0 5px 30px rgba(21, 81, 141, 0.1);
}

.cta5:hover {
  color: var(--color2) !important;
  border: 1px solid var(--color1) !important;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

/*=============================Elements==============================
=====================================================================
===================================================================*/

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

.padding-0 {
  padding: 0 !important;
}

.margin-trbl {
  margin: var(--margindebasevertical) var(--margindebasehorizontal) !important;
}

.margin-trbl-1-5 {
  margin: calc(var(--margindebasevertical) / 1.5)
    calc(var(--margindebasehorizontal) / 1.5) !important;
}

.margin-trbl-2 {
  margin: calc(var(--margindebasevertical) / 2)
    calc(var(--margindebasehorizontal) / 2) !important;
}

.margin-trbl-3 {
  margin: calc(var(--margindebasevertical) / 3)
    calc(var(--margindebasehorizontal) / 3) !important;
}

.margin-trbl-4 {
  margin: calc(var(--margindebasevertical) / 4)
    calc(var(--margindebasehorizontal) / 4) !important;
}

.padding-trbl {
  box-sizing: border-box;
  padding: var(--margindebasevertical) var(--margindebasehorizontal) !important;
}

.padding-trbl-1-5 {
  box-sizing: border-box;
  padding: calc(var(--margindebasevertical) / 1.5)
    calc(var(--margindebasehorizontal) / 1.5) !important;
}

.padding-trbl-2 {
  box-sizing: border-box;
  padding: calc(var(--margindebasevertical) / 2)
    calc(var(--margindebasehorizontal) / 2) !important;
}

.padding-trbl-3 {
  box-sizing: border-box;
  padding: calc(var(--margindebasevertical) / 3)
    calc(var(--margindebasehorizontal) / 3) !important;
}

.padding-trbl-4 {
  box-sizing: border-box;
  padding: calc(var(--margindebasevertical) / 4)
    calc(var(--margindebasehorizontal) / 4) !important;
}

.margin-tb {
  margin-top: var(--margindebasevertical) !important;
  margin-bottom: var(--margindebasevertical) !important;
}

.margin-tb-1-5 {
  margin-top: calc(var(--margindebasevertical) / 1.5) !important;
  margin-bottom: calc(var(--margindebasevertical) / 1.5) !important;
}

.margin-tb-2 {
  margin-top: calc(var(--margindebasevertical) / 2) !important;
  margin-bottom: calc(var(--margindebasevertical) / 2) !important;
}

.margin-tb-3 {
  margin-top: calc(var(--margindebasevertical) / 3) !important;
  margin-bottom: calc(var(--margindebasevertical) / 3) !important;
}

.margin-tb-4 {
  margin-top: calc(var(--margindebasevertical) / 4) !important;
  margin-bottom: calc(var(--margindebasevertical) / 4) !important;
}

.padding-tb {
  box-sizing: border-box;
  padding-top: var(--margindebasevertical) !important;
  padding-bottom: var(--margindebasevertical) !important;
}

.padding-tb-1-5 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) / 1.5) !important;
  padding-bottom: calc(var(--margindebasevertical) / 1.5) !important;
}

.padding-tb-2 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) / 2) !important;
  padding-bottom: calc(var(--margindebasevertical) / 2) !important;
}

.padding-tb-3 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) / 3) !important;
  padding-bottom: calc(var(--margindebasevertical) / 3) !important;
}

.padding-tb-4 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) / 4) !important;
  padding-bottom: calc(var(--margindebasevertical) / 4) !important;
}

.margin-lr {
  margin-left: var(--margindebasehorizontal) !important;
  margin-right: var(--margindebasehorizontal) !important;
}

.margin-lr-1-5 {
  margin-left: calc(var(--margindebasehorizontal) / 1.5) !important;
  margin-right: calc(var(--margindebasehorizontal) / 1.5) !important;
}

.margin-lr-2 {
  margin-left: calc(var(--margindebasehorizontal) / 2) !important;
  margin-right: calc(var(--margindebasehorizontal) / 2) !important;
}

.margin-lr-3 {
  margin-left: calc(var(--margindebasehorizontal) / 3) !important;
  margin-right: calc(var(--margindebasehorizontal) / 3) !important;
}

.margin-lr-4 {
  margin-left: calc(var(--margindebasehorizontal) / 4) !important;
  margin-right: calc(var(--margindebasehorizontal) / 4) !important;
}

.padding-lr {
  box-sizing: border-box;
  padding-left: var(--margindebasehorizontal) !important;
  padding-right: var(--margindebasehorizontal) !important;
}

.padding-lr-1-5 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) / 1.5) !important;
  padding-right: calc(var(--margindebasehorizontal) / 1.5) !important;
}

.padding-lr-2 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) / 2) !important;
  padding-right: calc(var(--margindebasehorizontal) / 2) !important;
}

.padding-lr-3 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) / 3) !important;
  padding-right: calc(var(--margindebasehorizontal) / 3) !important;
}

.padding-lr-4 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) / 4) !important;
  padding-right: calc(var(--margindebasehorizontal) / 4) !important;
}

.margin-l {
  margin-left: var(--margindebasehorizontal) !important;
}

.margin-l-1-5 {
  margin-left: calc(var(--margindebasehorizontal) / 1.5) !important;
}

.margin-l-2 {
  margin-left: calc(var(--margindebasehorizontal) / 2) !important;
}

.margin-l-3 {
  margin-left: calc(var(--margindebasehorizontal) / 3) !important;
}

.margin-l-4 {
  margin-left: calc(var(--margindebasehorizontal) / 4) !important;
}

.padding-l {
  box-sizing: border-box;
  padding-left: var(--margindebasehorizontal) !important;
}

.padding-l-1-5 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) / 1.5) !important;
}

.padding-l-2 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) / 2) !important;
}

.padding-l-3 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) / 3) !important;
}

.padding-l-4 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) / 4) !important;
}

.margin-r {
  margin-right: var(--margindebasehorizontal) !important;
}

.margin-r-1-5 {
  margin-right: calc(var(--margindebasehorizontal) / 1.5) !important;
}

.margin-r-2 {
  margin-right: calc(var(--margindebasehorizontal) / 2) !important;
}

.margin-r-3 {
  margin-right: calc(var(--margindebasehorizontal) / 3) !important;
}

.margin-r-4 {
  margin-right: calc(var(--margindebasehorizontal) / 4) !important;
}

.padding-r {
  box-sizing: border-box;
  padding-right: var(--margindebasehorizontal) !important;
}

.padding-r-1-5 {
  box-sizing: border-box;
  padding-right: calc(var(--margindebasehorizontal) / 1.5) !important;
}

.padding-r-2 {
  box-sizing: border-box;
  padding-right: calc(var(--margindebasehorizontal) / 2) !important;
}

.padding-r-3 {
  box-sizing: border-box;
  padding-right: calc(var(--margindebasehorizontal) / 3) !important;
}

.padding-r-4 {
  box-sizing: border-box;
  padding-right: calc(var(--margindebasehorizontal) / 4) !important;
}

.margin-b {
  margin-bottom: var(--margindebasevertical) !important;
}

.margin-b-1-5 {
  margin-bottom: calc(var(--margindebasevertical) / 1.5) !important;
}

.margin-b-2 {
  margin-bottom: calc(var(--margindebasevertical) / 2) !important;
}

.margin-b-3 {
  margin-bottom: calc(var(--margindebasevertical) / 3) !important;
}

.margin-b-4 {
  margin-bottom: calc(var(--margindebasevertical) / 4) !important;
}

.padding-b {
  box-sizing: border-box;
  padding-bottom: var(--margindebasevertical) !important;
}

.padding-b-1-5 {
  box-sizing: border-box;
  padding-bottom: calc(var(--margindebasevertical) / 1.5) !important;
}

.padding-b-2 {
  box-sizing: border-box;
  padding-bottom: calc(var(--margindebasevertical) / 2) !important;
}

.padding-b-3 {
  box-sizing: border-box;
  padding-bottom: calc(var(--margindebasevertical) / 3) !important;
}

.padding-b-4 {
  box-sizing: border-box;
  padding-bottom: calc(var(--margindebasevertical) / 4) !important;
}

.margin-t {
  margin-top: var(--margindebasevertical) !important;
}

.margin-t-1-5 {
  margin-top: calc(var(--margindebasevertical) / 1.5) !important;
}

.margin-t-2 {
  margin-top: calc(var(--margindebasevertical) / 2) !important;
}

.margin-t-3 {
  margin-top: calc(var(--margindebasevertical) / 3) !important;
}

.margin-t-4 {
  margin-top: calc(var(--margindebasevertical) / 4) !important;
}

.padding-t {
  box-sizing: border-box;
  padding-top: var(--margindebasevertical) !important;
}

.padding-t-1-5 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) / 1.5) !important;
}

.padding-t-2 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) / 2) !important;
}

.padding-t-3 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) / 3) !important;
}

.padding-t-4 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) / 4) !important;
}

.margin-tbx1-5 {
  margin-top: calc(var(--margindebasevertical) * 1.5) !important;
  margin-bottom: calc(var(--margindebasevertical) * 1.5) !important;
}

.margin-trblx1-5 {
  margin: calc(var(--margindebasevertical) * 1.5)
    calc(var(--margindebasehorizontal) * 1.5) !important;
}

.margin-trblx2 {
  margin: calc(var(--margindebasevertical) * 2)
    calc(var(--margindebasehorizontal) * 2) !important;
}

.margin-trblx3 {
  margin: calc(var(--margindebasevertical) * 3)
    calc(var(--margindebasehorizontal) * 3) !important;
}

.margin-trblx4 {
  margin: calc(var(--margindebasevertical) * 4)
    calc(var(--margindebasehorizontal) * 4) !important;
}

.padding-trblx1-5 {
  padding: calc(var(--margindebasevertical) * 1.5)
    calc(var(--margindebasehorizontal) * 1.5) !important;
}

.padding-trblx2 {
  padding: calc(var(--margindebasevertical) * 2)
    calc(var(--margindebasehorizontal) * 2) !important;
}

.padding-trblx3 {
  padding: calc(var(--margindebasevertical) * 3)
    calc(var(--margindebasehorizontal) * 3) !important;
}

.padding-trblx4 {
  padding: calc(var(--margindebasevertical) * 4)
    calc(var(--margindebasehorizontal) * 4) !important;
}

.margin-tbx2 {
  margin-top: calc(var(--margindebasevertical) * 2) !important;
  margin-bottom: calc(var(--margindebasevertical) * 2) !important;
}

.margin-tbx3 {
  margin-top: calc(var(--margindebasevertical) * 3) !important;
  margin-bottom: calc(var(--margindebasevertical) * 3) !important;
}

.margin-tbx4 {
  margin-top: calc(var(--margindebasevertical) * 4) !important;
  margin-bottom: calc(var(--margindebasevertical) * 4) !important;
}

.padding-tbx1-5 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) * 1.5) !important;
  padding-bottom: calc(var(--margindebasevertical) * 1.5) !important;
}

.padding-tbx2 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) * 2) !important;
  padding-bottom: calc(var(--margindebasevertical) * 2) !important;
}

.padding-tbx3 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) * 3) !important;
  padding-bottom: calc(var(--margindebasevertical) * 3) !important;
}

.padding-tbx4 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) * 4) !important;
  padding-bottom: calc(var(--margindebasevertical) * 4) !important;
}

.margin-lrx1-5 {
  margin-left: calc(var(--margindebasehorizontal) * 1.5) !important;
  margin-right: calc(var(--margindebasehorizontal) * 1.5) !important;
}

.margin-lrx2 {
  margin-left: calc(var(--margindebasehorizontal) * 2) !important;
  margin-right: calc(var(--margindebasehorizontal) * 2) !important;
}

.margin-lrx3 {
  margin-left: calc(var(--margindebasehorizontal) * 3) !important;
  margin-right: calc(var(--margindebasehorizontal) * 3) !important;
}

.margin-lrx4 {
  margin-left: calc(var(--margindebasehorizontal) * 4) !important;
  margin-right: calc(var(--margindebasehorizontal) * 4) !important;
}

.padding-lrx1-5 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) * 1.5) !important;
  padding-right: calc(var(--margindebasehorizontal) * 1.5) !important;
}

.padding-lrx2 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) * 2) !important;
  padding-right: calc(var(--margindebasehorizontal) * 2) !important;
}

.padding-lrx3 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) * 3) !important;
  padding-right: calc(var(--margindebasehorizontal) * 3) !important;
}

.padding-lrx4 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) * 4) !important;
  padding-right: calc(var(--margindebasehorizontal) * 4) !important;
}

.margin-lx1-5 {
  margin-left: calc(var(--margindebasehorizontal) * 1.5) !important;
}

.margin-lx2 {
  margin-left: calc(var(--margindebasehorizontal) * 2) !important;
}

.margin-lx3 {
  margin-left: calc(var(--margindebasehorizontal) * 3) !important;
}

.margin-lx4 {
  margin-left: calc(var(--margindebasehorizontal) * 4) !important;
}

.padding-lx1-5 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) * 1.5) !important;
}

.padding-lx2 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) * 2) !important;
}

.padding-lx3 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) * 3) !important;
}

.padding-lx4 {
  box-sizing: border-box;
  padding-left: calc(var(--margindebasehorizontal) * 4) !important;
}

.margin-rx1-5 {
  margin-right: calc(var(--margindebasehorizontal) * 1.5) !important;
}

.margin-rx2 {
  margin-right: calc(var(--margindebasehorizontal) * 2) !important;
}

.margin-rx3 {
  margin-right: calc(var(--margindebasehorizontal) * 3) !important;
}

.margin-rx4 {
  margin-right: calc(var(--margindebasehorizontal) * 4) !important;
}

.padding-rx1-5 {
  box-sizing: border-box;
  padding-right: calc(var(--margindebasehorizontal) * 1.5) !important;
}

.padding-rx2 {
  box-sizing: border-box;
  padding-right: calc(var(--margindebasehorizontal) * 2) !important;
}

.padding-rx3 {
  box-sizing: border-box;
  padding-right: calc(var(--margindebasehorizontal) * 3) !important;
}

.padding-rx4 {
  box-sizing: border-box;
  padding-right: calc(var(--margindebasehorizontal) * 4) !important;
}

.margin-bx1-5 {
  margin-bottom: calc(var(--margindebasevertical) * 1.5) !important;
}

.margin-bx2 {
  margin-bottom: calc(var(--margindebasevertical) * 2) !important;
}

.margin-bx3 {
  margin-bottom: calc(var(--margindebasevertical) * 3) !important;
}

.margin-bx4 {
  margin-bottom: calc(var(--margindebasevertical) * 4) !important;
}

.padding-bx1-5 {
  box-sizing: border-box;
  padding-bottom: calc(var(--margindebasevertical) * 1.5) !important;
}

.padding-bx2 {
  box-sizing: border-box;
  padding-bottom: calc(var(--margindebasevertical) * 2) !important;
}

.padding-bx3 {
  box-sizing: border-box;
  padding-bottom: calc(var(--margindebasevertical) * 3) !important;
}

.padding-bx4 {
  box-sizing: border-box;
  padding-bottom: calc(var(--margindebasevertical) * 4) !important;
}

.margin-tx1-5 {
  margin-top: calc(var(--margindebasevertical) * 1.5) !important;
}

.margin-tx2 {
  margin-top: calc(var(--margindebasevertical) * 2) !important;
}

.margin-tx3 {
  margin-top: calc(var(--margindebasevertical) * 3) !important;
}

.margin-tx4 {
  margin-top: calc(var(--margindebasevertical) * 4) !important;
}

.padding-tx1-5 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) * 1.5) !important;
}

.padding-tx2 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) * 2) !important;
}

.padding-tx3 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) * 3) !important;
}

.padding-tx4 {
  box-sizing: border-box;
  padding-top: calc(var(--margindebasevertical) * 4) !important;
}

.c-blanc {
  color: #fff !important;
}

.c-blanc::placeholder {
  color: #fff !important;
  opacity: 1;
}

.c-blanc::-webkit-input-placeholder {
  color: #fff !important;
  opacity: 1;
}

.c-blanc::moz-placeholder {
  color: #fff !important;
  opacity: 1;
}

.c-blanc:-ms-input-placeholder {
  color: #fff !important;
  opacity: 1;
}

.ul-color1 li:before {
  background: var(--color1) !important;
}

.ul-color2 li:before {
  background: var(--color2) !important;
}

.ul-color3 li:before {
  background: var(--color3) !important;
}

.ul-color4 li:before {
  background: var(--color4) !important;
}

.ul-color5 li:before {
  background: var(--color5) !important;
}

.ul-color6 li:before {
  background: var(--color6) !important;
}

.ul-color7 li:before {
  background: var(--color7) !important;
}

.c-color1 {
  color: var(--color1) !important;
}

.c-color1::placeholder {
  color: var(--color1) !important;
  opacity: 1;
}

.c-color1::-webkit-input-placeholder {
  color: var(--color1) !important;
  opacity: 1;
}

.c-color1::moz-placeholder {
  color: var(--color1) !important;
  opacity: 1;
}

.c-color1:-ms-input-placeholder {
  color: var(--color1) !important;
  opacity: 1;
}

.c-color2 {
  color: var(--color2) !important;
}

.c-color2::placeholder {
  color: var(--color2) !important;
  opacity: 1;
}

.c-color2::-webkit-input-placeholder {
  color: var(--color2) !important;
  opacity: 1;
}

.c-color2::moz-placeholder {
  color: var(--color2) !important;
  opacity: 1;
}

.c-color2:-ms-input-placeholder {
  color: var(--color2) !important;
  opacity: 1;
}

.c-color3 {
  color: var(--color3) !important;
}

.c-color3::placeholder {
  color: var(--color3) !important;
  opacity: 1;
}

.c-color3::-webkit-input-placeholder {
  color: var(--color3) !important;
  opacity: 1;
}

.c-color3::moz-placeholder {
  color: var(--color3) !important;
  opacity: 1;
}

.c-color3:-ms-input-placeholder {
  color: var(--color3) !important;
  opacity: 1;
}

.c-color4 {
  color: var(--color4) !important;
}

.c-color4::placeholder {
  color: var(--color4) !important;
  opacity: 1;
}

.c-color4::-webkit-input-placeholder {
  color: var(--color4) !important;
  opacity: 1;
}

.c-color4::moz-placeholder {
  color: var(--color4) !important;
  opacity: 1;
}

.c-color4:-ms-input-placeholder {
  color: var(--color4) !important;
  opacity: 1;
}

.c-color5 {
  color: var(--color5) !important;
}

.c-color5::placeholder {
  color: var(--color5) !important;
  opacity: 1;
}

.c-color5::-webkit-input-placeholder {
  color: var(--color5) !important;
  opacity: 1;
}

.c-color5::moz-placeholder {
  color: var(--color5) !important;
  opacity: 1;
}

.c-color5:-ms-input-placeholder {
  color: var(--color5) !important;
  opacity: 1;
}

.c-color6 {
  color: var(--color6) !important;
}

.c-color6::placeholder {
  color: var(--color6) !important;
  opacity: 1;
}

.c-color6::-webkit-input-placeholder {
  color: var(--color6) !important;
  opacity: 1;
}

.c-color6::moz-placeholder {
  color: var(--color6) !important;
  opacity: 1;
}

.c-color6:-ms-input-placeholder {
  color: var(--color6) !important;
  opacity: 1;
}

.c-color7 {
  color: var(--color7) !important;
}

.c-color7::placeholder {
  color: var(--color7) !important;
  opacity: 1;
}

.c-color7::-webkit-input-placeholder {
  color: var(--color7) !important;
  opacity: 1;
}

.c-color7::moz-placeholder {
  color: var(--color7) !important;
  opacity: 1;
}

.c-color7:-ms-input-placeholder {
  color: var(--color7) !important;
  opacity: 1;
}

.c-color8 {
  color: var(--color8) !important;
}

.c-color8::placeholder {
  color: var(--color8) !important;
  opacity: 1;
}

.c-color8::-webkit-input-placeholder {
  color: var(--color8) !important;
  opacity: 1;
}

.c-color8::moz-placeholder {
  color: var(--color8) !important;
  opacity: 1;
}

.c-color8:-ms-input-placeholder {
  color: var(--color8) !important;
  opacity: 1;
}

.c-color9 {
  color: var(--color9) !important;
}

.c-color9::placeholder {
  color: var(--color9) !important;
  opacity: 1;
}

.c-color9::-webkit-input-placeholder {
  color: var(--color9) !important;
  opacity: 1;
}

.c-color9::moz-placeholder {
  color: var(--color9) !important;
  opacity: 1;
}

.c-color9:-ms-input-placeholder {
  color: var(--color9) !important;
  opacity: 1;
}

.c-noir {
  color: #000 !important;
}

.c-noir::placeholder {
  color: #000 !important;
  opacity: 1;
}

.c-noir::-webkit-input-placeholder {
  color: #000 !important;
  opacity: 1;
}

.c-noir::moz-placeholder {
  color: #000 !important;
  opacity: 1;
}

.c-noir:-ms-input-placeholder {
  color: #000 !important;
  opacity: 1;
}

.b-transparent,
.b-transparent.full-bg-img:before {
  background: transparent !important;
  border-color: transparent !important;
}

.b-blanc {
  background: #fff !important;
  border-color: #fff !important;
}

.b-noir {
  background: #000 !important;
  border-color: #000 !important;
}

.b-color1 {
  background: var(--color1) !important;
  border-color: var(--color1) !important;
}

.b-color2 {
  background: var(--color2) !important;
  border-color: var(--color2) !important;
}

.b-color3 {
  background: var(--color3) !important;
  border-color: var(--color3) !important;
}

.b-color4 {
  background: var(--color4) !important;
  border-color: var(--color4) !important;
}

.b-color5 {
  background: var(--color5) !important;
  border-color: var(--color5) !important;
}

.b-color6 {
  background: var(--color6) !important;
  border-color: var(--color6) !important;
}

.b-color7 {
  background: var(--color7) !important;
  border-color: var(--color7) !important;
}

.gradient-1 {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#a82682+0,eb6a4c+100 */
  background: #a82682; /* Old browsers */
  background: -moz-linear-gradient(
    -45deg,
    #a82682 0%,
    #eb6a4c 100%
  ); /* FF3.6-15 */
  background: -webkit-linear-gradient(
    -45deg,
    #a82682 0%,
    #eb6a4c 100%
  ); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(
    135deg,
    #a82682 0%,
    #eb6a4c 100%
  ); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a82682', endColorstr='#eb6a4c',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.gradient-2 {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#008cd1+32,ffd600+100 */
  background: #008cd1; /* Old browsers */
  background: -moz-linear-gradient(
    -45deg,
    #008cd1 32%,
    #ffd600 100%
  ); /* FF3.6-15 */
  background: -webkit-linear-gradient(
    -45deg,
    #008cd1 32%,
    #ffd600 100%
  ); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(
    135deg,
    #008cd1 32%,
    #ffd600 100%
  ); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#008cd1', endColorstr='#ffd600',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.border-blanc {
  border-color: #fff !important;
}

.border-color1 {
  border-color: var(--color1) !important;
}

.border-color2 {
  border-color: var(--color2) !important;
}

.border-color3 {
  border-color: var(--color3) !important;
}

.border-color4 {
  border-color: var(--color4) !important;
}

.border-color5 {
  border-color: var(--color5) !important;
}

.border-color6 {
  border-color: var(--color6) !important;
}

.border-color7 {
  border-color: var(--color7) !important;
}

.border-color8 {
  border-color: var(--color8) !important;
}

.border-color9 {
  border-color: var(--color9) !important;
}

.border-clair {
  border-color: var(--clair) !important;
}

.border-sombre {
  border-color: var(--sombre) !important;
}

.border-texte {
  border-color: var(--texte) !important;
}

.border-noir {
  border-color: #000 !important;
}

.border-0 {
  border: none;
}

.border-trbl {
  border: 1px solid;
}

.border-trblx2 {
  border: 2px solid;
}

.border-tb {
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.border-lr {
  border-left: 1px solid;
  border-right: 1px solid;
}

.border-t {
  border-top: 1px solid;
}

.border-r {
  border-right: 1px solid;
}

.border-b {
  border-bottom: 1px solid;
}

.border-l {
  border-left: 1px solid;
}

.b-transparent {
  background: transparent !important;
}

/*a[class*="b-"]:hover, .clic-data[class*="b-"]:hover, input[type="submit"][class*="b-"]:hover
{
	opacity:.5;
}
*/
.border-radius-5 {
  border-radius: 5px !important;
  /*overflow:hidden;*/
}

.border-radius-10 {
  border-radius: 10px !important;
  /*overflow:hidden;*/
}

.border-radius-15 {
  border-radius: 15px !important;
}

.border-radius-25 {
  border-radius: 25px !important;
  /*overflow:hidden;*/
}

.border-radius-255 {
  border-radius: 255px !important;
  /*overflow:hidden;*/
}

.border-width-2 {
  border-width: 2px !important;
}

.border-top-right-radius {
  border-top-right-radius: 15px !important;
}

.border-top-left-radius {
  border-top-left-radius: 15px !important;
}

.border-bottom-right-radius {
  border-bottom-right-radius: 15px !important;
}

.border-bottom-left-radius {
  border-bottom-left-radius: 15px !important;
}

.border-width-5 {
  border-width: 5px !important;
}

.hr-100 {
  width: 100%;
}

.hr-75 {
  width: 75%;
}

.hr-50 {
  width: 50%;
}

.hr-25 {
  width: 25%;
}

.hr-15 {
  width: 15%;
}

.hr-10 {
  width: 10%;
}

.hr-5 {
  width: 5%;
}

.box-shadow {
  box-shadow: 0 5px 10px rgba(21, 81, 141, 0.1);
}

.box-shadow-2 {
  box-shadow: 0 5px 30px rgba(21, 81, 141, 0.1);
}

.box-shadow-color1 {
  box-shadow: 0 20px 45px var(--color1);
}

.box-shadow-color2 {
  box-shadow: 0 20px 45px var(--color2);
}

.box-shadow-color3 {
  box-shadow: 0 20px 45px var(--color3);
}

.box-shadow-color4 {
  box-shadow: 0 20px 45px var(--color4);
}

.box-shadow-color5 {
  box-shadow: 0 20px 45px var(--color5);
}

.box-shadow-color6 {
  box-shadow: 0 20px 45px var(--color6);
}

.box-shadow-color7 {
  box-shadow: 0 20px 45px var(--color7);
}

.text-shadow {
  text-shadow: 0px 2px 5px rgba(0, 0, 0, 0.6);
}

.clic-data {
  cursor: pointer !important;
}

span.clic-data:hover,
li.clic-data:hover,
span.clic-data:hover,
label.clic-data:hover,
a.clic-data:hover {
  text-decoration: underline;
}

a.no-underline {
  text-decoration: none !important;
}

.cta.clic-data:hover,
a.cta,
.cta a,
header a,
footer a {
  text-decoration: none;
}

.font-100 {
  font-size: 100px;
}

.font-70 {
  font-size: 70px;
}

.font-60 {
  font-size: 60px;
}

.font-50 {
  font-size: 50px;
}

.font-40 {
  font-size: 40px;
}

.font-35 {
  font-size: 35px;
}

.font-30 {
  font-size: 30px;
}

.font-25 {
  font-size: 25px;
}

.font-20 {
  font-size: 20px;
}

.font-18 {
  font-size: 18px;
}

.font-16 {
  font-size: 16px;
}

.font-15 {
  font-size: 15px;
}

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

.relative {
  position: relative;
}

.line-height-1 {
  line-height: 1;
}

.line-height-1-5 {
  line-height: 1.5;
}

.line-height-30 {
  line-height: 30px;
}

.line-height-35 {
  line-height: 35px;
}

.font-family-1 {
  font-display: auto;
  font-family: "Inter", sans-serif;
}

.font-family-2 {
  font-display: auto;
  font-family: "Inter", sans-serif;
}

.nowrap {
  white-space: nowrap;
  flex-wrap: nowrap;
}

.wrap {
  white-space: normal;
  flex-wrap: wrap;
  overflow-wrap: normal;
}

.image-cover {
  overflow: hidden;
}

.image-cover > img {
  min-height: 100%;
  min-width: 100%;
  object-fit: cover;
  object-position: center;
}

.maj {
  text-transform: uppercase;
}

/*===========================IMAGE INTRO===========================*/

.image-intro {
  /* height:var(--taillecover); */
  width: 90vw;
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: center;
  z-index: 0;
}

.image-intro:before {
  display: block;
  content: "";
  height: 100%;
  width: 100vw;
  z-index: -1;
  position: absolute;
  background: -moz-linear-gradient(
    top,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.45) 77%
  );
  background: -webkit-linear-gradient(
    top,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.45) 77%
  );
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.45) 77%
  );
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#73000000',GradientType=0 );
}

.image-intro > picture:first-of-type > img {
  position: absolute;
  min-height: 100%;
  min-width: 100%;
  object-fit: cover;
  object-position: top center;
  z-index: -2;
  left: 0;
}

.image-intro > div {
  margin: auto;
  max-width: var(--largeursite);
}

.image-intro.no-filter:before {
  background: transparent;
}

/*=============================FILTRE=============================*/

.filter:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.33);
  z-index: 1;
}

.filter {
  position: relative;
  z-index: -1;
}

.filter-gradient:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to top,
    rgba(255, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.65) 100%
  );
  z-index: 1;
}

.filter-gradient {
  position: relative;
  z-index: -1;
}

/*=============================IMAGE FOND FULL=============================*/

.image-fond-full {
  /*position:relative;*/
  /*overflow:hidden;*/
  background-size: cover !important;
}

.image-fond-full > div:first-of-type {
  display: none;
}

.image-fond-full > div:not(:first-of-type) {
  position: relative;
}

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

footer {
  background: url("../img/bg-footer.svg") no-repeat top center / cover;
}

/*==============================FORMULAIRE===============================*/

/*=============================UNIQUES=============================*/

.card:hover {
  border-color: var(--color1) !important;
}

.gridcss {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}

gridcss {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}

.gridcssoffre {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(1, 1fr);
}

.gridcssoffres {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(1, 1fr);

  align-content: start; /* Alignement vertical */
}

.gridcssoffres > label {
  align-self: start; /* Assurez-vous que les labels s'alignent en haut */
}

.gridcss2 {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(1, 1fr);
}

.gridcssdom {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(1, 1fr);
}

.abonnement div.abo-selected {
  background: var(--color1);
  color: #fff;
  border-radius: 255px !important;
}

.abonnement {
  cursor: pointer;
}

.form-step {
  display: none;
}

.form-step-active {
  display: block;
}

.sub {
  font-family: "Inter", sans-serif;
  background: var(--color1);
  padding: 14px 15px;
  color: #fff;
  font-size: 16px;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  border: 1px solid var(--color1);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
  cursor: pointer;
  box-shadow: 0 5px 30px rgba(21, 81, 141, 0.1);
}

.sub:hover {
  color: var(--color1) !important;
  background: transparent;
  box-shadow: 0 10px 45px rgba(0, 0, 0, 0);
}

/*============================FORM INSCRIPTION============================*/

form select {
  outline: none;
}

form.form-inscription > div {
  background: rgba(255, 255, 255, 0.6);
}

form.form-inscription input,
form.form-inscription select,
form.form-inscription label,
form.form-inscription .next {
  height: 40px;
  font-size: 14px;
}

form.form-inscription .next {
  font-size: 20px;
  cursor: pointer;
}

form.form-inscription .next:hover {
  background: transparent !important;
  color: var(--color2) !important;
}

form.form-inscription input:not([type="submit"]) {
  /*background:var(--color7);*/
  border: 0;
  height: 30px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  margin: 5px 0;
}

/*============================FORM CONTACT============================*/

form.form-contact input:not([type="submit"]),
form.form-contact textarea,
form.form-contact select {
  height: 40px;
}

form.form-contact input[type="submit"]:hover {
  background: transparent !important;
  color: var(--color4) !important;
  cursor: pointer;
}

form.form-contact label.required:after {
  content: "*";
  color: var(--color2);
  margin-left: 5px;
}

input.error,
textarea.error,
select.error {
  border: 1px solid red !important;
}

/*============================FORM EMPLOI============================*/

form.form-emploi input:not([type="submit"]),
form.form-emploi textarea,
form.form-emploi select {
  height: 40px;
}

form.form-emploi label.required:after {
  content: "*";
  color: var(--color2);
  margin-left: 5px;
}

form.form-emploi input[type="submit"]:hover {
  background: transparent !important;
  color: var(--color4) !important;
  cursor: pointer;
}

/*============================FORM ATELIER============================*/

.atelier {
  cursor: pointer;
}

.atelier:hover {
  opacity: 0.8;
}

form.form-atelier {
  position: fixed;
  height: calc(100vh - var(--tailleheader) - (var(--margindebasevertical) * 2));
  top: calc(var(--tailleheader) + var(--margindebasevertical));
  z-index: 1;
  width: var(--largeursite);
  box-sizing: border-box;
  overflow: scroll;
  left: 0;
  right: 0;
  margin: auto;
}

body.noir:before {
  position: fixed;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1;
}

form.form-atelier input:not([type="submit"]),
form.form-atelier textarea,
form.form-atelier select {
  height: 40px;
}

form.form-atelier input[type="submit"]:hover {
  background: transparent !important;
  color: var(--color4) !important;
  cursor: pointer;
}

form.form-atelier .close {
  position: absolute;
  top: calc(var(--margindebasevertical) / 2);
  right: calc(var(--margindebasehorizontal) / 2);
  background: #ee0000;
  height: 30px;
  border-color: #ee0000 !important;
  cursor: pointer;
}

form.form-atelier .close:hover {
  background: transparent !important;
  color: #ee0000 !important;
}

form.form-atelier .close:after {
  content: "X";
  border-left: 1px solid #990000;
  margin-left: 10px;
  padding-left: 10px;
}

.error-container p,
.send-successful p {
  background: red;
  color: #fff;
  padding: 5px 10px;
  font-family: Arial;
  font-weight: lighter;
  font-size: 30px;
  /*height:40px;*/
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #fff;
}

.send-successful p {
  background: green;
}

.info-contact {
  display: none !important;
}

.active-radio {
  border-color: var(--color1) !important;
}

input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.section {
  transition: transform 1s, opacity 1s;
}

.section-hide {
  opacity: 0;
  transform: translateY(8rem);
}

.cta3 {
  background: white;
  color: var(--color1);
  padding: 10px 20px;
  border-radius: 5px;
  cursor: pointer;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  font-size: 20px;
  margin: 10px 0;
}

.cta4 {
  background: white;
  color: var(--color2);
  padding: 3px 15px;
  border-radius: 255px;
  cursor: pointer;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  font-size: 20px;
  margin: 10px 0;
}

.active-tab {
  border-color: var(--color1) !important;
}

.tab-bg {
  display: none;
}

.tab-img-active {
  display: block;
  transition: 0.5s ease-in-out;
}

.slide {
  overflow: hidden;
  transition: height 1s;
  height: 0;
  opacity: 0;
}

.rotate {
  transform-origin: center !important;
  transform: rotate(180deg);
  transition: transform 0.3s ease-in-out;
}

.faq-active > p:first-child:after {
  transform: rotate(-180deg);
  transition: all 0.3s ease;
}

.absolute {
  position: absolute;
  bottom: 0px;
  right: 0px;
}

.relative-slider {
  position: relative;
  overflow: hidden;
  height: 600px;
}

.absolute-slider {
  align-items: center !important;
  position: absolute;
}

.btn-precedent {
  position: absolute;
  top: 45%;
  left: -50px;
  transform: translateY(-50%);
  color: var(--color9);
  cursor: pointer;
  display: inline-block;
  text-align: center;
  margin: 10px 0;
}

.btn-suivant {
  position: absolute;
  top: 45%;
  right: -50px;
  transform: translateY(-50%);
  color: var(--color9);
  cursor: pointer;
  display: inline-block;
  text-align: center;
  margin: 10px 0;
}

.dot {
  cursor: pointer;
  display: inline-block;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  transition: background-color 0.6s ease;
}

.active-dot {
  background-color: var(--color1);
}

.back-btn,
.next-btn {
  cursor: pointer;
}

.visibilty-none {
  visibility: hidden !important;
}

/*============================RGPD============================*/

#rgpd_msg {
  position: fixed;
  bottom: 0;
  width: 100vw;
  padding: var(--margindebasevertical) 0;
  z-index: 1;
}

#rgpd_msg button:hover {
  background: transparent !important;
  color: var(--color4) !important;
  cursor: pointer;
}

.show_cookies {
  position: fixed;
  left: calc(var(--margindebasehorizontal) / 2);
  bottom: calc(var(--margindebasevertical) / 2);
  cursor: pointer;
}

.show_cookies:hover {
  background: var(--color2) !important;
  color: var(--color4) !important;
}

#rgpd_popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.6);
  z-index: 5000000;
}

#rgpd_popup label {
  border: 1px solid var(--color4);
}

#rgpd_popup input {
  visibility: hidden;
}

#rgpd_popup label:hover {
  background: var(--color1);
  border-color: var(--color1) !important;
  color: white;
  cursor: pointer;
}

.texte-decoration-no {
  text-decoration: none !important;
}

.textAlt {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  color: var(--color1);
}

.textAlt:hover {
  color: var(--color2);
}

.slideText {
  opacity: 0;
  transform: translatex(8rem);
}

.slide-text-active {
  position: absolute;
  top: 0;
  height: 100%;
  right: -100%; /* Déplacez-le hors de l'écran sur le côté droit */
  transition: right 0.5s; /* Animation douce pour l'apparition */
  overflow-y: scroll; /* Permet le défilement vertical */
}

.form-step {
  position: relative;
  overflow: hidden; /* Empêche le défilement en dehors du viewport */
}

.bg-normal {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
}

.bg-sombre {
  display: block;
  background: rgba(0, 0, 0, 0.3) !important;
}

.no-underline {
  text-decoration: none !important;
}

.no-wrap {
  white-space: nowrap;
}

.non-clickable {
  pointer-events: none;
  opacity: 0.5; /* Optionnel : pour indiquer visuellement que le bouton est désactivé */
}

/* styles.css */
#slide-text-active {
  overflow-y: scroll; /* Permet le défilement vertical */
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none; /* Firefox */
}

#slide-text-active::-webkit-scrollbar {
  display: none; /* Safari et Chrome */
}

/* #slide-text-active {
  position: absolute;
  top: 0;
  /* right: -67%; */
/* width: 100%;
  height: 100%;
  font-family: "Inter", sans-serif;
  opacity: 0;
  transform: translatex(8rem);
  transition: transform 1s, opacity 1s !important;
} */

/* .section {
  transition: transform 1s, opacity 1s;
}

.section-hide {
  opacity: 0;
  transform: translateY(8rem); */
/* } */
