@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/montserrat-var.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/montserrat-var.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/montserrat-var.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/merriweather-300.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Merriweather';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/merriweather-italic-300.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --font1: "Montserrat", sans-serif;
  --font2: "Merriweather", serif;
  --fontweight-regu: 400;
  --titreuc: uppercase;
  --main-color1: #000; /* couleur base typo */
  --main-color2: #003DA6; /* bleu foncé */
  --main-color3: #4076F9; /* bleu clair */
  --main-color-error: #003DA6;
  --main-deg1: #fe90ab;
  --main-deg2: #117699;
  --main-bgcolor0: #fff; /* fond principale */
  --main-bgcolor1: #000;
  --main-bgcolor2: #003DA6;
  --main-bgcolor3: #4076F9;

  --colorduotone_bg: #272e64;
  --colorduotone_fg: #8ff979;

  --border-radius-val: 0;
  --border-radius-media: 0;

  --boxshadow1: 0 2px 40px 0 rgb(0 0 0 / 7%);
  --boxshadow2: 0 10px 40px 0 rgba(0, 0, 0, 14%);

  --padunit: 3.125vw;
  --pdlr-colbase: 1.5; /* marge colonne page (1 colonne) */
  /*--padunit: 1.5625vw;*/
}
.html--fondsomb {
  --main-color1: #fff;
  --main-color2: #fe90ab;
  --main-bgcolor0: #1f1f1f;
  --main-bgcolor1: #fff;
  --main-bgcolor2: #fe90ab;
  --main-bgcolor3: #fe90ab;
}
/* https://clamp.font-size.app/ */

.debug {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 0.65em;
  background-color: #ff00c3;
  color: #fff;
}
.debug::before {
  content: "debug ➔ ";
}

/*** RESET
  The new CSS reset - version 1.8.4 (last updated 14.2.2023)
  GitHub page: https://github.com/elad2412/the-new-css-reset
  ***/
*:where(
    :not(html, iframe, canvas, img, svg, video, audio, input):not(svg *, symbol *)
  ) {
  all: unset;
  display: revert;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
a,
button {
  cursor: revert;
}
ol,
ul,
menu {
  list-style: none;
}
img {
  max-inline-size: 100%;
  max-block-size: 100%;
} 
table {
  border-collapse: collapse;
}
input,
textarea {
  -webkit-user-select: auto;
}
textarea {
  white-space: revert;
}
meter {
  -webkit-appearance: revert;
  appearance: revert;
}
:where(pre) {
  all: revert;
}
::placeholder {
  color: unset;
}
::marker {
  content: initial;
}
:where([hidden]) {
  display: none;
}
:where([contenteditable]:not([contenteditable="false"])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}
:where([draggable="true"]) {
  -webkit-user-drag: element;
}
:where(dialog:modal) {
  all: revert;
}
/* RESPONSIVE */
img,
video {
  max-inline-size: 100%;
  block-size: auto;
  inline-size: 100%;
  vertical-align: middle;
  /*width: 100%;*/
}
img,
video,
iframe {
  max-inline-size: 100%;
  block-size: auto;
}
/*  */
strong {
  font-weight: 700;
}
/* SCROLLBAR */
/*
  ::-webkit-scrollbar {
    width: 10px;
  }
  ::-webkit-scrollbar-track {
    background: var(--main-bgcolor0);
    border-radius: 10px;
  }
  ::-webkit-scrollbar-thumb {
    background: var(--main-color2);
    border-radius: 10px;
  }
  */

.pdlr {
  padding-left: calc(var(--pdlr-colbase) * var(--padunit));
  padding-right: calc(var(--pdlr-colbase) * var(--padunit));
}
@media (min-width: 1200px) {
  .pdlr--3 {
    padding-left: calc(3 * var(--padunit));
    padding-right: calc(3 * var(--padunit));
  }
  .pdlr--6 {
    padding-left: calc(6 * var(--padunit));
    padding-right: calc(6 * var(--padunit));
  }
  .pdr--6 {
    padding-right: calc(6 * var(--padunit));
  }
}
.pt_05 {
  padding-top: calc(0.5 * var(--padunit));
}
.pb_05 {
  padding-bottom: calc(0.5 * var(--padunit));
}
.pt_1 {
  padding-top: var(--padunit);
}
.pb_1 {
  padding-bottom: var(--padunit);
}
.pt_2 {
  padding-top: calc(2 * var(--padunit));
}
.pt_3 {
  padding-top: calc(3 * var(--padunit));
}
.pt_4 {
  padding-top: calc(4 * var(--padunit));
}
.pb_3 {
  padding-bottom: calc(3 * var(--padunit));
}
.maxinlinesize40 {
  max-inline-size: 40em;
}
.obfli__lien {
  cursor: pointer;
  text-decoration: underline;
}
.bouton {
  position: relative;
  font-family: var(--font1);
  margin: 0;
  padding: 0;
  width: auto;
  overflow: visible;
  background-color: var(--main-color2);
  color: #fff;
  font: inherit;
  -webkit-font-smoothing: inherit;
  -moz-osx-font-smoothing: inherit;
  -webkit-appearance: none;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  font-weight: 500;
  font-size: .8em;
  line-height: 1.3;
  text-align: center;
  color: #fff;
  border: 2px solid var(--main-color2);
  border-radius: 2em;
  padding: 1em 1.25em;
  padding-right: 3em;
  margin-top: 2em;
  margin-bottom: 2em;
  transition: all ease 0.5s;
}
.bouton::after {
  content:"";
  position: absolute;
  top: 50%;
  right: 1.25em;
  transform: translateY(-50%);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11'%3E%3Cpath d='M12 5.47 8.13 11H6.65l3.34-4.92H0V4.89h9.99L6.65 0h1.48L12 5.47Z' style='fill:%23fff'/%3E%3C/svg%3E");
  background-size: 1em .91em;
  width: 1em;
  height: .91em;
  transition: right ease .3s;
}
.bouton--form {
  background-color: var(--main-color3);
  padding: .75em 4em;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 1em;
  border-color: var(--main-color3);
}
.bouton--form::after {
  display: none;
}
.bouton:hover {
  background-color: var(--main-bgcolor3);
  border-color: var(--main-bgcolor3);
}
.bouton:hover::after {
  right: 1em;
}
html {
  background-color: var(--main-bgcolor0);
}
body {
  font-family: var(--font1);
  font-weight: var(--fontweight-regu);
  font-size: clamp(1rem, 0.8498rem + 0.6407vw, 1.875rem);
  line-height: 1.5;
  background-color: var(--main-bgcolor0);
  fill: currentColor;
  color: var(--main-color1);
}
.body--overflow {
  overflow-x: hidden;
}
.contenustyle img,
.contenustyle video {
  border-radius: var(--border-radius-media);
}
.tit1 {
  font-weight: 500;
  font-size: clamp(1.5625rem, 0.8653rem + 2.9748vw, 5.625rem);
  line-height: 1;
  padding-top: 0.75em;
  padding-bottom: 0.25em;
  color: var(--main-color1);
}
.tit1--a {
  padding-top: 0;
  font-size: clamp(1.5625rem, 0.5765rem + 4.2071vw, 5.625rem);
  line-height: 1;
}
.tit1--pt0 {
  padding-top: 0;
}
.mw1080 {
  max-width: 1080px;
}
@media (min-width: 950px) {
  .mw50pc {
    max-width: 50%;
  }
}
.tit2 {
  font-family: var(--font2);
  font-weight: 300;
  font-size: clamp(1.5625rem, 1.0316rem + 2.2654vw, 3.75rem);
  line-height: 1.25;
  padding-top: 0.75em;
  padding-bottom: 0.25em;
  color: var(--main-color2);
}
.tit2--blanc {
  color: #fff;
}
.tit2 span {
  font-family: var(--font1);
  font-weight: 500;
  color: var(--main-color3);
}
.tit2--blanc span {
  color: #fff;
}
.tit21 {
  font-weight: 600;
  font-size: 2.3em;
  line-height: 1.25;
  padding-bottom: .75em;
  color: var(--main-color3);
}
.tit--deg {
  background-size: 100%;
  background-repeat: repeat;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;

  background-color: var(--main-deg1);
  background-image: linear-gradient(0deg, var(--main-deg1) 0%, var(--main-deg2) 100%);
}
.mwlisi {
  max-width: 1200px;
}
.mwlisi--centre {
  margin-left: auto;
  margin-right: auto;
}
.header__cont {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
}
.header__logo {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 89 60'%3E%3Cpath d='M28.65 17.07h.17l6.59 20.2H22.14l6.51-20.2ZM21.97 0 0 60h14.79l3.47-10.73h21.05L42.86 60h14.79L35.49 0H21.97ZM54.05 0 67.8 37.25H57.74l1.92 5.19h10.06l4.87 13.2-6.93.99V60h21.35v-3.37l-6.8-.99L61.66 0h-7.61Z' style='fill:%23fff'/%3E%3C/svg%3E");
  background-size: 3.3em 2.2em;
  background-repeat: no-repeat;
  width: 3.3em;
  height: 2.2em;
  text-indent: -99em;
}
.header__logo:hover {
  background-image: url(../img/alexis-assurances-blanc.svg);
  background-size: 24.82em 2.2em;
  animation-name: logrow;
  animation-duration: .5s;
  animation-timing-function: ease;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.logobleu .header__logo:hover {
  background-image: url(../img/alexis-assurances.svg);
}
@keyframes logrow {
  from { width: 3.3em; }
  to   { width: 24.82em; }
}
.logobleu .header__logo {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 89 60'%3E%3Cpath d='M28.65 17.07h.17l6.59 20.2H22.14l6.51-20.2ZM21.97 0 0 60h14.79l3.47-10.73h21.05L42.86 60h14.79L35.49 0H21.97ZM54.05 0 67.8 37.25H57.74l1.92 5.19h10.06l4.87 13.2-6.93.99V60h21.35v-3.37l-6.8-.99L61.66 0h-7.61Z' style='fill:%23003DA6'/%3E%3C/svg%3E");
}

.header__logo--header {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 89 60'%3E%3Cpath d='M28.65 17.07h.17l6.59 20.2H22.14l6.51-20.2ZM21.97 0 0 60h14.79l3.47-10.73h21.05L42.86 60h14.79L35.49 0H21.97ZM54.05 0 67.8 37.25H57.74l1.92 5.19h10.06l4.87 13.2-6.93.99V60h21.35v-3.37l-6.8-.99L61.66 0h-7.61Z' style='fill:%23fff'/%3E%3C/svg%3E");
  margin-top: 6.25vw;
  margin-left: 6.25vw;
}
@media (min-width: 700px) {
  .header__logo--header {
    display: none;
  }
}
.header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-top: calc(2 * var(--padunit));
  padding-bottom: calc(2 * var(--padunit));
  align-items: center;
  color: var(--main-color1);
}
.header__navul {
  display: flex;
  flex-direction: column;
}
.header__nava {
  transition: border-bottom ease .3s;
  border-bottom: 3px solid transparent;
}
.header__nava:hover, .header__navli.activ .header__nava {
  border-bottom: 3px solid var(--main-bgcolor0);
}
.mtnav {
  margin-top: 6em;
}
@media (min-width: 700px) {
  .header {
    padding-top: calc( 0.5*var(--padunit) + .75em );
    padding-bottom: calc(0.5*var(--padunit));
    color: var(--main-color1);
  }
  .header a {
    color: var(--main-bgcolor0);
  }
  .body--headerfix .header__cont {
    position: fixed;
    /*background-color: #999;*/
  }
  .body--headersep .header {
    margin-top: calc(0.5 * var(--padunit));
    padding-bottom: calc(0.384 * var(--padunit));
    background-color: var(--main-bgcolor2);
    padding-left: var(--padunit);
    padding-right: var(--padunit);
    border-radius: var(--border-radius-val);
  }
  .body--headerclair .header {
    color: #fff;
  }
  .body--headerclair .header a {
    color: #fff;
  }
  .body--headerclair .header a:hover, .header__navli.activ a {
    border-bottom-color: #fff;
  }

  .body--headerbg .header__cont {
    background-color: var(--main-bgcolor1);
  }
  .header__nav ul {
    flex-direction: row;
    justify-content: space-between;
  }
  .header__navli {
    font-size: 0.75em;
    padding-left: 0.75em;
    padding-right: 0.75em;
  }
  .header__navli--bouton a {
    border-width: 2px;
    border-style: solid;
    border-color: var(--main-color1);
    padding: 0.5em 1.5em;
    border-radius: var(--border-radius-val);
    transition: background-color ease 0.3s;
  }
  .body--headerclair .header__navli--bouton a {
    border-color: var(--main-bgcolor0);
  }
  .header__navli--bouton a:hover {
    background-color: var(--main-color1);
    color: var(--main-bgcolor0);
  }
  .mtnav {
    margin-top: calc(var(--padunit) + 1em); /* à adapter */
  }
}
.header__burger {
  display: none;
  background-blend-mode: difference;
}
/* BURGER BARRES */
.burger__barres {
  padding: 0.85em 0.5em;
  width: 4.5em;
  height: 2.5em;
  background-color: var(--main-color2);
  border-radius: var(--border-radius-val);
}
.body--headmetdet .burger__barres {
  background-color: transparent;
}
.burger__barrespad {
  position: relative;
  width: 100%;
  height: 100%;
}
.burger__barres span {
  position: absolute;
  z-index: 100;
  left: 0;
  display: block;
  background-color: var(--main-bgcolor0);
  width: 100%;
  height: 3px;
  border-radius: 0;
  transition: all ease 0.3s;
}
.burger__barres span:first-child {
  transform: translateY(0);
  top: 0;
}
.burger__barres span:last-child {
  transform: translateY(0);
  top: auto;
  bottom: 0;
}
body.nav_activ .burger__barres span {
  opacity: 0;
  top: 50%;
}
body.nav_activ .burger__barres span:first-child,
body.nav_activ .burger__barres span:last-child {
  opacity: 1;
  background-color: var(--main-bgcolor0);
}
body.nav_activ .burger__barres span:first-child {
  transform: rotate(-405deg);
}
body.nav_activ .burger__barres span:last-child {
  transform: rotate(405deg);
}
/* /BURGER */
/* burger desktop > supp @media (max-width...  */
/*@media (max-width: 900px) {*/
  .header__burger {
    display: block;
    position: fixed;
    z-index: 50;
    right: calc(4.6865vw - .5em);
    top: 0;
    height: clamp(4.6875rem, 3.5498rem + 4.8544vw, 9.375rem);
  }
  .header__nav {
    position: fixed;
    z-index: 20;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    color: #fff;
    background-color: var(--main-color2);
  }
  .header__nav ul {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-top: 4em;
  }
  @media (min-width: 700px) {
    .header__nav ul {
      margin-top: 0;
      height: 100%;
      align-items: flex-start;
      justify-content: center;
    }
  }
  .header__navli {
    font-family: var(--font2);
    font-weight: 300;
    text-align: left;
    /*font-size: 1.85em;*/
    font-size: clamp(1.5625rem, 1.2943rem + 1.1442vw, 3.125rem);
    padding: .25em 4.6875vw;
  }
  @media (min-width: 700px) {
    .header__navli {
      padding: 0 4.6875vw;
    }  
  }
  .header__navli:nth-child(1), .header__navli:nth-child(2)  {
    font-family: var(--font1);
    font-weight: 500;
  }
  .header__navli:nth-child(2) {
    margin-bottom: .5em;
  }

  .header__nava {
    color: var(--main-bgcolor0);

  }
  .header__nav--rs {
    display: none;
  }
  .burger__fermer {
    display: none;
    color: var(--main-bgcolor0);
  }
  body.nav_activ .header__nav {
    right: 0;
  }
  body.nav_activ .burger__menu {
    display: none;
  }
  body.nav_activ .burger__fermer {
    display: block;
  }
/*}*/
.headernav {
  position: fixed;
  z-index: 10;
  top: 0;
  right: 0;
  padding-right: calc(5.5em + 4.6865vw);
  padding-left: 2.34375vw;
  background-color: var(--main-bgcolor2);
  /*height: 7.8125vw;*/
  height: clamp(4.6875rem, 3.5498rem + 4.8544vw, 9.375rem);
}
@media (min-width: 700px) {
  .headernav {
    width: clamp(29.375rem, 18.3199rem + 25.2688vw, 58.75rem);
  }
}
.body--headmetdet .headernav {
  background-color: transparent;
}
.body--headmetdet.scrolling-up .headernav {
  background-color: var(--main-color2);
}
@media (max-width: 699px) {
  .body--headmetdet.scrolling-down .headernav {
    background-color: var(--main-color2);
  }
}
@media (min-width: 700px) {
  .headernav {
    position: absolute;
  }
  .header__burger {
    position: absolute;
  }
  .scrolling-down .headernav {
    position: fixed;
    top: -100%;
    transition: top ease .3s;
  }
  .scrolling-up .headernav {
    position: fixed;
    top: 0;
    transition: top ease .3s;
  }
  .scrolling-down .header__burger {
    position: fixed;
    top: -100%;
    transition: top ease .3s;
  }
  .scrolling-up .header__burger {
    position: fixed;
    transition: top ease .3s;
  }
}
@media (min-width: 1380px) {
  .navfixdesk .headernav {
    position: fixed;
    top: 0;
  }
  .navfixdesk .header__burger {
    position: fixed;
    top: 0;
  }
}



.headernav ul {
  font-size: .85em;
  font-weight: 500;
  display: flex;
  align-items: center;
  color: var(--main-bgcolor0);
  height: clamp(4.6875rem, 3.5498rem + 4.8544vw, 9.375rem);
}
.headernav li {
  display: none;
  margin-left: 2.34375vw;
  margin-left: 2.34375vw;
  cursor: pointer;
  border-bottom: 1px solid transparent;
  transition: border-bottom-color ease .3s;
}
.headernav li:hover {
  border-bottom-color: #fff;
}
.headernav li:last-child {
  display: block;
}
@media (min-width: 700px) {
  .header__nav {
    width: 65%;
  }
  .headernav li {
    display: block;
  }
  .headernav li:last-child {
    display: none;
  }
}
@media (min-width: 1200px) {
  .header__nav {
    width: 50%;
  }
}
@media (min-width: 1450px) {
  .header__nav {
    width: 45.3125%;
  }
}
.headernav__top {
  margin-top: 2.5em;
  padding-left: 4.6875vw;
}
@media (min-width: 700px) {
  .headernav__top {
    margin-top: 0;
    position: absolute;
    top: 3.125vw;
    left: 0;
  }
}
.headernav__top li {
  display: block;
  font-size: .85em;
  font-weight: 500;
  list-style: none;
  text-transform: uppercase;
  line-height: 1.3;
  margin-bottom: 1.25em;
}
@media (min-width: 700px) {
  .headernav__top li {
    margin-bottom: .5em;
  }
}
.headernav__top li span {
  border-bottom: 1px solid #fff;
  cursor: pointer;
  transition: border-bottom ease .3s;
}
.headernav__top li span:hover {
  border-bottom-color: transparent;
}
.headernav__lang {
  position: absolute;
  z-index: 30;
  top: calc(6.25vw + .5em);
  right: calc(5.5em + 4.6865vw);
  font-size: .85em;
  text-transform: uppercase;
}
@media (min-width: 700px) {
  .headernav__lang {
    top: 3.125vw;
  }  
}
.headernav__lang span {
  font-weight: 500;
}
.headernav__lang a {
  border-bottom: 1px solid #fff;
  transition: border-bottom-color ease .3s;
}
.headernav__lang a:hover {
  border-bottom-color: transparent;
}
.headernav__reso {
  position: absolute;
  bottom: 3.125vw;
  right: 4.6875vw;
}
.headernav__bot {
  position: absolute;
  bottom: 3.125vw;
  left: 4.6875vw;
}
.header__navbg {
  display: none;
}
.nav_activ .header__navbg {
  display: block;
  position: fixed;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.5);
}
.theme_toggle svg  {
  transition: transform ease .5s;
}
.html--fondsomb .theme_toggle svg  {
  transform: rotate(180deg);
}
/* HERO option */
.hero {
  position: relative;
}
.hero__img {
  position: relative;
}
.hero__img img {
  object-fit: cover;
  aspect-ratio: 1;
}
@media (min-width: 700px) {
  .hero__img img {
    aspect-ratio: 2.5;
  }
  .hero__img--2 img {
    aspect-ratio: 2;
  }
}
.hero__img video {
  object-fit: cover;
  aspect-ratio: .833;
}
@media (min-width: 700px) {
  .hero__img video {
    aspect-ratio: unset;
    max-height: 100vh;
  }
}
.hero__imgov {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, .17);
}
.hero__txt {
  padding-top: calc(5 * var(--padunit));
  padding-left: calc(1.5 * var(--padunit));
  padding-right: calc(1.5 * var(--padunit));
  text-align: left;
  width: 100%;
}
@media (min-width: 700px) {
  .hero__txt {
    padding-top: 0;;
    position: absolute;
    z-index: 4;
    bottom: 0;
    padding-bottom: calc(1.5 * var(--padunit));
    padding-right: calc(8 * var(--padunit));
  }
  .hero__txt--pr {
    padding-right: calc(6 * var(--padunit));
  }
}
.hero__txt p, .hero__txt h1 {
  font-family: var(--font2);
  font-size: clamp(2.3125rem, 1.1326rem + 5.0343vw, 9.1875rem);
  font-weight: 300;
  line-height: 1.18;
  color: var(--main-color2);
}
.hero__txt--apropos h1 {
  font-size: clamp(1.875rem, 0.9648rem + 3.8835vw, 5.625rem);
}
.hero__txt h1 {
  font-family: var(--font1);
}
.hero__txt p span {
  font-family: var(--font1);
  font-weight: 500;
}
@media (min-width: 700px) {
  .hero__txt p, .hero__txt h1 {
    color: #fff;
  }
}
.hero__txt__haut {
  font-family: var(--font1);
  font-size: .85em;
  font-weight: 500;
  text-transform: uppercase;
  color: #fff;
}

/* GRI */
.gri__contbleu {
  background-color: var(--main-bgcolor2);
}
.gri {
  display: flex;
  flex-direction: column;
}
.gri__item {
  position: relative;
  margin-top: calc(4 * var(--padunit));
  padding-left: calc(1.5 * var(--padunit));
  padding-right: calc(1.5 * var(--padunit));
}
.gri__item--plus {
  margin-top: calc(2 * var(--padunit));
}
.gri--nomarge .gri__item {
  margin-top: 0;
}
.gri__txt {
  margin-top: 0.75em;
}
.gri__contbleu .gri__txt {
  color: #fff;
}
.gri__txton {
  position: absolute;
  z-index: 5;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1em;
  color: #fff;
}
.gri--pad .gri__txt {
  padding: 1em;
  padding-top: 0;
  padding-bottom: 1.5em;
}
.gri__themdat {
  margin-bottom: 0.5em;
}
.gri__themdat__fich {
  display: flex;
  align-items: center;
}
.gri__them {
  display: inline-block;
  position: absolute;
  z-index: 10;
  left: 0;
  bottom: 0;
  background-color: var(--main-bgcolor3);
  font-size: .6em;
  font-weight: 500;
  text-transform: uppercase;
  color: #fff;
  padding: 0.25em 1em;
  border-radius: var(--border-radius-val);
}
.gri__them-fich {
  position: inherit;
  left: auto;
  bottom: auto;
}
.gri__dat {
  display: inline-block;
  font-size: .6em;
}
.gri__dat--fich {
  padding-left: .5em;
}
.gri__tit {
  font-size: 1.3em;
  font-weight: 600;
  line-height: 1.2;
}
.gri__tit--bg {
  display: inline-block;
  background-color: var(--main-bgcolor1);
  padding: .5em;
}
.gri__desc {
  margin-top: 0.5em;
  font-size: 0.85em;
  line-height: 1.45;
}
.gri__img {
  position: relative;
}
.gri__img img {
  border-radius: var(--border-radius-media);
}
.gri--pad .gri__img img {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.gri__imgov {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--main-bgcolor2);
  opacity: 0;
  transition: all ease 0.5s;
  border-radius: var(--border-radius-media);
}
.gri--pad .gri__imgov {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.gri__item:hover .gri__imgov {
  background-color: var(--main-bgcolor3);
  opacity: .5;
}
/**/
.gri--txtonly .gri__item {
  aspect-ratio: 0.8;
  /*aspect-ratio: 1 / 1;*/
  border: 1px solid var(--main-color1);
  /*box-shadow: var(--boxshadow1);*/
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 4v2h3.6l-6.3 6.3 1.4 1.4L10 7.4V11h2V4H5z'/%3E%3C/svg%3E");
  background-position: top 0.5em right 0.5em;
  background-size: 2em 2em;
  background-repeat: no-repeat;
  transition: all ease 0.3s;
  border-radius: var(--border-radius-val);
  background-color: var(--main-bgcolor0);
}
.gri--txtonly .gri__item:hover {
  background-position: top 0.25em right 0.25em;
  background-color: var(--main-bgcolor2);
  /*box-shadow: var(--boxshadow2);*/
}
.gri__tit--txtonly {
  padding: 1em;
  padding-right: 3em;
}
.gri__desc--txtonly {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1em;
}
.gri__imgov--txtonly {
  background-color: var(--main-bgcolor0);
}
@media (min-width: 640px) {
  .gri {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .gri--nomarge {
    margin-left: 0;
    margin-right: 0;
  }
  .gri__item {
    padding: 0;
    width: calc(50% - 1.5 * 2 * var(--padunit));
    margin: calc(1.5 * var(--padunit));
  }
  .gri__item--plus {
    margin-top: calc(.75 * var(--padunit));
  }
  .gri--nomarge .gri__item {
    width: 50%;
    margin: 0;
  }
}
@media (min-width: 960px) {
  .gri--3 .gri__item,
  .gri--4 .gri__item,
  .gri--5 .gri__item {
    width: calc(33.3333% - 0.5 * 2 * var(--padunit));
  }
  .gri--nomarge.gri--3 .gri__item,
  .gri--nomarge.gri--4 .gri__item,
  .gri--nomarge.gri--5 .gri__item {
    width: 33.333%;
  }
}
@media (min-width: 1260px) {
  .gri--4 .gri__item {
    width: calc(25% - 0.5 * 2 * var(--padunit));
  }
  .gri--nomarge.gri--4 .gri__item {
    width: 25%;
  }
}
@media (min-width: 1400px) {
  .gri--5 .gri__item {
    width: calc(20% - 0.5 * 2 * var(--padunit));
  }
  .gri--nomarge.gri--5 .gri__item {
    width: 20%;
  }
}
/* BOX */
.box {
  display: flex;
  flex-direction: column;
  margin-top: 3em;
}
.box--bg1 {
  background-color: var(--main-bgcolor3);
  border-radius: var(--border-radius-val);
  padding-right: calc(1 * var(--padunit));
  padding-left: calc(1 * var(--padunit));
}
.box__item {
  margin-top: 3em;
}
.box__item--bg1 {
  margin: calc(1 * var(--padunit));
  margin-top: calc(2 * var(--padunit));
  margin-bottom: calc(2 * var(--padunit));
  padding: calc(2 * var(--padunit));
  background-color: var(--main-bgcolor0);
  border-radius: var(--border-radius-val);
  text-align: center;
}
.box__item--center {
  margin-left: auto;
  margin-right: auto;
}
.box--mt0 {
  margin-top: 0;
}
@media (min-width: 760px) {
  .box {
    flex-direction: row;

    margin-left: calc(-1 * var(--padunit));
    margin-right: calc(-1 * var(--padunit));

    margin-top: calc(2 * var(--padunit));
  }
  .box--bg1 {
    margin-left: 0;
    margin-right: 0;
  }
  .box__item {
    margin-top: 0;
    width: 50%;
    padding: calc(1 * var(--padunit));
  }
  .box__item--p0 {
    padding: 0;
  }
  .box__item--pr0 {
    padding-right: 0;
  }
  .box__item--bg1 {
    margin-top: calc(2 * var(--padunit));
    width: calc(50% - 2 * var(--padunit));
    padding: calc(1 * var(--padunit));
  }
  .box__item--vcenter {
    align-self: center;
  }
  .box__item--vbottom {
    align-self: flex-end;
  }
  .box__item--30 {
    width: 28.125%;
  }
  .box__item--35 {
    width: 34.375%;
  }
  .box__item--40 {
    width: 40.625%;
  }
  .box__item--60 {
    width: 59.375%;
  }
  .box__item--65 {
    width: 65.625%;
  }
  .box__item--70 {
    width: 71.875%;
  }
  .box__item--75 {
    width: 75%;
  }
  .box__item--80 {
    width: 81.25%;
  }
}

/* ARIANE */
.ariane {
  position: relative;
  text-transform: uppercase;
  font-size: .75em;
  color: var(--main-color1);
}
.hero__txt--apropos .ariane {
  color: #fff;
}
.ariane:hover {
  color: var(--main-color1);
}
.hero__txt--apropos .ariane:hover {
  color: #fff;
}

/* RESO */
.reso__lien,
.foot .reso__lien {
  text-decoration: none;
  border: none;
  display: inline-block;
}
.reso__svg {
  /*background-color: var(--main-bgcolor0);*/
  width: 1.75em;
  height: 1.75em;
  border-radius: var(--border-radius-val);
}
.reso__svg path,
.reso__svg rect {
  fill: var(--main-color2);
}
.headernav__reso .reso__svg path,
.headernav__reso .reso__svg rect {
  fill: #fff;
}
.body--footerfullbg .foot2__3 .reso__svg path,
.body--footerfullbg .foot2__3 .reso__svg rect {
  fill: #fff;
}
.foot .reso__lien:hover {
  border: none;
}
.reso__lien:hover .reso__svg {
  background-color: var(--main-color2);
}
.reso__lien:hover .reso__svg path,
.reso__lien:hover .reso__svg rect {
  fill: var(--main-bgcolor0);
}
/* FOOTER */
.foot__cont {
  font-size: .85em;
  margin-top: 10em;
  padding-left: calc(var(--padunit) * var(--pdlr-colbase));
  padding-right: calc(var(--padunit) * var(--pdlr-colbase));
  color: var(--main-color2);
}
.bgblc .foot__cont {
  margin-top: 0;
  padding-top: 10em;
}
@media (min-width: 1200px) {
  .foot__cont {
    margin-top: 14em;
  }
  .bgblc .foot__cont {
    margin-top: 0;
    padding-top: 14em;
  }
}
.body--footerfullbg .foot__cont {
  padding-top: calc(2 * var(--padunit));
  background-color: var(--main-bgcolor3);
  color: #fff;
}
@media (min-width: 1200px) {
  .body--footersticky .foot__cont {
    position: sticky;
    bottom: 0;
    left: 0;
  }
  .body--footersticky .main {
    min-height: 100vh;
    position: relative;
    z-index: 1;
    background: #fff;
    padding-bottom: calc(2 * var(--padunit));
  }
}
.foot {
  display: flex;
  flex-direction: column;
}
.foot a {
  border-bottom: 2px solid #000;
  transition: border ease 0.3s;
}
.foot a:hover {
  border-bottom: 2px solid transparent;
}
.body--footerfullbg .foot a {
  color: #fff;
  border-bottom-color: #fff;
}
.body--footerfullbg .foot a:hover {
  border-bottom-color: transparent;
}
.body--footersep .foot {
  color: #fff;
  background-color: var(--main-bgcolor2);
  padding: var(--padunit);
  border-radius: var(--border-radius-val);
  margin-bottom: var(--padunit);
}
.body--footersep .foot a {
  color: #fff;
  border-bottom-color: #fff;
}
.body--footersep .foot a:hover {
  border-bottom-color: transparent;
}
.footnav p {
  font-size: 1.4em;
  font-weight: 500;
  line-height: 1.2;
}
.footnav ul {
  margin-top: .75em;
}
.footnav li {
  line-height: 1.2;
  padding-bottom: .5em;
  cursor: pointer;
}
.footnav li:hover {
  text-decoration: underline;
}
.foot__1 {
  margin-top: 1.5em;
}
.foot__12 {
  margin-top: 1.5em;
}
.foot__2 {
  margin-top: 1.5em;
}
.foot__3 {
  margin-top: 1.5em;
}
@media (min-width: 700px) {
  .foot {
    flex-direction: row;
    justify-content: space-between;
  }
  .foot__1 {
    margin-top: 0;
    width: 50%;
  }
  .foot__2 {
    margin-top: 0;
  }
  .foot__3 {
    margin-top: 0;
  }
  .foot__1 {
    display: flex;
  }
  .foot__11 {
    width: 50%;
  }
  .foot__12 {
    margin-top: 0;
    padding-left: 1.5em;
    width: 50%;
  }
}
.footlien1 {
  font-size: 1.4em;
  font-weight: 500;
  text-decoration: underline;
  text-transform: uppercase;
}
.footlien2 {
  font-size: .85em;
  padding-bottom: .4em;
}
.footlien2--under {
  text-decoration: underline;
}
.foot2 {
  margin-top: 1.5em;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
}
.footnavbig li {
  font-family: var(--font2);
  font-size: 1.5em;
  line-height: 1.2;
  padding-bottom: .5em;
  cursor: pointer;
}
.footnavbig li:hover {
  text-decoration: underline;
}
@media (min-width: 700px) {
  .foot2 {
    margin-top: 0;
    flex-direction: row;
    justify-content: initial;
    align-items: flex-end;
    align-content: space-around;
  }
  .foot2__1 {
  
  }
  .foot2__2 {
    margin-left: auto;
    text-align: right;
    padding-right: 1.5em;
  }
  .foot2__3 {
    text-align: right;
  }
}
.footlogo {
  width: 3.3em;
  height: 2.2em;
}

/* FILTRES */
.filtre {
  margin-top: 0;
  margin-bottom: .5em;
}
.filt__list {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
.filt__item {
  padding: .25em;
}
.filt__btn {
  font-family: var(--font1);
  text-transform: uppercase;
  font-size: .75em;
  font-weight: 400;
  text-decoration: none;
  padding: .5em .5em;
  color: var(--main-color1);
}
.filt__btn.active {
  text-decoration: underline;
}
.filt__btn:hover {
  text-decoration: underline;
}
@media (min-width: 700px) {
  .filt__list {
      justify-content: flex-end;
  }
}
@media (min-width: 1300px) {
  .filtre {
      margin-top: 0;
      margin-bottom: 0;
  }
}

/* PAGINATION */
.pagination {
  padding: 5em 0;
  text-align: center;
}
.pagination li {
  display: inline-block;
  font-size: 1.2em;
  line-height: 1;
  font-weight: 700;
  color: #D2D2D2;
  padding-left: .25em;
  padding-right: .25em;
}
.pagination li a, .pagination__activ {
  border: #D2D2D2 2px solid;
  border-radius: var(--border-radius-val);
  color: #D2D2D2;
  text-decoration: none;
  padding-left: .6em;
  padding-right: .6em;
  padding-top: .2em;
  padding-bottom: .2em;
  transition: .3s ease border-color, .3s ease color;
}
.pagination__activ, .pagination li a:hover {
  border-color: var(--main-color1);
  color: var(--main-color1);
}

/* EFFECT */
.imgeffect_1 {
  background: repeating-radial-gradient(
    circle at 0 -25%,
    #fff,
    #333 0.125em,
    #fff 0.15em
  );
  filter: contrast(400%);
}
.imgeffect_1 img {
  mix-blend-mode: hard-light;
  filter: grayscale(1) brightness(90%) contrast(150%) blur(3px);
}

/*CONTACT FORM */



.formtit {
  --max: 30;
  --min: 22;
  font-size: var(--responsive);
  font-weight: 700;
  line-height: 1.33;
}
.qu {
  margin-top: 1.5em;
}
.qu__intitule {
  font-weight: 600;
  display: block;
  font-size: 1.1em;
  line-height: 1.1;
  padding-bottom: .5em;
  color: var(--main-color3);
  text-transform: uppercase;
}

.qu__radioin {
position: absolute;
left: -999em;
visibility: hidden;
height: 0;
width: 0;
transform: scale(0);
}
.qu__radiolab {
position: relative;
display: inline-block;
font-size: .8em;
font-weight: 400;
cursor: pointer;
color: #0D181C;
padding: .5em .75em;
-webkit-user-select: none;
   -moz-user-select: none;
    -ms-user-select: none;
        user-select: none;
  margin-right: .5em;
  margin-bottom: 1em;
  border: 1px solid #777777;
}
.qu__radiolab:hover {
  
}
.qu__radioin:checked + label:after {
  transform: scale(1);
}
.qu__radioin:checked + label {
  color: #fff;
  background-color: #044563;
}
.qu__radiolab:hover:not(:checked) + label {
  color: #fff;
  border-color: #fff;
}

.qu__select {
  margin: 0;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  
  width: 100%;
  border: 2px solid #AAAAAA;
  font-size: 1em;
  padding: .75em 1.25em;
  /*margin-top: 1em;*/
}
.form__lab  {
  font-size: .75em;
  line-height: 1.3;
  display: block;
  margin-bottom: .25em;
}
.form__lab--block {
  display: block;
  font-size: .8em;
}
.requis:before {
  content: " *";
}
.form__chp {
  font-family: var(--font1);
  -moz-appearance: none;
  -webkit-appearance: none;
  font-size: 16px;
  font-weight: 400;
  border: 3px solid var(--main-color3);
  border-radius: 30px;
  background-color: #fff;
  width: 100%;
  margin-top: 0;
  margin-bottom: .75em;
  padding: .5em .85em;
  color: var(--main-color3);
  outline: none;
  transition: border ease .3s;
}
@media (min-width: 700px) {
  .form__chp {
      font-size: .8em;
  }
}
.form__chp:focus {
  background-color: #fff;
  color: var(--main-color2);
}
.inputlabtop .form__lab, .form__lab2 {
  font-size: .75em;
  font-weight: 700;
  color: var(--main-color3);
  padding-top: .25em;
}
.error .inputlabtop .form__lab {
  color: var(--main-color2);
}
.inputlab  {
  margin-top: 1em;
  position: relative;
}
.inputlab input {
  position: relative;
}
.inputlab .form__lab  {
  position: absolute;
  top: .7em;
  left: 1.25em;
  transition: transform 100ms ease;
  transform: translateY(0);
  pointer-events: none;
  text-transform: uppercase;
  color: var(--main-color3);
}
.inputlab input.form__chp--full + label, .inputlab input:focus + label {
  transform: translateY(-2.5em);
  font-size: .65em;
  font-weight: 700;
  color: #044563;
}
.inputlab input:focus {
  border-color: var(--main-color2);
}
.form__chp--area {
  margin-top: .75em;
  height: 6em;
  padding-left: .5em;
  padding-right: .5em;
  border-radius: 0;
}
.formselect__cont {
  position: relative;
}
.formselect__cont::before {
  content: "▼";
  color: #30055E;
  position: absolute;
  z-index: 10;
  top: calc(50% - 0.2em);
  right: 1em;
}
.formselect__cont--2::before {
  top: calc(50% - .55em);
}
.error .form__lab::before {
  content: "⌦ ";
  color: var(--main-color-error);
}
.error .form__chp {
  border-color: var(--main-color-error);
}
.error.quradio::before {
  content: "⌦ Choisissez";
  color: var(--main-color-error);
  display: block;
  padding-bottom: .5em;
}
@media (min-width: 700px) {
  .form__2col {
      display: flex;
      display: -ms-flexbox;
      flex-wrap: wrap;
  }
  .form__2col__item  {
      width: 50%;
  }
  .form__2col__item:nth-child(2n)  {
      padding-left: 3.125%;
  }
  .form__2col__item:nth-child(2n+1)  {
      padding-right: 3.125%;
  }
}
.form__info {
  position:relative;
  max-width: 20em;
  font-size: .85em;
  line-height: 1.2;
  font-weight: 400;
  text-align: center;
  color: #fff;
  background-color: var(--main-color-error);
  border-radius: 1.5em;
  padding: 1em;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2em;
  margin-bottom: 2em;
  animation: .3s shake;
  animation-delay: 1s
}
.form__info::after {
  position: absolute;
  content:'';
  display:block;
  background: var(--main-color-error);
  height: 1em;
  width: 1em;
  transform: rotate(45deg);
  bottom: -.4em;
  left:50%;
}
.form_alert {
  display: none;
}
.form_alert.go {
  font-weight: 700;
  display: inline-block;
  padding: .5em;
  color: #fff;
  background-color: var(--main-color-error);
}
.shakeit {
  animation: .3s shake;
}
@keyframes shake {
from, to {
  transform: translate3d(0, 0, 0);
}
10%, 50%, 90% {
  transform: translate3d(-.5em, 0, 0);
}
20%, 60% {
  transform: translate3d(.5em, 0, 0);
}
}
.form__chpfichier__cont {
  position: relative;
}
.form__chpfichier {
  opacity: 0;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 0;
}
.form__labfichier {
  position: relative;
  z-index: 2;
  font-size: .8em;
  line-height: 1.1;
  margin-bottom: .5em;
  display: inline-block;
  padding: .75em 2em;
  padding-left: 3.5em;
  position: relative;
  border: 1px solid #0D181C;
  color: #0D181C;
  background-color: #fff;
  text-align: left;
  cursor: pointer;
  border-radius: 0;
}
.form__labfichier:hover {
  background-color: #044563;
  color: #fff;
  border-color: #fff;
}
.form__labfichier svg {
  position: absolute;
  left: 1em;
  top: .85em;
  text-decoration: underline;
  width: 1.4em;
  height: 1em;
}
.form__labfichier svg path {
  fill: #044563;
}
.form__labfichier:hover svg path {
  fill: #fff;
}
.form__chpfichier__restric {
  font-size: .72em;
  color: #777777;
}
.form__group {
  margin-top: .25em;
}
.form__group--captcha {
  margin-top: 1.5em;
}
.g-recaptcha{
  max-width: 305px;
  margin: 0 auto;
}
.accept__cont {
  color: var(--main-color3);
}
.accept__cont.error:before {
  content: "⌦ merci de cocher la case";
  color: var(--main-color-error);
  font-weight: 700;
  font-size: .87em;
}
.form__boutoncont {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.form__mention__cont {
  margin-top: 1em;
}
.form__mention {
  color: var(--main-color3);
  font-size: .72em;
}
.form__mention a {
  color: var(--main-color3);
  border-bottom: 1px solid var(--main-color3);
}
.boutonsub__cont {
  text-align: center;
}
.titplus {
  font-size: 1.4em;
  text-transform: uppercase;
  color: var(--main-color2);
}




/* EDITOR */
.editor p:empty {
  display: none;
}
.editor p,
.editor ul,
.editor ol {
  padding-top: 1em;
  padding-bottom: 0.75em;
}
.editor ul {
  list-style: disc;
  padding-left: 1em;
}
.editor ol {
  list-style: decimal;
  padding-left: 1em;
}
.editor em {
  font-family: var(--font2);
  font-style: italic;
}
.editor a:not(.bouton) {
  border-bottom: 1px solid var(--main-color1);
  transition: border-color ease 0.3s;
}
.editor a:not(.bouton):hover {
  border-bottom-color: transparent;
}
.editor h2 {
  font-family: var(--font1);
  font-weight: 600;
  /*font-size: clamp(1.875rem, 1.5532rem + 1.373vw, 3.75rem);*/
  font-size: 1.35em;
  line-height: 1.25;
  padding-top: 0.75em;
  padding-bottom: 0.25em;
}
.editor h3 {
  font-family: var(--font1);
  font-weight: 700;
  /*font-size: clamp(1.875rem, 1.5532rem + 1.373vw, 3.75rem);*/
  font-size: 1.2em;
  line-height: 1.25;
  padding-top: 0.75em;
  padding-bottom: 0.25em;
  color: var(--main-color2);
}
/* chapeau */
.editor .chapeau {
    font-size: 1.03em;
    font-weight: 500;
}
/* table */
.editor table {
  width: 100%;
  border-collapse: collapse;
  border: 0;
  margin-top: 4em;
  margin-bottom: 3em;
}
.editor table th {
  padding: 0.75em;
  background-color: #f0f0f0;
  border-bottom: 2px solid var(--main-color1);
  text-align: left;
  font-weight: 700;
}
.editor table tr:nth-child(2n) {
  background-color: var(--main-bgcolor0);
}
.editor table tr:nth-child(2n + 1) {
  background-color: #f8f8f8;
}
.editor table td {
  border-bottom: 2px solid var(--main-color1);
  padding: 0.75em;
  color: var(--main-color1);
}
/* exergue */
.editor .exergue {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 4em;
  margin-bottom: 3em;
  color: var(--main-color3);
  padding-left: 1.5em;
  border-left: 6px solid var(--main-color3);
  font-weight: 500;
}
/* blockquote */
.editor blockquote {
  position: relative;
  font-family: var(--font2);
  /*width: 95%;*/
  padding-top: 1.5em;
  margin-top: 3em;
  margin-bottom: 4em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  color: var(--main-color3);
  text-align: center;
}
.editor blockquote p {
  font-family: var(--font2);
  display: inline;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  word-break: break-word;
  /*padding: 0.15em 0.5em;*/
  font-size: 1.37em;
  line-height: 1.25;
  font-weight: 300;
  font-style: italic;
  text-align: center;
  color: var(--main-color3);
}
/*
.editor blockquote:before {
  left: 0;
  top: 0;
  content: "\201C";
  position: absolute;
  font-size: 7em;
  line-height: 0.49;
  color: var(--main-color2);
}
@media (min-width: 540px) {
  .editor blockquote:before {
    font-size: 9em;
  }
  .editor blockquote {
    padding-top: 0;
    padding-left: 4em;
  }
}
@media (min-width: 1300px) {
  .editor blockquote:before {
    font-size: 8em;
  }
}
*/
.editor--txt1 {
  color: var(--main-color2);
}
.editor--txt1 a {
  color: var(--main-color2);
}
.editor--txt1 a:not(.bouton) {
  border-bottom-color: var(--main-color2);
}
.editor--txt1 a.bouton {
  color: var(--main-bgcolor0);
}
.editor ul li {
  list-style: none;
}
.editor ul li::before {
  content: "●";
  color: var(--main-bgcolor3);
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}
.editor--actu {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.editor--actu p, .editor--actu ul, .editor--actu ol, .editor--actu h2, .editor--actu h3, .editor--actu h4, .editor--actu blockquote  {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}
.editor--actu p, .editor--actu ul, .editor--actu ol  {
  font-size: .9em;
}
.editor--actu h2  {
  font-size: 1.2em;
  font-weight: 600;
}
.editor--actu h3  {
  font-size: 1em;
  font-weight: 600;
  color: var(--main-color1);
}
.editor--actu h4  {
  font-size: .9em;
  font-weight: 600;
}
.editor--actu .imgmultiins {
  text-align: center;
}
.editor--actu .imgmultiins img {
  max-height: clamp(75rem, 0rem + 62.5vw, 100rem);
  width: auto;
}
.editor--metdet p, .editor--metdet ul, .editor--metdet ol {
  font-size: 1.15em;
  color: #fff;
}
.editor--metdet a {
  color: #fff;
}
.editor--txt2 p,.editor--txt2 ul,.editor--txt2 ol {
  font-size: .85em;
}
.editor--txt2 h2 {
  font-family: var(--font2);
  color: var(--main-color3);
  font-weight: 300;
  font-size: clamp(1.5625rem, 1.0316rem + 2.2654vw, 3.75rem);
}
.editor--txt2 h3 {
  font-weight: 500;
  font-size: clamp(1.4375rem, 1.1796rem + 1.1003vw, 2.5rem);
  color: var(--main-color1);
}
.editor--light p, .editor--light ul, .editor--light ol {
  font-weight: 300;
}
.editor--col2 {
  color: var(--main-bgcolor2);
}


.video__cont {
    margin: 2em 0;
}
.embed-container {
    margin: 0 0;
    position: relative;
    aspect-ratio: 1.78;
}
.embed-container--contactmap {
  aspect-ratio: 2.48;
}
.embed-container--contactmap iframe {
  filter: grayscale(1);
  transition: filter 1s ease;
}
.embed-container--contactmap iframe:hover {
  filter: grayscale(0);
}
.embed-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.embed-youtube {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  /*aspect-ratio: 1.861;*/
  background-color: #000;
  color: #fff;
  margin-top: 2em;
  margin-bottom: 2em;
}
.embed-youtube a::after {
  content: "►";
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  font-size: 1.5em;
  line-height: 1;
  padding: .85em .75em .75em .85em;
  z-index: 10;
  color: var(--main-color1);
  pointer-events: none;
  transition: all ease .3s;
  background-color: var(--main-bgcolor0);
}
.embed-youtube--1-6 {
  aspect-ratio: 1.6;
}
.embed-youtube iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}
.embed-youtube img {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.imgmultiins {
  margin-top: 2em;
  margin-bottom: 2em;
}
.imgmultiins img {
  border-radius: var(--border-radius-media);
}
.imgmultiins__figcaption {
  font-size: .8em;
  color: #AAAAAA;
  margin-top: .75em;
}
@media (min-width: 900px) {
  .imgmultiins {
      margin-left: 0;
      margin-right: 0;
  }
}
/*ACCORDION*/
*:not(.accordion) + .accordion {
  margin-top: 4em;
}
.accordion + *:not(.accordion) {
  margin-top: 3em;
}
.accordion {
  border-top: 2px solid var(--main-color1);
  border-bottom: 2px solid var(--main-color1);
}
.accordion + .accordion {
  border-top-width: 0;
}
.accordion__btn, .editor h2.accordion__btn {
  font-family: var(--font2);
  text-transform: var(--titreuc);
  display: block;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  background-color: var(--main-bgcolor0);
  color: var(--main-color1);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='36' height='21'%3E%3Cpath d='M0 2.821 2.8 0 18 15.352 33.2 0 36 2.821 20.8 18.175 18 21Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: .75em .44em;
  background-position: right 1.15em;
  padding-right: 1.5em;
  padding-top: .7em;
  padding-bottom: 0;
}
/*
.accordion__btn:hover {
  background-color: #fff
}
*/
.accordion__btn.active {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='36' height='21'%3E%3Cpath d='M36 18.179 33.2 21 18 5.648 2.8 21 0 18.179 15.2 2.825 18 0Z'/%3E%3C/svg%3E")
}
.accordion__contenu {
  padding-top: 1em;
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height .5s ease-out;
  transition: max-height .5s ease-out;
  font-size: 1em;
  line-height: 1.5;
  color: var(--main-color1);
}
.accordion__contenu::after {
  content: "-";
  opacity: 0;
}


/* CONTENTBUILDER */
.contentbuild {
  overflow-x: hidden;
  font-size: 1em;
}
.contentbuild .row {
  width: 100%;
}
.contentbuild .column {
  width: 100%;
}
.bloc {
  display: flex;
  flex-direction: column;
  padding-left: calc(var(--pdlr-colbase) * var(--padunit));
  padding-right: calc(var(--pdlr-colbase) * var(--padunit));
}
.bloc--full {
  padding-left: 0;
  padding-right: 0;
}
.bloc--bg {
  background-color: var(--main-bgcolor2);
  padding-top: calc(1 * var(--padunit));
  padding-bottom: calc(1 * var(--padunit));
  margin-top: 2em;
}
.bloc__item {
  margin-top: 2em;
  margin-bottom: 2em;
}
@media (min-width: 760px) {
  .bloc {
    flex-direction: row;
    /*
    padding-left: calc(var(--pdlr-colbase) * var(--padunit));
    padding-right: calc(var(--pdlr-colbase) * var(--padunit));
    */
    margin-left: calc(-1 * var(--padunit));
    margin-right: calc(-1 * var(--padunit));
    margin-top: calc(2 * var(--padunit));

  }
  .bloc__item {
    margin-top: 0;
    width: 100%;
    padding: calc(1 * var(--padunit));
  }
  .bloc__item--30 {
    width: 28.125%;
  }
  .bloc__item--35 {
    width: 34.375%;
  }
  .bloc__item--40 {
    width: 40.625%;
  }
  .bloc__item--50 {
    width: 50%;
  }
  .bloc__item--60 {
    width: 59.375%;
  }
  .bloc__item--65 {
    width: 65.625%;
  }
  .bloc__item--70 {
    width: 71.875%;
  }
}
.contentbuild .embed-container {
  margin: 0 0;
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  width: 100%;
  /*height: 500px;*/
  background-color: #a1a1a1;
}
.contentbuild .embed-container--carre {
  padding-bottom:100%
}
.contentbuild .embed-container iframe {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
.contentbuild h2 {
  font-family: var(--font2);
  text-transform: var(--titreuc);
  font-size: 1.5em;
  font-weight: 700;
  margin-bottom: .5em;
  color: var(--main-color2);
}
.contentbuild h3 {
  font-family: var(--font2);
  font-size: 1.2em;
  text-transform: var(--titreuc);
  font-weight: 700;
  margin-bottom: .5em;
}
.contentbuild .bloc--bg h2, .contentbuild .bloc--bg h3 {
  color: var(--main-color1);
}

/* FILTRES IMAGES */
.image__monotone {
  background: var(--colorduotone_bg);
  position: relative;
}
.image__monotone img {
  /*mix-blend-mode: screen;*/
  mix-blend-mode: luminosity;
  filter: grayscale(100%) contrast(150%);
  opacity: 0.5;
}


.image__duotone {
  position: relative;
  background-color: var(--colorduotone_fg);
}
.image__duotone img {
  filter: grayscale(100%) contrast(110%);
  /*mix-blend-mode: multiply;*/
  mix-blend-mode: luminosity;
  opacity: .85;
  position: relative;
  width: 100%;
}
.image__duotone::before {
  content: '';
  position: absolute;
  z-index: 1;
  background-color: var(--colorduotone_bg);
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: lighten;
  /*mix-blend-mode: difference;*/
}


/* ANIMATIONS */
.animate-in {
  -webkit-animation: fadeIn .7s ease-in;
  animation: fadeIn .7s ease-in;
}
.animate-out {
  -webkit-transition: opacity .5s;
  transition: opacity .5s;
  opacity: 0;
}
@-webkit-keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
.js .animscroll.effecttoimg1 img, .js .effecttoimg1 img {
  border-radius: 0;
  transition: all ease .75s;
}
.js .animscroll--go.effecttoimg1 img {
  border-radius: 1.2em;
  transform: matrix(1, 0, 0, 1, 0, 0);
}
.js .animscroll.imgeffect1, .js .imgeffect1 {
  position: relative;
  overflow: hidden;
  -webkit-transform: scale(.85);
  transform: scale(.85);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  transition: transform 1.5s ease;
}
.js .animscroll--go.imgeffect1 {
  transform: scale(1);
}
.js .animscroll.imgeffect1 img {
  display: block;
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  transition: transform 1.5s ease;
}
.js .animscroll--go.imgeffect1 img {
  transform: scale(1);
}
.js .animscroll.animscroll_fadeandup {
  transform: matrix(1, 0, 0, 1, 0, 60);
  opacity: 0;
  transition: all ease 1s;
}
.js .animscroll.animscroll_fadeandup--delay {
  transition-delay: 1s;
}
.js .animscroll--go.animscroll_fadeandup {
  transform: matrix(1, 0, 0, 1, 0, 0);
  opacity: 1;
}
.plansite li {
  font-size: 1.5em;
  font-weight: 600;
  padding-top: .75em;
}
.plansite a:hover {
  text-decoration: underline;
}
.plansite li ul li {
  font-size: .65em;
  font-weight: 400;
  line-height: 1.2;
  padding-top: .25em;
}


/* AA */
.home1 {
  background-color: var(--main-bgcolor3);
  color: #fff;
  margin-top: 4em;
}
@media (min-width: 760px) {
  .home1 {
    margin-top: 0;
    padding-left: calc(3 * var(--padunit));
    padding-right: calc(5 * var(--padunit));
  }
}
.home1__txt {
  font-family: var(--font2);
  font-size: clamp(1.5rem, 0.8993rem + 2.5629vw, 5rem);
}
.home1__txt--sm {
  font-size: clamp(1.25rem, 0.9818rem + 1.1442vw, 2.8125rem);
}
.overflowxhidden {
  overflow-x: hidden;
}
.sommet__1 {
  margin-top: 3em;
}
.sommet__2 {
  margin-top: 1.5em;
}
@media (min-width: 1200px) {
  .sommet {
    display: flex;
  }
  .sommet__1 {
    margin-top: 0;
    padding-top: .25em;
    width: 27.78%;
    padding-right: calc(1.5 * var(--padunit));
  }
  .sommet__2 {
    margin-top: 0;
    width: 72.22%;
  }
}
.sommet__tit {
  font-size: 1.15em;
  text-transform: uppercase;
}
.sommet__item {
  font-family: var(--font2);
  font-size: clamp(1.875rem, 1.2421rem + 2.7002vw, 5.5625rem);
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .sommet__item {
    line-height: .9;
  }
}
.sommet__lien {
  position: relative;
  z-index: 1;
  display: inline-block;
  padding-top: .25em;
  padding-bottom: .25em;
  transition: padding-left ease .5s;
}
@media (min-width: 1200px) {
  .sommet__lien {
    padding-top: .15em;
    padding-bottom: .15em;
  }
}
.sommet__lien::before {
  content:"";
  position: absolute;
  top: .4em;
  left: .5em;
  /*
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 35 32'%3E%3Cpath d='M35 15.86 23.61 31.99h-2.44l10.58-15.14H0v-1.8h31.93L21.16 0h2.44l11.39 15.86Z'/%3E%3C/svg%3E");
  */
  background-size: .5em .46em;
  width: .5em;
  height: .46em;
  transition: left ease .5s;
}
.sommet__lien.on {
  z-index: 5;
  mix-blend-mode: exclusion;
  padding-left: .55em;
  color: #fff;
}
.sommet__lien.on::before {
  z-index: 5;
  left: 0;
  color: #fff;
  mix-blend-mode: exclusion;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 35 32'%3E%3Cpath d='M35 15.86 23.61 31.99h-2.44l10.58-15.14H0v-1.8h31.93L21.16 0h2.44l11.39 15.86Z' style='fill:%23fff'/%3E%3C/svg%3E");
}
.sommet__img {
  display: none;
}
@media (min-width: 1000px) {
  .sommet__img {
    position: absolute;
    display: block;
    opacity: 0;
    top: 0;
    left: 0;
    z-index: 2;
    width: 24em;
    pointer-events: none;
    transform: translate(10%,-50%) scale(.95);
    transition: transform ease 1s, opacity ease .1s;
  }
  .sommet__img.show {
    opacity: 1;
    transform: translate(10%,-50%) scale(1);
  }
}

@media (min-width: 900px) {
  .bloca {
    display: flex;
  }
  .bloca__1 {
    width: 50%;
    padding-right: 5.76%;
  }
  .bloca__2 {
    width: 50%;
    /*padding-left: 5.76%;*/
  }
}
@media (min-width: 1500px) {
  .bloca__2 {
    /*padding-left: 11.54%;*/
    padding-left: 5.76%;
  }
}
.partager {
  font-size: .85em;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
}
.partager a {
  border-bottom: 1px solid var(--main-color1);
}
.partager a:hover {
  border-bottom: 1px solid #fff;
}
.cta {
  background-color: var(--main-bgcolor3);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 89 60'%3E%3Cpath d='M28.65 17.07h.17l6.59 20.2H22.14l6.51-20.2ZM21.97 0 0 60h14.79l3.47-10.73h21.05L42.86 60h14.79L35.49 0H21.97ZM54.05 0 67.8 37.25H57.74l1.92 5.19h10.06l4.87 13.2-6.93.99V60h21.35v-3.37l-6.8-.99L61.66 0h-7.61Z' style='fill:%233a6ef9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: center right;
  padding : calc(3*var(--padunit));
  padding-top: calc(2*var(--padunit));
  padding-bottom: calc(1*var(--padunit));
  text-align: center;
  color: #fff;
}
.cta__tit {
  font-size: clamp(1.5625rem, 1.0316rem + 2.2654vw, 3.75rem);
  line-height: 1.167;
  font-weight: 600;
}
.cta__desc {
  max-width: 660px;
  margin-left: auto;
  margin-right: auto;
  font-size: .95em;
}
.metdet__1 {
  background-color: var(--main-bgcolor2);
}
.metdet__1coul {
  background-color: var(--main-bgcolor3);
  color: #fff;
  padding-left: calc(1.5*var(--padunit));
  padding-right: calc(1.5*var(--padunit));
  padding-top: calc(8*var(--padunit));
  padding-bottom: 1.5em;
}
@media (min-width: 900px) {
  .metdet__1coul {
    padding-top: calc(7*var(--padunit));
    padding-bottom: calc(1*var(--padunit));
  }
}
.metdet__1coul2 {
  padding-left: calc(1.5*var(--padunit));
  padding-right: calc(1.5*var(--padunit));
}
.metdet__1coul .ariane, .metdet__1coul .tit1 {
  color: #fff;
}
@media (min-width: 900px) {
  .metdet {
    display: flex;
  }
  .metdet__1 {
    width: 54.6875%;
  }
  .metdet__2 {
    width: 45.3125%;
  }
  .metdet__img {
    position: relative;
  }
  .metdet__imgov {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    /*background-color: rgba(0, 0, 0, .05);*/
    background: rgb(0,0,0);
    background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 100%);
  }
}
.chiff__cont {
  position: relative;
}
.chiff {
  position: relative;
  z-index: 5;
  text-align: center;
  padding-top: calc(2*var(--padunit));
}
.chiff__1 {
  font-size: clamp(1.875rem, 0.6951rem + 5.0343vw, 8.75rem);
  font-weight: 600;
  text-transform: uppercase;
}
.chiff__2 {
  font-size: 1.5em;
}
.modelviewer__cont {
  position: absolute;
  top: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
}
.modelviewer__cont__contact--presc {
  position: sticky;
  top: 50%;
  transform: translateY(-50%);
}
.modelviewer__cont__ref {
  position: fixed;
  z-index: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}
@media (min-width: 700px) {
  .modelviewer__cont__ref {
    top: 0;
    left: 50%;
    transform: translate(-50%);
    width: 50%;
    height: 50%;
  }  
}
.chiff__3d {
  position: absolute;
  display: block;
  width: 80%;
  height: 100%;
}
.mv__1 {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
}
.grisolu {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.grisolu__item {
  margin-top: 3em;
  background-color: var(--main-color2);
  padding: calc(var(--padunit));
  color: #fff;
  aspect-ratio: 1.4;
  position: relative;
  padding-bottom: calc(3.5em + var(--padunit));
}
.grisolu__item:hover .grisolu__plus {
  transform: rotate(90deg);
}
.grisolu__tit {
  font-family: var(--font2);
  font-weight: 300;
  font-size: clamp(1.5625rem, 1.4231rem + 0.595vw, 2.375rem);
  line-height: 1.2;
}
.grisolu__desc {
  padding-left: .75em;
  margin-top: .75em;
  /*padding-bottom: 6em;*/
}
.grisolu__desc--un {
  padding-left: 0;
}
.grisolu__desc li {
  list-style: disc;
  font-size: .65em;
  text-transform: uppercase;
  font-size: 500;
}
.grisolu__desc--un li {
  list-style: none;
}
.grisolu__plus {
  position: absolute;
  bottom: 3.125vw;
  left: 3.125vw;
  width: 3em;
  height: 3em;
  border-radius: 1.5em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M13.5 30V16.5H0v-3h13.5V0h3v13.5H30v3H16.5V30h-3Z' style='fill:%23003da6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 1em 1em;
  background-position: center center;
  background-color: #fff;
  transition: transform .3s ease;
}
.grisolu__item:nth-child(2n+1) {
  background-color: var(--main-bgcolor3);
}
@media (min-width: 700px) {
  .grisolu {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-left: calc(-0.75*var(--padunit));
    margin-right: calc(-0.75*var(--padunit));
  }
  .grisolu__item {
    aspect-ratio: .89;
    width: calc(50% - 1.5*var(--padunit));
    margin: calc(0.75*var(--padunit));
  }
}
@media (min-width: 1000px) {
  .grisolu__item {
    width: calc(33.3333% - 1.5*var(--padunit));
  }
}
@media (min-width: 1400px) {
  .grisolu {
    margin-left: calc(0.25*var(--padunit));
    margin-right: calc(0.25*var(--padunit));
  }
}

.solufich {
  display: flex;
  flex-direction: column;
}
.solufich__1 {
  margin-top: 3em;
  padding: calc(1.5*var(--padunit));
}
@media (min-width: 1380px) {
  .solufich {
    flex-direction: row;
  }
  .solufich__1 {
    width: 54.6875%;
    padding-left: calc(1.5*var(--padunit));
  }
  .solufich__2 {
    width: 45.3125%;
  }
}
.solufich__nav {
  margin-top: 3em;
  background-color: var(--main-color3);
  color: #fff;
  padding: calc(1*var(--padunit)) calc(1.5*var(--padunit));
}
@media (min-width: 1380px) {
  .solufich__nav {
    float: right;
    position: sticky;
    right: 0;
    top: clamp(4.6875rem, 3.5498rem + 4.8544vw, 9.375rem);
    margin-top: 2em;
    width: clamp(29.375rem, 18.3199rem + 25.2688vw, 58.75rem);
  }
}
.solufich__nav p {
  padding-bottom: .5em;
}
.solufich__nav li {
  font-family: var(--font2);
  font-weight: 300;
  padding-top: .25em;
}
.solufich__nav a {
  border-bottom: 2px solid transparent;
  transition: border-bottom-color ease .3s;
}
.solufich__nav a:hover {
  border-bottom-color:#fff;
}
.contnumail {
  font-family: var(--font2);
  font-size: clamp(1.3125rem, 0.8726rem + 1.877vw, 3.125rem);
  color: var(--main-color3);
  padding-bottom: .25em;
}
.contnumail a {
  border-bottom: 2px solid transparent;
  transition: border-bottom-color ease .3s;
}
.contnumail a:hover {
  border-bottom-color: var(--main-color3);
}
.cont3d {
  display: block;
  width: 100%;
  aspect-ratio: 1.3;
}
@media (min-width: 1100px) {
  .contbox {
    display: flex;
    justify-content: flex-end;
    padding-right: calc(1.5*var(--padunit));
  }
  .contbox__form {
    width: 50%;
  }
}
.box__item--modelviewer {
  display: none;
}
@media (min-width: 760px) {
  .box__item--modelviewer {
    display: block;
  }
}
.bgblc {
  position: relative;
  z-index: 1;
  background-color: #fff;
}
.rubref__pt {
  padding-top: 7em;
}
@media (min-width: 1100px) {
  .rubref__pt {
    padding-top: calc(3*var(--padunit));
  }
}
.gridref__cont {
  position: relative;
  z-index: 1;
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 7%, rgba(255,255,255,0) 14%, rgba(255,255,255,0) 86%, rgba(255,255,255,1) 93%, rgba(255,255,255,1) 100%);
}
.gridref {
  display: flex;
  flex-direction: column;
  position: relative;
}
.gridref__item {
    margin-top: 3em;
    background-color: var(--main-bgcolor3);
    color: #fff;
    padding: calc(1*var(--padunit));
    padding-top: calc(2.5*var(--padunit));
}
.gridref__tit {
  font-family: var(--font2);
  font-size: 1.333em;
}
.gridref__desc {
  margin-top: 1em;
  font-size: .9em;
}
@media (min-width: 540px) {
  .gridref {
    flex-direction: row;
    flex-wrap: wrap;
    padding-bottom: calc(3*var(--padunit));
  }
  .gridref__item {
    margin-top: 0;
    width: calc(50% - 2*var(--padunit));
    margin: calc(1*var(--padunit));
  }
  .gridref__item:nth-child(2n) {
    transform: translateY(calc(1.5*var(--padunit)));
  }
}
.textenavant__cont {
  position: relative;
  margin-top: calc(4*var(--padunit));
  margin-bottom: calc(4*var(--padunit));
  padding-top: calc(1*var(--padunit));
  padding-bottom: calc(1*var(--padunit));
}
.textenavant {
  position: relative;
  z-index: 5;
  max-width: 1260px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  font-size: clamp(1.5rem, 0.9539rem + 2.3301vw, 3.75rem);
  line-height: 1.167;
  font-weight: 500;
}
.method__cont {
  background-color: var(--main-bgcolor3);
  color: #fff;
  padding-top: calc(1*var(--padunit));
  padding-bottom: calc(1*var(--padunit));
}
.method__tit {
  padding-left: calc(3*var(--padunit));
  padding-right: calc(3*var(--padunit));
}
.method__tit2 {
  font-size: 1.15em;
  font-weight: 700;
}
.method__item {
  padding: calc(1*var(--padunit)) calc(2*var(--padunit));
  width: 85%;
  max-width: 85%;
  background-repeat: no-repeat;
  background-position: 0 calc(3.125vw + .25em);
}
@media (min-width: 800px) {
  .method__item {
    width: 45%;
    max-width: 45%;
    cursor: grab;
    background-position: 3.125vw calc(3.125vw + .25em);
  }
}
.method__item--1 {
  background-image: url(../img/1.png);
  background-size: 1em 2em;
}
.method__item--2 {
  background-image: url(../img/2.png);
  background-size: 1.55em 2em;
}
.method__item--3 {
  background-image: url(../img/3.png);
  background-size: 1.53em 2em;
}
.method__item--4 {
  background-image: url(../img/4.png);
  background-size: 1.69em 2em;
}
.method__item--5 {
  background-image: url(../img/5.png);
  background-size: 1.56em 2em;
}
.temoi__cont {
  position: relative;
  z-index: 1;
  margin-top: calc(3*var(--padunit));
  margin-bottom: calc(3*var(--padunit));
}
@media (min-width: 1300px) {
  .temoi {
    position: relative;
    z-index: 1;
    padding-top: calc(3*var(--padunit));
    padding-left: calc(3*var(--padunit));
    padding-right: calc(3*var(--padunit));
  }
}
.temoi__txt {
  font-family: var(--font2);
  font-style: italic;
  font-weight: 300;
  font-size: clamp(1.4375rem, 1.0279rem + 1.7476vw, 3.125rem);
  text-align: center;
}
.temoi__aut {
  margin-top: 1.5em;
  font-size: .77em;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
}
.temoi__modelviewer {
  position: absolute;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.temoi__mv {
  position: absolute;
  display: block;
  width: 80%;
  height: 80%;
}
@media (min-width: 900px) {
  .equi {
    display: flex;
  }
  .equi__1 {
    width: 50%;
  }
  .equi__2 {
    width: 50%;
  }
}
@media (min-width: 1400px) {
  .equi__2 {
    width: 50%;
    padding-left: calc(3*var(--padunit));
  }
}
/* 32 colonnes */
/*html,body {background-image: repeating-linear-gradient(90deg, #F8F7F2, #F8F7F2 3.125%, #ececec 3.125%, #ececec 6.25%);}*/