/*
.form-panel{
  @include form-field;
  .form-label{
    line-height: 40px !important;
    padding-right: 40px;
  }
  .form-input{
    .form-input-wrapper{
      position: relative;

      i{
        position: absolute;
        bottom: 100%;
        right: 10px;
        color: #555;
        font-size: 12px;
        line-height: 40px;
        border: 0;
      }

    }
  }

  .filter-panel{
    $header-height: 60px;

    position: fixed;
    top: 100%;
    left: 50%;
    //bottom: 0;
    max-height: 600px;
    height: 80vh;
    width: 80vw;
    max-width: 600px;
    background: rgba(255,255,255,1);
    z-index: 20000;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.3);
    flex-direction: column;
    justify-content: stretch;
    transform: translateX(-50%) translateY(50%);
    display: flex;
    overflow: hidden;
    @include rem(font-size, 16px);

    .form-panel.active &{
      //display: block;
    }

    > *{
      padding: var(--gutter);
      position: relative;
    }

    header{
      padding: 0;
      border-bottom: 1px solid #eee;
      h6{
        text-transform: uppercase;
        @include rem(font-size, 14px);
        line-height: $header-height;
        padding-left: var(--gutter);
        @include animate;
      }

      .bt-close{
        @include animate;
        position: absolute;
        top: 0;
        right: 0;
        background: none;
        border: 0;
        @include rem(font-size, 20px);
        line-height: $header-height;
        width: $header-height;
      }

      .bt-back{
        @include animate;
        position: absolute;
        top: 0;
        left: 0;
        background: none;
        border: 0;
        @include rem(font-size, 20px);
        line-height: $header-height;
        width: $header-height;
      }
    }

    footer{
      button{
        @extend %button;
      }
    }

    label{
      padding: calc(var(--gutter)/4);
      display: block;
      &:hover{
        background: #eee;
      }
    }

    &[data-index="0"]{
      [data-index="0"]{
        left: 0%;
      }
      [data-index="1"]{
        left: 100%;
      }
      .bt-back{
        transform: translateX(-100%);
      }
      h6{
        transform: translateX(0px);
      }
    }

    &[data-index="1"]{
      [data-index="0"]{
        left: -100%;
      }
      [data-index="1"]{
        left: 0%;
      }
      .bt-back{
        transform: translateX(0%);
      }
      h6{
        transform: translateX($header-height/2);
      }
    }

    .wrapper-main{
      height: 100%;
      max-height: 100%;
      min-width: 100%;
      position: relative;
    }

    .wrapper{
      @include animate;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      overflow: auto;

      &[data-index="0"]{
        > div{
          > ul{
            display: none;
          }
        }
      }

      &[data-index="1"]{
        > div{
          > label{
            display: none;
          }
          > ul{
            display: block;
          }
        }
      }

      > div{
        label{
          font-weight: 300;
          padding: 0 calc(2 * var(--gutter));
          border-bottom: 1px solid #eee;
          position: relative;
          display: flex;
          align-items: center;
          min-height: 60px;
          i.color{
            display: inline-block;
            width: 24px;
            height: 24px;
            border-radius: 50%;
            margin-right: 0.5em;
            transform: translateY(4px);
            border: 2px solid #fff;
            box-shadow: 0px 0px 2px #aaa;
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
            overflow: hidden;
          }
          figure{
            width: 80px;
            display: block;
            margin-right: 1em;
            img{
              width: 100%;
            }
          }
          span{
            display: block;
          }
          i.tick{
            opacity: 0.1;
            float: left;
            margin-right: 1em;
          }
          input{
            position: absolute;
            visibility: hidden;
            opacity: 0;

            &:checked ~ i{
              opacity: 1;
            }
            &:checked ~ span{
              font-weight: bold;
            }
          }
        }
        > label{
          font-weight: 600;
          .count{
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            right: 1em;
            width: 40px;
            height: 40px;
            line-height: 40px;
            text-align: center;
            border-radius: 50%;
            background: rgba(0,0,0,0.05);
            font-size: 13px;
            font-style: normal;
            opacity: 1;

            &[rel="0"]{
              opacity: 0;
            }
          }
        }
        ul{
          @include clearlist;
          li{
            &.all{
              background: #f7f7f7;
              label{
                border-color: #aaa;
                i.tick{
                  position: relative;
                  &:after{
                    content:"";
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translateY(-50%) translateX(-50%);
                    width: 24px;
                    height: 24px;
                    border: 1px solid #000;
                  }
                }
              }
            }
          }
          &.has-all{
            li{
              input ~ .tick{
                opacity: 1;
              }
            }
          }
        }
        &.active ul{
          display: block;
        }
      }
    }
  }
}
*/
@import url("https://use.typekit.net/zox3vpl.css");
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  box-sizing: border-box;
}

button, input {
  outline: 0;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus textarea:-webkit-autofill,
textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px #ffffff inset !important;
}

a {
  color: inherit;
  text-decoration: inherit;
}

/* BREAKPOINTS */
/* MEDIA QUERIES */
/*
$lt-smartphone: only screen and (max-device-width: 576px);
*/
.is-xs, .is-s, .is-m, .is-l, .is-xl {
  display: none;
}

@media only screen and (min-width: 576px) {
  .is-xs {
    display: block;
  }
}

@media only screen and (min-width: 768px) {
  .is-s {
    display: block;
  }
}

@media only screen and (min-width: 992px) {
  .is-m {
    display: block;
  }
}

@media only screen and (min-width: 1200px) {
  .is-l {
    display: block;
  }
}

@media only screen and (min-width: 1600px) {
  .is-xl {
    display: block;
  }
}

.only-xs, .only-s, .only-m, .only-l, .only-xl {
  display: none;
}

@media only screen and (min-width: 0px) and (max-width: 576px) {
  .only-xs {
    display: block;
  }
}

@media only screen and (min-width: 577px) and (max-width: 768px) {
  .only-s {
    display: block;
  }
}

@media only screen and (min-width: 769px) and (max-width: 992px) {
  .only-m {
    display: block;
  }
}

@media only screen and (min-width: 993px) and (max-width: 1200px) {
  .only-l {
    display: block;
  }
}

@media only screen and (min-width: 1201px) {
  .only-xl {
    display: block;
  }
}

@font-face {
  font-family: "icons";
  src: url("../fonts/icons/icons.eot");
  src: url("../fonts/icons/icons.eot?#iefix") format("eot"), url("../fonts/icons/icons.woff2") format("woff2"), url("../fonts/icons/icons.woff") format("woff"), url("../fonts/icons/icons.ttf") format("truetype"), url("../fonts/icons/icons.svg#icons") format("svg");
}
.icon:before, .form-birthdate .form-input-wrapper label:before, form input[type=checkbox]:checked ~ :before,
[class*=form-] input[type=checkbox]:checked ~ :before {
  font-family: "icons";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  /* speak: none; only necessary if not using the private unicode range (firstGlyph option) */
  text-decoration: none;
  text-transform: none;
}

.icon-arrow-down:before, .form-birthdate .form-input-wrapper label:before {
  content: "\e001";
}

.icon-arrow-left:before {
  content: "\e002";
}

.icon-arrow-right:before {
  content: "\e003";
}

.icon-arrow-scroll:before {
  content: "\e004";
}

.icon-arrow-swiper:before {
  content: "\e005";
}

.icon-arrow-top:before {
  content: "\e006";
}

.icon-arrow-up:before {
  content: "\e007";
}

.icon-arrow:before {
  content: "\e008";
}

.icon-bag:before {
  content: "\e009";
}

.icon-calendar:before {
  content: "\e00a";
}

.icon-cart:before {
  content: "\e00b";
}

.icon-check:before, form input[type=checkbox]:checked ~ :before,
[class*=form-] input[type=checkbox]:checked ~ :before {
  content: "\e00c";
}

.icon-close:before {
  content: "\e00d";
}

.icon-coeur:before {
  content: "\e00e";
}

.icon-cross-codezip:before {
  content: "\e00f";
}

.icon-email:before {
  content: "\e010";
}

.icon-facebook:before {
  content: "\e011";
}

.icon-filter:before {
  content: "\e012";
}

.icon-glossary:before {
  content: "\e013";
}

.icon-instagram:before {
  content: "\e014";
}

.icon-linkedin:before {
  content: "\e015";
}

.icon-marker:before {
  content: "\e016";
}

.icon-more-codezip:before {
  content: "\e017";
}

.icon-notification:before {
  content: "\e018";
}

.icon-phone:before {
  content: "\e019";
}

.icon-pinterest:before {
  content: "\e01a";
}

.icon-play-circle:before {
  content: "\e01b";
}

.icon-play-line:before {
  content: "\e01c";
}

.icon-play:before {
  content: "\e01d";
}

.icon-reset:before {
  content: "\e01e";
}

.icon-round:before {
  content: "\e01f";
}

.icon-search:before {
  content: "\e020";
}

.icon-sort:before {
  content: "\e021";
}

.icon-star-fill:before {
  content: "\e022";
}

.icon-star:before {
  content: "\e023";
}

.icon-stock-in:before {
  content: "\e024";
}

.icon-stock-inprogress:before {
  content: "\e025";
}

.icon-tick:before {
  content: "\e026";
}

.icon-tiktok:before {
  content: "\e027";
}

.icon-time:before {
  content: "\e028";
}

.icon-truck-delivery-time:before {
  content: "\e029";
}

.icon-truck:before {
  content: "\e02a";
}

.icon-twitch:before {
  content: "\e02b";
}

.icon-twitter:before {
  content: "\e02c";
}

.icon-user:before {
  content: "\e02d";
}

.icon-whatsapp:before {
  content: "\e02e";
}

.icon-youtube:before {
  content: "\e02f";
}

:root {
  --app-height: 100%;
  --navigation-height: 80px;
  --navigation-mobile-background: 255, 255, 255;
  --color-danger: 255, 0, 0;
  --color-info: 10, 130, 240;
  --color-promotion: 214, 0, 87;
  --color-warning: 255, 158, 24;
  --color-success: 20, 167, 42;
  --rem-baseline: 16px;
  --font-content: "Lato", sans-serif;
  --font-special: "Playfair Display", serif;
  --font-script: "Dawning of a New Day", sans-serif;
  --fw-thin: 100;
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-bold: 600;
  --fw-extra-bold: 700;
  --page-max-width: 1500px;
  --page-width: 100%;
  --page-gutter-width: 40px;
  --gutter: 2rem;
  --gutter-w: 6vw;
  --gutter-h: 6vh;
  --gutter-grid: 20px;
  --wrapper-width: calc(var(--page-width) - var(--page-gutter-width) - var(--page-gutter-width));
  --wrapper-max-width: calc(var(--page-max-width) - var(--page-gutter-width) - var(--page-gutter-width));
  --border-radius: 4px;
  --transition: all .3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  :root {
    --navigation-height: 50px;
  }
}
@media only screen and (max-width: 768px) {
  :root {
    --rem-baseline: 14px;
  }
}
@media only screen and (max-width: 768px) {
  :root {
    --gutter: 1rem;
  }
}
@media only screen and (max-width: 768px) {
  :root {
    --page-gutter-width: 20px;
    --gutter: 1rem;
    --gutter-w: 3vw;
    --gutter-h: 3vh;
    --gutter-grid: 1.5vw;
  }
}

.maven {
  text-transform: uppercase;
  font-size: 9px;
  font-size: 0.5625rem;
}
@media only screen and (max-width: 768px) {
  .maven {
    float: none;
    width: auto;
    text-align: center;
    margin-top: calc(var(--gutter-h) / 2);
  }
}
.maven span {
  line-height: 1em;
  display: inline-block;
}
.maven svg {
  height: 20px;
  margin-left: 4px;
  transform: translateY(1px);
}
.maven path {
  fill: rgb(var(--color-white));
  transition: all 250ms ease-out;
}
.maven a {
  display: inline-block;
  text-decoration: none;
}
.maven a:hover path {
  fill: rgb(var(--color-main));
}

.page-notice {
  background: rgba(var(--color-black), 0.9);
  color: rgb(var(--color-white));
  position: relative;
}
.page-notice > .wrapper {
  position: relative;
  padding: calc(var(--gutter) / 4);
  padding-right: calc(var(--gutter) * 1.5);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 768px) {
  .page-notice > .wrapper {
    padding-right: var(--gutter);
    padding-left: 0;
  }
}
.page-notice > .wrapper p {
  margin-bottom: 0;
  text-align: center;
}
.page-notice > .wrapper a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  font-weight: 400;
}
@media only screen and (max-width: 768px) {
  .page-notice > .wrapper a {
    justify-content: flex-start;
    margin-top: 0.25em;
  }
}
.page-notice > .wrapper a > span {
  color: rgb(var(--color-white));
  text-transform: uppercase;
  margin-left: 1.5em;
  display: inline-block;
  font-size: 0.85em;
  text-decoration: underline;
  transition: all 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .page-notice > .wrapper a > span {
    margin-left: 0;
  }
}
.page-notice > .wrapper a > span:hover {
  opacity: 0.6;
}
.page-notice > .wrapper button {
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999;
  background: none;
  border: none;
  position: absolute;
  right: 0;
  cursor: pointer;
  color: rgb(var(--color-white));
  transition: all 250ms ease-in-out;
  width: 2em;
  aspect-ratio: 1/1;
  border-radius: 50%;
  overflow: hidden;
  padding: 0;
}
.page-notice > .wrapper button svg {
  width: 80%;
}
.page-notice > .wrapper button:hover {
  background: rgba(255, 255, 255, 0.3);
}
.weebox-shares {
  position: fixed;
  top: 50%;
  left: -10px;
  transform: translateY(-50%);
  z-index: 500;
}
@media only screen and (max-width: 576px) {
  .weebox-shares {
    top: 80px;
    transform: none;
    left: 0;
  }
}
.weebox-shares .open {
  padding-left: 10px;
  transform: translateX(0);
  display: none;
  margin-bottom: 4px;
}
.weebox-shares .open i {
  text-align: center;
  line-height: 50px;
  width: 50px;
  height: 50px;
  font-size: calc(50px / 2);
  display: block;
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
  border-radius: 50%;
}
.weebox-shares .open:hover i {
  background: rgba(0, 0, 0, 0.9);
}
.weebox-shares .open:hover ~ ul {
  display: block !important;
}
@media only screen and (max-width: 576px) {
  .weebox-shares .open {
    display: block;
  }
}
@media only screen and (max-width: 576px) {
  .weebox-shares ul {
    display: none;
  }
}
.weebox-shares ul li {
  position: relative;
  line-height: 50px;
  text-align: center;
  color: #fff;
  padding-left: 10px;
  transition: all 180ms ease-in-out;
  transform: translateX(0);
  cursor: pointer;
}
.weebox-shares ul li.share-facebook {
  background: #39569c;
}
.weebox-shares ul li.share-instagram {
  background: #DD2A7B;
}
.weebox-shares ul li.share-twitter {
  background: #00acee;
}
.weebox-shares ul li.share-linkedin {
  background: #0e76a8;
}
.weebox-shares ul li.share-youtube {
  background: darkred;
}
.weebox-shares ul li.share-facebook a {
  background: #39569c;
}
.weebox-shares ul li.share-instagram a {
  background: #DD2A7B;
}
.weebox-shares ul li.share-twitter a {
  background: #00acee;
}
.weebox-shares ul li.share-linkedin a {
  background: #0e76a8;
}
.weebox-shares ul li.share-youtube {
  background: darkred;
}
@media only screen and (max-width: 576px) {
  .weebox-shares ul li {
    background: none !important;
    margin-bottom: 2px;
  }
}
.weebox-shares ul li:hover {
  transform: translateX(10px);
}
.weebox-shares ul li a {
  overflow: hidden;
  width: 50px;
  height: 50px;
  font-size: 16.6666666667px;
  color: inherit;
  display: block;
}
@media only screen and (max-width: 576px) {
  .weebox-shares ul li a {
    border-radius: 50%;
  }
}

::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #e3e3e3;
}

::-webkit-scrollbar-thumb {
  background: #bdbdbd;
  border: #e3e3e3 2px solid;
  border-radius: 10px;
  transition: background 0.2s ease-in-out;
}
::-webkit-scrollbar-thumb:hover {
  background: #989898;
}

/*
 * Ripple material animation
 */
span.ripple {
  position: absolute; /* The absolute position we mentioned earlier */
  border-radius: 50%;
  transform: scale(0);
  animation: ripple 600ms linear;
  background-color: rgba(var(--color-main), 0.1);
}

@keyframes ripple {
  to {
    transform: scale(4);
    opacity: 0;
  }
}
/*
 * Button
 */
.wbx-button-container {
  font-size: 0px;
}
.wbx-button-container ~ .wbx-button-container {
  margin-left: 0.5rem;
}

.button-shortcut {
  cursor: pointer;
  overflow: hidden;
  font-family: var(--font-content);
  min-height: 40px;
  position: relative;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 0 0.75em;
  font-size: 0.8em;
  font-weight: var(--fw-regular);
  background: none;
  border: none;
  white-space: nowrap;
}
.button-shortcut:hover {
  background: rgb(var(--color-black));
  color: #fff;
}
.button-shortcut:hover select {
  color: #fff;
}
.button-shortcut i {
  font-size: 1.5em;
  margin-right: 0.25em;
}
.button-shortcut svg {
  width: 1.5em;
  height: 1.5em;
}

.button, .button-outline, .button-third, .button-secondary, .navigation .navigation-container .navigation-main .subscribe a span, .button-primary {
  cursor: pointer;
  user-select: none;
  overflow: hidden;
  font-weight: var(--fw-bold);
  border-radius: 4px;
  font-family: var(--font-content);
  background: rgb(var(--color-black));
  color: rgb(var(--color-white));
  border: 2px solid rgb(var(--color-black));
  padding: 0 3em;
  margin: 0;
  min-height: 3.2em;
  position: relative;
  white-space: nowrap;
  display: inline-flex;
  transition: all 0.3s ease-in;
  align-items: center;
  justify-content: center;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 16px;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2);
}
.button span.ripple, .button-outline span.ripple, .button-third span.ripple, .button-secondary span.ripple, .navigation .navigation-container .navigation-main .subscribe a span span.ripple, .button-primary span.ripple {
  background: rgba(var(--color-white), 0.2);
}
.button span:not(.ripple), .button-outline span:not(.ripple), .button-third span:not(.ripple), .button-secondary span:not(.ripple), .navigation .navigation-container .navigation-main .subscribe a span span:not(.ripple), .button-primary span:not(.ripple) {
  position: relative;
  z-index: 5;
}
.button span:not(.ripple) ~ svg, .button-outline span:not(.ripple) ~ svg, .button-third span:not(.ripple) ~ svg, .button-secondary span:not(.ripple) ~ svg, .navigation .navigation-container .navigation-main .subscribe a span span:not(.ripple) ~ svg, .button-primary span:not(.ripple) ~ svg {
  margin-left: 0.25em;
}
.button i, .button-outline i, .button-third i, .button-secondary i, .navigation .navigation-container .navigation-main .subscribe a span i, .button-primary i {
  position: relative;
  font-size: 1.5em;
  margin-right: 0.5em;
  text-align: center;
  transform: translateY(-0.1em);
}
.button svg, .button-outline svg, .button-third svg, .button-secondary svg, .navigation .navigation-container .navigation-main .subscribe a span svg, .button-primary svg {
  position: relative;
  width: 1.5em;
  height: 1.5em;
  text-align: center;
}
.button svg ~ span, .button-outline svg ~ span, .button-third svg ~ span, .button-secondary svg ~ span, .navigation .navigation-container .navigation-main .subscribe a span svg ~ span, .button-primary svg ~ span {
  margin-left: 0.25em;
}
.button:hover, .button-outline:hover, .button-third:hover, .button-secondary:hover, .navigation .navigation-container .navigation-main .subscribe a span:hover, .button-primary:hover {
  background: rgb(var(--color-main));
  color: rgb(var(--color-white));
  border-color: rgb(var(--color-main));
}
@media only screen and (max-width: 768px) {
  .button, .button-outline, .button-third, .button-secondary, .navigation .navigation-container .navigation-main .subscribe a span, .button-primary {
    margin-top: calc(var(--gutter-h) / 4);
  }
}

.navigation .navigation-container .navigation-main .subscribe a span, .button-primary {
  color: rgb(var(--color-white));
  background: rgb(var(--color-main));
  border: 2px solid rgb(var(--color-main));
}
.navigation .navigation-container .navigation-main .subscribe a span span.ripple, .button-primary span.ripple {
  background: rgba(var(--color-white), 0.2);
}
.navigation .navigation-container .navigation-main .subscribe a span:hover, .button-primary:hover {
  background: rgb(var(--color-main-light));
  color: rgb(var(--color-white));
  border-color: rgb(var(--color-main-light));
}

.button-secondary {
  color: rgb(var(--color-secondary));
  background: none;
  border: rgb(var(--color-secondary)) solid 2px;
}
.button-secondary:hover {
  background: rgb(var(--color-secondary-dark));
  color: rgb(var(--color-white));
  border-color: rgb(var(--color-secondary-dark));
}

.button-third {
  color: rgb(var(--color-black));
  background: none;
  border: 2px solid rgba(255, 255, 255, 0);
}
.button-third:hover {
  background: none;
  color: rgb(var(--color-secondary-dark));
  border-color: rgba(255, 255, 255, 0);
}

.button-outline {
  color: rgb(var(--color-black));
  background: none;
  border: 2px solid rgb(var(--color-black));
}
.button-outline span.ripple {
  background: rgba(var(--color-main), 0.1);
}
.button-outline:hover {
  background: none;
  color: rgb(var(--color-main));
  border-color: rgb(var(--color-main));
}

select:-webkit-autofill,
select:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:focus,
input:-webkit-autofill,
input:-webkit-autofill:focus {
  transition: background-color 0s 600000s, color 0s 600000s !important;
}

.form-checkbox input::placeholder, .form-radio input::placeholder, .form-birthdate input::placeholder, .form-select input::placeholder, .form-accordeon input::placeholder, .form-autocomplete input::placeholder, .form-dropdown input::placeholder, .form-textarea input::placeholder, .form-text input::placeholder,
.form-checkbox textarea::placeholder,
.form-radio textarea::placeholder,
.form-birthdate textarea::placeholder,
.form-select textarea::placeholder,
.form-accordeon textarea::placeholder,
.form-autocomplete textarea::placeholder,
.form-dropdown textarea::placeholder,
.form-textarea textarea::placeholder,
.form-text textarea::placeholder,
.form-checkbox select::placeholder,
.form-radio select::placeholder,
.form-birthdate select::placeholder,
.form-select select::placeholder,
.form-accordeon select::placeholder,
.form-autocomplete select::placeholder,
.form-dropdown select::placeholder,
.form-textarea select::placeholder,
.form-text select::placeholder, .form-checkbox input, .form-radio input, .form-birthdate input, .form-select input, .form-accordeon input, .form-autocomplete input, .form-dropdown input, .form-textarea input, .form-text input,
.form-checkbox textarea,
.form-radio textarea,
.form-birthdate textarea,
.form-select textarea,
.form-accordeon textarea,
.form-autocomplete textarea,
.form-dropdown textarea,
.form-textarea textarea,
.form-text textarea,
.form-checkbox select,
.form-radio select,
.form-birthdate select,
.form-select select,
.form-accordeon select,
.form-autocomplete select,
.form-dropdown select,
.form-textarea select,
.form-text select {
  font-family: var(--font-content);
  font-weight: var(--fw-medium);
  color: rgb(var(--color-black));
  font-size: 100%;
}

.form-checkbox .form-label, .form-radio .form-label, .form-birthdate .form-label, .form-select .form-label, .form-accordeon .form-label, .form-autocomplete .form-label, .form-dropdown .form-label, .form-textarea .form-label, .form-text .form-label {
  position: absolute;
  display: flex;
  align-items: center;
  top: 0;
  z-index: 1;
  transform: translateY(-50%);
  transition: 150ms ease-in-out all;
  pointer-events: none;
  opacity: 1;
  background: rgba(var(--color-white), 1);
  left: 5px;
  padding-left: 10px;
  padding-right: 10px;
  margin: 0;
}
.form-checkbox .form-label.form-required, .form-radio .form-label.form-required, .form-birthdate .form-label.form-required, .form-select .form-label.form-required, .form-accordeon .form-label.form-required, .form-autocomplete .form-label.form-required, .form-dropdown .form-label.form-required, .form-textarea .form-label.form-required, .form-text .form-label.form-required {
  color: red;
}
.form-checkbox .form-input, .form-radio .form-input, .form-birthdate .form-input, .form-select .form-input, .form-accordeon .form-input, .form-autocomplete .form-input, .form-dropdown .form-input, .form-textarea .form-input, .form-text .form-input {
  border-radius: var(--border-radius);
  border: 1px solid rgba(var(--color-black), 0.8);
}
.form-checkbox .form-input .form-input-wrapper, .form-radio .form-input .form-input-wrapper, .form-birthdate .form-input .form-input-wrapper, .form-select .form-input .form-input-wrapper, .form-accordeon .form-input .form-input-wrapper, .form-autocomplete .form-input .form-input-wrapper, .form-dropdown .form-input .form-input-wrapper, .form-textarea .form-input .form-input-wrapper, .form-text .form-input .form-input-wrapper {
  z-index: 10;
}
.form-checkbox:has(input:placeholder-shown) .form-label, .form-radio:has(input:placeholder-shown) .form-label, .form-birthdate:has(input:placeholder-shown) .form-label, .form-select:has(input:placeholder-shown) .form-label, .form-accordeon:has(input:placeholder-shown) .form-label, .form-autocomplete:has(input:placeholder-shown) .form-label, .form-dropdown:has(input:placeholder-shown) .form-label, .form-textarea:has(input:placeholder-shown) .form-label, .form-text:has(input:placeholder-shown) .form-label, .form-checkbox:has(textarea:placeholder-shown) .form-label, .form-radio:has(textarea:placeholder-shown) .form-label, .form-birthdate:has(textarea:placeholder-shown) .form-label, .form-select:has(textarea:placeholder-shown) .form-label, .form-accordeon:has(textarea:placeholder-shown) .form-label, .form-autocomplete:has(textarea:placeholder-shown) .form-label, .form-dropdown:has(textarea:placeholder-shown) .form-label, .form-textarea:has(textarea:placeholder-shown) .form-label, .form-text:has(textarea:placeholder-shown) .form-label {
  transform: translateY(-50%);
  font-size: 1em;
  top: 50%;
}
.form-checkbox:has(input:focus-visible) .form-label, .form-radio:has(input:focus-visible) .form-label, .form-birthdate:has(input:focus-visible) .form-label, .form-select:has(input:focus-visible) .form-label, .form-accordeon:has(input:focus-visible) .form-label, .form-autocomplete:has(input:focus-visible) .form-label, .form-dropdown:has(input:focus-visible) .form-label, .form-textarea:has(input:focus-visible) .form-label, .form-text:has(input:focus-visible) .form-label, .form-checkbox:has(textarea:focus-visible) .form-label, .form-radio:has(textarea:focus-visible) .form-label, .form-birthdate:has(textarea:focus-visible) .form-label, .form-select:has(textarea:focus-visible) .form-label, .form-accordeon:has(textarea:focus-visible) .form-label, .form-autocomplete:has(textarea:focus-visible) .form-label, .form-dropdown:has(textarea:focus-visible) .form-label, .form-textarea:has(textarea:focus-visible) .form-label, .form-text:has(textarea:focus-visible) .form-label {
  transform: translateY(-50%);
  font-size: 1rem;
  top: 0;
}
.form-checkbox:has(input:focus-visible) .form-input, .form-radio:has(input:focus-visible) .form-input, .form-birthdate:has(input:focus-visible) .form-input, .form-select:has(input:focus-visible) .form-input, .form-accordeon:has(input:focus-visible) .form-input, .form-autocomplete:has(input:focus-visible) .form-input, .form-dropdown:has(input:focus-visible) .form-input, .form-textarea:has(input:focus-visible) .form-input, .form-text:has(input:focus-visible) .form-input, .form-checkbox:has(textarea:focus-visible) .form-input, .form-radio:has(textarea:focus-visible) .form-input, .form-birthdate:has(textarea:focus-visible) .form-input, .form-select:has(textarea:focus-visible) .form-input, .form-accordeon:has(textarea:focus-visible) .form-input, .form-autocomplete:has(textarea:focus-visible) .form-input, .form-dropdown:has(textarea:focus-visible) .form-input, .form-textarea:has(textarea:focus-visible) .form-input, .form-text:has(textarea:focus-visible) .form-input {
  border-color: rgba(var(--color-black));
  border-width: 1px;
}
.form-checkbox:has(input:focus-visible) .form-input .form-input-wrapper, .form-radio:has(input:focus-visible) .form-input .form-input-wrapper, .form-birthdate:has(input:focus-visible) .form-input .form-input-wrapper, .form-select:has(input:focus-visible) .form-input .form-input-wrapper, .form-accordeon:has(input:focus-visible) .form-input .form-input-wrapper, .form-autocomplete:has(input:focus-visible) .form-input .form-input-wrapper, .form-dropdown:has(input:focus-visible) .form-input .form-input-wrapper, .form-textarea:has(input:focus-visible) .form-input .form-input-wrapper, .form-text:has(input:focus-visible) .form-input .form-input-wrapper, .form-checkbox:has(textarea:focus-visible) .form-input .form-input-wrapper, .form-radio:has(textarea:focus-visible) .form-input .form-input-wrapper, .form-birthdate:has(textarea:focus-visible) .form-input .form-input-wrapper, .form-select:has(textarea:focus-visible) .form-input .form-input-wrapper, .form-accordeon:has(textarea:focus-visible) .form-input .form-input-wrapper, .form-autocomplete:has(textarea:focus-visible) .form-input .form-input-wrapper, .form-dropdown:has(textarea:focus-visible) .form-input .form-input-wrapper, .form-textarea:has(textarea:focus-visible) .form-input .form-input-wrapper, .form-text:has(textarea:focus-visible) .form-input .form-input-wrapper {
  position: relative;
  z-index: 20;
}
.form-checkbox input[type=password]::placeholder, .form-radio input[type=password]::placeholder, .form-birthdate input[type=password]::placeholder, .form-select input[type=password]::placeholder, .form-accordeon input[type=password]::placeholder, .form-autocomplete input[type=password]::placeholder, .form-dropdown input[type=password]::placeholder, .form-textarea input[type=password]::placeholder, .form-text input[type=password]::placeholder,
.form-checkbox input[type=text]::placeholder,
.form-radio input[type=text]::placeholder,
.form-birthdate input[type=text]::placeholder,
.form-select input[type=text]::placeholder,
.form-accordeon input[type=text]::placeholder,
.form-autocomplete input[type=text]::placeholder,
.form-dropdown input[type=text]::placeholder,
.form-textarea input[type=text]::placeholder,
.form-text input[type=text]::placeholder,
.form-checkbox input[type=email]::placeholder,
.form-radio input[type=email]::placeholder,
.form-birthdate input[type=email]::placeholder,
.form-select input[type=email]::placeholder,
.form-accordeon input[type=email]::placeholder,
.form-autocomplete input[type=email]::placeholder,
.form-dropdown input[type=email]::placeholder,
.form-textarea input[type=email]::placeholder,
.form-text input[type=email]::placeholder,
.form-checkbox textarea::placeholder,
.form-radio textarea::placeholder,
.form-birthdate textarea::placeholder,
.form-select textarea::placeholder,
.form-accordeon textarea::placeholder,
.form-autocomplete textarea::placeholder,
.form-dropdown textarea::placeholder,
.form-textarea textarea::placeholder,
.form-text textarea::placeholder {
  color: transparent !important;
}
.form-checkbox input[type=password], .form-radio input[type=password], .form-birthdate input[type=password], .form-select input[type=password], .form-accordeon input[type=password], .form-autocomplete input[type=password], .form-dropdown input[type=password], .form-textarea input[type=password], .form-text input[type=password],
.form-checkbox input[type=text],
.form-radio input[type=text],
.form-birthdate input[type=text],
.form-select input[type=text],
.form-accordeon input[type=text],
.form-autocomplete input[type=text],
.form-dropdown input[type=text],
.form-textarea input[type=text],
.form-text input[type=text],
.form-checkbox input[type=email],
.form-radio input[type=email],
.form-birthdate input[type=email],
.form-select input[type=email],
.form-accordeon input[type=email],
.form-autocomplete input[type=email],
.form-dropdown input[type=email],
.form-textarea input[type=email],
.form-text input[type=email],
.form-checkbox textarea,
.form-radio textarea,
.form-birthdate textarea,
.form-select textarea,
.form-accordeon textarea,
.form-autocomplete textarea,
.form-dropdown textarea,
.form-textarea textarea,
.form-text textarea, .form-checkbox select, .form-radio select, .form-birthdate select, .form-select select, .form-accordeon select, .form-autocomplete select, .form-dropdown select, .form-textarea select, .form-text select {
  padding-left: 15px !important;
  min-height: 48px;
}

.form-required .form-checkbox .form-input .form-input-wrapper, .form-required .form-radio .form-input .form-input-wrapper, .form-required .form-birthdate .form-input .form-input-wrapper, .form-required .form-select .form-input .form-input-wrapper, .form-required .form-accordeon .form-input .form-input-wrapper, .form-required .form-autocomplete .form-input .form-input-wrapper, .form-required .form-dropdown .form-input .form-input-wrapper, .form-required .form-textarea .form-input .form-input-wrapper, .form-required .form-text .form-input .form-input-wrapper, .form-checkbox .form-required .form-input .form-input-wrapper, .form-radio .form-required .form-input .form-input-wrapper, .form-birthdate .form-required .form-input .form-input-wrapper, .form-select .form-required .form-input .form-input-wrapper, .form-accordeon .form-required .form-input .form-input-wrapper, .form-autocomplete .form-required .form-input .form-input-wrapper, .form-dropdown .form-required .form-input .form-input-wrapper, .form-textarea .form-required .form-input .form-input-wrapper, .form-text .form-required .form-input .form-input-wrapper {
  position: relative;
}
.form-required .form-checkbox .form-input .form-input-wrapper:after, .form-required .form-radio .form-input .form-input-wrapper:after, .form-required .form-birthdate .form-input .form-input-wrapper:after, .form-required .form-select .form-input .form-input-wrapper:after, .form-required .form-accordeon .form-input .form-input-wrapper:after, .form-required .form-autocomplete .form-input .form-input-wrapper:after, .form-required .form-dropdown .form-input .form-input-wrapper:after, .form-required .form-textarea .form-input .form-input-wrapper:after, .form-required .form-text .form-input .form-input-wrapper:after, .form-checkbox .form-required .form-input .form-input-wrapper:after, .form-radio .form-required .form-input .form-input-wrapper:after, .form-birthdate .form-required .form-input .form-input-wrapper:after, .form-select .form-required .form-input .form-input-wrapper:after, .form-accordeon .form-required .form-input .form-input-wrapper:after, .form-autocomplete .form-required .form-input .form-input-wrapper:after, .form-dropdown .form-required .form-input .form-input-wrapper:after, .form-textarea .form-required .form-input .form-input-wrapper:after, .form-text .form-required .form-input .form-input-wrapper:after {
  font-size: 20px;
  font-size: 1.25rem;
  content: "*";
  color: rgb(var(--color-unisante-main));
  position: absolute;
  left: -2px;
  top: -7px;
  background: rgba(0, 0, 0, 0.1);
  border-radius: var(--border-radius);
  line-height: 1.4em;
  padding: 0 0.5em;
}

.form-checkbox .form-label, .form-radio .form-label, .form-birthdate .form-label, .form-select .form-label, .form-accordeon .form-label, .form-autocomplete .form-label, .form-dropdown .form-label, .form-textarea .form-label, .form-text .form-label {
  line-height: 1.2em;
  margin-bottom: 0.75em;
  font-size: 1rem;
  font-weight: var(--fw-regular);
  color: rgba(var(--color-black), 0.5);
}
.form-error .form-checkbox .form-label, .form-error .form-radio .form-label, .form-error .form-birthdate .form-label, .form-error .form-select .form-label, .form-error .form-accordeon .form-label, .form-error .form-autocomplete .form-label, .form-error .form-dropdown .form-label, .form-error .form-textarea .form-label, .form-error .form-text .form-label, .form-checkbox .form-error .form-label, .form-radio .form-error .form-label, .form-birthdate .form-error .form-label, .form-select .form-error .form-label, .form-accordeon .form-error .form-label, .form-autocomplete .form-error .form-label, .form-dropdown .form-error .form-label, .form-textarea .form-error .form-label, .form-text .form-error .form-label {
  color: rgb(var(--color-danger)) !important;
}

.form-error.form-checkbox .form-input, .form-error.form-radio .form-input, .form-error.form-birthdate .form-input, .form-error.form-select .form-input, .form-error.form-accordeon .form-input, .form-error.form-autocomplete .form-input, .form-error.form-dropdown .form-input, .form-error.form-textarea .form-input, .form-error.form-text .form-input {
  border-color: rgba(var(--color-danger), 1) !important;
}

.form-checkbox .form-input, .form-radio .form-input, .form-birthdate .form-input, .form-select .form-input, .form-accordeon .form-input, .form-autocomplete .form-input, .form-dropdown .form-input, .form-textarea .form-input, .form-text .form-input {
  display: flex;
  background: rgb(var(--color-white));
  position: relative;
}
.form-checkbox .form-input .form-input-prefix, .form-radio .form-input .form-input-prefix, .form-birthdate .form-input .form-input-prefix, .form-select .form-input .form-input-prefix, .form-accordeon .form-input .form-input-prefix, .form-autocomplete .form-input .form-input-prefix, .form-dropdown .form-input .form-input-prefix, .form-textarea .form-input .form-input-prefix, .form-text .form-input .form-input-prefix {
  display: flex;
  align-items: center;
}
.form-checkbox .form-input .form-input-prefix i.icon, .form-radio .form-input .form-input-prefix i.icon, .form-birthdate .form-input .form-input-prefix i.icon, .form-select .form-input .form-input-prefix i.icon, .form-accordeon .form-input .form-input-prefix i.icon, .form-autocomplete .form-input .form-input-prefix i.icon, .form-dropdown .form-input .form-input-prefix i.icon, .form-textarea .form-input .form-input-prefix i.icon, .form-text .form-input .form-input-prefix i.icon, .form-checkbox .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, .form-radio .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, .form-birthdate .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, .form-select .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, .form-accordeon .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, .form-autocomplete .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, .form-dropdown .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, .form-textarea .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, .form-text .form-input .form-input-prefix form input[type=checkbox]:checked ~ i, form .form-checkbox .form-input .form-input-prefix input[type=checkbox]:checked ~ i, form .form-radio .form-input .form-input-prefix input[type=checkbox]:checked ~ i, form .form-birthdate .form-input .form-input-prefix input[type=checkbox]:checked ~ i, form .form-select .form-input .form-input-prefix input[type=checkbox]:checked ~ i, form .form-accordeon .form-input .form-input-prefix input[type=checkbox]:checked ~ i, form .form-autocomplete .form-input .form-input-prefix input[type=checkbox]:checked ~ i, form .form-dropdown .form-input .form-input-prefix input[type=checkbox]:checked ~ i, form .form-textarea .form-input .form-input-prefix input[type=checkbox]:checked ~ i, form .form-text .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
.form-checkbox .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
.form-radio .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
.form-birthdate .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
.form-select .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
.form-accordeon .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
.form-autocomplete .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
.form-dropdown .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
.form-textarea .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
.form-text .form-input .form-input-prefix [class*=form-] input[type=checkbox]:checked ~ i,
[class*=form-] .form-checkbox .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
[class*=form-] .form-radio .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
[class*=form-] .form-birthdate .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
[class*=form-] .form-select .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
[class*=form-] .form-accordeon .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
[class*=form-] .form-autocomplete .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
[class*=form-] .form-dropdown .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
[class*=form-] .form-textarea .form-input .form-input-prefix input[type=checkbox]:checked ~ i,
[class*=form-] .form-text .form-input .form-input-prefix input[type=checkbox]:checked ~ i {
  line-height: 0px;
}
.form-checkbox .form-input .form-input-suffix, .form-radio .form-input .form-input-suffix, .form-birthdate .form-input .form-input-suffix, .form-select .form-input .form-input-suffix, .form-accordeon .form-input .form-input-suffix, .form-autocomplete .form-input .form-input-suffix, .form-dropdown .form-input .form-input-suffix, .form-textarea .form-input .form-input-suffix, .form-text .form-input .form-input-suffix {
  display: flex;
  align-items: center;
  padding-left: 0.5em;
}
.form-checkbox .form-input .form-input-suffix i.icon, .form-radio .form-input .form-input-suffix i.icon, .form-birthdate .form-input .form-input-suffix i.icon, .form-select .form-input .form-input-suffix i.icon, .form-accordeon .form-input .form-input-suffix i.icon, .form-autocomplete .form-input .form-input-suffix i.icon, .form-dropdown .form-input .form-input-suffix i.icon, .form-textarea .form-input .form-input-suffix i.icon, .form-text .form-input .form-input-suffix i.icon, .form-checkbox .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, .form-radio .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, .form-birthdate .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, .form-select .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, .form-accordeon .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, .form-autocomplete .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, .form-dropdown .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, .form-textarea .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, .form-text .form-input .form-input-suffix form input[type=checkbox]:checked ~ i, form .form-checkbox .form-input .form-input-suffix input[type=checkbox]:checked ~ i, form .form-radio .form-input .form-input-suffix input[type=checkbox]:checked ~ i, form .form-birthdate .form-input .form-input-suffix input[type=checkbox]:checked ~ i, form .form-select .form-input .form-input-suffix input[type=checkbox]:checked ~ i, form .form-accordeon .form-input .form-input-suffix input[type=checkbox]:checked ~ i, form .form-autocomplete .form-input .form-input-suffix input[type=checkbox]:checked ~ i, form .form-dropdown .form-input .form-input-suffix input[type=checkbox]:checked ~ i, form .form-textarea .form-input .form-input-suffix input[type=checkbox]:checked ~ i, form .form-text .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
.form-checkbox .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
.form-radio .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
.form-birthdate .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
.form-select .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
.form-accordeon .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
.form-autocomplete .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
.form-dropdown .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
.form-textarea .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
.form-text .form-input .form-input-suffix [class*=form-] input[type=checkbox]:checked ~ i,
[class*=form-] .form-checkbox .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
[class*=form-] .form-radio .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
[class*=form-] .form-birthdate .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
[class*=form-] .form-select .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
[class*=form-] .form-accordeon .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
[class*=form-] .form-autocomplete .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
[class*=form-] .form-dropdown .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
[class*=form-] .form-textarea .form-input .form-input-suffix input[type=checkbox]:checked ~ i,
[class*=form-] .form-text .form-input .form-input-suffix input[type=checkbox]:checked ~ i {
  line-height: 0px;
}
.form-checkbox .form-input .form-input-wrapper, .form-radio .form-input .form-input-wrapper, .form-birthdate .form-input .form-input-wrapper, .form-select .form-input .form-input-wrapper, .form-accordeon .form-input .form-input-wrapper, .form-autocomplete .form-input .form-input-wrapper, .form-dropdown .form-input .form-input-wrapper, .form-textarea .form-input .form-input-wrapper, .form-text .form-input .form-input-wrapper {
  flex: 1;
  position: relative;
  white-space: nowrap;
}
.form-checkbox, .form-radio, .form-birthdate, .form-select, .form-accordeon, .form-autocomplete, .form-dropdown, .form-textarea, .form-text {
  position: relative;
  line-height: 48px;
  color: rgba(var(--color-black));
}
@media only screen and (max-width: 768px) {
  .form-checkbox, .form-radio, .form-birthdate, .form-select, .form-accordeon, .form-autocomplete, .form-dropdown, .form-textarea, .form-text {
    width: 100%;
  }
}
.form-fields .form-checkbox, .form-fields .form-radio, .form-fields .form-birthdate, .form-fields .form-select, .form-fields .form-accordeon, .form-fields .form-autocomplete, .form-fields .form-dropdown, .form-fields .form-textarea, .form-fields .form-text {
  margin-bottom: 0 !important;
}
.form-no-label.form-checkbox .form-label, .form-no-label.form-radio .form-label, .form-no-label.form-birthdate .form-label, .form-no-label.form-select .form-label, .form-no-label.form-accordeon .form-label, .form-no-label.form-autocomplete .form-label, .form-no-label.form-dropdown .form-label, .form-no-label.form-textarea .form-label, .form-no-label.form-text .form-label {
  display: none;
}
.form-inline.form-checkbox, .form-inline.form-radio, .form-inline.form-birthdate, .form-inline.form-select, .form-inline.form-accordeon, .form-inline.form-autocomplete, .form-inline.form-dropdown, .form-inline.form-textarea, .form-inline.form-text {
  display: flex;
}
.form-inline.form-checkbox .form-input, .form-inline.form-radio .form-input, .form-inline.form-birthdate .form-input, .form-inline.form-select .form-input, .form-inline.form-accordeon .form-input, .form-inline.form-autocomplete .form-input, .form-inline.form-dropdown .form-input, .form-inline.form-textarea .form-input, .form-inline.form-text .form-input {
  flex: 1;
  border: 1px solid #111;
}
.form-inline.form-checkbox .form-input .form-input-item, .form-inline.form-radio .form-input .form-input-item, .form-inline.form-birthdate .form-input .form-input-item, .form-inline.form-select .form-input .form-input-item, .form-inline.form-accordeon .form-input .form-input-item, .form-inline.form-autocomplete .form-input .form-input-item, .form-inline.form-dropdown .form-input .form-input-item, .form-inline.form-textarea .form-input .form-input-item, .form-inline.form-text .form-input .form-input-item {
  padding-left: 1em;
}
.form-inline.form-checkbox .form-label, .form-inline.form-radio .form-label, .form-inline.form-birthdate .form-label, .form-inline.form-select .form-label, .form-inline.form-accordeon .form-label, .form-inline.form-autocomplete .form-label, .form-inline.form-dropdown .form-label, .form-inline.form-textarea .form-label, .form-inline.form-text .form-label {
  line-height: inherit;
  margin: 0;
  padding: 0 1em;
  font-weight: var(--fw-regular);
  border: 1px solid #111;
  border-right: none;
  background: rgb(var(--color-white));
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.form-inline.form-checkbox .form-label ~ div, .form-inline.form-radio .form-label ~ div, .form-inline.form-birthdate .form-label ~ div, .form-inline.form-select .form-label ~ div, .form-inline.form-accordeon .form-label ~ div, .form-inline.form-autocomplete .form-label ~ div, .form-inline.form-dropdown .form-label ~ div, .form-inline.form-textarea .form-label ~ div, .form-inline.form-text .form-label ~ div {
  border-left: 0px;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.form-required.form-checkbox .form-label:after, .form-required.form-radio .form-label:after, .form-required.form-birthdate .form-label:after, .form-required.form-select .form-label:after, .form-required.form-accordeon .form-label:after, .form-required.form-autocomplete .form-label:after, .form-required.form-dropdown .form-label:after, .form-required.form-textarea .form-label:after, .form-required.form-text .form-label:after {
  content: "*";
  display: inline-block;
  margin-left: 0.1em;
}
.form-error.form-checkbox .form-label, .form-error.form-radio .form-label, .form-error.form-birthdate .form-label, .form-error.form-select .form-label, .form-error.form-accordeon .form-label, .form-error.form-autocomplete .form-label, .form-error.form-dropdown .form-label, .form-error.form-textarea .form-label, .form-error.form-text .form-label {
  color: rgb(var(--color-danger)) !important;
}
.form-error.form-checkbox .form-input .form-input-wrapper, .form-error.form-radio .form-input .form-input-wrapper, .form-error.form-birthdate .form-input .form-input-wrapper, .form-error.form-select .form-input .form-input-wrapper, .form-error.form-accordeon .form-input .form-input-wrapper, .form-error.form-autocomplete .form-input .form-input-wrapper, .form-error.form-dropdown .form-input .form-input-wrapper, .form-error.form-textarea .form-input .form-input-wrapper, .form-error.form-text .form-input .form-input-wrapper {
  border-color: rgb(var(--color-danger)) !important;
}
.form-checkbox .count, .form-radio .count, .form-birthdate .count, .form-select .count, .form-accordeon .count, .form-autocomplete .count, .form-dropdown .count, .form-textarea .count, .form-text .count {
  position: relative;
  display: inline-block;
  color: white;
  text-align: center;
  margin-left: 10px;
  margin-left: 0.625rem;
  font-weight: var(--fw-medium);
  font-size: 0.9em;
}
.form-checkbox .count i, .form-radio .count i, .form-birthdate .count i, .form-select .count i, .form-accordeon .count i, .form-autocomplete .count i, .form-dropdown .count i, .form-textarea .count i, .form-text .count i {
  font-style: normal;
  position: relative;
  z-index: 1;
}
.form-checkbox .count:before, .form-radio .count:before, .form-birthdate .count:before, .form-select .count:before, .form-accordeon .count:before, .form-autocomplete .count:before, .form-dropdown .count:before, .form-textarea .count:before, .form-text .count:before {
  content: "";
  top: 50%;
  left: 50%;
  position: absolute;
  z-index: 0;
  background: black;
  min-width: 24px;
  min-width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  border-radius: 50%;
  transform: translateY(-50%) translateX(-50%);
}
.form-checkbox input, .form-radio input, .form-birthdate input, .form-select input, .form-accordeon input, .form-autocomplete input, .form-dropdown input, .form-textarea input, .form-text input,
.form-checkbox textarea,
.form-radio textarea,
.form-birthdate textarea,
.form-select textarea,
.form-accordeon textarea,
.form-autocomplete textarea,
.form-dropdown textarea,
.form-textarea textarea,
.form-text textarea,
.form-checkbox select,
.form-radio select,
.form-birthdate select,
.form-select select,
.form-accordeon select,
.form-autocomplete select,
.form-dropdown select,
.form-textarea select,
.form-text select {
  font-size: 18px;
  outline: none;
  width: 100%;
  border: none;
  background: none;
  transition: all 0.3s ease-in;
  padding: 0 0.5em;
  display: block;
}
.form-checkbox input:-webkit-autofill, .form-radio input:-webkit-autofill, .form-birthdate input:-webkit-autofill, .form-select input:-webkit-autofill, .form-accordeon input:-webkit-autofill, .form-autocomplete input:-webkit-autofill, .form-dropdown input:-webkit-autofill, .form-textarea input:-webkit-autofill, .form-text input:-webkit-autofill,
.form-checkbox textarea:-webkit-autofill,
.form-radio textarea:-webkit-autofill,
.form-birthdate textarea:-webkit-autofill,
.form-select textarea:-webkit-autofill,
.form-accordeon textarea:-webkit-autofill,
.form-autocomplete textarea:-webkit-autofill,
.form-dropdown textarea:-webkit-autofill,
.form-textarea textarea:-webkit-autofill,
.form-text textarea:-webkit-autofill,
.form-checkbox select:-webkit-autofill,
.form-radio select:-webkit-autofill,
.form-birthdate select:-webkit-autofill,
.form-select select:-webkit-autofill,
.form-accordeon select:-webkit-autofill,
.form-autocomplete select:-webkit-autofill,
.form-dropdown select:-webkit-autofill,
.form-textarea select:-webkit-autofill,
.form-text select:-webkit-autofill {
  -webkit-box-shadow: none !important;
  border: none;
}
.form-checkbox input:-webkit-autofill:hover, .form-radio input:-webkit-autofill:hover, .form-birthdate input:-webkit-autofill:hover, .form-select input:-webkit-autofill:hover, .form-accordeon input:-webkit-autofill:hover, .form-autocomplete input:-webkit-autofill:hover, .form-dropdown input:-webkit-autofill:hover, .form-textarea input:-webkit-autofill:hover, .form-text input:-webkit-autofill:hover,
.form-checkbox textarea:-webkit-autofill:hover,
.form-radio textarea:-webkit-autofill:hover,
.form-birthdate textarea:-webkit-autofill:hover,
.form-select textarea:-webkit-autofill:hover,
.form-accordeon textarea:-webkit-autofill:hover,
.form-autocomplete textarea:-webkit-autofill:hover,
.form-dropdown textarea:-webkit-autofill:hover,
.form-textarea textarea:-webkit-autofill:hover,
.form-text textarea:-webkit-autofill:hover,
.form-checkbox select:-webkit-autofill:hover,
.form-radio select:-webkit-autofill:hover,
.form-birthdate select:-webkit-autofill:hover,
.form-select select:-webkit-autofill:hover,
.form-accordeon select:-webkit-autofill:hover,
.form-autocomplete select:-webkit-autofill:hover,
.form-dropdown select:-webkit-autofill:hover,
.form-textarea select:-webkit-autofill:hover,
.form-text select:-webkit-autofill:hover {
  -webkit-box-shadow: none !important;
}
.form-checkbox input::placeholder, .form-radio input::placeholder, .form-birthdate input::placeholder, .form-select input::placeholder, .form-accordeon input::placeholder, .form-autocomplete input::placeholder, .form-dropdown input::placeholder, .form-textarea input::placeholder, .form-text input::placeholder,
.form-checkbox textarea::placeholder,
.form-radio textarea::placeholder,
.form-birthdate textarea::placeholder,
.form-select textarea::placeholder,
.form-accordeon textarea::placeholder,
.form-autocomplete textarea::placeholder,
.form-dropdown textarea::placeholder,
.form-textarea textarea::placeholder,
.form-text textarea::placeholder,
.form-checkbox select::placeholder,
.form-radio select::placeholder,
.form-birthdate select::placeholder,
.form-select select::placeholder,
.form-accordeon select::placeholder,
.form-autocomplete select::placeholder,
.form-dropdown select::placeholder,
.form-textarea select::placeholder,
.form-text select::placeholder {
  opacity: 0.6;
  font-weight: var(--fw-regular) !important;
  color: rgba(var(--color-unisante-grey), 1);
}
.form-error .form-checkbox input::placeholder, .form-error .form-radio input::placeholder, .form-error .form-birthdate input::placeholder, .form-error .form-select input::placeholder, .form-error .form-accordeon input::placeholder, .form-error .form-autocomplete input::placeholder, .form-error .form-dropdown input::placeholder, .form-error .form-textarea input::placeholder, .form-error .form-text input::placeholder,
.form-error .form-checkbox textarea::placeholder,
.form-error .form-radio textarea::placeholder,
.form-error .form-birthdate textarea::placeholder,
.form-error .form-select textarea::placeholder,
.form-error .form-accordeon textarea::placeholder,
.form-error .form-autocomplete textarea::placeholder,
.form-error .form-dropdown textarea::placeholder,
.form-error .form-textarea textarea::placeholder,
.form-error .form-text textarea::placeholder,
.form-error .form-checkbox select::placeholder,
.form-error .form-radio select::placeholder,
.form-error .form-birthdate select::placeholder,
.form-error .form-select select::placeholder,
.form-error .form-accordeon select::placeholder,
.form-error .form-autocomplete select::placeholder,
.form-error .form-dropdown select::placeholder,
.form-error .form-textarea select::placeholder,
.form-error .form-text select::placeholder {
  color: rgb(var(--color-danger)) !important;
}
.form-checkbox input:focus, .form-radio input:focus, .form-birthdate input:focus, .form-select input:focus, .form-accordeon input:focus, .form-autocomplete input:focus, .form-dropdown input:focus, .form-textarea input:focus, .form-text input:focus,
.form-checkbox textarea:focus,
.form-radio textarea:focus,
.form-birthdate textarea:focus,
.form-select textarea:focus,
.form-accordeon textarea:focus,
.form-autocomplete textarea:focus,
.form-dropdown textarea:focus,
.form-textarea textarea:focus,
.form-text textarea:focus,
.form-checkbox select:focus,
.form-radio select:focus,
.form-birthdate select:focus,
.form-select select:focus,
.form-accordeon select:focus,
.form-autocomplete select:focus,
.form-dropdown select:focus,
.form-textarea select:focus,
.form-text select:focus {
  border-bottom-color: rgb(var(--color-secondary));
}
.form-checkbox input, .form-radio input, .form-birthdate input, .form-select input, .form-accordeon input, .form-autocomplete input, .form-dropdown input, .form-textarea input, .form-text input,
.form-checkbox select,
.form-radio select,
.form-birthdate select,
.form-select select,
.form-accordeon select,
.form-autocomplete select,
.form-dropdown select,
.form-textarea select,
.form-text select {
  line-height: inherit;
}
.form-checkbox select, .form-radio select, .form-birthdate select, .form-select select, .form-accordeon select, .form-autocomplete select, .form-dropdown select, .form-textarea select, .form-text select {
  -webkit-appearance: none;
  appearance: none;
}
.form-checkbox textarea, .form-radio textarea, .form-birthdate textarea, .form-select textarea, .form-accordeon textarea, .form-autocomplete textarea, .form-dropdown textarea, .form-textarea textarea, .form-text textarea {
  padding: 0.5em;
}

form input[type=checkbox],
form input[type=radio],
[class*=form-] input[type=checkbox],
[class*=form-] input[type=radio] {
  opacity: 0;
  position: absolute;
  max-width: 1px;
  max-height: 1px;
}
form input[type=checkbox] ~ *,
form input[type=radio] ~ *,
[class*=form-] input[type=checkbox] ~ *,
[class*=form-] input[type=radio] ~ * {
  position: relative;
  padding-left: 32px;
}
form input[type=checkbox] ~ *:before,
form input[type=radio] ~ *:before,
[class*=form-] input[type=checkbox] ~ *:before,
[class*=form-] input[type=radio] ~ *:before {
  content: "";
  background: #fff;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1) inset;
  border: 1px solid #000;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
}
form input[type=checkbox]:checked ~ *:after,
form input[type=radio]:checked ~ *:after,
[class*=form-] input[type=checkbox]:checked ~ *:after,
[class*=form-] input[type=radio]:checked ~ *:after {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  position: absolute;
  margin-top: 6px;
  left: 6px;
  background: #000;
}

form input[type=checkbox] ~ *:before,
[class*=form-] input[type=checkbox] ~ *:before {
  border-radius: 4px;
}
form input[type=checkbox]:checked ~ *:before,
[class*=form-] input[type=checkbox]:checked ~ *:before {
  color: #fff;
  background: #000;
  font-size: 18px;
  line-height: 14px;
  text-align: center;
  border: 1px solid #fff;
}
form input[type=checkbox]:checked ~ *:after,
[class*=form-] input[type=checkbox]:checked ~ *:after {
  display: none;
}

.form {
  outline: none;
  background: rgba(var(--color-black), 0.075);
  border-radius: 10px;
  padding: var(--gutter);
}

.form-fields {
  display: flex;
  gap: calc(var(--gutter) / 2) 0;
  margin-bottom: calc(var(--gutter) / 2);
  flex-wrap: wrap;
  justify-content: space-between;
}

.swiper-slide {
  height: initial;
}

.media-banner .swiper-scrollbar {
  bottom: calc(var(--gutter) / 2);
}

.media-banner {
  width: 100%;
  position: relative;
  z-index: 0;
}
.media-banner .swiper-wrapper {
  min-height: calc(var(--app-height) - var(--nav-height));
}

.background-media, .full-background > * {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  object-fit: cover;
}
.background-media > *, .full-background > * > * {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

.background-blur .background-media.media-video, .background-blur .background-media.media-image > *, .full-background.background-blur .media-video,
.full-background.background-blur .media-image > * {
  filter: blur(20px);
  width: calc(100% + 20px * 6);
  height: calc(100% + 20px * 6);
  transform: translate(calc(20px * -3), calc(20px * -3));
}

.media-banner-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: var(--gutter-w);
  padding-bottom: calc(var(--gutter) * 2);
  overflow: hidden;
  gap: var(--gutter);
}
@media only screen and (max-width: 768px) {
  .media-banner-slide {
    flex-direction: column;
  }
}
@media only screen and (min-width: 992px) {
  .media-banner-slide {
    padding-bottom: var(--gutter-w);
  }
}

.media-banner-visual {
  max-width: 100%;
}
.media-banner-visual img,
.media-banner-visual video {
  width: 100%;
}

.navigation-lang .label-text {
  display: none;
}
.navigation-lang .label-image {
  display: block;
}
.navigation-lang img {
  width: 20px !important;
  max-width: 20px !important;
}

.navigation .navigation-wrapper-top > .wrapper nav > ul > li.active > *:nth-child(1),
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li.active > *:nth-child(1) {
  font-weight: var(--fw-bold);
}
.navigation .navigation-wrapper-top > .wrapper nav > ul > li.active > *:nth-child(1):before,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li.active > *:nth-child(1):before {
  content: "";
  background: rgba(var(--color-main));
  position: absolute;
  height: 4px;
  bottom: 0;
  left: 0;
  width: 100%;
}

[for=navigation-open], .navigation-custom > * a, .navigation-dropdown > ul > li > *:nth-child(1), .navigation-dropdown > a, .navigation .navigation-wrapper-top > .wrapper nav > a,
.navigation .navigation-wrapper-top > .wrapper nav > ul > li > *:nth-child(1),
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > a,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li > *:nth-child(1) {
  transition: all 150ms ease-in-out;
  text-align: center;
  min-height: 100%;
  padding: 0 1em;
  white-space: nowrap;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--font-content);
  font-weight: var(--fw-regular);
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-size: 14px;
}
.navigation-wrapper-top [for=navigation-open], .navigation-wrapper-top .navigation-custom > * a, .navigation-custom > * .navigation-wrapper-top a, .navigation-wrapper-top .navigation-dropdown > ul > li > *:nth-child(1), .navigation-wrapper-top .navigation-dropdown > a, .navigation .navigation-wrapper-top > .wrapper nav > a,
.navigation .navigation-wrapper-top > .wrapper nav > ul > li > *:nth-child(1),
.navigation-wrapper-top .navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > a,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container .navigation-wrapper-top nav > a,
.navigation-wrapper-top .navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li > *:nth-child(1),
.navigation .navigation-wrapper-main > .wrapper > .navigation-container .navigation-wrapper-top nav > ul > li > *:nth-child(1) {
  text-transform: uppercase;
  font-size: 12px;
  color: #333;
}
[for=navigation-open]:hover, .navigation-custom > * a:hover, .navigation-dropdown > ul > li > :hover:nth-child(1), .navigation-dropdown > a:hover, .navigation .navigation-wrapper-top > .wrapper nav > a:hover,
.navigation .navigation-wrapper-top > .wrapper nav > ul > li > :hover:nth-child(1),
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > a:hover,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li > :hover:nth-child(1) {
  background: rgba(var(--color-main), 0.1);
}
[for=navigation-open] svg, .navigation-custom > * a svg, .navigation-dropdown > ul > li > *:nth-child(1) svg, .navigation-dropdown > a svg, .navigation .navigation-wrapper-top > .wrapper nav > a svg,
.navigation .navigation-wrapper-top > .wrapper nav > ul > li > *:nth-child(1) svg,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > a svg,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li > *:nth-child(1) svg, [for=navigation-open] img, .navigation-custom > * a img, .navigation-dropdown > ul > li > *:nth-child(1) img, .navigation-dropdown > a img, .navigation .navigation-wrapper-top > .wrapper nav > a img,
.navigation .navigation-wrapper-top > .wrapper nav > ul > li > *:nth-child(1) img,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > a img,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li > *:nth-child(1) img {
  width: 30px;
  max-width: 30px;
  height: auto;
  display: block;
}
[for=navigation-open] span ~ i, .navigation-custom > * a span ~ i, .navigation-dropdown > ul > li > *:nth-child(1) span ~ i, .navigation-dropdown > a span ~ i, .navigation .navigation-wrapper-top > .wrapper nav > a span ~ i,
.navigation .navigation-wrapper-top > .wrapper nav > ul > li > *:nth-child(1) span ~ i,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > a span ~ i,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li > *:nth-child(1) span ~ i {
  margin-left: 0.5em;
}
[for=navigation-open] i, .navigation-custom > * a i, .navigation-dropdown > ul > li > *:nth-child(1) i, .navigation-dropdown > a i, .navigation .navigation-wrapper-top > .wrapper nav > a i,
.navigation .navigation-wrapper-top > .wrapper nav > ul > li > *:nth-child(1) i,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > a i,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li > *:nth-child(1) i {
  min-width: 1em;
  font-size: 1em;
}
[for=navigation-open] i ~ span, .navigation-custom > * a i ~ span, .navigation-dropdown > ul > li > *:nth-child(1) i ~ span, .navigation-dropdown > a i ~ span, .navigation .navigation-wrapper-top > .wrapper nav > a i ~ span,
.navigation .navigation-wrapper-top > .wrapper nav > ul > li > *:nth-child(1) i ~ span,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > a i ~ span,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li > *:nth-child(1) i ~ span {
  margin-left: 0.5em;
}

#navigation-wrapper {
  height: var(--nav-height);
}

.navigation {
  background: rgb(255, 255, 255);
  color: rgba(var(--color-black), 1);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 9000;
  transition: background 250ms ease-in-out;
}
.navigation .navigation-wrapper-top > .wrapper nav > ul,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul {
  display: flex;
  align-items: stretch;
  height: 100%;
}
.navigation .navigation-wrapper-top > .wrapper nav > ul > li,
.navigation .navigation-wrapper-main > .wrapper > .navigation-container nav > ul > li {
  position: relative;
}
.navigation .navigation-wrapper {
  min-width: max-content;
  min-height: var(--navigation-height);
  transition: all 100ms ease-in-out;
  display: flex;
  flex-direction: column;
}
.navigation .navigation-wrapper .wrapper {
  position: relative;
  white-space: nowrap;
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  width: 100%;
  transition: min-height 100ms ease-in-out;
  min-height: 100%;
}
.navigation-minified .navigation {
  transform: none !important;
}
.navigation.navigation-fixed {
  position: fixed;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}
.navigation-minified .navigation {
  position: fixed;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  --navigation-height: 70px;
}
.navigation-minified .navigation .navigation-wrapper-top {
  display: none;
}
.navigation .navigation-wrapper-top {
  height: 40px;
  background: #f7f7f7;
}
.navigation .navigation-wrapper-top .wrapper {
  justify-content: flex-end;
}
.navigation .navigation-wrapper-top .navigation-secondary {
  grid-area: navigation-secondary;
  margin-left: auto;
  transition: all 100ms ease-in-out;
  background: #f7f7f7;
}
.navigation .navigation-wrapper-main {
  flex: 1;
  display: flex;
}
.navigation .navigation-logo {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  min-height: 100%;
  z-index: 100;
}
.navigation .navigation-logo a {
  display: flex;
}
.navigation .navigation-logo h1, .navigation .navigation-logo strong {
  position: absolute;
  left: 100%;
  top: 100%;
}
.navigation .navigation-logo img {
  height: calc(var(--navigation-height) * 0.8);
  max-height: 30px;
  width: auto;
  display: block;
  margin: auto 0;
  transition: height 100ms ease-in-out;
}
.navigation .navigation-top {
  width: 100%;
  background: #f7f7f7;
}
.navigation .navigation-container {
  flex: 1;
  min-height: 100%;
  display: flex;
  justify-content: flex-end;
  /*
   * MAIN
   */
  /*
   * LANG
   */
}
.navigation .navigation-container .navigation-socials {
  display: none;
}
.navigation .navigation-container .navigation-main {
  margin: 0 auto;
  grid-area: navigation-main;
}
.navigation-minified .navigation .navigation-container .navigation-main {
  display: none;
}
.navigation .navigation-container .navigation-lang {
  grid-area: navigation-languages;
  position: relative;
  display: flex;
  align-items: stretch;
  min-height: 100%;
}
.navigation-minified .navigation .navigation-container .navigation-lang {
  display: none;
}

.navigation-currencies {
  grid-area: navigation-languages;
  position: relative;
  display: flex;
  align-items: stretch;
  min-height: 100%;
}

.navigation-dropdown {
  position: relative;
  height: 100%;
  z-index: 200;
}
.navigation-dropdown .current-value {
  display: flex;
}
.navigation-dropdown .current-value ~ svg {
  margin-left: 0.5em;
  width: 14px;
}
.navigation-dropdown > ul {
  position: absolute;
  top: 100%;
  right: 0;
  display: flex;
  flex-direction: column;
  transition: all 0.25s ease-in-out;
  transition-delay: 0.25s;
  min-width: 100%;
  visibility: hidden;
  opacity: 0;
  z-index: 100;
  box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.2);
}
.navigation-dropdown > ul > li {
  background: rgb(255, 255, 255);
  border-bottom: 1px solid #ccc;
}
.navigation-dropdown > ul > li.active {
  display: none;
}
.navigation-dropdown > ul > li > *:nth-child(1) {
  min-height: 40px;
  justify-content: center !important;
}
.navigation-dropdown:hover > ul {
  visibility: visible;
  opacity: 1;
}

.navigation-custom {
  grid-area: navigation-custom;
  display: flex;
  align-items: stretch;
  z-index: 100;
}
.navigation-custom > * {
  position: relative;
  display: flex;
  align-items: stretch;
}
.navigation-custom .bubble {
  position: absolute;
  font-size: 13px;
  width: 2em;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: rgba(var(--color-main));
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  right: 0;
  top: 50%;
  transform: translateY(-100%);
  border: 2px solid #fff;
}
.navigation-custom .bubble svg {
  width: 80%;
}

.navigation-burger {
  display: none;
}

[for=navigation-open] {
  cursor: pointer;
  order: 10 !important;
  margin-left: 0;
  justify-content: center;
  align-items: center;
  display: none;
  position: relative;
  z-index: 100;
}
.navigation-minified [for=navigation-open] {
  display: flex;
}
.navigation-open [for=navigation-open], #navigation-open:checked ~ #page [for=navigation-open] {
  display: flex;
}
[for=navigation-open] span {
  display: block;
  position: relative;
  width: 26.6666666667px;
  height: 16px;
}
[for=navigation-open] i {
  background: rgba(var(--color-black), 1);
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  border-radius: 3px;
  transition: all 100ms ease-in-out;
}
[for=navigation-open] i:nth-child(1) {
  top: 0;
}
[for=navigation-open] i:nth-child(2) {
  top: 50%;
  margin-top: -1px;
}
[for=navigation-open] i:nth-child(3) {
  bottom: 0;
}
.navigation-open [for=navigation-open] i:nth-child(1), #navigation-open:checked ~ #page [for=navigation-open] i:nth-child(1) {
  top: calc(50% - 1px);
  transform: rotate(45deg);
}
.navigation-open [for=navigation-open] i:nth-child(2), #navigation-open:checked ~ #page [for=navigation-open] i:nth-child(2) {
  opacity: 0;
}
.navigation-open [for=navigation-open] i:nth-child(3), #navigation-open:checked ~ #page [for=navigation-open] i:nth-child(3) {
  bottom: calc(50% - 1px);
  transform: rotate(-45deg);
}

.navigation-main > ul > li:hover .navigation-bigmenu {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.25s ease-in-out;
}
.navigation-main > ul > li:hover .navigation-submenu {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.25s ease-in-out;
}

.navigation-minified .navigation-bigmenu-banner {
  display: none;
}
.navigation-bigmenu-banner > div {
  width: 15vw;
  height: 15vw;
  background: #eee;
}

.navigation-bigmenu {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  left: 0;
  right: 0;
  background: #fff;
  box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.1);
  transition: all 0.25s ease-in-out;
  transition-delay: 0.25s;
  z-index: 9999;
}
.navigation-bigmenu a {
  display: block;
  text-transform: none;
  font-size: 1em;
  line-height: 1.5em;
}
.navigation-bigmenu a:hover {
  color: rgba(var(--color-main), 1);
}
.navigation-bigmenu .level-2 {
  display: flex;
  justify-content: center;
}
.navigation-minified .navigation-bigmenu .level-2 {
  flex-direction: column;
}
.navigation-bigmenu .level-2 > li {
  padding: 0 var(--gutter);
}
.navigation-minified .navigation-bigmenu .level-2 > li {
  padding: 1em;
}
.navigation-bigmenu .level-2 > li > a {
  font-size: 1.2em;
  font-weight: var(--fw-bold);
  text-transform: none !important;
}
.navigation-bigmenu .level-2 > li > ul {
  margin-top: 0.5em;
}
.navigation-bigmenu .level-2 > li > ul > li {
  margin-bottom: 0.5em;
}
.navigation-bigmenu .level-2 > li > ul > li a {
  text-transform: none !important;
  font-weight: 300 !important;
}
.navigation-bigmenu > .wrapper {
  display: flex;
  padding: var(--gutter) 0;
}
.navigation-minified .navigation-bigmenu > .wrapper {
  flex-direction: column;
  padding: 0;
  width: 100%;
  max-width: 100%;
}
.navigation-bigmenu > .wrapper footer {
  width: 100%;
  text-align: right;
}

#navigation-open {
  display: none;
}
#navigation-open:checked ~ #page {
  height: var(--app-height);
  overflow: hidden;
}
.navigation-mobile {
  position: fixed;
  background: rgba(var(--navigation-mobile-background));
  top: 0;
  left: 0;
  width: 100vw;
  height: var(--app-height);
  visibility: hidden;
  z-index: 50;
  font-size: 20px;
  font-weight: var(--fw-bold);
  user-select: none;
  animation: none;
  transition: none;
  clip-path: circle(0% at 90% calc(var(--navigation-height) / 2));
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.navigation-mobile:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  pointer-events: none;
  background: rgba(var(--color-main));
}
.navigation-mobile a {
  overflow: hidden;
  position: relative;
}
.navigation-mobile .navigation-mobile-wrapper {
  position: relative;
  overflow: hidden;
  top: calc(var(--navigation-height) + 2vh);
  height: calc(var(--app-height) - var(--navigation-height) - 2vh);
  width: 100vw;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.navigation-mobile .navigation-mobile-wrapper-footer {
  position: relative;
  display: flex;
  min-height: 10vh;
  justify-content: center;
  align-items: center;
  padding: var(--gutter);
}
.navigation-mobile .navigation-mobile-wrapper-body {
  position: relative;
  flex: 1;
  /*
  &:before{
    content:"";
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--gutter);
    z-index: 50;
    pointer-events: none;
  }
   */
  /*
   * NAV
   */
}
.navigation-mobile .navigation-mobile-wrapper-body:after {
  content: "";
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: var(--gutter);
  z-index: 50;
  pointer-events: none;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  transition: all ease-in-out 250ms;
  background: rgba(var(--navigation-mobile-background));
  height: var(--nav-mobile-height);
  align-items: center;
  z-index: 10;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(var(--navigation-mobile-background), 0.8);
  opacity: 0;
  transition: all ease-in-out 250ms;
  pointer-events: none;
  z-index: 1;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container.hide {
  overflow: hidden;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container ul {
  transition: all ease-in-out 250ms;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  max-height: var(--nav-mobile-height);
  height: var(--nav-mobile-height);
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container ul li {
  margin: 0 auto !important;
  border-top: 1px solid #eee;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container ul li:last-child {
  border-bottom: 1px solid #eee;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container ul li > *:nth-child(1) {
  height: 3em;
  display: flex;
  align-items: center;
  white-space: initial;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container ul li > .container {
  transform: translateX(100%);
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container ul li > .container.active {
  transform: translateX(0px);
  z-index: 10;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container .has-child > *:nth-child(1) i {
  margin-left: auto;
  width: 1em;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container .back {
  position: sticky;
  top: 0;
  background: rgba(var(--navigation-mobile-background));
  margin-bottom: 1em;
  border-top: 0;
  color: rgba(var(--color-main));
  z-index: 1;
  text-transform: uppercase;
  font-weight: var(--fw-bold);
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container .back i {
  margin-right: 0.5em;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container .back span {
  font-size: 0.8em;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container .title {
  margin-bottom: 0.5em;
  border-top: 0;
}
.navigation-mobile .navigation-mobile-wrapper-body nav .container .title > h6 {
  font-size: 1.2em;
}
.navigation-mobile .navigation-lang {
  margin-right: 0.5em;
}
.navigation-mobile .navigation-dropdown > a {
  min-height: 40px;
}
.navigation-mobile .navigation-dropdown > ul {
  top: inherit;
  bottom: 100%;
}
.navigation-mobile .navigation-socials ul {
  display: flex;
  gap: 0.5em;
}
.navigation-mobile .navigation-socials a {
  width: 1.5em;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  text-align: center;
  background: rgba(var(--color-main));
  color: rgba(var(--color-white));
}
.navigation-mobile .navigation-socials a svg {
  width: 0.8em;
}
.navigation-mobile .navigation-socials a svg path {
  fill: currentColor;
}
.navigation-mobile .navigation-socials a span {
  display: none;
}

#navigation-open:checked ~ #page .navigation-mobile {
  visibility: visible;
  animation: clip 1s forwards;
}
#navigation-open:checked ~ #page .navigation-mobile:before {
  animation: clip-fade 1s forwards;
}

@keyframes clip-fade {
  0% {
    opacity: 1;
  }
  100% {
    background: #fff;
    opacity: 0;
  }
}
@keyframes clip {
  100% {
    clip-path: circle(200% at 90% calc(var(--navigation-height) / 2));
  }
}
html, body {
  font-size: 100%;
  margin: 0;
  padding: 0;
  font-family: var(--font-content);
  font-weight: var(--fw-light);
  font-size: var(--rem-baseline);
  color: rgba(var(--color-unisante-black), 1);
}

body {
  overflow-y: overlay;
  scrollbar-gutter: stable;
  overflow-x: hidden;
}

h1, h2, h3, h3 {
  line-height: 1.2em;
}

p {
  line-height: 1.4em;
  margin-bottom: 1em;
}
p:last-child {
  margin-bottom: 0;
}

#content-body {
  position: relative;
  z-index: 10;
  margin-top: var(--app-navigation-height);
}
#content-body > .wrapper {
  width: 100%;
}

#page-breadcrumbs {
  display: none;
}

section > .wrapper, .main-header > .wrapper, #page-footer .footer-copyright > .wrapper, #page-footer > .wrapper, .page-notice > .wrapper, .navigation .navigation-wrapper .wrapper, .navigation-bigmenu > .wrapper, .navigation-mobile .navigation-mobile-wrapper-body nav .container ul li {
  width: var(--wrapper-width);
  max-width: var(--wrapper-max-width);
  margin-left: auto;
  margin-right: auto;
}

/*
 * FORMS
 */
.form-text .form-input .form-input-wrapper {
  display: flex;
  width: 100%;
}

.form-textarea {
  width: 100%;
}
.form-textarea textarea {
  min-height: 180px;
  resize: vertical;
}

.form-dropdown {
  cursor: pointer;
}
.form-dropdown .form-input {
  position: relative;
}
.form-dropdown .form-input:hover {
  background: rgba(0, 0, 0, 0.05);
}
.form-dropdown .form-input-wrapper {
  position: relative;
  padding-right: 1em;
  font-weight: var(--fw-regular);
  line-height: inherit;
}
.form-dropdown .form-input-wrapper svg {
  width: 20px;
  pointer-events: none;
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
}
.form-dropdown .form-input-selected-count i {
  font-style: normal;
  display: inline-block;
  border-radius: var(--border-radius);
  padding: 0 0.5em;
  background: rgba(var(--color-black), 1);
  color: rgba(var(--color-white), 1);
  line-height: 1.8em;
  font-size: 0.9em;
}
.form-dropdown .form-modal {
  visibility: hidden;
  opacity: 0;
  transition: opacity 259ms ease;
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.1);
  background: #fff;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 10000;
  color: #000;
}
.form-dropdown .form-modal .form-modal-footer {
  width: 100%;
  display: flex;
  gap: 0.25em;
  padding: 0.25em;
}
.form-dropdown .form-modal .form-modal-footer button {
  width: 100%;
}
.form-dropdown .form-modal .form-modal-body {
  max-height: 200px;
  overflow-y: scroll;
  overflow-x: hidden;
  padding: 0.5em;
  width: 100%;
}
.form-dropdown .form-modal .form-modal-body label {
  display: block;
  position: relative;
  white-space: nowrap;
  padding: 0.25em;
  opacity: 0.3;
}
.form-dropdown .form-modal .form-modal-body label.active {
  opacity: 1;
}
.form-dropdown .form-modal .form-modal-body label:hover {
  background: rgba(0, 0, 0, 0.05);
}
.form-dropdown .form-modal .form-modal-body label span {
  padding-left: calc(0.25em + 30px);
  position: relative;
  display: block;
}
.form-dropdown .form-modal .form-modal-body label input[type=checkbox] ~ *:before,
.form-dropdown .form-modal .form-modal-body label input[type=checkbox] ~ *:after {
  margin-top: 0.45em;
}
.form-dropdown.open .form-modal {
  visibility: visible;
  opacity: 1;
}

.form-autocomplete .form-input {
  display: flex;
  align-items: center;
}
.form-autocomplete .form-input-prefix {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
}
.form-autocomplete .form-input-wrapper {
  padding-bottom: 1px;
}
.form-autocomplete .form-input-wrapper .multiselect__tags {
  border: none;
  padding: 0;
  border-radius: 0px;
  background: none;
}
.form-autocomplete .form-input-wrapper .multiselect__tags > input {
  margin-bottom: 0;
  padding-left: 0.5em;
}
.form-autocomplete .form-input-wrapper .multiselect__placeholder {
  margin-bottom: 0;
  padding-top: 0;
  padding-left: 0.5em;
}
.form-autocomplete .form-input-wrapper .multiselect__single {
  min-height: 48px;
  margin: 0;
  padding: 0;
  display: inline-flex;
}
.form-autocomplete .form-input-wrapper li:has(.hide-parent) {
  display: none !important;
}
.form-autocomplete .form-input-wrapper .autocomplete-option {
  display: flex;
  align-items: center;
  padding: 0 0.5em;
}
.form-autocomplete .form-input-wrapper .autocomplete-option figure {
  margin-right: 0.5em;
}

.form-accordeon {
  cursor: pointer;
  flex-direction: column;
  width: 100%;
}
.form-accordeon .form-input {
  position: relative;
  flex-direction: column;
  border: 0;
}
.form-accordeon .form-input-wrapper {
  position: relative;
  font-weight: var(--fw-regular);
  line-height: inherit;
}
.form-accordeon .form-input-wrapper:before {
  content: "+";
  font-size: 14px;
  font-size: 0.875rem;
  pointer-events: none;
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  line-height: 0px;
}
.form-accordeon .form-input-selected-count i {
  font-style: normal;
  display: inline-block;
  border-radius: var(--border-radius);
  padding: 0 0.5em;
  background: rgba(var(--color-black), 1);
  color: rgba(var(--color-white), 1);
  line-height: 1.8em;
  font-size: 0.9em;
}
.form-accordeon.form-scrollable .form-modal .form-modal-body {
  max-height: 200px;
  overflow-y: scroll;
  overflow-x: hidden;
}
.form-accordeon .form-modal {
  display: none;
}
.form-accordeon .form-modal .form-modal-footer {
  display: flex;
  gap: 0.25em;
  padding: 0.25em;
}
.form-accordeon .form-modal .form-modal-footer button {
  width: 100%;
}
.form-accordeon .form-modal .form-modal-body {
  padding: 0 0;
  width: 100%;
}
.form-accordeon .form-modal .form-modal-body label {
  display: block;
  position: relative;
  white-space: nowrap;
  opacity: 0.3;
  padding: 0.25em;
}
.form-accordeon .form-modal .form-modal-body label input {
  width: 1px;
  height: 1px;
}
.form-accordeon .form-modal .form-modal-body label.active {
  opacity: 1;
}
.form-accordeon .form-modal .form-modal-body label:hover {
  background: rgba(0, 0, 0, 0.05);
}
.form-accordeon .form-modal .form-modal-body label span {
  position: relative;
  display: block;
  padding-left: calc(0.25em + 30px);
}
.form-accordeon .form-modal .form-modal-body label input[type=checkbox] ~ *:before,
.form-accordeon .form-modal .form-modal-body label input[type=checkbox] ~ *:after {
  margin-top: 0.45em;
}
.form-accordeon.open .form-input-wrapper:before {
  content: "-";
}
.form-accordeon.open .form-modal {
  display: block;
}

.form-select {
  width: 100%;
}
.form-select .form-input-wrapper select {
  padding-right: calc(1.5em + 14px);
  color: inherit;
}
.form-select .form-input-wrapper svg {
  width: 20px;
  pointer-events: none;
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
}

.form-birthdate .form-input {
  background: none !important;
}
.form-birthdate .form-input-wrapper {
  display: flex;
  justify-content: space-between;
  width: 100%;
  border: none !important;
  background: none !important;
}
.form-birthdate .form-input-wrapper label {
  position: relative;
  width: calc(33.33% - var(--gutter) / 2);
  position: relative;
}
.form-birthdate .form-input-wrapper label:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  height: 50%;
  width: 1px;
  background: rgba(var(--color-black), 0.3);
  transform: translateY(-50%);
}
.form-birthdate .form-input-wrapper label:last-of-type:after {
  display: none;
}
.form-birthdate .form-input-wrapper label select {
  padding-right: calc(1.5em + 14px);
}
.form-birthdate .form-input-wrapper label:before {
  font-size: 14px;
  font-size: 0.875rem;
  pointer-events: none;
  position: absolute;
  top: calc(50% + 2px);
  right: 0.75rem;
  transform: translateY(-50%);
}

.form-radio .form-input {
  border: 0px;
  background: none;
  box-shadow: none !important;
}
.form-radio .form-input-wrapper {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  border: 0px;
  background: none;
  box-shadow: none !important;
}
.form-radio .form-input-wrapper label {
  margin-right: 1.5em;
  display: flex;
  white-space: normal;
}
.form-radio .form-input-wrapper label input {
  opacity: 0;
  position: absolute;
}
.form-radio .form-input-wrapper input ~ span {
  position: relative;
  margin-left: 0.5em;
  font-weight: var(--fw-regular);
  line-height: 1.5em;
}
.form-radio .form-input-wrapper [type=radio]:checked ~ span {
  font-weight: var(--fw-extra-bold) !important;
}

.form-checkbox .form-input {
  border: 0px;
  background: none;
  box-shadow: none !important;
}
.form-checkbox .form-input-wrapper {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  border: 0px;
  background: none;
  box-shadow: none !important;
}
.form-checkbox .form-input-wrapper label {
  margin-right: 1.5em;
  margin-bottom: 0.5em;
  line-height: inherit;
  display: flex;
  white-space: normal;
}
.form-checkbox .form-input-wrapper label:last-of-type {
  margin-bottom: 0;
}
.form-checkbox .form-input-wrapper label input {
  opacity: 0;
  position: absolute;
}
.form-checkbox .form-input-wrapper input ~ span {
  position: relative;
  margin-left: 0.5em;
  font-weight: var(--fw-regular);
  line-height: 1.5em;
}
.form-checkbox .form-input-wrapper [type=radio]:checked ~ span {
  font-weight: var(--fw-extra-bold) !important;
}

.form-notice {
  margin-bottom: 1rem;
  padding: 1rem;
  background: rgba(var(--color-warning), 0.1);
}
.form-notice.form-error {
  background: rgba(var(--color-danger), 0.1);
}
.form-notice p {
  margin-bottom: 0;
}
.form-notice p > strong {
  display: block;
  font-size: 2em;
  margin-bottom: 0.25em;
  line-height: 1.2em;
  font-weight: var(--fw-extra-bold);
}

#page {
  max-width: 100vw;
  transition: 300ms transform ease-in-out;
}

#page-footer {
  position: relative;
}
#page-footer h6 {
  font-size: 18px;
  font-weight: var(--fw-medium);
  margin-bottom: 1.2em;
  color: rgba(var(--color-main), 1);
}
#page-footer > .wrapper {
  padding-top: var(--gutter-h);
  padding-bottom: var(--gutter-h);
  display: flex;
  flex-wrap: wrap;
}
#page-footer > .wrapper > * {
  flex: 1;
}
@media only screen and (max-width: 1200px) {
  #page-footer > .wrapper {
    align-items: center;
  }
  #page-footer > .wrapper > * {
    width: 50%;
    flex: inherit;
    padding: 0 !important;
    border: 0 !important;
    margin-bottom: calc(var(--gutter-h) * 2);
  }
}
@media only screen and (max-width: 768px) {
  #page-footer > .wrapper {
    align-items: center;
    text-align: center;
  }
  #page-footer > .wrapper > * {
    width: 100%;
  }
}
#page-footer .footer-contact {
  padding-right: var(--gutter);
}
#page-footer .footer-contact .footer-logo {
  display: block;
  margin-bottom: 2em;
}
#page-footer .footer-contact .footer-logo img {
  width: 100%;
  max-width: 200px;
}
#page-footer .footer-navigation {
  padding: var(--gutter);
  border-left: 1px solid rgba(var(--color-unisante-light));
  color: rgba(var(--color-unisante-dark-grey));
}
#page-footer .footer-navigation.footer-hidden {
  display: none;
}
#page-footer .footer-navigation .spacer {
  height: var(--gutter-w);
}
#page-footer .footer-navigation a {
  font-size: 14px;
  font-weight: var(--fw-medium);
  margin-bottom: 1.2em;
  display: block;
  line-height: 1.2em;
  color: inherit;
}
#page-footer .footer-socials {
  display: flex;
  gap: 0 0.5em;
}
#page-footer .footer-copyright {
  overflow: hidden;
  width: 100%;
}
#page-footer .footer-copyright > .wrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: var(--gutter);
}
#page-footer .footer-copyright spanx {
  padding: 1em;
  display: block;
  padding-right: 20px;
  white-space: nowrap;
  font-weight: var(--fw-light);
  font-size: 14px;
}
#page-footer .footer-copyright spanx a {
  text-decoration: underline;
}
#page-footer .footer-copyright spanx a:hover {
  color: rgba(var(--color-unisante-main), 1);
}
#page-footer .footer-copyright .navigation-unisante-logo {
  position: relative;
  width: 110px;
  order: 10;
  margin-left: auto;
}
#page-footer .footer-copyright .navigation-unisante-logo a {
  display: block;
}
#page-footer .footer-copyright .navigation-unisante-logo img {
  position: absolute;
  bottom: 100%;
  right: 0;
  width: 100%;
  height: auto;
  display: block;
}

.grecaptcha-badge {
  transform: translateX(100%);
}

.short-link-whatsapp-wrapper {
  position: fixed;
  bottom: calc((var(--gutter)));
  right: calc(var(--gutter));
  z-index: 8000;
}
.short-link-whatsapp-wrapper a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  position: relative;
  font-size: 13px;
}
.short-link-whatsapp-wrapper a .button {
  width: 60px;
  border-radius: 120px;
  aspect-ratio: 1;
  color: rgb(var(--color-white));
  background: rgb(var(--color-whatsapp));
  box-shadow: 0px 2px 15px 0px rgba(var(--color-black), 0.2);
  transition: all ease-in-out 250ms 250ms;
  border: none !important;
}
.short-link-whatsapp-wrapper a:hover .button {
  transform: scale(1.1);
  background: #000;
  transition: all ease-in-out 250ms 0ms;
}
.short-link-whatsapp-wrapper svg {
  width: 40px;
  margin: auto;
}
.short-link-whatsapp-wrapper svg path {
  fill: currentColor;
}
.short-link-whatsapp-wrapper .button-label {
  background: rgb(var(--color-black));
  color: rgb(var(--color-white));
  display: inline-flex;
  align-items: center;
  padding: 0 !important;
  white-space: nowrap;
  text-align: right;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: var(--fw-light);
  position: absolute;
  right: 0;
  min-width: 100%;
  z-index: -1;
  display: flex;
  align-items: center;
  max-width: 0;
  margin: 0;
  background: none;
  color: rgb(var(--color-white));
  overflow: hidden;
  border-radius: 100px;
  background: rgb(var(--color-whatsapp));
  border: 1px solid rgb(var(--color-whatsapp));
}
@media only screen and (min-width: 992px) {
  .short-link-whatsapp-wrapper .button-label {
    overflow: hidden;
    width: auto;
    max-width: 0px; /** I'm animating max-width because width needs to be auto, and auto can't be animated **/
    transition: max-width 1s;
  }
  .short-link-whatsapp-wrapper .button-label:hover {
    max-width: calc(0px * 2 + 300px);
  }
  .short-link-whatsapp-wrapper .button-label:hover span {
    opacity: 1;
    transition: all 250ms ease-in-out;
  }
}
.short-link-whatsapp-wrapper .button-label span {
  line-height: 54px;
  padding-right: 60px;
  display: block;
}
@media only screen and (min-width: 992px) {
  .short-link-whatsapp-wrapper .button-label span {
    opacity: 0;
    transition: all 250ms ease-in-out 0.25s;
  }
}
.short-link-whatsapp-wrapper .button-label:before {
  position: relative;
  right: 0;
}
@media only screen and (min-width: 992px) {
  .short-link-whatsapp-wrapper .button-label .bt-extend {
    position: absolute;
    justify-content: flex-end;
    padding-right: 15px;
  }
}
.short-link-whatsapp-wrapper .button-label > span {
  opacity: 1 !important;
  margin: 0;
  padding: 0 25px;
  padding-right: 72px;
}
@media only screen and (min-width: 992px) {
  .short-link-whatsapp-wrapper:hover .button-label {
    transition: all 250ms ease-in-out;
    max-width: 1000px;
  }
}

.address span {
  display: block;
}
.address .phone, .address .email {
  margin-top: 1.5em;
}
.address .phone a, .address .email a {
  position: relative;
  font-weight: var(--fw-medium);
  display: flex;
  align-items: center;
}
.address .phone svg, .address .email svg {
  width: 1em;
  margin-right: 0.5em;
  color: rgba(var(--color-main));
}

.social-icon {
  width: 46px;
  height: 46px;
  text-align: center;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(var(--color-main), 1);
}
.social-icon:hover {
  background: rgba(var(--color-main-dark), 1);
}
.social-icon svg {
  width: 26px;
}

:root {
  --color-white: 255, 255, 255;
  --color-whatsapp: 37, 211, 102;
  --color-main-light: 121, 181, 121;
  --color-main: 82, 157, 82;
  --color-main-dark: 152, 7, 0;
  --navigation-mobile-background: 82, 157, 82;
  --color-secondary: 0, 0, 0;
  --color-secondary-dark: 0, 0, 0;
  --color-third: 0, 0, 0;
  --color-third-dark: 0, 0, 0;
  --color-black: 0, 0, 0;
  --color-white: 255, 255, 255;
  --font-content: "futura-pt", sans-serif;
  --font-special: "futura-pt", cursive;
  --gutter-grid: 2em;
}

html {
  scroll-behavior: smooth;
}

body {
  font-size: 18px;
}

[name=result-error] {
  display: none;
  background: #e65077;
  color: #fff;
  text-align: center;
}
[name=result-error] svg {
  width: 60px;
  height: 60px;
  margin-bottom: 10px;
}
[name=result-error] h6 {
  font-size: 24px;
}

[name=result-success] {
  display: none;
  background: #8dc762;
  color: #000;
  text-align: center;
}
[name=result-success] svg {
  width: 60px;
  height: 60px;
  margin-bottom: 10px;
}
[name=result-success] h6 {
  font-size: 24px;
}

.navigation-mobile .navigation-mobile-wrapper-body nav .container:before,
.navigation-mobile .navigation-mobile-wrapper-body:after {
  display: none !important;
}

.navigation-mobile .navigation-mobile-wrapper-body nav .container ul,
.navigation-mobile .navigation-mobile-wrapper-body nav .container ul li > *:nth-child(1) {
  justify-content: center;
}

.navigation-mobile .navigation-mobile-wrapper-body nav .container ul li {
  border: 0 !important;
}

.navigation-mobile {
  font-size: 28px;
  color: #fff;
}

.navigation {
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(5px);
}
.navigation-minified .navigation {
  background: none;
  backdrop-filter: none;
  box-shadow: none;
}
.navigation [for=navigation-open] {
  margin-top: 12px;
  width: 56px;
  height: 56px;
  min-height: 56px;
  border-radius: 50%;
  background: #000;
}
.navigation [for=navigation-open] i {
  background: white;
}
.navigation .navigation-container .navigation-main {
  margin: 0;
  color: white;
}
.navigation .navigation-container .navigation-main a:before {
  display: none;
}
#navigation-wrapper {
  height: 0;
}

.main-header {
  background: #000;
  position: relative;
}
.main-header > .wrapper {
  min-height: 80vh;
  display: flex;
  align-items: center;
  justify-content: left;
}
.main-header > .wrapper:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
}
.main-header .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
}
.main-header .bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.main-header .button-secondary {
  filter: invert(1);
}
.main-header footer {
  order: 50;
  display: flex;
  gap: 1rem;
}
@media only screen and (max-width: 992px) {
  .main-header footer {
    flex-direction: column;
  }
}
.main-header .content {
  position: relative;
  z-index: 20;
  max-width: 50%;
  color: rgba(var(--color-white));
}
@media only screen and (max-width: 992px) {
  .main-header .content {
    max-width: 100%;
  }
}
.main-header .content h1 {
  font-size: clamp(40px, 10vw, 80px);
  margin-bottom: 0.5em;
}
.main-header .content p {
  font-size: clamp(20px, 10vw, 24px);
}

.content p strong {
  font-weight: var(--fw-bold);
}
.content ul {
  list-style: square;
}
.content ul li {
  margin-bottom: 1em;
  margin-left: 3em;
}

.subscribe-form {
  --color-black: 255, 255, 255;
  --color-white: 51, 51, 51;
  background: #333;
  color: #fff;
}
.subscribe-form .rgpd-form-consent-checkbox .form-input-wrapper label span {
  color: rgba(var(--color-black));
}
.subscribe-form .button-primary {
  color: #fff;
}
.subscribe-form .form-fields {
  gap: 1.5rem;
}
.subscribe-form form {
  padding: 2vw;
  margin: auto;
}
.subscribe-form form select option {
  color: #fff !important;
  background: #000000 !important;
}
.subscribe-form form [rel=email],
.subscribe-form form [rel=session] {
  width: 100%;
}
.subscribe-form form [rel=organisation_type],
.subscribe-form form [rel=organisation],
.subscribe-form form [rel=firstname],
.subscribe-form form [rel=lastname],
.subscribe-form form [rel=xemail] {
  width: calc(50% - 0.75rem);
}
@media only screen and (max-width: 992px) {
  .subscribe-form form [rel=organisation_type],
  .subscribe-form form [rel=organisation],
  .subscribe-form form [rel=firstname],
  .subscribe-form form [rel=lastname],
  .subscribe-form form [rel=xemail] {
    width: 100%;
  }
}
.subscribe-form .form-buttons {
  display: flex;
  justify-content: center;
}

section {
  overflow: hidden;
  position: relative;
  margin: 0 2vw;
}
section:first-of-type {
  margin-top: 2vw;
}
section > .wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 5vw;
  padding-top: 5vw;
  padding-bottom: 5vw;
}
section .section-header {
  text-align: center;
  font-size: 50px;
  width: 100%;
}
section .section-header h2 {
  font-size: clamp(18px, 10vw, 60px);
}
@media only screen and (max-width: 992px) {
  section {
    margin: 0 !important;
  }
  section > .wrapper {
    flex-direction: column;
    min-height: 1px !important;
  }
  section > .wrapper > * {
    width: 100% !important;
  }
  section .content {
    padding: 0 !important;
  }
  section footer {
    padding: 0 !important;
    justify-content: center !important;
    flex-direction: column !important;
  }
  section .section-header {
    text-align: center !important;
    padding: 0 !important;
  }
  section .image {
    flex: inherit !important;
    position: static !important;
    height: auto !important;
  }
}

.listing .program-listing {
  max-width: 1000px;
  margin: auto;
}
.listing .program-listing-item {
  padding: 2vw;
  display: flex;
  gap: 2vw;
  margin-bottom: 2vw;
}
@media only screen and (max-width: 992px) {
  .listing .program-listing-item {
    flex-direction: column;
    border-left: 2px solid #000;
    padding: 0 4vw;
    margin-bottom: 4vw;
  }
}
.listing .program-listing-item .date {
  font-size: clamp(22px, 5vw, 30px);
  white-space: nowrap;
  width: 250px;
}
.listing .program-listing-item > *:nth-child(2) {
  border-left: 4px solid #000;
  padding: 0 2vw;
  flex: 1;
}
@media only screen and (max-width: 992px) {
  .listing .program-listing-item > *:nth-child(2) {
    border: 0;
    padding: 0;
  }
}
.listing .program-listing-item h3 {
  font-size: clamp(26px, 5vw, 36px);
  margin-bottom: 0.5em;
}
.listing .program-listing-item date {
  font-weight: var(--fw-bold);
  color: orange;
}
.listing .speakers {
  display: grid;
  grid-gap: 1vw;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  margin-top: 4vw;
}
.listing .speakers > * {
  display: flex;
  align-items: center;
  gap: 20px;
}
.listing .speakers > * figure {
  width: 60px;
  height: 60px;
  overflow: hidden;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.1);
  border: 4px solid #fff;
}
.listing .speakers > * figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.listing .speakers > * h4 {
  font-size: 20px;
}
.block footer {
  width: 100%;
  order: 50;
  display: flex;
  gap: 1rem;
  justify-content: center;
}
.block .content {
  flex: 1;
  font-size: 18px;
  max-width: 800px;
  margin: 0 auto;
}
.block .image {
  flex: 1;
}
.block .image img {
  display: block;
  width: 100%;
}
.block:has(.image) .content {
  margin: 0;
}
.block.invert .content {
  order: 10;
}
.block.invert .image {
  order: 5;
}

.style_01 > .wrapper {
  flex-direction: column;
  min-height: 100vh;
  justify-content: center;
}
.style_01:has(.image) .content {
  margin: 0;
  margin-right: auto;
  padding-right: 5vw;
}
.style_01:has(.image) footer,
.style_01:has(.image) .section-header {
  margin-right: auto;
  padding-right: 5vw;
}
.style_01 footer {
  justify-content: left;
}
.style_01 footer,
.style_01 .section-header,
.style_01 .content {
  flex: inherit;
  width: 50%;
  text-align: left;
}
.style_01 .image {
  position: absolute;
  top: 0;
  left: 50%;
  width: 50vw;
  height: 100%;
}
.style_01 .image img {
  object-fit: cover;
  height: 100%;
}
.style_01.invert:has(.image) .content {
  margin: 0;
  margin-left: auto;
  padding: 0;
  padding-left: 5vw;
}
.style_01.invert:has(.image) footer,
.style_01.invert:has(.image) .section-header {
  margin: 0;
  margin-left: auto;
  padding: 0;
  padding-left: 5vw;
}
.style_01.invert .image {
  position: absolute;
  top: 0;
  left: inherit;
  right: 50%;
  width: 50vw;
  height: 100%;
}
.style_01.invert .image img {
  object-fit: cover;
  height: 100%;
}