/*
.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://fonts.googleapis.com/css2?family=Love+Ya+Like+A+Sister&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
@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, .page-concept #page-header > div: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, .page-concept #page-header > div: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-title: "Lato", sans-serif;
  --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;
  --background-image-max-width: 1800px;
  --page-max-width: 1600px;
  --page-width: 100%;
  --page-gutter-width: 100px;
  --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;
  }
}

.default-content > .wrapper, .range-products .range-products-item > .wrapper, .range-products > .wrapper, .range-products > header, .wbx-breadcrumb:not(.wbx-catalog-main-breadcrumb) > .wrapper, .page-header > .wrapper, .newsletter-subscribe > .wrapper, .page-template-default .page-header .wrapper,
.page-template-default .default-content .wrapper, .promotions > .wrapper, .associations-inscription > .wrapper, .associations-listing > .wrapper, .associations-introduction > .wrapper, .subscribe-module > .wrapper, .footer-payments > .wrapper, .header-food .header-food-wrapper, .shop-categories-listing .wrapper, .shop-selector .shop-selector-wrapper, .product-carousel .wrapper, .section-registration-form > .wrapper, .wbx-registration > header > .wrapper,
.wbx-checkout-main > header > .wrapper, .wbx-registration > .wrapper,
.wbx-checkout-main > .wrapper, .wbx-product-details > .wbx-product-details-wrapper, .wbx-product-main .wbx-product-header .wbx-product-header-wrapper, .wbx-product-main .wbx-product-related-brand > .wrapper, .wbx-notice, .modular-product-range > .wrapper, #page-footer .footer-copyright > .wrapper, #page-footer > .wrapper, .navigation-sublevel > .wrapper, .navigation-mobile .navigation-mobile-wrapper-body nav .container ul li, .navigation-bigmenu > .wrapper, .navigation .navigation-wrapper .wrapper, .blog-item > .wrapper,
.blog-main > .wrapper, .blog-related > .wrapper, .blog-related > header, .page-notice > .wrapper, .ranges-tags > .wrapper, .ranges-header > .wrapper, .ingredients > .wrapper, .contact-wrapper > .wrapper, .product-satisfaction > .wrapper, .banner-product > .wrapper, .modular-benefits > .wrapper, .modular-retailers > .wrapper, .modular-clinical > .wrapper, .modular-faq > .wrapper, .modular-section > .wrapper, .ranges-tags > header, .ranges-header > header, .ingredients > header, .contact-wrapper > header, .product-satisfaction > header, .banner-product > header, .modular-benefits > header, .modular-retailers > header, .modular-clinical > header, .modular-faq > header, .modular-section > header {
  width: var(--wrapper-width);
  max-width: var(--wrapper-max-width);
  margin-left: auto;
  margin-right: auto;
}

.range-products .range-products-item .content, .range-products .range-products-item .quality ul li, .quality ul .range-products .range-products-item li, .page-header > .wrapper .content, .page-header > .wrapper .quality ul li, .quality ul .page-header > .wrapper li, .product-satisfaction .content, .product-satisfaction .quality ul li, .quality ul .product-satisfaction li, .wbx-catalog-header .content, .wbx-catalog-header .quality ul li, .quality ul .wbx-catalog-header li, .banner-product .content, .banner-product .quality ul li, .quality ul .banner-product li, .section-registration-form > .wrapper, .modular-benefits .content, .modular-benefits .quality ul li, .quality ul .modular-benefits li, .modular-product-range > .wrapper .content, .modular-product-range > .wrapper .quality ul li, .quality ul .modular-product-range > .wrapper li, .modular-faq .wrapper .content, .modular-faq .wrapper .quality ul li, .quality ul .modular-faq .wrapper li {
  padding: var(--gutter-h) var(--gutter-w);
}
@media only screen and (max-width: 768px) {
  .range-products .range-products-item .content, .range-products .range-products-item .quality ul li, .quality ul .range-products .range-products-item li, .page-header > .wrapper .content, .page-header > .wrapper .quality ul li, .quality ul .page-header > .wrapper li, .product-satisfaction .content, .product-satisfaction .quality ul li, .quality ul .product-satisfaction li, .wbx-catalog-header .content, .wbx-catalog-header .quality ul li, .quality ul .wbx-catalog-header li, .banner-product .content, .banner-product .quality ul li, .quality ul .banner-product li, .section-registration-form > .wrapper, .modular-benefits .content, .modular-benefits .quality ul li, .quality ul .modular-benefits li, .modular-product-range > .wrapper .content, .modular-product-range > .wrapper .quality ul li, .quality ul .modular-product-range > .wrapper li, .modular-faq .wrapper .content, .modular-faq .wrapper .quality ul li, .quality ul .modular-faq .wrapper li {
    padding: 1em;
  }
}

.range-products > header h2, .blog-related > header h2, .page-header > .wrapper .content h1, .page-header > .wrapper .quality ul li h1, .quality ul .page-header > .wrapper li h1, .header-food h1, .shop-categories-listing .wrapper header h1, .shop-selector .shop-selector-wrapper header h2, .wbx-registration > header > .wrapper h1,
.wbx-checkout-main > header > .wrapper h1 {
  font-size: 48px;
  font-weight: var(--fw-medium);
  margin-bottom: 1rem;
  line-height: 1.2em;
  font-size: clamp(30px, 7vw, 48px);
}
.range-products > header h2 span, .blog-related > header h2 span, .page-header > .wrapper .content h1 span, .page-header > .wrapper .quality ul li h1 span, .quality ul .page-header > .wrapper li h1 span, .header-food h1 span, .shop-categories-listing .wrapper header h1 span, .shop-selector .shop-selector-wrapper header h2 span, .wbx-registration > header > .wrapper h1 span,
.wbx-checkout-main > header > .wrapper h1 span {
  display: block;
  opacity: 0.7;
  font-weight: var(--fw-light);
  font-size: 0.8em;
}

.associations-listing .wrapper > ul > li .content h3, .associations-listing .quality .wrapper > ul > li li h3, .quality .associations-listing .wrapper > ul > li li h3, .shop-categories-listing .content article h2, .shop-categories-listing .quality ul li article h2, .quality ul .shop-categories-listing li article h2, .shop-selector .shop-selector-item .content h3, .shop-selector .shop-selector-item .quality ul li h3, .quality ul .shop-selector .shop-selector-item li h3 {
  font-size: 36px;
  font-weight: var(--fw-medium);
  margin-bottom: 1rem;
  line-height: 1.2em;
  font-size: clamp(24px, 5vw, 36px);
}
.associations-listing .wrapper > ul > li .content h3 span, .associations-listing .quality .wrapper > ul > li li h3 span, .quality .associations-listing .wrapper > ul > li li h3 span, .shop-categories-listing .content article h2 span, .shop-categories-listing .quality ul li article h2 span, .quality ul .shop-categories-listing li article h2 span, .shop-selector .shop-selector-item .content h3 span, .shop-selector .shop-selector-item .quality ul li h3 span, .quality ul .shop-selector .shop-selector-item li h3 span {
  display: block;
  opacity: 0.7;
  font-weight: var(--fw-light);
  font-size: 0.8em;
}

.ranges-tags > .wrapper ul, .banner-product .tags, .modular-benefits .modular-benefits-links {
  display: inline-flex;
  flex-direction: column;
  gap: 0.5em;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
  margin-top: 2rem !important;
}
@media only screen and (max-width: 992px) {
  .ranges-tags > .wrapper ul, .banner-product .tags, .modular-benefits .modular-benefits-links {
    display: flex;
    text-align: center;
  }
}
.ranges-tags > .wrapper ul li, .banner-product .tags li, .modular-benefits .modular-benefits-links li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ranges-tags > .wrapper ul li > *, .banner-product .tags li > *, .modular-benefits .modular-benefits-links li > * {
  position: relative;
  display: inline-flex;
  line-height: 1em;
  padding: 0.5em 1em;
  background: rgba(var(--page-theme-color-main));
  font-size: clamp(16px, 5vw, 24px);
  font-weight: 600;
  justify-content: space-between;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 2px dashed rgba(var(--page-theme-color-main));
}
.ranges-tags > .wrapper ul li > *:after, .banner-product .tags li > *:after, .modular-benefits .modular-benefits-links li > *:after {
  content: "+";
  font-size: 40px;
  aspect-ratio: 1/1;
  font-family: var(--font-special);
  margin-left: 1em;
}
.ranges-tags > .wrapper ul li > a:hover, .banner-product .tags li > a:hover, .modular-benefits .modular-benefits-links li > a:hover {
  border-color: rgba(var(--color-black));
  background: rgba(var(--color-black));
  color: rgba(var(--color-white));
  animation: squiggly-anim 0.34s linear infinite;
}
.ranges-tags > .wrapper ul li > a.active, .banner-product .tags li > a.active, .modular-benefits .modular-benefits-links li > a.active {
  border-color: rgba(var(--color-main));
  background: rgba(var(--color-main));
  color: rgba(var(--color-white));
  animation: squiggly-anim 0.34s linear infinite;
}
.ranges-tags > .wrapper ul li.ranges-tags-all a, .banner-product .tags li.ranges-tags-all a, .modular-benefits .modular-benefits-links li.ranges-tags-all a {
  background: rgba(var(--color-white));
  color: rgba(var(--color-black));
}

.ranges-tags > header, .ranges-header > header, .ingredients > header, .contact-wrapper > header, .product-satisfaction > header, .banner-product > header, .modular-benefits > header, .modular-retailers > header, .modular-clinical > header, .modular-faq > header, .modular-section > header {
  padding: var(--gutter-h) 0;
  text-align: center;
}
.ranges-tags > header h1, .ranges-header > header h1, .ingredients > header h1, .contact-wrapper > header h1, .product-satisfaction > header h1, .banner-product > header h1, .modular-benefits > header h1, .modular-retailers > header h1, .modular-clinical > header h1, .modular-faq > header h1, .modular-section > header h1, .ranges-tags > header h2, .ranges-header > header h2, .ingredients > header h2, .contact-wrapper > header h2, .product-satisfaction > header h2, .banner-product > header h2, .modular-benefits > header h2, .modular-retailers > header h2, .modular-clinical > header h2, .modular-faq > header h2, .modular-section > header h2 {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.ranges-tags > header p, .ranges-header > header p, .ingredients > header p, .contact-wrapper > header p, .product-satisfaction > header p, .banner-product > header p, .modular-benefits > header p, .modular-retailers > header p, .modular-clinical > header p, .modular-faq > header p, .modular-section > header p {
  font-size: 1.4rem;
}
.ranges-tags > header:has(p) h1, .ranges-header > header:has(p) h1, .ingredients > header:has(p) h1, .contact-wrapper > header:has(p) h1, .product-satisfaction > header:has(p) h1, .banner-product > header:has(p) h1, .modular-benefits > header:has(p) h1, .modular-retailers > header:has(p) h1, .modular-clinical > header:has(p) h1, .modular-faq > header:has(p) h1, .modular-section > header:has(p) h1, .ranges-tags > header:has(p) h2, .ranges-header > header:has(p) h2, .ingredients > header:has(p) h2, .contact-wrapper > header:has(p) h2, .product-satisfaction > header:has(p) h2, .banner-product > header:has(p) h2, .modular-benefits > header:has(p) h2, .modular-retailers > header:has(p) h2, .modular-clinical > header:has(p) h2, .modular-faq > header:has(p) h2, .modular-section > header:has(p) h2 {
  margin-bottom: 0.5em;
}
.ranges-tags > .wrapper, .ranges-header > .wrapper, .ingredients > .wrapper, .contact-wrapper > .wrapper, .product-satisfaction > .wrapper, .banner-product > .wrapper, .modular-benefits > .wrapper, .modular-retailers > .wrapper, .modular-clinical > .wrapper, .modular-faq > .wrapper, .modular-section > .wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.ranges-tags > .wrapper > *, .ranges-header > .wrapper > *, .ingredients > .wrapper > *, .contact-wrapper > .wrapper > *, .product-satisfaction > .wrapper > *, .banner-product > .wrapper > *, .modular-benefits > .wrapper > *, .modular-retailers > .wrapper > *, .modular-clinical > .wrapper > *, .modular-faq > .wrapper > *, .modular-section > .wrapper > * {
  flex: 1;
}
@media only screen and (max-width: 992px) {
  .ranges-tags > .wrapper, .ranges-header > .wrapper, .ingredients > .wrapper, .contact-wrapper > .wrapper, .product-satisfaction > .wrapper, .banner-product > .wrapper, .modular-benefits > .wrapper, .modular-retailers > .wrapper, .modular-clinical > .wrapper, .modular-faq > .wrapper, .modular-section > .wrapper {
    flex-direction: column;
  }
  .ranges-tags > .wrapper > *, .ranges-header > .wrapper > *, .ingredients > .wrapper > *, .contact-wrapper > .wrapper > *, .product-satisfaction > .wrapper > *, .banner-product > .wrapper > *, .modular-benefits > .wrapper > *, .modular-retailers > .wrapper > *, .modular-clinical > .wrapper > *, .modular-faq > .wrapper > *, .modular-section > .wrapper > * {
    flex: 1;
    width: 100% !important;
  }
}
.ranges-tags .content, .ranges-header .content, .ingredients .content, .contact-wrapper .content, .product-satisfaction .content, .ranges-tags .quality ul li, .ranges-header .quality ul li, .ingredients .quality ul li, .contact-wrapper .quality ul li, .product-satisfaction .quality ul li, .quality ul .ranges-tags li, .quality ul .ranges-header li, .quality ul .ingredients li, .quality ul .contact-wrapper li, .quality ul .product-satisfaction li, .banner-product .content, .banner-product .quality ul li, .quality ul .banner-product li, .modular-benefits .content, .modular-benefits .quality ul li, .quality ul .modular-benefits li, .modular-retailers .content, .modular-retailers .quality ul li, .quality ul .modular-retailers li, .modular-clinical .content, .modular-clinical .quality ul li, .quality ul .modular-clinical li, .modular-faq .content, .modular-faq .quality ul li, .quality ul .modular-faq li, .modular-section .content, .modular-section .quality ul li, .quality ul .modular-section li {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 10;
}
.ranges-tags .content footer, .ranges-header .content footer, .ingredients .content footer, .contact-wrapper .content footer, .product-satisfaction .content footer, .ranges-tags .quality ul li footer, .ranges-header .quality ul li footer, .ingredients .quality ul li footer, .contact-wrapper .quality ul li footer, .product-satisfaction .quality ul li footer, .quality ul .ranges-tags li footer, .quality ul .ranges-header li footer, .quality ul .ingredients li footer, .quality ul .contact-wrapper li footer, .quality ul .product-satisfaction li footer, .banner-product .content footer, .banner-product .quality ul li footer, .quality ul .banner-product li footer, .modular-benefits .content footer, .modular-benefits .quality ul li footer, .quality ul .modular-benefits li footer, .modular-retailers .content footer, .modular-retailers .quality ul li footer, .quality ul .modular-retailers li footer, .modular-clinical .content footer, .modular-clinical .quality ul li footer, .quality ul .modular-clinical li footer, .modular-faq .content footer, .modular-faq .quality ul li footer, .quality ul .modular-faq li footer, .modular-section .content footer, .modular-section .quality ul li footer, .quality ul .modular-section li footer {
  display: flex;
  margin-top: 2em;
  gap: 1em;
}
.ranges-tags .content > *:last-child, .ranges-header .content > *:last-child, .ingredients .content > *:last-child, .contact-wrapper .content > *:last-child, .product-satisfaction .content > *:last-child, .ranges-tags .quality ul li > *:last-child, .ranges-header .quality ul li > *:last-child, .ingredients .quality ul li > *:last-child, .contact-wrapper .quality ul li > *:last-child, .product-satisfaction .quality ul li > *:last-child, .quality ul .ranges-tags li > *:last-child, .quality ul .ranges-header li > *:last-child, .quality ul .ingredients li > *:last-child, .quality ul .contact-wrapper li > *:last-child, .quality ul .product-satisfaction li > *:last-child, .banner-product .content > *:last-child, .banner-product .quality ul li > *:last-child, .quality ul .banner-product li > *:last-child, .modular-benefits .content > *:last-child, .modular-benefits .quality ul li > *:last-child, .quality ul .modular-benefits li > *:last-child, .modular-retailers .content > *:last-child, .modular-retailers .quality ul li > *:last-child, .quality ul .modular-retailers li > *:last-child, .modular-clinical .content > *:last-child, .modular-clinical .quality ul li > *:last-child, .quality ul .modular-clinical li > *:last-child, .modular-faq .content > *:last-child, .modular-faq .quality ul li > *:last-child, .quality ul .modular-faq li > *:last-child, .modular-section .content > *:last-child, .modular-section .quality ul li > *:last-child, .quality ul .modular-section li > *:last-child {
  margin-bottom: 0;
}
[data-scroll-animation] {
  transition: all 200ms ease-in-out;
  transform: translateY(20%);
  opacity: 0;
}
[data-scroll-animation].fade-up {
  opacity: 1;
  transform: translateY(0);
}

.maven-copyright-wrapper {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 1em;
  flex-direction: row !important;
}
@media only screen and (max-width: 768px) {
  .maven-copyright-wrapper {
    margin: 0;
    justify-content: space-between;
  }
}

.maven-copyright,
.weebox-copyright {
  display: inline-flex;
  align-items: center;
  text-transform: uppercase;
  font-size: 9px;
  font-size: 0.5625rem;
}
@media only screen and (max-width: 768px) {
  .maven-copyright,
  .weebox-copyright {
    float: none;
    width: auto;
    text-align: center;
  }
}
.maven-copyright span,
.weebox-copyright span {
  line-height: 1em;
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  .maven-copyright span,
  .weebox-copyright span {
    display: block;
    margin-bottom: 0.25em;
  }
  .maven-copyright span br,
  .weebox-copyright span br {
    display: none;
  }
}
.maven-copyright svg,
.weebox-copyright svg {
  height: 20px;
  margin-left: 4px;
  transform: translateY(1px);
}
.maven-copyright path,
.weebox-copyright path {
  fill: rgba(var(--color-black));
  transition: all 250ms ease-out;
}
.maven-copyright a,
.weebox-copyright a {
  display: inline-block;
  text-decoration: none;
}

.maven-copyright a:hover path {
  fill: #e20358;
}

.weebox-copyright a:hover path {
  fill: #56568E;
}

.page-notice {
  display: none;
  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;
  }
}
@keyframes loader-rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}
/*
 * Button
 */
.wbx-button-container {
  font-size: 0px;
}
.wbx-button-container ~ .wbx-button-container {
  margin-left: 0.5rem;
}

.button-action {
  cursor: pointer;
  overflow: hidden;
  font-family: var(--font-content);
  min-height: 40px;
  min-width: 40px;
  border-radius: 4px;
  position: relative;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 0 0.75em;
  font-weight: var(--fw-regular);
  background: rgba(0, 0, 0, 0.05);
  border: none;
  white-space: nowrap;
  transition: all 200ms ease-in-out;
}
.button-action:has(span) span {
  transition: all 200ms ease-in-out;
  margin-left: 0.5em;
}
.button-action .loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  opacity: 0;
}
.button-action .loader svg {
  animation: loader-rotation 2s infinite linear;
}
.is-loading.button-action span {
  opacity: 0;
}
.is-loading.button-action figure {
  opacity: 0;
}
.is-loading.button-action .loader {
  opacity: 1;
}
.is-done.button-action {
  display: none;
}
.button-action:hover {
  background: rgba(var(--color-link), 0.2);
  color: rgba(var(--color-link), 1);
}
.button-action figure {
  transition: all 200ms ease-in-out;
  width: 1.5em;
  height: 1.5em;
}
.button-action svg {
  width: 1.5em;
  height: 1.5em;
}

.wbx-button-shortcut, .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;
}
.wbx-button-shortcut:hover, .button-shortcut:hover {
  background: rgb(var(--color-black));
  color: #fff;
}
.wbx-button-shortcut:hover select, .button-shortcut:hover select {
  color: #fff;
}
.wbx-button-shortcut i, .button-shortcut i {
  font-size: 1.5em;
  margin-right: 0.25em;
}
.wbx-button-shortcut svg, .button-shortcut svg {
  width: 1.5em;
  height: 1.5em;
}

#error .btn, .form-buttons button, .shop-selector .shop-selector-item .content a, .shop-selector .shop-selector-item .quality ul li a, .quality ul .shop-selector .shop-selector-item li a, .wbx-button, .form-submit, .button, .wbx-button-none, .wbx-checkout-download,
.form-modal-reset-button,
.wbx-go-to-cart-button,
.wbx-filters-active-cta-clear,
.wbx-button-outline, .button-outline, .button-third, .button-secondary, .form-modal-apply-button,
.wbx-button-stock-out,
.wbx-button-show-product,
.wbx-query-search-button,
.wbx-go-to-checkout-button,
.wbx-checkout-validate-button,
.wbx-go-to-home-button,
.wbx-retry-button,
.wbx-button-primary, .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 1em;
  margin: 0;
  min-height: 40px;
  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: 14px;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2);
}
#error .btn span.ripple, .form-buttons button span.ripple, .shop-selector .shop-selector-item .content a span.ripple, .shop-selector .shop-selector-item .quality ul li a span.ripple, .quality ul .shop-selector .shop-selector-item li a span.ripple, .wbx-button span.ripple, .form-submit span.ripple, .button span.ripple, .wbx-button-none span.ripple, .wbx-checkout-download span.ripple,
.form-modal-reset-button span.ripple,
.wbx-go-to-cart-button span.ripple,
.wbx-filters-active-cta-clear span.ripple,
.wbx-button-outline span.ripple, .button-outline span.ripple, .button-third span.ripple, .button-secondary span.ripple, .form-modal-apply-button span.ripple,
.wbx-button-stock-out span.ripple,
.wbx-button-show-product span.ripple,
.wbx-query-search-button span.ripple,
.wbx-go-to-checkout-button span.ripple,
.wbx-checkout-validate-button span.ripple,
.wbx-go-to-home-button span.ripple,
.wbx-retry-button span.ripple,
.wbx-button-primary span.ripple, .button-primary span.ripple {
  background: rgba(var(--color-white), 0.2);
}
#error .btn span:not(.ripple), .form-buttons button span:not(.ripple), .shop-selector .shop-selector-item .content a span:not(.ripple), .shop-selector .shop-selector-item .quality ul li a span:not(.ripple), .quality ul .shop-selector .shop-selector-item li a span:not(.ripple), .wbx-button span:not(.ripple), .form-submit span:not(.ripple), .button span:not(.ripple), .wbx-button-none span:not(.ripple), .wbx-checkout-download span:not(.ripple),
.form-modal-reset-button span:not(.ripple),
.wbx-go-to-cart-button span:not(.ripple),
.wbx-filters-active-cta-clear span:not(.ripple),
.wbx-button-outline span:not(.ripple), .button-outline span:not(.ripple), .button-third span:not(.ripple), .button-secondary span:not(.ripple), .form-modal-apply-button span:not(.ripple),
.wbx-button-stock-out span:not(.ripple),
.wbx-button-show-product span:not(.ripple),
.wbx-query-search-button span:not(.ripple),
.wbx-go-to-checkout-button span:not(.ripple),
.wbx-checkout-validate-button span:not(.ripple),
.wbx-go-to-home-button span:not(.ripple),
.wbx-retry-button span:not(.ripple),
.wbx-button-primary span:not(.ripple), .button-primary span:not(.ripple) {
  position: relative;
  z-index: 5;
}
#error .btn span:not(.ripple) ~ svg, .form-buttons button span:not(.ripple) ~ svg, .shop-selector .shop-selector-item .content a span:not(.ripple) ~ svg, .shop-selector .shop-selector-item .quality ul li a span:not(.ripple) ~ svg, .quality ul .shop-selector .shop-selector-item li a span:not(.ripple) ~ svg, .wbx-button span:not(.ripple) ~ svg, .form-submit span:not(.ripple) ~ svg, .button span:not(.ripple) ~ svg, .wbx-button-none span:not(.ripple) ~ svg, .wbx-checkout-download span:not(.ripple) ~ svg,
.form-modal-reset-button span:not(.ripple) ~ svg,
.wbx-go-to-cart-button span:not(.ripple) ~ svg,
.wbx-filters-active-cta-clear span:not(.ripple) ~ svg,
.wbx-button-outline span:not(.ripple) ~ svg, .button-outline span:not(.ripple) ~ svg, .button-third span:not(.ripple) ~ svg, .button-secondary span:not(.ripple) ~ svg, .form-modal-apply-button span:not(.ripple) ~ svg,
.wbx-button-stock-out span:not(.ripple) ~ svg,
.wbx-button-show-product span:not(.ripple) ~ svg,
.wbx-query-search-button span:not(.ripple) ~ svg,
.wbx-go-to-checkout-button span:not(.ripple) ~ svg,
.wbx-checkout-validate-button span:not(.ripple) ~ svg,
.wbx-go-to-home-button span:not(.ripple) ~ svg,
.wbx-retry-button span:not(.ripple) ~ svg,
.wbx-button-primary span:not(.ripple) ~ svg, .button-primary span:not(.ripple) ~ svg {
  margin-left: 0.25em;
}
#error .btn i, .form-buttons button i, .shop-selector .shop-selector-item .content a i, .shop-selector .shop-selector-item .quality ul li a i, .quality ul .shop-selector .shop-selector-item li a i, .wbx-button i, .form-submit i, .button i, .wbx-button-none i, .wbx-checkout-download i,
.form-modal-reset-button i,
.wbx-go-to-cart-button i,
.wbx-filters-active-cta-clear i,
.wbx-button-outline i, .button-outline i, .button-third i, .button-secondary i, .form-modal-apply-button i,
.wbx-button-stock-out i,
.wbx-button-show-product i,
.wbx-query-search-button i,
.wbx-go-to-checkout-button i,
.wbx-checkout-validate-button i,
.wbx-go-to-home-button i,
.wbx-retry-button i,
.wbx-button-primary i, .button-primary i {
  position: relative;
  font-size: 1.5em;
  margin-right: 0.5em;
  text-align: center;
  transform: translateY(-0.1em);
}
#error .btn svg, .form-buttons button svg, .shop-selector .shop-selector-item .content a svg, .shop-selector .shop-selector-item .quality ul li a svg, .quality ul .shop-selector .shop-selector-item li a svg, .wbx-button svg, .form-submit svg, .button svg, .wbx-button-none svg, .wbx-checkout-download svg,
.form-modal-reset-button svg,
.wbx-go-to-cart-button svg,
.wbx-filters-active-cta-clear svg,
.wbx-button-outline svg, .button-outline svg, .button-third svg, .button-secondary svg, .form-modal-apply-button svg,
.wbx-button-stock-out svg,
.wbx-button-show-product svg,
.wbx-query-search-button svg,
.wbx-go-to-checkout-button svg,
.wbx-checkout-validate-button svg,
.wbx-go-to-home-button svg,
.wbx-retry-button svg,
.wbx-button-primary svg, .button-primary svg {
  position: relative;
  width: 1.5em;
  height: 1.5em;
  text-align: center;
}
#error .btn svg ~ span, .form-buttons button svg ~ span, .shop-selector .shop-selector-item .content a svg ~ span, .shop-selector .shop-selector-item .quality ul li a svg ~ span, .quality ul .shop-selector .shop-selector-item li a svg ~ span, .wbx-button svg ~ span, .form-submit svg ~ span, .button svg ~ span, .wbx-button-none svg ~ span, .wbx-checkout-download svg ~ span,
.form-modal-reset-button svg ~ span,
.wbx-go-to-cart-button svg ~ span,
.wbx-filters-active-cta-clear svg ~ span,
.wbx-button-outline svg ~ span, .button-outline svg ~ span, .button-third svg ~ span, .button-secondary svg ~ span, .form-modal-apply-button svg ~ span,
.wbx-button-stock-out svg ~ span,
.wbx-button-show-product svg ~ span,
.wbx-query-search-button svg ~ span,
.wbx-go-to-checkout-button svg ~ span,
.wbx-checkout-validate-button svg ~ span,
.wbx-go-to-home-button svg ~ span,
.wbx-retry-button svg ~ span,
.wbx-button-primary svg ~ span, .button-primary svg ~ span {
  margin-left: 0.25em;
}
#error .btn:hover, .form-buttons button:hover, .shop-selector .shop-selector-item .content a:hover, .shop-selector .shop-selector-item .quality ul li a:hover, .quality ul .shop-selector .shop-selector-item li a:hover, .wbx-button:hover, .form-submit:hover, .button:hover, .wbx-button-none:hover, .wbx-checkout-download:hover,
.form-modal-reset-button:hover,
.wbx-go-to-cart-button:hover,
.wbx-filters-active-cta-clear:hover,
.wbx-button-outline:hover, .button-outline:hover, .button-third:hover, .button-secondary:hover, .form-modal-apply-button:hover,
.wbx-button-stock-out:hover,
.wbx-button-show-product:hover,
.wbx-query-search-button:hover,
.wbx-go-to-checkout-button:hover,
.wbx-checkout-validate-button:hover,
.wbx-go-to-home-button:hover,
.wbx-retry-button:hover,
.wbx-button-primary:hover, .button-primary:hover {
  background: rgb(var(--color-main));
  color: rgb(var(--color-white));
  border-color: rgb(var(--color-main));
}
.form-modal-apply-button,
.wbx-button-stock-out,
.wbx-button-show-product,
.wbx-query-search-button,
.wbx-go-to-checkout-button,
.wbx-checkout-validate-button,
.wbx-go-to-home-button,
.wbx-retry-button,
.wbx-button-primary, .button-primary {
  color: rgb(var(--color-white));
  background: rgb(var(--color-main));
  border: 2px solid rgb(var(--color-main));
}
.form-modal-apply-button span.ripple,
.wbx-button-stock-out span.ripple,
.wbx-button-show-product span.ripple,
.wbx-query-search-button span.ripple,
.wbx-go-to-checkout-button span.ripple,
.wbx-checkout-validate-button span.ripple,
.wbx-go-to-home-button span.ripple,
.wbx-retry-button span.ripple,
.wbx-button-primary span.ripple, .button-primary span.ripple {
  background: rgba(var(--color-white), 0.2);
}
.form-modal-apply-button:hover,
.wbx-button-stock-out:hover,
.wbx-button-show-product:hover,
.wbx-query-search-button:hover,
.wbx-go-to-checkout-button:hover,
.wbx-checkout-validate-button:hover,
.wbx-go-to-home-button:hover,
.wbx-retry-button:hover,
.wbx-button-primary:hover, .button-primary:hover {
  background: rgb(var(--color-main));
  color: rgb(var(--color-white));
  border-color: rgb(var(--color-main));
}

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

.wbx-checkout-download,
.form-modal-reset-button,
.wbx-go-to-cart-button,
.wbx-filters-active-cta-clear,
.wbx-button-outline, .button-outline {
  color: rgb(var(--color-black));
  background: none;
  border: 2px solid rgb(var(--color-black));
}
.wbx-checkout-download span.ripple,
.form-modal-reset-button span.ripple,
.wbx-go-to-cart-button span.ripple,
.wbx-filters-active-cta-clear span.ripple,
.wbx-button-outline span.ripple, .button-outline span.ripple {
  background: rgba(var(--color-main), 0.1);
}
.wbx-checkout-download:hover,
.form-modal-reset-button:hover,
.wbx-go-to-cart-button:hover,
.wbx-filters-active-cta-clear:hover,
.wbx-button-outline:hover, .button-outline:hover {
  background: none;
  color: rgb(var(--color-main));
  border-color: rgb(var(--color-main));
}

.wbx-button-none {
  box-shadow: none;
  color: rgb(var(--color-black));
  background: none;
  border: none;
  text-transform: initial;
}
.wbx-button-none:hover {
  background: none;
  color: rgb(var(--color-secondary-dark));
}

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.2);
}
.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 {
  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-error.form-checkbox .form-input label, .form-error.form-radio .form-input label, .form-error.form-birthdate .form-input label, .form-error.form-select .form-input label, .form-error.form-accordeon .form-input label, .form-error.form-autocomplete .form-input label, .form-error.form-dropdown .form-input label, .form-error.form-textarea .form-input label, .form-error.form-text .form-input label {
  color: rgba(var(--color-danger), 1);
}

.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;
}
@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: black;
  text-align: center;
  font-weight: var(--fw-thin);
  font-size: 0.9em;
  font-style: normal;
  opacity: 0.5;
}
.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 {
  top: 50%;
  left: 50%;
  position: absolute;
  z-index: -1;
  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: 2em;
}
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;
  font-size: inherit;
  width: 1.2em;
  height: 1.2em;
  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: 0.8em;
  height: 0.8em;
  border-radius: 50%;
  position: absolute;
  margin-top: 0.2em;
  left: 0.2em;
  border: 1px solid transparent;
  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;
  line-height: 1em;
  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%;
}

.blog-aside-author {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}
.blog-aside-author figure {
  aspect-ratio: 1/1;
  max-width: 150px;
  overflow: hidden;
  border-radius: 50%;
  margin-bottom: 1em;
}
.blog-aside-author strong {
  font-size: 1.2em;
}

.blog-aside-categories ul {
  display: flex;
  flex-direction: column;
}
.blog-aside-categories ul > * {
  border-bottom: 1px solid #ddd;
}
.blog-aside-categories ul > *:last-child {
  border: 0;
}
.blog-aside-categories ul a {
  display: block;
  line-height: 2.5em;
}
.blog-aside-categories ul .active a {
  font-weight: 500;
}

.page-template-blog-item,
.page-template-blog {
  background: #f7f6f4;
}

.blog-item,
.blog-main {
  position: relative;
}
.blog-item > .wrapper,
.blog-main > .wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2em;
  padding-bottom: 2em;
}
@media only screen and (max-width: 992px) {
  .blog-item > .wrapper > *,
  .blog-main > .wrapper > * {
    width: 100%;
  }
}

.blog-item {
  padding-top: 30vh;
}

.blog-main-empty {
  padding: 2em;
  align-self: center;
  justify-self: center;
  text-align: center;
}

.blog-main-navigation {
  position: sticky;
  z-index: 1000;
  top: var(--nav-sticky);
  width: 100%;
}
.blog-main-navigation ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
}
.blog-main-navigation ul li a {
  line-height: 4em;
  padding: 0 1em;
  display: block;
  position: relative;
}
.blog-main-navigation ul li.active a {
  font-weight: 500;
}
.blog-main-navigation ul li.active a:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  height: 3px;
  width: 100%;
  background: rgba(var(--color-black));
}

.blog-main-content,
.blog-item-content {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  flex: 1;
  container-type: inline-size;
  container-name: blog-listing;
}
.blog-item .blog-main-content,
.blog-item .blog-item-content {
  backdrop-filter: blur(20px);
  background: rgba(247, 246, 244, 0.5);
  padding: 2em;
}
.blog-main-content > footer,
.blog-item-content > footer {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  border-top: 1px solid rgba(var(--color-black));
  padding: 1rem 0;
}
.blog-main-content > header,
.blog-item-content > header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
  padding-bottom: 1em;
  border-bottom: 1px solid rgba(var(--color-black));
}
.blog-main-content > header .blog-article-categories,
.blog-item-content > header .blog-article-categories {
  width: 100%;
}
.blog-main-content > header .blog-article-date,
.blog-main-content > header .blog-shares,
.blog-item-content > header .blog-article-date,
.blog-item-content > header .blog-shares {
  width: 50%;
  margin: 0;
}
.blog-main-content > header h1,
.blog-item-content > header h1 {
  font-size: clamp(32px, 5vw, 72px);
  line-height: 1em;
  margin-bottom: 2rem;
  text-wrap: balance;
}

.blog-main-sidebar,
.blog-item-sidebar {
  width: 300px;
}
.blog-main-sidebar > .wrapper,
.blog-item-sidebar > .wrapper {
  position: sticky;
  top: calc(var(--nav-sticky) + 1em);
}
.blog-main-sidebar > .wrapper > *,
.blog-item-sidebar > .wrapper > * {
  padding: 2em;
  background: rgba(var(--color-white));
  margin-bottom: 1em;
}
.blog-main-sidebar > .wrapper > * h2, .blog-main-sidebar > .wrapper > * h3, .blog-main-sidebar > .wrapper > * h4,
.blog-item-sidebar > .wrapper > * h2,
.blog-item-sidebar > .wrapper > * h3,
.blog-item-sidebar > .wrapper > * h4 {
  margin-bottom: 1rem;
  text-transform: uppercase;
}

.blog-item .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50vh;
  overflow: hidden;
}
.blog-item .bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.blog-main-listing {
  display: grid;
  grid-gap: calc(var(--gutter-grid) / 2);
  gap: 2em;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
@container blog-listing (max-width: 600px) {
  .blog-main-listing {
    grid-template-columns: 1fr;
  }
}
.blog-main-listing > *.highlight {
  grid-column: 1/-1;
}

.blog-article {
  display: flex;
  flex-wrap: wrap;
  container-type: inline-size;
  container-name: blog-article;
}
.blog-article .content, .blog-article .quality ul li, .quality ul .blog-article li {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  padding: 0 1em;
}
@container blog-article (min-width: 800px) {
  .blog-article .content, .blog-article .quality ul li, .quality ul .blog-article li {
    width: 60%;
    margin: 4em 0;
    margin-left: auto;
    background: rgba(255, 255, 255, 0.7);
    padding: 2em;
    backdrop-filter: blur(20px);
  }
}
.blog-article .resume {
  order: 20;
  width: 100%;
  display: none;
}
@container blog-article (min-width: 500px) {
  .blog-article .resume {
    display: block;
    flex: 1;
    justify-content: flex-end;
  }
}
.blog-article .resume-author {
  display: flex;
  gap: 1em;
  align-items: center;
}
.blog-article .resume-author figure {
  max-width: 48px;
  overflow: hidden;
  border-radius: 50%;
  aspect-ratio: 1/1;
}
.blog-article .resume-author figure img {
  object-fit: cover;
  width: 100%;
  aspect-ratio: 1/1;
}
.blog-article header, .blog-article figure, .blog-article main, .blog-article footer {
  width: 100%;
}
.blog-article header {
  margin-bottom: 1em;
}
.blog-article > figure {
  position: relative;
  overflow: hidden;
  margin-bottom: 1em;
}
.blog-article > figure img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  transition: all 200ms ease-in-out;
}
@container blog-article (min-width: 800px) {
  .blog-article > figure {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
  }
  .blog-article > figure img {
    height: 100%;
    width: auto;
  }
}
.blog-article h2, .blog-article h3 {
  font-size: 1.4em;
  line-height: 1em;
  margin-bottom: 0;
}
.highlight .blog-article h2, .highlight .blog-article h3 {
  font-size: 3em;
}
.blog-article h2:hover, .blog-article h3:hover {
  text-decoration: underline;
}
.blog-article main {
  margin-bottom: 1em;
}
.highlight .blog-article main {
  display: block;
}
.blog-article footer {
  display: flex;
  justify-content: flex-end;
  margin: 1em 0;
}
.blog-article:hover figure img {
  transform: scale(1.05);
}

.blog-article-date {
  display: flex;
  align-items: center;
  gap: 0.5em;
  margin-bottom: 1em;
}
.blog-article-date .icon, .blog-article-date .page-concept #page-header > div, .page-concept .blog-article-date #page-header > div, .blog-article-date .form-birthdate .form-input-wrapper label, .form-birthdate .form-input-wrapper .blog-article-date label, .blog-article-date form input[type=checkbox]:checked ~ *, form .blog-article-date input[type=checkbox]:checked ~ *,
.blog-article-date [class*=form-] input[type=checkbox]:checked ~ *,
[class*=form-] .blog-article-date input[type=checkbox]:checked ~ * {
  display: flex;
  align-items: center;
  width: 20px;
}
.blog-article-date .icon svg, .blog-article-date .page-concept #page-header > div svg, .page-concept .blog-article-date #page-header > div svg, .blog-article-date .form-birthdate .form-input-wrapper label svg, .form-birthdate .form-input-wrapper .blog-article-date label svg, .blog-article-date form input[type=checkbox]:checked ~ * svg, form .blog-article-date input[type=checkbox]:checked ~ * svg,
.blog-article-date [class*=form-] input[type=checkbox]:checked ~ * svg,
[class*=form-] .blog-article-date input[type=checkbox]:checked ~ * svg {
  width: 100%;
}

.blog-article-categories ul, .blog-aside-taxonomies ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  font-size: 11px;
  align-items: center;
  margin-bottom: 1rem;
}
.blog-article-categories ul a, .blog-aside-taxonomies ul a {
  padding: 0 1em;
  line-height: 2em;
  text-transform: uppercase;
  background: rgba(var(--color-black), 0.2);
  display: inline-block;
  color: rgba(var(--color-white));
  font-weight: 400;
  border-radius: 4px;
  transition: all 200ms ease-in-out;
}
.blog-article-categories ul a:hover, .blog-aside-taxonomies ul a:hover {
  background: rgba(var(--color-black), 0.8);
}

.blog-article-taxonomies {
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.blog-article-taxonomies span {
  display: flex;
  align-items: center;
}
.blog-article-taxonomies svg {
  width: 1em;
  height: 1em;
}
.blog-article-taxonomies ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
}
.blog-article-taxonomies a {
  display: inline-block;
  color: rgba(var(--color-link));
}
.blog-article-taxonomies a:hover {
  text-decoration: underline;
}

.blog-shares {
  order: 30;
  align-items: center;
  gap: 0.5em;
  width: 100%;
  display: inline-flex;
  flex: 1;
  justify-content: flex-end;
  container-type: inline-size;
  container-name: blog-shares;
}
.blog-shares .blog-shares-label {
  text-align: right;
}
@container blog-shares (max-width: 300px) {
  .blog-shares .blog-shares-label {
    display: none;
  }
}
.blog-shares a {
  position: relative;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: 0;
  overflow: hidden;
  border-radius: 50%;
}
.blog-shares a:after {
  content: "";
  position: absolute;
  right: -0.25em;
  top: 50%;
  height: 50%;
  width: 1px;
  background: rgba(0, 0, 0, 0.25);
  transform: translateY(-50%);
}
.blog-shares a:last-child:after {
  display: none;
}
.blog-shares a svg {
  width: 16px;
}
.blog-shares a:hover {
  background: rgba(var(--color-main));
  color: rgba(var(--color-white));
}

.common-website-switcher header {
  margin-bottom: 1em;
  text-align: center;
}
.common-website-switcher header h4 {
  font-size: 2.2em;
  padding: 0;
  font-weight: var(--fw-medium);
  margin-bottom: 0.25em;
}
.common-website-switcher header p {
  font-size: 1em;
  margin-bottom: 1em;
}
.common-website-switcher .website-switcher-environments {
  border-top: 2px solid #111;
  padding-top: 1em;
}
.common-website-switcher .website-switcher-environments > p {
  text-align: center;
}
.common-website-switcher .website-switcher-environments ul {
  columns: 2;
  margin-top: 1em;
}
@media only screen and (max-width: 992px) {
  .common-website-switcher .website-switcher-environments ul {
    columns: 1;
  }
}
.common-website-switcher .website-switcher-environments ul li {
  display: flex;
  align-items: center;
  white-space: nowrap;
  margin-bottom: 0.5em;
  padding-top: 0.5em;
}
.common-website-switcher .website-switcher-environments ul li a {
  display: flex;
  align-items: center;
  white-space: nowrap;
  margin-right: 1em;
}
.common-website-switcher .website-switcher-environments ul li img {
  width: 16px;
  margin-right: 0.5em;
}
.common-website-switcher .direct-link {
  display: inline-flex;
  align-items: center;
  padding: 0.5em 1em;
  margin: 0.5em auto;
  margin-top: 2em;
  margin-bottom: 1em;
}
.common-website-switcher .direct-link img {
  width: 20px;
  margin-left: 0.5em;
}

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

/* not used
#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%;
  min-width: max-content;
}
.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: 50px;
  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));
  }
}
.navigation-sublevel {
  position: sticky;
  top: var(--nav-sticky);
  background: rgba(244, 244, 244, 0.8);
  backdrop-filter: blur(10px);
  z-index: 1000;
}
.navigation-sublevel .button-primary {
  background: rgba(var(--page-theme-color-main));
  border-color: rgba(var(--page-theme-color-main));
}
.navigation-sublevel .button-primary:hover {
  background: rgba(var(--color-black));
  border-color: rgba(var(--color-black));
}
.navigation-sublevel .navigation-sublevel-selector {
  position: relative;
  align-items: center;
  padding: 0.5em;
  display: none;
}
@media only screen and (max-width: 992px) {
  .navigation-sublevel .navigation-sublevel-selector {
    display: flex;
  }
}
.navigation-sublevel .navigation-sublevel-selector .navigation-sublevel-label {
  flex: 1;
  font-weight: var(--fw-medium);
  line-height: 3em;
  text-transform: uppercase;
}
.navigation-sublevel .navigation-sublevel-selector .navigation-sublevel-arrow {
  margin-left: auto;
}
.navigation-sublevel .navigation-sublevel-selector select {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}
@media only screen and (max-width: 992px) {
  .navigation-sublevel nav {
    display: none;
  }
}
.navigation-sublevel ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
}
.navigation-sublevel ul li:not(:has(.button-primary)):not(:has(.button-outline)) a {
  display: block;
  padding: 0 1em;
  font-weight: var(--fw-medium);
  line-height: 4em;
  text-transform: uppercase;
  position: relative;
  transition: all 200ms ease-in-out;
}
.navigation-sublevel ul li:not(:has(.button-primary)):not(:has(.button-outline)):hover a {
  background: rgba(var(--page-theme-color-main), 0.1);
}
.navigation-sublevel ul li:not(:has(.button-primary)):not(:has(.button-outline)).activex a {
  font-weight: var(--fw-bold);
  color: rgba(var(--page-theme-color-main));
}
.navigation-sublevel ul li:not(:has(.button-primary)):not(:has(.button-outline)).activex a:before {
  content: "";
  height: 2px;
  background: rgba(var(--page-theme-color-main));
  width: calc(100% - 2em);
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

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

/*
 * Used only with Grav-TinyMce plugin !
 */
.mce-content-body {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
}
.mce-content-body h1, .mce-content-body h2, .mce-content-body h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.mce-content-body h1:first-child, .mce-content-body h2:first-child, .mce-content-body h3:first-child {
  margin-top: 0;
}
.mce-content-body h1 span, .mce-content-body h2 span, .mce-content-body h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.mce-content-body h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.mce-content-body h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.mce-content-body h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.mce-content-body h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.mce-content-body > h1:first-child,
.mce-content-body > h2:first-child,
.mce-content-body > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.mce-content-body p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.mce-content-body p:last-child, .mce-content-body p:last-of-type {
  margin-bottom: 0;
}
.mce-content-body p a {
  color: rgba(var(--color-link));
}
.mce-content-body p a:hover {
  text-decoration: underline;
}
.mce-content-body ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.mce-content-body ul li {
  margin-bottom: 0.25em;
}
.mce-content-body strong {
  font-weight: var(--fw-bold);
}
.mce-content-body img.auto {
  height: auto;
}
.mce-content-body img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}

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

#page-breadcrumbs {
  display: none;
}

.default-content > .wrapper, .range-products .range-products-item > .wrapper, .range-products > .wrapper, .range-products > header, .wbx-breadcrumb:not(.wbx-catalog-main-breadcrumb) > .wrapper, .page-header > .wrapper, .newsletter-subscribe > .wrapper, .page-template-default .page-header .wrapper,
.page-template-default .default-content .wrapper, .promotions > .wrapper, .associations-inscription > .wrapper, .associations-listing > .wrapper, .associations-introduction > .wrapper, .subscribe-module > .wrapper, .footer-payments > .wrapper, .header-food .header-food-wrapper, .shop-categories-listing .wrapper, .shop-selector .shop-selector-wrapper, .product-carousel .wrapper, .section-registration-form > .wrapper, .wbx-registration > header > .wrapper,
.wbx-checkout-main > header > .wrapper, .wbx-registration > .wrapper,
.wbx-checkout-main > .wrapper, .wbx-product-details > .wbx-product-details-wrapper, .wbx-product-main .wbx-product-header .wbx-product-header-wrapper, .wbx-product-main .wbx-product-related-brand > .wrapper, .wbx-notice, .modular-product-range > .wrapper, #page-footer .footer-copyright > .wrapper, #page-footer > .wrapper, .ranges-tags > header, .ranges-header > header, .ingredients > header, .contact-wrapper > header, .product-satisfaction > header, .banner-product > header, .modular-benefits > header, .modular-retailers > header, .modular-clinical > header, .modular-faq > header, .modular-section > header, .ranges-tags > .wrapper, .ranges-header > .wrapper, .ingredients > .wrapper, .contact-wrapper > .wrapper, .product-satisfaction > .wrapper, .banner-product > .wrapper, .modular-benefits > .wrapper, .modular-retailers > .wrapper, .modular-clinical > .wrapper, .modular-faq > .wrapper, .modular-section > .wrapper, .page-notice > .wrapper, .blog-related > header, .blog-related > .wrapper, .blog-item > .wrapper,
.blog-main > .wrapper, .navigation .navigation-wrapper .wrapper, .navigation-bigmenu > .wrapper, .navigation-mobile .navigation-mobile-wrapper-body nav .container ul li, .navigation-sublevel > .wrapper {
  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: calc(20px + 1.5rem);
  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: 1;
}
.form-dropdown .form-modal .form-modal-body label[disabled] {
  opacity: 0.3;
  pointer-events: none;
  display: none;
}
.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.15em;
}
.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.5rem;
  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;
  opacity: 1;
}
.form-accordeon .form-modal .form-modal-body label input {
  width: 1px;
  height: 1px;
}
.form-accordeon .form-modal .form-modal-body label[disabled] {
  opacity: 0.3;
  pointer-events: none;
  display: none;
}
.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);
  line-height: 2em;
}
.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.15em;
}
.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: 33.33%;
}
.form-birthdate .form-input-wrapper label:nth-child(2) {
  width: 50%;
}
.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: 30px;
}
.form-birthdate .form-input-wrapper label:before {
  font-size: 14px;
  font-size: 0.875rem;
  pointer-events: none;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%) translateX(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;
  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;
  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 > .wrapper {
  display: flex;
}
.form-notice figure {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.3);
  margin-right: 1em;
}
.form-notice figure svg {
  width: 60%;
  height: 60%;
}
.form-notice.form-error {
  background: rgba(var(--color-danger), 0.1);
}
.form-notice.form-success {
  background: rgba(var(--color-success), 0.1);
}
.form-notice.form-success figure {
  background: rgba(var(--color-success), 1);
  color: rgba(var(--color-white));
}
.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);
}

.form-submit {
  background: rgba(var(--color-main), 1);
  border-color: rgba(var(--color-main), 1);
  color: rgba(var(--color-unisante-white), 1);
}
.form-submit:hover {
  color: rgba(var(--color-unisante-white), 1);
  background: rgba(var(--color-main-dark), 1);
  border-color: rgba(var(--color-main-dark), 1);
}

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

#page-footer {
  position: relative;
}
#page-footer h6 {
  font-size: 16px;
  font-weight: var(--fw-bold);
  margin-bottom: 1.2em;
  color: rgba(var(--color-main), 1);
  text-transform: uppercase;
}
#page-footer > .wrapper {
  padding-top: var(--gutter-h);
  padding-bottom: var(--gutter-h);
  display: flex;
  flex-wrap: wrap;
  gap: 2em;
}
#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;
  }
}
@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: 120px;
}
#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: inline-flex;
  gap: 0 0.5em;
}
#page-footer .footer-copyright {
  overflow: hidden;
  width: 100%;
}
#page-footer .footer-copyright > .wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  padding: var(--gutter);
  border-top: 1px solid rgba(var(--color-black));
  gap: 1em;
}
@media only screen and (max-width: 768px) {
  #page-footer .footer-copyright > .wrapper {
    flex-direction: column;
  }
}
#page-footer .footer-copyright > .wrapper > * {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 768px) {
  #page-footer .footer-copyright > .wrapper > * {
    width: 100%;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 1em;
  }
  #page-footer .footer-copyright > .wrapper > * .footer-switch-location {
    width: 100%;
    margin: 0;
  }
}
#page-footer .footer-copyright .footer-switch-location {
  display: flex;
  align-items: center;
  gap: 0.25em;
  margin-right: 1em;
  cursor: pointer;
}
#page-footer .footer-copyright .footer-switch-location .chevron {
  display: flex;
  align-items: center;
}
#page-footer .footer-copyright .footer-switch-location .chevron svg {
  width: 16px;
  height: 16px;
}
#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: inline-flex;
  align-items: center;
}
.address .phone svg, .address .email svg {
  width: 1em;
  margin-right: 0.5em;
  color: rgba(var(--color-main));
}

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

.modular-section {
  position: relative;
}
@media only screen and (max-width: 992px) {
  .modular-section {
    background-color: transparent !important;
  }
}
.modular-section:has(.media.as-background) {
  overflow: clip;
}
.modular-section:has(.media.as-background) .content.has-background, .modular-section:has(.media.as-background) .quality ul li.has-background, .quality ul .modular-section:has(.media.as-background) li.has-background {
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 992px) {
  .modular-section:has(.media.as-background) .content.has-background, .modular-section:has(.media.as-background) .quality ul li.has-background, .quality ul .modular-section:has(.media.as-background) li.has-background {
    width: calc(100% - var(--gutter) * 2) !important;
    margin-top: calc(var(--gutter) * -2);
  }
}
.modular-section .wrapper {
  --section-gutter: 0;
}
.modular-section .wrapper.height-50 {
  min-height: 50vh;
}
.modular-section .wrapper.height-100 {
  min-height: 100vh;
}
.modular-section .wrapper.gutter-default {
  --section-gutter: clamp(2rem, var(--gutter-w), 4rem);
  padding: var(--gutter-h) 0;
  gap: var(--section-gutter);
}
@media only screen and (max-width: 992px) {
  .modular-section .wrapper {
    gap: 0;
  }
}
@media only screen and (max-width: 992px) {
  .modular-section .wrapper > * {
    flex: inherit;
  }
}
@media only screen and (max-width: 992px) {
  .modular-section:has(.media) .media {
    order: 1;
  }
  .modular-section:has(.media) .content, .modular-section:has(.media) .quality ul li, .quality ul .modular-section:has(.media) li {
    order: 10;
  }
}
.modular-section .media.width-default {
  flex: 1;
}
.modular-section .media.width-w100 {
  flex: inherit;
  width: 100%;
}
.modular-section .media.width-w75 {
  flex: inherit;
  width: calc(75% - var(--section-gutter) / 1.3333333333);
}
@media only screen and (max-width: 992px) {
  .modular-section .media.width-w75 {
    width: 100%;
  }
}
.modular-section .media.width-w50 {
  flex: inherit;
  width: calc(50% - var(--section-gutter) / 2);
}
@media only screen and (max-width: 992px) {
  .modular-section .media.width-w50 {
    width: 100%;
  }
}
.modular-section .media:not(.aspect-default) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modular-section .media.aspect-1-1 {
  aspect-ratio: 1/1;
}
.modular-section .media.aspect-4-3 {
  aspect-ratio: 4/3;
}
.modular-section .media.aspect-16-9 {
  aspect-ratio: 16/9;
}
.modular-section .media.valign-center {
  align-self: center;
}
.modular-section .media.valign-bottom {
  align-self: flex-end;
}
.modular-section .media.valign-top {
  align-self: start;
}
@media only screen and (max-width: 768px) {
  .modular-section .content footer, .modular-section .quality ul li footer, .quality ul .modular-section li footer {
    flex-direction: column;
  }
}
.modular-section .content footer > *, .modular-section .quality ul li footer > *, .quality ul .modular-section li footer > * {
  margin: 0;
}
.modular-section .content.align-left, .modular-section .quality ul li.align-left, .quality ul .modular-section li.align-left {
  margin-right: auto;
}
.modular-section .content.align-right, .modular-section .quality ul li.align-right, .quality ul .modular-section li.align-right {
  margin-left: auto;
}
.modular-section .content.text-align-center, .modular-section .quality ul li.text-align-center, .quality ul .modular-section li.text-align-center {
  text-align: center;
}
.modular-section .content.text-align-center footer, .modular-section .quality ul li.text-align-center footer, .quality ul .modular-section li.text-align-center footer {
  justify-content: center;
}
.modular-section .content.text-align-left, .modular-section .quality ul li.text-align-left, .quality ul .modular-section li.text-align-left {
  text-align: left;
}
.modular-section .content.text-align-right, .modular-section .quality ul li.text-align-right, .quality ul .modular-section li.text-align-right {
  text-align: right;
}
.modular-section .content.valign-center, .modular-section .quality ul li.valign-center, .quality ul .modular-section li.valign-center {
  justify-content: center;
}
.modular-section .content.valign-bottom, .modular-section .quality ul li.valign-bottom, .quality ul .modular-section li.valign-bottom {
  justify-content: end;
}
.modular-section .content.valign-space-between, .modular-section .quality ul li.valign-space-between, .quality ul .modular-section li.valign-space-between {
  justify-content: space-between;
}
.modular-section .content.valign-top, .modular-section .quality ul li.valign-top, .quality ul .modular-section li.valign-top {
  justify-content: start;
}
.modular-section .content.width-default, .modular-section .quality ul li.width-default, .quality ul .modular-section li.width-default {
  flex: 1;
}
.modular-section .content.width-w100, .modular-section .quality ul li.width-w100, .quality ul .modular-section li.width-w100 {
  flex: inherit;
  width: 100%;
}
.modular-section .content.width-w75, .modular-section .quality ul li.width-w75, .quality ul .modular-section li.width-w75 {
  flex: inherit;
  width: calc(75% - var(--section-gutter) / 1.3333333333);
}
@media only screen and (max-width: 992px) {
  .modular-section .content.width-w75, .modular-section .quality ul li.width-w75, .quality ul .modular-section li.width-w75 {
    width: 100%;
  }
}
.modular-section .content.width-w50, .modular-section .quality ul li.width-w50, .quality ul .modular-section li.width-w50 {
  flex: inherit;
  width: calc(50% - var(--section-gutter) / 2);
}
@media only screen and (max-width: 992px) {
  .modular-section .content.width-w50, .modular-section .quality ul li.width-w50, .quality ul .modular-section li.width-w50 {
    width: 100%;
  }
}
@media only screen and (max-width: 992px) {
  .modular-section .content, .modular-section .quality ul li, .quality ul .modular-section li {
    margin: auto;
    flex: inherit;
  }
}
.modular-section .media img {
  display: block;
}
.modular-section .media.as-background {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: left;
}
.modular-section .media.as-background img {
  width: 50%;
  object-fit: cover;
}
@media only screen and (max-width: 992px) {
  .modular-section .media.as-background {
    position: static;
  }
}
.modular-section .media[data-index="2"].as-background {
  justify-content: right;
}
.modular-section .gallery .swiper-navigation-prev {
  left: 0;
  bottom: 0;
  top: inherit;
  transform: translateY(50%) translateX(-50%);
}
.modular-section .gallery .swiper-navigation-next {
  right: 0;
  bottom: 0;
  top: inherit;
  transform: translateY(50%) translateX(50%);
}
.modular-section .gallery:not(.aspect-default) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modular-section .gallery.aspect-1-1 .swiper-slide {
  aspect-ratio: 1/1;
}
.modular-section .gallery.aspect-4-3 .swiper-slide {
  aspect-ratio: 4/3;
}
.modular-section .gallery.aspect-16-9 .swiper-slide {
  aspect-ratio: 16/9;
}
.modular-section .gallery img {
  display: block;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.modular-section .gallery.as-background {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: left;
}
@media only screen and (max-width: 992px) {
  .modular-section .gallery.as-background {
    position: static;
  }
}
.modular-section .gallery[data-index="2"].as-background {
  justify-content: right;
}
.modular-section .products {
  position: relative;
}
.modular-section .products .swiper-navigation-prev {
  top: 140px;
  transform: translateX(-50%);
}
.modular-section .products .swiper-navigation-next {
  top: 140px;
  transform: translateX(50%);
}

.modular-faq {
  position: relative;
  padding: var(--gutter-h) 0;
}
.modular-faq:nth-child(odd) {
  background: #f7f6f4;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 6px dashed rgba(0, 0, 0, 0.1);
}
.modular-faq .wrapper {
  align-items: center;
}
.modular-faq .wrapper .content, .modular-faq .wrapper .quality ul li, .quality ul .modular-faq .wrapper li {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  padding-top: 0px !important;
  padding-bottom: 0px !important;
  flex: inherit;
  width: 40%;
}
.modular-faq .wrapper .content h1, .modular-faq .wrapper .quality ul li h1, .quality ul .modular-faq .wrapper li h1, .modular-faq .wrapper .content h2, .modular-faq .wrapper .quality ul li h2, .quality ul .modular-faq .wrapper li h2, .modular-faq .wrapper .content h3, .modular-faq .wrapper .quality ul li h3, .quality ul .modular-faq .wrapper li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.modular-faq .wrapper .content h1:first-child, .modular-faq .wrapper .quality ul li h1:first-child, .quality ul .modular-faq .wrapper li h1:first-child, .modular-faq .wrapper .content h2:first-child, .modular-faq .wrapper .quality ul li h2:first-child, .quality ul .modular-faq .wrapper li h2:first-child, .modular-faq .wrapper .content h3:first-child, .modular-faq .wrapper .quality ul li h3:first-child, .quality ul .modular-faq .wrapper li h3:first-child {
  margin-top: 0;
}
.modular-faq .wrapper .content h1 span, .modular-faq .wrapper .quality ul li h1 span, .quality ul .modular-faq .wrapper li h1 span, .modular-faq .wrapper .content h2 span, .modular-faq .wrapper .quality ul li h2 span, .quality ul .modular-faq .wrapper li h2 span, .modular-faq .wrapper .content h3 span, .modular-faq .wrapper .quality ul li h3 span, .quality ul .modular-faq .wrapper li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.modular-faq .wrapper .content h1, .modular-faq .wrapper .quality ul li h1, .quality ul .modular-faq .wrapper li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.modular-faq .wrapper .content h2, .modular-faq .wrapper .quality ul li h2, .quality ul .modular-faq .wrapper li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.modular-faq .wrapper .content h3, .modular-faq .wrapper .quality ul li h3, .quality ul .modular-faq .wrapper li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.modular-faq .wrapper .content h4, .modular-faq .wrapper .quality ul li h4, .quality ul .modular-faq .wrapper li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.modular-faq .wrapper .content > h1:first-child, .modular-faq .wrapper .quality ul li > h1:first-child, .quality ul .modular-faq .wrapper li > h1:first-child,
.modular-faq .wrapper .content > h2:first-child,
.modular-faq .wrapper .quality ul li > h2:first-child,
.quality ul .modular-faq .wrapper li > h2:first-child,
.modular-faq .wrapper .content > h3:first-child,
.modular-faq .wrapper .quality ul li > h3:first-child,
.quality ul .modular-faq .wrapper li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.modular-faq .wrapper .content p, .modular-faq .wrapper .quality ul li p, .quality ul .modular-faq .wrapper li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.modular-faq .wrapper .content p:last-child, .modular-faq .wrapper .quality ul li p:last-child, .quality ul .modular-faq .wrapper li p:last-child, .modular-faq .wrapper .content p:last-of-type, .modular-faq .wrapper .quality ul li p:last-of-type, .quality ul .modular-faq .wrapper li p:last-of-type {
  margin-bottom: 0;
}
.modular-faq .wrapper .content p a, .modular-faq .wrapper .quality ul li p a, .quality ul .modular-faq .wrapper li p a {
  color: rgba(var(--color-link));
}
.modular-faq .wrapper .content p a:hover, .modular-faq .wrapper .quality ul li p a:hover, .quality ul .modular-faq .wrapper li p a:hover {
  text-decoration: underline;
}
.modular-faq .wrapper .content ul, .modular-faq .wrapper .quality ul li ul, .quality ul .modular-faq .wrapper li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.modular-faq .wrapper .content ul li, .modular-faq .wrapper .quality ul li ul li, .quality ul .modular-faq .wrapper li ul li {
  margin-bottom: 0.25em;
}
.modular-faq .wrapper .content strong, .modular-faq .wrapper .quality ul li strong, .quality ul .modular-faq .wrapper li strong {
  font-weight: var(--fw-bold);
}
.modular-faq .wrapper .content img.auto, .modular-faq .wrapper .quality ul li img.auto, .quality ul .modular-faq .wrapper li img.auto {
  height: auto;
}
.modular-faq .wrapper .content img.img-full-width, .modular-faq .wrapper .quality ul li img.img-full-width, .quality ul .modular-faq .wrapper li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.modular-faq .wrapper .content h1, .modular-faq .wrapper .quality ul li h1, .quality ul .modular-faq .wrapper li h1, .modular-faq .wrapper .content h2, .modular-faq .wrapper .quality ul li h2, .quality ul .modular-faq .wrapper li h2 {
  font-size: clamp(24px, 5vw, 50px) !important;
}
@media only screen and (max-width: 992px) {
  .modular-faq .wrapper .content, .modular-faq .wrapper .quality ul li, .quality ul .modular-faq .wrapper li {
    width: auto;
  }
}
.modular-faq .composition {
  margin-top: var(--gutter);
}
.modular-faq .modular-faq-thumb {
  margin-top: 2em;
  display: flex;
  align-items: center;
  gap: 0.25em;
}
.modular-faq .modular-faq-thumb p {
  margin: 0 !important;
}
.modular-faq .modular-faq-ask {
  margin-top: 2em;
  display: flex;
  align-items: center;
  gap: 1em;
}
.modular-faq .modular-faq-ask figure {
  background: rgba(0, 0, 0, 0.05);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
}
.modular-faq .modular-faq-ask figure svg {
  width: 38px;
  height: 38px;
}
.modular-faq .modular-faq-listing {
  padding-left: 0;
  padding-right: 0;
  flex: 1;
}
@media only screen and (max-width: 992px) {
  .modular-faq .modular-faq-listing {
    padding: 0;
  }
}
.modular-faq .modular-faq-listing .modular-faq-listing--item {
  background: rgba(var(--color-white));
  display: block;
  position: relative;
  padding: var(--gutter);
  padding-right: 100px;
  margin-bottom: 1em;
  box-shadow: 5px 5px 0px rgba(0, 0, 0, 0.1);
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 2px solid rgba(0, 0, 0, 0.5);
}
.modular-faq .modular-faq-listing .modular-faq-listing--item .modular-faq-like {
  font-weight: var(--fw-medium);
}
.modular-faq .modular-faq-listing .modular-faq-listing--item h6 {
  font-size: 1.2em;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item button {
  margin-left: 0.5em;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item > figure {
  position: absolute;
  right: var(--gutter);
  top: var(--gutter);
  transition: all 250ms ease-in-out;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item > figure svg {
  width: 30px;
  height: 30px;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  font-size: 1rem;
  max-height: 0;
  transition: max-height 250ms ease-in-out;
  overflow: hidden;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content h1, .modular-faq .modular-faq-listing .modular-faq-listing--item-content h2, .modular-faq .modular-faq-listing .modular-faq-listing--item-content h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content h1:first-child, .modular-faq .modular-faq-listing .modular-faq-listing--item-content h2:first-child, .modular-faq .modular-faq-listing .modular-faq-listing--item-content h3:first-child {
  margin-top: 0;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content h1 span, .modular-faq .modular-faq-listing .modular-faq-listing--item-content h2 span, .modular-faq .modular-faq-listing .modular-faq-listing--item-content h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content > h1:first-child,
.modular-faq .modular-faq-listing .modular-faq-listing--item-content > h2:first-child,
.modular-faq .modular-faq-listing .modular-faq-listing--item-content > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content p:last-child, .modular-faq .modular-faq-listing .modular-faq-listing--item-content p:last-of-type {
  margin-bottom: 0;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content p a {
  color: rgba(var(--color-link));
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content p a:hover {
  text-decoration: underline;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content ul li {
  margin-bottom: 0.25em;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content strong {
  font-weight: var(--fw-bold);
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content img.auto {
  height: auto;
}
.modular-faq .modular-faq-listing .modular-faq-listing--item-content img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.modular-faq .modular-faq-listing input {
  position: absolute;
  visibility: hidden;
}
.modular-faq .modular-faq-listing input:checked ~ .modular-faq-listing--item-content {
  max-height: 1000px;
}
.modular-faq .modular-faq-listing input:checked ~ figure {
  transform: rotate(90deg);
}

.modular-product-range {
  position: relative;
}
.modular-product-range .bg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: calc(var(--gutter) * -4);
  width: calc(50% + var(--gutter) * 8);
  height: calc(100% - var(--gutter-h));
  background: #f3f7f8;
  z-index: -1;
}
.modular-product-range.range-vitality .bg {
  background: linear-gradient(135deg, rgb(252, 236, 252) 0%, rgb(251, 166, 225) 100%);
}
.modular-product-range.range-wellness .bg {
  background: linear-gradient(135deg, rgb(227, 245, 171) 36%, rgb(198, 219, 116) 100%);
}
.modular-product-range .modular-product-range-total {
  display: flex;
  width: calc(50% - var(--gutter) * 2);
  align-items: center;
  gap: 1em;
  text-transform: uppercase;
  font-weight: var(--fw-regular);
  font-size: 12px;
  margin-top: calc(var(--gutter) * -1);
  height: calc(var(--gutter) * 2);
  transform: translateY(-50%);
  position: absolute;
  bottom: 100%;
  letter-spacing: 0.01em;
}
.modular-product-range .modular-product-range-total > *:nth-child(2) {
  flex: 1;
}
.modular-product-range .modular-product-range-total > *:nth-child(2) i {
  display: block;
  height: 1px;
  background: #000;
}
.modular-product-range .modular-product-range-name {
  font-weight: 1000 !important;
  font-size: 80px !important;
  color: rgba(0, 0, 0, 0.2);
  line-height: 1em !important;
  text-wrap: balance;
}
.modular-product-range > .wrapper {
  min-height: calc(100vh - var(--navigation-height));
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.modular-product-range > .wrapper:nth-child(1) {
  padding: var(--gutter-h) 0;
}
.modular-product-range > .wrapper:nth-child(2) {
  margin-top: calc(var(--gutter-h) * -0.5);
  padding-bottom: var(--gutter-h) 0;
}
.modular-product-range > .wrapper figure {
  order: 2;
  width: 50%;
  aspect-ratio: 1/1;
  position: relative;
}
.modular-product-range > .wrapper figure:before {
  content: "";
  position: absolute;
  bottom: 20px;
  left: 20px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.05);
  z-index: -1;
}
.modular-product-range > .wrapper figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modular-product-range > .wrapper .content, .modular-product-range > .wrapper .quality ul li, .quality ul .modular-product-range > .wrapper li {
  position: relative;
  z-index: 10;
  order: 1;
  width: 50%;
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
}
.modular-product-range > .wrapper .content h1, .modular-product-range > .wrapper .quality ul li h1, .quality ul .modular-product-range > .wrapper li h1, .modular-product-range > .wrapper .content h2, .modular-product-range > .wrapper .quality ul li h2, .quality ul .modular-product-range > .wrapper li h2, .modular-product-range > .wrapper .content h3, .modular-product-range > .wrapper .quality ul li h3, .quality ul .modular-product-range > .wrapper li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.modular-product-range > .wrapper .content h1:first-child, .modular-product-range > .wrapper .quality ul li h1:first-child, .quality ul .modular-product-range > .wrapper li h1:first-child, .modular-product-range > .wrapper .content h2:first-child, .modular-product-range > .wrapper .quality ul li h2:first-child, .quality ul .modular-product-range > .wrapper li h2:first-child, .modular-product-range > .wrapper .content h3:first-child, .modular-product-range > .wrapper .quality ul li h3:first-child, .quality ul .modular-product-range > .wrapper li h3:first-child {
  margin-top: 0;
}
.modular-product-range > .wrapper .content h1 span, .modular-product-range > .wrapper .quality ul li h1 span, .quality ul .modular-product-range > .wrapper li h1 span, .modular-product-range > .wrapper .content h2 span, .modular-product-range > .wrapper .quality ul li h2 span, .quality ul .modular-product-range > .wrapper li h2 span, .modular-product-range > .wrapper .content h3 span, .modular-product-range > .wrapper .quality ul li h3 span, .quality ul .modular-product-range > .wrapper li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.modular-product-range > .wrapper .content h1, .modular-product-range > .wrapper .quality ul li h1, .quality ul .modular-product-range > .wrapper li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.modular-product-range > .wrapper .content h2, .modular-product-range > .wrapper .quality ul li h2, .quality ul .modular-product-range > .wrapper li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.modular-product-range > .wrapper .content h3, .modular-product-range > .wrapper .quality ul li h3, .quality ul .modular-product-range > .wrapper li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.modular-product-range > .wrapper .content h4, .modular-product-range > .wrapper .quality ul li h4, .quality ul .modular-product-range > .wrapper li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.modular-product-range > .wrapper .content > h1:first-child, .modular-product-range > .wrapper .quality ul li > h1:first-child, .quality ul .modular-product-range > .wrapper li > h1:first-child,
.modular-product-range > .wrapper .content > h2:first-child,
.modular-product-range > .wrapper .quality ul li > h2:first-child,
.quality ul .modular-product-range > .wrapper li > h2:first-child,
.modular-product-range > .wrapper .content > h3:first-child,
.modular-product-range > .wrapper .quality ul li > h3:first-child,
.quality ul .modular-product-range > .wrapper li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.modular-product-range > .wrapper .content p, .modular-product-range > .wrapper .quality ul li p, .quality ul .modular-product-range > .wrapper li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.modular-product-range > .wrapper .content p:last-child, .modular-product-range > .wrapper .quality ul li p:last-child, .quality ul .modular-product-range > .wrapper li p:last-child, .modular-product-range > .wrapper .content p:last-of-type, .modular-product-range > .wrapper .quality ul li p:last-of-type, .quality ul .modular-product-range > .wrapper li p:last-of-type {
  margin-bottom: 0;
}
.modular-product-range > .wrapper .content p a, .modular-product-range > .wrapper .quality ul li p a, .quality ul .modular-product-range > .wrapper li p a {
  color: rgba(var(--color-link));
}
.modular-product-range > .wrapper .content p a:hover, .modular-product-range > .wrapper .quality ul li p a:hover, .quality ul .modular-product-range > .wrapper li p a:hover {
  text-decoration: underline;
}
.modular-product-range > .wrapper .content ul, .modular-product-range > .wrapper .quality ul li ul, .quality ul .modular-product-range > .wrapper li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.modular-product-range > .wrapper .content ul li, .modular-product-range > .wrapper .quality ul li ul li, .quality ul .modular-product-range > .wrapper li ul li {
  margin-bottom: 0.25em;
}
.modular-product-range > .wrapper .content strong, .modular-product-range > .wrapper .quality ul li strong, .quality ul .modular-product-range > .wrapper li strong {
  font-weight: var(--fw-bold);
}
.modular-product-range > .wrapper .content img.auto, .modular-product-range > .wrapper .quality ul li img.auto, .quality ul .modular-product-range > .wrapper li img.auto {
  height: auto;
}
.modular-product-range > .wrapper .content img.img-full-width, .modular-product-range > .wrapper .quality ul li img.img-full-width, .quality ul .modular-product-range > .wrapper li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.modular-product-range > .wrapper .content footer, .modular-product-range > .wrapper .quality ul li footer, .quality ul .modular-product-range > .wrapper li footer {
  margin-top: 2em;
}
.modular-product-range > .wrapper .slider {
  order: 3;
  margin-left: auto;
  width: 100%;
  z-index: 10;
  position: relative;
}
.modular-product-range > .wrapper .slider .swiper-navigation-prev,
.modular-product-range > .wrapper .slider .swiper-navigation-next {
  width: calc(var(--gutter) * 2);
  height: calc(var(--gutter) * 2);
}
.modular-product-range > .wrapper .slider .swiper-navigation-prev {
  right: 50%;
  top: 0;
  left: inherit;
  transform: translateY(-100%) translateX(0%);
  margin-top: calc(var(--gutter) * -1);
}
.modular-product-range > .wrapper .slider .swiper-navigation-next {
  transform: translateY(-100%) translateX(100%);
  right: 50%;
  top: 0;
  margin-top: calc(var(--gutter) * -1);
}
.modular-product-range > .wrapper .slider .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: var(--gutter);
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--gutter);
  background: #fff;
  box-shadow: 0px 0px var(--gutter) rgba(0, 0, 0, 0.1);
  gap: var(--gutter);
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-wrapper figure {
  width: 50%;
  aspect-ratio: 1/1;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-wrapper figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  text-align: left;
  font-size: 14px;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h1, .modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h2, .modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h1:first-child, .modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h2:first-child, .modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h3:first-child {
  margin-top: 0;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h1 span, .modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h2 span, .modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content > h1:first-child,
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content > h2:first-child,
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content p:last-child, .modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content p:last-of-type {
  margin-bottom: 0;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content p a {
  color: rgba(var(--color-link));
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content p a:hover {
  text-decoration: underline;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content ul li {
  margin-bottom: 0.25em;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content strong {
  font-weight: var(--fw-bold);
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content img.auto {
  height: auto;
}
.modular-product-range > .wrapper .slider .swiper-slide .swiper-slide-content img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.modular-product-range:nth-child(odd) .bg {
  left: inherit;
  right: calc(var(--gutter) * -4);
}
.modular-product-range:nth-child(odd) .modular-product-range-total {
  left: calc(50% + var(--gutter) * 2);
}
.modular-product-range:nth-child(odd) .modular-product-range-total > *:nth-child(2) {
  order: 1;
}
.modular-product-range:nth-child(odd) .modular-product-range-total > *:nth-child(1) {
  order: 2;
}
.modular-product-range:nth-child(odd) > .wrapper figure {
  order: 1;
}
.modular-product-range:nth-child(odd) > .wrapper figure:before {
  left: -20px;
}
.modular-product-range:nth-child(odd) > .wrapper .content, .modular-product-range:nth-child(odd) > .wrapper .quality ul li, .quality ul .modular-product-range:nth-child(odd) > .wrapper li {
  order: 2;
}

.modular-clinical {
  position: relative;
}
.modular-clinical > .wrapper {
  flex-direction: column;
  padding: var(--gutter-h) 0;
  gap: var(--gutter-h);
  align-items: center;
}
.modular-clinical > .wrapper:after {
  content: "";
  position: absolute;
  background: rgba(var(--page-theme-color-main), 0.1);
  top: 0;
  left: 50%;
  width: 100vw;
  height: 87%;
  transform: translateX(-50%);
  z-index: -1;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 6px dashed rgba(var(--page-theme-color-main), 0.3);
}
.modular-clinical .content, .modular-clinical .quality ul li, .quality ul .modular-clinical li {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  padding: 2em;
  text-align: center;
  max-width: 900px;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  background: rgba(var(--color-white));
  border: 6px solid #000;
  box-shadow: 0.5em 0.5em 0px rgba(0, 0, 0, 0.1);
}
.modular-clinical .content h1, .modular-clinical .quality ul li h1, .quality ul .modular-clinical li h1, .modular-clinical .content h2, .modular-clinical .quality ul li h2, .quality ul .modular-clinical li h2, .modular-clinical .content h3, .modular-clinical .quality ul li h3, .quality ul .modular-clinical li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.modular-clinical .content h1:first-child, .modular-clinical .quality ul li h1:first-child, .quality ul .modular-clinical li h1:first-child, .modular-clinical .content h2:first-child, .modular-clinical .quality ul li h2:first-child, .quality ul .modular-clinical li h2:first-child, .modular-clinical .content h3:first-child, .modular-clinical .quality ul li h3:first-child, .quality ul .modular-clinical li h3:first-child {
  margin-top: 0;
}
.modular-clinical .content h1 span, .modular-clinical .quality ul li h1 span, .quality ul .modular-clinical li h1 span, .modular-clinical .content h2 span, .modular-clinical .quality ul li h2 span, .quality ul .modular-clinical li h2 span, .modular-clinical .content h3 span, .modular-clinical .quality ul li h3 span, .quality ul .modular-clinical li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.modular-clinical .content h1, .modular-clinical .quality ul li h1, .quality ul .modular-clinical li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.modular-clinical .content h2, .modular-clinical .quality ul li h2, .quality ul .modular-clinical li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.modular-clinical .content h3, .modular-clinical .quality ul li h3, .quality ul .modular-clinical li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.modular-clinical .content h4, .modular-clinical .quality ul li h4, .quality ul .modular-clinical li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.modular-clinical .content > h1:first-child, .modular-clinical .quality ul li > h1:first-child, .quality ul .modular-clinical li > h1:first-child,
.modular-clinical .content > h2:first-child,
.modular-clinical .quality ul li > h2:first-child,
.quality ul .modular-clinical li > h2:first-child,
.modular-clinical .content > h3:first-child,
.modular-clinical .quality ul li > h3:first-child,
.quality ul .modular-clinical li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.modular-clinical .content p, .modular-clinical .quality ul li p, .quality ul .modular-clinical li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.modular-clinical .content p:last-child, .modular-clinical .quality ul li p:last-child, .quality ul .modular-clinical li p:last-child, .modular-clinical .content p:last-of-type, .modular-clinical .quality ul li p:last-of-type, .quality ul .modular-clinical li p:last-of-type {
  margin-bottom: 0;
}
.modular-clinical .content p a, .modular-clinical .quality ul li p a, .quality ul .modular-clinical li p a {
  color: rgba(var(--color-link));
}
.modular-clinical .content p a:hover, .modular-clinical .quality ul li p a:hover, .quality ul .modular-clinical li p a:hover {
  text-decoration: underline;
}
.modular-clinical .content ul, .modular-clinical .quality ul li ul, .quality ul .modular-clinical li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.modular-clinical .content ul li, .modular-clinical .quality ul li ul li, .quality ul .modular-clinical li ul li {
  margin-bottom: 0.25em;
}
.modular-clinical .content strong, .modular-clinical .quality ul li strong, .quality ul .modular-clinical li strong {
  font-weight: var(--fw-bold);
}
.modular-clinical .content img.auto, .modular-clinical .quality ul li img.auto, .quality ul .modular-clinical li img.auto {
  height: auto;
}
.modular-clinical .content img.img-full-width, .modular-clinical .quality ul li img.img-full-width, .quality ul .modular-clinical li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.modular-clinical .content h2, .modular-clinical .quality ul li h2, .quality ul .modular-clinical li h2 {
  font-size: clamp(28px, 5vw, 50px) !important;
}
.modular-clinical .images {
  max-width: 900px;
  display: grid;
  grid-template-columns: 7fr 2fr;
  grid-template-rows: 1fr 2fr;
  gap: 0 6rem;
  grid-template-areas: "percentage negative" "positive negative";
}
@media only screen and (max-width: 992px) {
  .modular-clinical .images {
    gap: 1em;
    grid-template-rows: 1fr 1fr;
    grid-template-areas: "percentage percentage" "positive negative";
  }
}
.modular-clinical .images .percentage {
  grid-area: percentage;
}
.modular-clinical .images .positive {
  grid-area: positive;
}
.modular-clinical .images .negative {
  grid-area: negative;
}
.modular-clinical .images .percentage {
  display: flex;
  align-items: center;
  justify-content: center;
}
.modular-clinical .images .percentage div {
  max-width: 600px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1em;
}
@media only screen and (max-width: 992px) {
  .modular-clinical .images .percentage div {
    text-align: center;
    flex-direction: column;
  }
}
.modular-clinical .images .percentage span {
  color: rgba(var(--page-theme-color-main));
  font-size: 100px;
  font-weight: 900;
}
.modular-clinical .images .percentage p {
  font-size: 1.2em;
  font-weight: 900;
}
.modular-clinical .images .positive,
.modular-clinical .images .negative {
  align-self: flex-end;
  animation: squiggly-light-anim 0.34s linear infinite;
}

.modular-retailers {
  background: #f7f6f4;
}
.modular-retailers > .wrapper {
  padding: var(--gutter-h) 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--gutter);
}
.modular-retailers > .wrapper > * {
  flex: 1;
  min-width: 300px;
  padding: var(--gutter);
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 3px solid rgba(0, 0, 0, 0.1);
}
.modular-retailers > .wrapper > * h3 {
  margin-bottom: 1em;
}
.modular-retailers > .wrapper > * figure {
  width: 100%;
  max-width: 260px;
  aspect-ratio: 16/9;
  margin-bottom: 1em;
}
.modular-retailers > .wrapper > * figure img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.modular-benefits > .wrapper {
  position: relative;
  align-items: center;
  padding: var(--gutter-h) 0;
}
.modular-benefits > .wrapper > * {
  flex: inherit;
  width: 50%;
}
.modular-benefits > .wrapper:not(:last-child):before {
  content: "+";
  position: absolute;
  top: 100%;
  left: 50%;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%);
  width: 60px;
  font-size: clamp(80px, 20vw, 200px);
  aspect-ratio: 1/1;
  font-family: var(--font-special);
  animation: squiggly-light-anim 0.34s linear infinite;
}
.modular-benefits > .wrapper:nth-child(1) {
  min-height: 100vh;
}
.modular-benefits > .wrapper:nth-child(1):before {
  content: "";
  position: absolute;
  top: 100%;
  left: 40%;
  transform-origin: center top;
  transform: translateX(-50%) translateY(-50%) rotate(20deg);
  width: calc(var(--gutter-h) * 4);
  max-width: 300px;
  aspect-ratio: 1/1;
  background: url("../images/arrow-curved.png") center center no-repeat;
  background-size: contain;
  pointer-events: none;
}
@media only screen and (max-width: 992px) {
  .modular-benefits > .wrapper:nth-child(1):before {
    width: 40%;
    transform: translateX(-50%) translateY(-50%) rotate(0deg);
  }
}
.modular-benefits > .wrapper:nth-child(1):after {
  content: "";
  position: absolute;
  background: #f9f9f9;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 100%;
  transform: translateX(-50%);
  z-index: -1;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 6px dashed #eee;
}
.modular-benefits .content, .modular-benefits .quality ul li, .quality ul .modular-benefits li {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  position: relative;
}
.modular-benefits .content h1, .modular-benefits .quality ul li h1, .quality ul .modular-benefits li h1, .modular-benefits .content h2, .modular-benefits .quality ul li h2, .quality ul .modular-benefits li h2, .modular-benefits .content h3, .modular-benefits .quality ul li h3, .quality ul .modular-benefits li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.modular-benefits .content h1:first-child, .modular-benefits .quality ul li h1:first-child, .quality ul .modular-benefits li h1:first-child, .modular-benefits .content h2:first-child, .modular-benefits .quality ul li h2:first-child, .quality ul .modular-benefits li h2:first-child, .modular-benefits .content h3:first-child, .modular-benefits .quality ul li h3:first-child, .quality ul .modular-benefits li h3:first-child {
  margin-top: 0;
}
.modular-benefits .content h1 span, .modular-benefits .quality ul li h1 span, .quality ul .modular-benefits li h1 span, .modular-benefits .content h2 span, .modular-benefits .quality ul li h2 span, .quality ul .modular-benefits li h2 span, .modular-benefits .content h3 span, .modular-benefits .quality ul li h3 span, .quality ul .modular-benefits li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.modular-benefits .content h1, .modular-benefits .quality ul li h1, .quality ul .modular-benefits li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.modular-benefits .content h2, .modular-benefits .quality ul li h2, .quality ul .modular-benefits li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.modular-benefits .content h3, .modular-benefits .quality ul li h3, .quality ul .modular-benefits li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.modular-benefits .content h4, .modular-benefits .quality ul li h4, .quality ul .modular-benefits li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.modular-benefits .content > h1:first-child, .modular-benefits .quality ul li > h1:first-child, .quality ul .modular-benefits li > h1:first-child,
.modular-benefits .content > h2:first-child,
.modular-benefits .quality ul li > h2:first-child,
.quality ul .modular-benefits li > h2:first-child,
.modular-benefits .content > h3:first-child,
.modular-benefits .quality ul li > h3:first-child,
.quality ul .modular-benefits li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.modular-benefits .content p, .modular-benefits .quality ul li p, .quality ul .modular-benefits li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.modular-benefits .content p:last-child, .modular-benefits .quality ul li p:last-child, .quality ul .modular-benefits li p:last-child, .modular-benefits .content p:last-of-type, .modular-benefits .quality ul li p:last-of-type, .quality ul .modular-benefits li p:last-of-type {
  margin-bottom: 0;
}
.modular-benefits .content p a, .modular-benefits .quality ul li p a, .quality ul .modular-benefits li p a {
  color: rgba(var(--color-link));
}
.modular-benefits .content p a:hover, .modular-benefits .quality ul li p a:hover, .quality ul .modular-benefits li p a:hover {
  text-decoration: underline;
}
.modular-benefits .content ul, .modular-benefits .quality ul li ul, .quality ul .modular-benefits li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.modular-benefits .content ul li, .modular-benefits .quality ul li ul li, .quality ul .modular-benefits li ul li {
  margin-bottom: 0.25em;
}
.modular-benefits .content strong, .modular-benefits .quality ul li strong, .quality ul .modular-benefits li strong {
  font-weight: var(--fw-bold);
}
.modular-benefits .content img.auto, .modular-benefits .quality ul li img.auto, .quality ul .modular-benefits li img.auto {
  height: auto;
}
.modular-benefits .content img.img-full-width, .modular-benefits .quality ul li img.img-full-width, .quality ul .modular-benefits li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.modular-benefits .content .number, .modular-benefits .quality ul li .number, .quality ul .modular-benefits li .number {
  position: absolute;
  top: 0;
  left: 0;
  width: var(--gutter-w);
  height: var(--gutter-w);
  margin-top: -40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(50px, 10vw, 100px);
  color: rgba(var(--color-white));
  font-family: var(--font-special);
  z-index: -1;
}
.modular-benefits .content .number .bg, .modular-benefits .quality ul li .number .bg, .quality ul .modular-benefits li .number .bg {
  position: absolute;
  width: 300%;
  height: 300%;
  -webkit-mask-box-image: url("../images/background-spot-mask.svg");
  mask-box-image: url("../images/background-spot-mask.svg");
  background: rgba(var(--page-theme-color-main));
  z-index: -1;
}
@media only screen and (max-width: 992px) {
  .modular-benefits .content .number .bg, .modular-benefits .quality ul li .number .bg, .quality ul .modular-benefits li .number .bg {
    width: 200%;
    height: 200%;
  }
}
.modular-benefits .words-container {
  font-weight: 800;
  font-size: clamp(26px, 7vw, 48px);
  line-height: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4em;
}
.modular-benefits .words {
  max-width: 900px;
  text-align: center;
}
.modular-benefits .words .typed-text {
  margin-left: 0.2em;
  color: rgba(var(--page-theme-color-main));
}
.modular-benefits .words .cursor {
  display: inline-block;
  background-color: #000;
  margin-left: 0.1rem;
  width: 3px;
  animation: blink 1s infinite;
}
.modular-benefits .words .cursor.typing {
  animation: none;
}
@keyframes blink {
  0% {
    background-color: #000;
  }
  49% {
    background-color: #000;
  }
  50% {
    background-color: transparent;
  }
  99% {
    background-color: transparent;
  }
  100% {
    background-color: #000;
  }
}
.modular-benefits figure {
  display: flex;
}
.modular-benefits figure img {
  animation: squiggly-light-anim 0.34s linear infinite;
  width: 100%;
  max-width: 600px;
}

:root {
  --gutter-grid: 0;
  --product-column-min-width: 300px;
  /*
  --product-column: 4;

  @include lt-xl{
    --product-column: 3;
  }
  @include lt-l{
    --product-column: 2;
  }
  @include lt-m{
    --product-column: 2;
  }
  @include lt-xs{
    --product-column: 1;
    .card-highlight{
      grid-column: span 1;
    }
  }
   */
}

.wbx-trust-messages {
  margin-top: 1em;
  order: 100;
}
.wbx-trust-messages > .wbx-trust-messages-wrapper ul {
  display: flex;
  flex-direction: column;
}
.wbx-trust-messages > .wbx-trust-messages-wrapper ul li {
  position: relative;
  padding: 1em;
  padding-left: 3em;
  border-bottom: 1px solid #eee;
}
.wbx-trust-messages > .wbx-trust-messages-wrapper ul li h6 {
  margin-bottom: 0.5em;
}
.wbx-trust-messages > .wbx-trust-messages-wrapper ul li figure {
  aspect-ratio: 1/1;
  position: absolute;
  top: 1em;
  left: 0;
  width: 30px;
  color: rgba(var(--color-success));
}
.wbx-trust-messages > .wbx-trust-messages-wrapper ul li figure svg {
  width: 100% !important;
}

.wbx-badge-status {
  font-size: 11px;
}

.wbx-query-display-numbers {
  text-transform: uppercase;
  font-weight: var(--fw-bold);
}

.weebox-cart-active #page {
  transform: translateX(-10%);
}

.wbx-product-main {
  /*
  .wbx-product-main-wrapper{
    width: var(--wrapper-width);
    margin: auto;
    display: grid;
    gap: 2em 2em;
    grid-auto-columns: auto;
    grid-template-columns: minmax(0, 50fr) minmax(0, 50fr); // Fix Swiper width explosing...
    grid-template-areas:
    "breadcrumb breadcrumb"
    "product-header product-header"
    "product-details product-details"
    "product-related-brand product-related-brand"
    "product-related-category product-related-category"
    "product-related-brandline product-related-brandline";

    @include lt-m{
      grid-template-columns: minmax(0, 1fr);
      grid-template-areas:
    "breadcrumb"
    "product-image"
    "product-resume"
    "product-details"
    "product-related-brand"
    "product-related-category"
    "product-related-brandline";
    }
  }
  */
}
.wbx-product-main .wbx-product-related-brand {
  grid-area: product-related-brand;
}
.wbx-product-main .wbx-product-related-category {
  grid-area: product-related-category;
}
.wbx-product-main .wbx-product-related-brandline {
  grid-area: product-related-brandline;
}
.wbx-product-main .wbx-product-resume-footer {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
.wbx-product-main .wbx-product-name {
  font-size: 1em;
  line-height: 1em;
}
.wbx-product-main .wbx-product-name span:not(:first-child):last-child {
  font-size: 0.8em;
  font-weight: var(--fw-medium);
}
.wbx-product-main .wbx-product-header .wbx-product-header-wrapper {
  padding: var(--gutter-h) 0;
  display: flex;
  gap: var(--gutter-h) var(--gutter-w);
}
.wbx-product-main .wbx-product-header .wbx-product-header-wrapper > * {
  width: 50%;
}
@media only screen and (max-width: 992px) {
  .wbx-product-main .wbx-product-header .wbx-product-header-wrapper > * {
    width: 100%;
  }
}
@media only screen and (max-width: 992px) {
  .wbx-product-main .wbx-product-header .wbx-product-header-wrapper {
    flex-direction: column;
    gap: 2em 0;
  }
}

.wbx-catalog-main {
  width: 100%;
}
.wbx-catalog-main .card-highlight {
  grid-column: span 2;
}
@media only screen and (max-width: 576px) {
  .wbx-catalog-main .card-highlight {
    grid-column: span 1;
  }
}
.wbx-catalog-main .wbx-catalog-main-wrapper {
  margin: auto;
  padding-bottom: var(--gutter-h);
  width: var(--wrapper-width);
  max-width: var(--wrapper-max-width);
  display: grid;
  grid-template-columns: 1fr;
  gap: 0 1em;
  grid-template-areas: "catalog-search" "breadcrumb" "catalog-header" "catalog-sorting" "catalog-filters" "catalog-filters-active" "catalog-listing" "catalog-pagination";
}

.wbx-catalog-header {
  grid-area: catalog-header;
}

.wbx-catalog-aside {
  grid-area: catalog-aside;
}

.wbx-catalog-main--with-aside .wbx-catalog-main-wrapper {
  display: grid;
  grid-template-columns: 300px auto auto;
  grid-template-rows: min-content;
  gap: 0 1em;
  grid-template-areas: "catalog-search catalog-search catalog-search" "breadcrumb breadcrumb breadcrumb" "catalog-aside catalog-header catalog-header" "catalog-aside catalog-sorting catalog-sorting" "catalog-aside catalog-filters catalog-filters" "catalog-aside catalog-filters-active catalog-filters-active" "catalog-aside catalog-listing catalog-listing" "catalog-aside catalog-pagination catalog-pagination";
}
@media only screen and (max-width: 992px) {
  .wbx-catalog-main--with-aside .wbx-catalog-main-wrapper {
    gap: 1em 0;
    grid-template-columns: auto;
    grid-template-areas: "catalog-search" "breadcrumb" "catalog-header" "catalog-sorting" "catalog-aside" "catalog-filters" "catalog-filters-active" "catalog-listing" "catalog-pagination";
  }
}

/*
* Styling product cards
*/
.wbx-product-details > .wbx-product-details-wrapper {
  gap: inherit !important;
}

.wbx-product-cards {
  gap: 2em 2em;
  /*
   * Grid listing
   */
}
.wbx-grid-listing .wbx-product-cards {
  gap: 0;
}

.swiper-container {
  position: relative;
}
.swiper-container:has(.swiper-scrollbar) {
  padding-bottom: 2em;
}

.wbx-product-card {
  /*
   * Grid listing
   */
}
.swiper .wbx-product-card {
  border: 0px;
}
@media only screen and (max-width: 576px) {
  .wbx-product-card {
    padding: 0;
  }
}
.wbx-product-card .wbx-product-card-preview {
  display: flex;
  align-items: center;
}
.wbx-product-card .wbx-product-card-title .wbx-product-brand-name {
  display: block;
  color: rgba(var(--color-main), 1);
  font-size: 0.8em;
}
.wbx-grid-listing .wbx-product-card {
  padding: 2em 0;
  padding-right: 2em;
  border: 0px;
  border-bottom: 1px solid #ddd;
}
@media only screen and (max-width: 992px) {
  .wbx-catalog-aside {
    display: none;
  }
}
.wbx-catalog-aside .wbx-categories ~ * {
  margin-top: var(--gutter-grid);
}
.wbx-catalog-aside .wbx-categories .wbx-categories-select {
  display: none;
}
@media only screen and (max-width: 992px) {
  .wbx-catalog-aside .wbx-categories .wbx-categories-select {
    display: block;
  }
}
@media only screen and (max-width: 992px) {
  .wbx-catalog-aside .wbx-categories .wbx-categories-list {
    display: none;
  }
}

.wbx-categories-list ul li > a {
  display: block;
  padding: 0.5em;
}
.wbx-categories-list ul li > a:hover {
  background: rgba(0, 0, 0, 0.025);
}
.wbx-categories-list ul li.active > a {
  font-weight: var(--fw-bold);
}
.wbx-categories-list ul > li {
  position: relative;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.wbx-categories-list ul > li.has-child:before {
  content: "+";
  position: absolute;
  right: 0;
  top: 0;
  padding: 0.5em;
}
.wbx-categories-list ul > li ul {
  margin-left: 1em;
}
.wbx-categories-list ul > li.has-child.expended:before {
  content: "-";
}
.wbx-categories-list ul > li.has-child.expended > ul {
  display: block;
}
.wbx-categories-list ul > li:last-child {
  border-bottom: 0px;
}

.wbx-query-search {
  margin: 0 calc(var(--page-gutter-width) * -1);
  width: calc(100% + var(--page-gutter-width) + var(--page-gutter-width));
  padding: 1em var(--page-gutter-width);
  border-radius: 0;
  position: relative;
  background: #111;
}
.wbx-query-search .wbx-advanced-search {
  color: rgba(var(--color-white));
  padding: 0 var(--gutter-grid);
}

.form-input-selected-count i {
  background: rgba(0, 0, 0, 0.75) !important;
}

.wbx-products-listing,
.wbx-pagination,
.wbx-query-display,
.wbx-query-filters,
.wbx-filters-active {
  margin-bottom: 1em;
}

.wbx-query-filters .wbx-query-filters-item {
  background: rgb(0, 0, 0);
  color: #fff;
}
.wbx-query-filters .wbx-query-filters-item .form-input-item {
  font-weight: 600;
  letter-spacing: 0.05em;
}
.wbx-query-filters .wbx-query-filters-item > [class*=form-] {
  margin: 0;
  line-height: 34px;
  font-size: 13px;
  color: #fff;
  text-transform: uppercase;
}
.wbx-query-filters .wbx-query-filters-item > [class*=form-] input, .wbx-query-filters .wbx-query-filters-item > [class*=form-] select {
  text-transform: uppercase;
}
.wbx-query-filters .form-checkbox {
  width: auto;
}
.wbx-query-filters .form-checkbox .form-input {
  min-height: 30px;
}
.wbx-query-filters .form-label {
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  color: #fff;
}
.wbx-query-filters .form-input {
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.wbx-query-filters-aside .wbx-query-filters-container .wbx-query-filters-item {
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
  min-height: 40px;
}

.page-template-registration,
.page-template-checkout,
.page-template-cart {
  background: rgba(var(--color-black), 0.05);
}

.wbx-checkout-order-actions {
  display: inline-flex;
  gap: 1em;
}

.wbx-registration,
.wbx-checkout-main {
  width: 100%;
  margin-bottom: var(--gutter);
}
.wbx-registration > header,
.wbx-checkout-main > header {
  margin-bottom: var(--gutter);
}
.wbx-registration > header > .wrapper h1,
.wbx-checkout-main > header > .wrapper h1 {
  margin-bottom: 0 !important;
}

/*
 * Options
 */
.form-option {
  margin-bottom: 2em;
}
.form-option .form-input {
  margin-bottom: 2em;
}
.form-option.attribute_pizza_ingredients > .form-input {
  gap: 2em 1em;
}
.form-option.attribute_pizza_ingredients > .form-input .form-input-label-wrapper {
  border-radius: 6px;
  padding-bottom: 1em;
  border: 2px solid rgba(0, 0, 0, 0.05);
}
.form-option.attribute_pizza_ingredients > .form-input .form-input-label-wrapper figure {
  background: none !important;
}
.form-option.attribute_pizza_ingredients > .form-input .form-input-label-wrapper .form-input-label-price {
  position: absolute;
  padding: 0.25em 0.5em;
  background: #eee;
  color: #000;
  bottom: 0;
  transform: translateY(50%);
  border-radius: 4px;
}
.form-option.attribute_pizza_ingredients > .form-input .form-input-label-wrapper:hover {
  border-color: rgba(0, 0, 0, 0.2);
}
.form-option.attribute_pizza_ingredients > .form-input .active .form-input-label-wrapper,
.form-option.attribute_pizza_ingredients > .form-input input:checked ~ .form-input-label-wrapper {
  border-color: rgb(0, 0, 0);
}
.form-option.attribute_pizza_ingredients > .form-input .active .form-input-label-wrapper .form-input-label-price,
.form-option.attribute_pizza_ingredients > .form-input input:checked ~ .form-input-label-wrapper .form-input-label-price {
  background: #0a0e14;
  color: #fff;
}

.wbx-button-shortcuts {
  display: flex;
}

:root {
  --color-white: 255, 255, 255;
  --color-whatsapp: 37, 211, 102;
  --color-main-light: 255, 248, 237;
  --color-main: 232, 65, 57;
  --color-main-dark: 152, 7, 0;
  --color-secondary: 0, 0, 0;
  --color-secondary-dark: 0, 0, 0;
  --color-third: 0, 0, 0;
  --color-third-dark: 0, 0, 0;
  --font-title: "Montserrat", sans-serif;
  --font-content: "futura-pt", sans-serif;
  --font-special: "Love Ya Like A Sister", cursive;
  --color-link: 30, 110, 160;
  --gutter-grid: 2em;
  --gutter: 2rem;
  --gutter-w: clamp(1rem, 20vw, 4rem);
  --gutter-h: clamp(1rem, 20vh, 6rem);
  --gutter-padding: clamp(1em, var(--gutter-h), 4em) clamp(1em, var(--gutter-w), 4em);
}
@media only screen and (max-width: 992px) {
  :root {
    --gutter: 1rem;
  }
}

.section-registration-form {
  background: rgba(var(--color-white));
}
.section-registration-form #form-registration-success {
  display: none;
}
.section-registration-form > .wrapper {
  flex-direction: column;
}
.section-registration-form > .wrapper > * {
  max-width: 900px;
  margin: auto;
}
.section-registration-form > .wrapper h2 {
  font-size: clamp(24px, 5vw, 60px);
  margin-bottom: 1em;
}

#page-footer {
  background: rgba(var(--color-white), 1);
  color: rgba(var(--color-black), 1);
}
#page-footer .footer-contact {
  padding: var(--gutter);
}
body {
  background: #ffffff;
}

.swiper-pagination-bullet-active {
  background: rgba(var(--color-main));
}

.swiper-navigation-prev,
.swiper-navigation-next,
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  overflow: hidden;
  background: #000;
  color: #fff;
  font-family: var(--font-special);
  width: calc(var(--gutter) * 2);
  height: calc(var(--gutter) * 2);
  text-align: center;
  font-size: 30px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 200;
  display: flex;
  align-items: center;
  justify-content: center;
  left: 0;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 2px dashed rgba(0, 0, 0, 0.1);
  box-shadow: 5px 5px 0px rgba(0, 0, 0, 0.1);
}
.swiper-navigation-prev svg,
.swiper-navigation-next svg,
.swiper-button-prev svg,
.swiper-button-next svg {
  width: 36px;
  height: 36px;
}
.swiper-navigation-prev:hover,
.swiper-navigation-next:hover,
.swiper-button-prev:hover,
.swiper-button-next:hover {
  background: rgba(var(--color-main), 1);
}
.swiper-navigation-prev:after,
.swiper-navigation-next:after,
.swiper-button-prev:after,
.swiper-button-next:after {
  display: none;
}
.swiper-navigation-prev span,
.swiper-navigation-next span,
.swiper-button-prev span,
.swiper-button-next span {
  transform: translateY(5px);
}
.swiper-navigation-prev.swiper-button-disabled,
.swiper-navigation-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  pointer-events: none;
  visibility: hidden;
}
.swiper-navigation-prev.swiper-button-disabled svg,
.swiper-navigation-next.swiper-button-disabled svg,
.swiper-button-prev.swiper-button-disabled svg,
.swiper-button-next.swiper-button-disabled svg {
  opacity: 0.3;
}

.swiper-navigation-next {
  left: inherit;
  right: 0;
}

/**************************
  HOMEPAGE
**************************/
@keyframes floatPillBox {
  0% {
    transform: translatey(0px) rotate(-9deg);
  }
  50% {
    transform: translatey(-10px) rotate(-10deg);
  }
  100% {
    transform: translatey(0px) rotate(-9deg);
  }
}
@keyframes floatBox {
  0% {
    transform: translatey(0px) rotate(6deg);
  }
  50% {
    transform: translatey(20px) rotate(8deg);
  }
  100% {
    transform: translatey(0px) rotate(6deg);
  }
}
@keyframes floatPills {
  0% {
    transform: translatey(0px) rotate(5deg);
  }
  50% {
    transform: translatey(10px) rotate(4deg);
  }
  100% {
    transform: translatey(0px) rotate(5deg);
  }
}
.banner-product {
  position: relative;
  padding-bottom: var(--gutter-h);
}
.banner-product .wrapper:nth-child(1) {
  z-index: 10;
  position: relative;
  align-items: center;
}
.banner-product .wrapper:nth-child(1) > * {
  flex: 1;
}
.banner-product .tags {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: 0px !important;
  margin-bottom: 1em !important;
}
.banner-product .tags li > * {
  font-size: clamp(16px, 5vw, 18px);
  border-color: rgba(var(--color-black));
  background: rgba(var(--color-white));
  color: rgba(var(--color-black));
}
.banner-product .tags li > *:after {
  display: none;
}
.banner-product .content, .banner-product .quality ul li, .quality ul .banner-product li {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
}
.banner-product .content h1, .banner-product .quality ul li h1, .quality ul .banner-product li h1, .banner-product .content h2, .banner-product .quality ul li h2, .quality ul .banner-product li h2, .banner-product .content h3, .banner-product .quality ul li h3, .quality ul .banner-product li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.banner-product .content h1:first-child, .banner-product .quality ul li h1:first-child, .quality ul .banner-product li h1:first-child, .banner-product .content h2:first-child, .banner-product .quality ul li h2:first-child, .quality ul .banner-product li h2:first-child, .banner-product .content h3:first-child, .banner-product .quality ul li h3:first-child, .quality ul .banner-product li h3:first-child {
  margin-top: 0;
}
.banner-product .content h1 span, .banner-product .quality ul li h1 span, .quality ul .banner-product li h1 span, .banner-product .content h2 span, .banner-product .quality ul li h2 span, .quality ul .banner-product li h2 span, .banner-product .content h3 span, .banner-product .quality ul li h3 span, .quality ul .banner-product li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.banner-product .content h1, .banner-product .quality ul li h1, .quality ul .banner-product li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.banner-product .content h2, .banner-product .quality ul li h2, .quality ul .banner-product li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.banner-product .content h3, .banner-product .quality ul li h3, .quality ul .banner-product li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.banner-product .content h4, .banner-product .quality ul li h4, .quality ul .banner-product li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.banner-product .content > h1:first-child, .banner-product .quality ul li > h1:first-child, .quality ul .banner-product li > h1:first-child,
.banner-product .content > h2:first-child,
.banner-product .quality ul li > h2:first-child,
.quality ul .banner-product li > h2:first-child,
.banner-product .content > h3:first-child,
.banner-product .quality ul li > h3:first-child,
.quality ul .banner-product li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.banner-product .content p, .banner-product .quality ul li p, .quality ul .banner-product li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.banner-product .content p:last-child, .banner-product .quality ul li p:last-child, .quality ul .banner-product li p:last-child, .banner-product .content p:last-of-type, .banner-product .quality ul li p:last-of-type, .quality ul .banner-product li p:last-of-type {
  margin-bottom: 0;
}
.banner-product .content p a, .banner-product .quality ul li p a, .quality ul .banner-product li p a {
  color: rgba(var(--color-link));
}
.banner-product .content p a:hover, .banner-product .quality ul li p a:hover, .quality ul .banner-product li p a:hover {
  text-decoration: underline;
}
.banner-product .content ul, .banner-product .quality ul li ul, .quality ul .banner-product li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.banner-product .content ul li, .banner-product .quality ul li ul li, .quality ul .banner-product li ul li {
  margin-bottom: 0.25em;
}
.banner-product .content strong, .banner-product .quality ul li strong, .quality ul .banner-product li strong {
  font-weight: var(--fw-bold);
}
.banner-product .content img.auto, .banner-product .quality ul li img.auto, .quality ul .banner-product li img.auto {
  height: auto;
}
.banner-product .content img.img-full-width, .banner-product .quality ul li img.img-full-width, .quality ul .banner-product li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.banner-product .content p:first-of-type strong, .banner-product .quality ul li p:first-of-type strong, .quality ul .banner-product li p:first-of-type strong {
  color: rgba(var(--page-theme-color-main)) !important;
  font-size: 2em;
}
@media only screen and (max-width: 768px) {
  .banner-product .content footer, .banner-product .quality ul li footer, .quality ul .banner-product li footer {
    flex-direction: column;
  }
}
.banner-product .content footer > *, .banner-product .quality ul li footer > *, .quality ul .banner-product li footer > * {
  margin: 0;
}
.banner-product:nth-child(even) .wrapper .content, .banner-product:nth-child(even) .wrapper .quality ul li, .quality ul .banner-product:nth-child(even) .wrapper li {
  order: 1;
}
.banner-product:nth-child(even) .wrapper .image {
  order: 2;
}
@media only screen and (max-width: 768px) {
  .banner-product .wrapper .content, .banner-product .wrapper .quality ul li, .quality ul .banner-product .wrapper li {
    order: 2 !important;
  }
  .banner-product .wrapper .image {
    order: 1 !important;
  }
}

#swiper_wbx_related_products_category {
  position: relative;
}
#swiper_wbx_related_products_category .swiper-navigation-prev {
  top: 140px;
  transform: translateX(-50%);
}
#swiper_wbx_related_products_category .swiper-navigation-next {
  top: 140px;
  transform: translateX(50%);
}

.wbx-catalog-header {
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 40px;
}
@media only screen and (max-width: 992px) {
  .wbx-catalog-header {
    flex-direction: column;
  }
}
.wbx-catalog-header .bg {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 50%;
}
.wbx-catalog-header .bg img {
  object-fit: contain;
  background-position: center right;
  height: 100%;
  width: 100%;
}
@media only screen and (max-width: 992px) {
  .wbx-catalog-header .bg {
    position: static;
    width: 100%;
  }
}
.wbx-catalog-header:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 100%;
  background: #f7f6f4;
  transform: translateX(-50%);
  z-index: -1;
}
.wbx-catalog-header .parent-category {
  font-size: 0.5em !important;
  line-height: 1em !important;
  text-transform: uppercase;
  display: block;
  color: rgba(var(--color-main));
}
.wbx-catalog-header .content, .wbx-catalog-header .quality ul li, .quality ul .wbx-catalog-header li {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  padding-left: 0;
  max-width: 50% !important;
}
.wbx-catalog-header .content h1, .wbx-catalog-header .quality ul li h1, .quality ul .wbx-catalog-header li h1, .wbx-catalog-header .content h2, .wbx-catalog-header .quality ul li h2, .quality ul .wbx-catalog-header li h2, .wbx-catalog-header .content h3, .wbx-catalog-header .quality ul li h3, .quality ul .wbx-catalog-header li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.wbx-catalog-header .content h1:first-child, .wbx-catalog-header .quality ul li h1:first-child, .quality ul .wbx-catalog-header li h1:first-child, .wbx-catalog-header .content h2:first-child, .wbx-catalog-header .quality ul li h2:first-child, .quality ul .wbx-catalog-header li h2:first-child, .wbx-catalog-header .content h3:first-child, .wbx-catalog-header .quality ul li h3:first-child, .quality ul .wbx-catalog-header li h3:first-child {
  margin-top: 0;
}
.wbx-catalog-header .content h1 span, .wbx-catalog-header .quality ul li h1 span, .quality ul .wbx-catalog-header li h1 span, .wbx-catalog-header .content h2 span, .wbx-catalog-header .quality ul li h2 span, .quality ul .wbx-catalog-header li h2 span, .wbx-catalog-header .content h3 span, .wbx-catalog-header .quality ul li h3 span, .quality ul .wbx-catalog-header li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.wbx-catalog-header .content h1, .wbx-catalog-header .quality ul li h1, .quality ul .wbx-catalog-header li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.wbx-catalog-header .content h2, .wbx-catalog-header .quality ul li h2, .quality ul .wbx-catalog-header li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.wbx-catalog-header .content h3, .wbx-catalog-header .quality ul li h3, .quality ul .wbx-catalog-header li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.wbx-catalog-header .content h4, .wbx-catalog-header .quality ul li h4, .quality ul .wbx-catalog-header li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.wbx-catalog-header .content > h1:first-child, .wbx-catalog-header .quality ul li > h1:first-child, .quality ul .wbx-catalog-header li > h1:first-child,
.wbx-catalog-header .content > h2:first-child,
.wbx-catalog-header .quality ul li > h2:first-child,
.quality ul .wbx-catalog-header li > h2:first-child,
.wbx-catalog-header .content > h3:first-child,
.wbx-catalog-header .quality ul li > h3:first-child,
.quality ul .wbx-catalog-header li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.wbx-catalog-header .content p, .wbx-catalog-header .quality ul li p, .quality ul .wbx-catalog-header li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.wbx-catalog-header .content p:last-child, .wbx-catalog-header .quality ul li p:last-child, .quality ul .wbx-catalog-header li p:last-child, .wbx-catalog-header .content p:last-of-type, .wbx-catalog-header .quality ul li p:last-of-type, .quality ul .wbx-catalog-header li p:last-of-type {
  margin-bottom: 0;
}
.wbx-catalog-header .content p a, .wbx-catalog-header .quality ul li p a, .quality ul .wbx-catalog-header li p a {
  color: rgba(var(--color-link));
}
.wbx-catalog-header .content p a:hover, .wbx-catalog-header .quality ul li p a:hover, .quality ul .wbx-catalog-header li p a:hover {
  text-decoration: underline;
}
.wbx-catalog-header .content ul, .wbx-catalog-header .quality ul li ul, .quality ul .wbx-catalog-header li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.wbx-catalog-header .content ul li, .wbx-catalog-header .quality ul li ul li, .quality ul .wbx-catalog-header li ul li {
  margin-bottom: 0.25em;
}
.wbx-catalog-header .content strong, .wbx-catalog-header .quality ul li strong, .quality ul .wbx-catalog-header li strong {
  font-weight: var(--fw-bold);
}
.wbx-catalog-header .content img.auto, .wbx-catalog-header .quality ul li img.auto, .quality ul .wbx-catalog-header li img.auto {
  height: auto;
}
.wbx-catalog-header .content img.img-full-width, .wbx-catalog-header .quality ul li img.img-full-width, .quality ul .wbx-catalog-header li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
@media only screen and (max-width: 992px) {
  .wbx-catalog-header .content, .wbx-catalog-header .quality ul li, .quality ul .wbx-catalog-header li {
    max-width: 100% !important;
  }
}

.leaf {
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
  aspect-ratio: 60/45;
  z-index: 10;
  -webkit-mask-box-image: url("../images/leaf.svg");
  mask-box-image: url("../images/leaf.svg");
  transform: translateX(-10%) translateY(20%);
}
.leaf .gradient {
  background: linear-gradient(to bottom, rgb(180, 227, 145) 0%, rgb(97, 196, 25) 50%, rgb(180, 227, 145) 100%);
}
.leaf img {
  width: 100%;
}

.product-floating {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 50;
  transform: translateX(0%) translateY(15%);
  width: 90%;
  aspect-ratio: 1/1;
}
.product-floating img {
  position: absolute;
  top: 0;
  width: 95%;
  height: auto;
}
.product-floating img:nth-child(1) {
  left: 25%;
  animation: floatBox 12s ease-in-out infinite;
}
.product-floating img:nth-child(2) {
  right: 30%;
  animation: floatPillBox 9s ease-in-out infinite;
}
.product-floating img:nth-child(3) {
  top: 5%;
  animation: floatPills 8s ease-in-out infinite;
}

.quality {
  position: relative;
  padding: 0 !important;
}
.quality .page-bedtime {
  color: #fff;
}
.quality ul {
  display: flex;
}
@media only screen and (max-width: 992px) {
  .quality ul {
    flex-direction: column;
  }
}
.quality ul li {
  position: relative;
  padding: 2em !important;
  text-align: center;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.quality ul li h3 {
  font-size: 26px;
  margin-top: 0;
}
.quality ul li figure {
  position: relative;
  border-radius: 50%;
  color: rgba(var(--page-theme-color-text));
  margin-bottom: 1.5em;
  width: 60px;
  height: 60px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.quality ul li figure svg {
  width: 42px;
  height: 42px;
}
.quality ul li figure:before {
  content: "";
  position: absolute;
  z-index: -1;
  -webkit-mask-box-image: url("../images/background-spot-mask.svg");
  mask-box-image: url("../images/background-spot-mask.svg");
  background: linear-gradient(135deg, rgb(var(--page-theme-color-main)) 0%, rgb(var(--page-theme-color-secondary)) 100%);
  width: 130%;
  aspect-ratio: 1/1;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.stats-clinique {
  margin-top: 4em;
}
.stats-clinique ul {
  flex: inherit;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0 !important;
  width: 100%;
  gap: var(--gutter-h) var(--gutter);
  list-style: none;
}
.stats-clinique li {
  list-style: none;
  position: relative;
  padding: var(--gutter);
  padding-top: 2em;
  background: rgba(var(--page-theme-color-secondary), 0.2);
  text-align: left;
  width: calc(25% - var(--gutter));
  font-size: 1rem;
}
@media only screen and (max-width: 992px) {
  .stats-clinique li {
    width: calc(50% - var(--gutter));
  }
}
@media only screen and (max-width: 576px) {
  .stats-clinique li {
    width: 100%;
  }
}
.stats-clinique li span {
  position: absolute;
  font-size: 4em;
  color: rgba(var(--page-theme-color-main));
  display: block;
  transform: translateY(-50%);
  top: 0;
  font-weight: 900;
}
.stats-clinique li span span {
  font-size: 0.5em;
}

.product-satisfaction .content, .product-satisfaction .quality ul li, .quality ul .product-satisfaction li {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  margin: auto;
}
.product-satisfaction .content h1, .product-satisfaction .quality ul li h1, .quality ul .product-satisfaction li h1, .product-satisfaction .content h2, .product-satisfaction .quality ul li h2, .quality ul .product-satisfaction li h2, .product-satisfaction .content h3, .product-satisfaction .quality ul li h3, .quality ul .product-satisfaction li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.product-satisfaction .content h1:first-child, .product-satisfaction .quality ul li h1:first-child, .quality ul .product-satisfaction li h1:first-child, .product-satisfaction .content h2:first-child, .product-satisfaction .quality ul li h2:first-child, .quality ul .product-satisfaction li h2:first-child, .product-satisfaction .content h3:first-child, .product-satisfaction .quality ul li h3:first-child, .quality ul .product-satisfaction li h3:first-child {
  margin-top: 0;
}
.product-satisfaction .content h1 span, .product-satisfaction .quality ul li h1 span, .quality ul .product-satisfaction li h1 span, .product-satisfaction .content h2 span, .product-satisfaction .quality ul li h2 span, .quality ul .product-satisfaction li h2 span, .product-satisfaction .content h3 span, .product-satisfaction .quality ul li h3 span, .quality ul .product-satisfaction li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.product-satisfaction .content h1, .product-satisfaction .quality ul li h1, .quality ul .product-satisfaction li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.product-satisfaction .content h2, .product-satisfaction .quality ul li h2, .quality ul .product-satisfaction li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.product-satisfaction .content h3, .product-satisfaction .quality ul li h3, .quality ul .product-satisfaction li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.product-satisfaction .content h4, .product-satisfaction .quality ul li h4, .quality ul .product-satisfaction li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.product-satisfaction .content > h1:first-child, .product-satisfaction .quality ul li > h1:first-child, .quality ul .product-satisfaction li > h1:first-child,
.product-satisfaction .content > h2:first-child,
.product-satisfaction .quality ul li > h2:first-child,
.quality ul .product-satisfaction li > h2:first-child,
.product-satisfaction .content > h3:first-child,
.product-satisfaction .quality ul li > h3:first-child,
.quality ul .product-satisfaction li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.product-satisfaction .content p, .product-satisfaction .quality ul li p, .quality ul .product-satisfaction li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.product-satisfaction .content p:last-child, .product-satisfaction .quality ul li p:last-child, .quality ul .product-satisfaction li p:last-child, .product-satisfaction .content p:last-of-type, .product-satisfaction .quality ul li p:last-of-type, .quality ul .product-satisfaction li p:last-of-type {
  margin-bottom: 0;
}
.product-satisfaction .content p a, .product-satisfaction .quality ul li p a, .quality ul .product-satisfaction li p a {
  color: rgba(var(--color-link));
}
.product-satisfaction .content p a:hover, .product-satisfaction .quality ul li p a:hover, .quality ul .product-satisfaction li p a:hover {
  text-decoration: underline;
}
.product-satisfaction .content ul, .product-satisfaction .quality ul li ul, .quality ul .product-satisfaction li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.product-satisfaction .content ul li, .product-satisfaction .quality ul li ul li, .quality ul .product-satisfaction li ul li {
  margin-bottom: 0.25em;
}
.product-satisfaction .content strong, .product-satisfaction .quality ul li strong, .quality ul .product-satisfaction li strong {
  font-weight: var(--fw-bold);
}
.product-satisfaction .content img.auto, .product-satisfaction .quality ul li img.auto, .quality ul .product-satisfaction li img.auto {
  height: auto;
}
.product-satisfaction .content img.img-full-width, .product-satisfaction .quality ul li img.img-full-width, .quality ul .product-satisfaction li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
@media only screen and (max-width: 768px) {
  .product-satisfaction .content footer, .product-satisfaction .quality ul li footer, .quality ul .product-satisfaction li footer {
    flex-direction: column;
  }
}
.product-satisfaction .content footer > *, .product-satisfaction .quality ul li footer > *, .quality ul .product-satisfaction li footer > * {
  margin: 0;
}
.product-satisfaction .image {
  position: relative;
}
.product-satisfaction .image .image-satisfaction {
  position: absolute;
  top: 5%;
  left: 15%;
  width: 200px;
  animation: squiggly-light-anim 0.34s linear infinite;
}

.contact-wrapper {
  background: #f7f6f4;
}
.contact-wrapper [rel=firstname],
.contact-wrapper [rel=lastname],
.contact-wrapper [rel=phone],
.contact-wrapper [rel=email] {
  width: calc(50% - var(--gutter) / 2);
}
.contact-wrapper > .wrapper {
  gap: var(--gutter-w);
  padding: var(--gutter-h) 0;
  padding-top: 0;
}
.contact-wrapper .form {
  flex: inherit;
  width: calc(70% - (var(--gutter-w)));
  background: none;
  padding: 0;
}
.contact-wrapper .form h2 {
  font-size: clamp(26px, 5vw, 50px);
  margin-bottom: 1em;
}
.contact-wrapper .form-address {
  flex: 1;
}

.ingredients {
  padding-bottom: var(--gutter-h);
}
.ingredients .wrapper {
  position: relative;
}
.ingredients .wrapper:after {
  content: "";
  background: url("../images/ingredients-bg.png") no-repeat center top;
  background-size: contain;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  animation: squiggly-light-anim 0.34s linear infinite;
}
.page-omega-3-krill .ingredients .wrapper:after {
  background: url("../images/ingredients-krill-bg.png") no-repeat center top;
  background-size: contain;
}
.ingredients .wrapper:before {
  content: "";
  -webkit-mask-box-image: url("../images/background-spot-mask.svg");
  mask-box-image: url("../images/background-spot-mask.svg");
  background: linear-gradient(135deg, rgb(var(--page-theme-color-main)) 0%, rgb(var(--page-theme-color-secondary)) 100%);
  opacity: 0.5;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 45%;
  z-index: 0;
  aspect-ratio: 1/1;
  transform: translateY(-50%) translateX(-50%);
  animation: squiggly-light-anim 0.34s linear infinite;
}
@media only screen and (max-width: 992px) {
  .ingredients .wrapper:before {
    top: 0;
    transform: translateX(-50%);
    width: 100%;
  }
}
.ingredients .wrapper .content, .ingredients .wrapper .quality ul li, .quality ul .ingredients .wrapper li {
  position: relative;
  z-index: 2;
}
.ingredients .wrapper .content:first-of-type, .ingredients .wrapper .quality ul li:first-of-type, .quality ul .ingredients .wrapper li:first-of-type {
  text-align: right;
}
.ingredients .wrapper .content:first-of-type .ingredient-item:before, .ingredients .wrapper .quality ul li:first-of-type .ingredient-item:before, .quality ul .ingredients .wrapper li:first-of-type .ingredient-item:before {
  right: inherit !important;
  left: 100% !important;
}
.ingredients .wrapper .content ul, .ingredients .wrapper .quality ul li ul, .quality ul .ingredients .wrapper li ul {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: space-evenly;
  gap: var(--gutter);
}
@media only screen and (max-width: 992px) {
  .ingredients .wrapper .content, .ingredients .wrapper .quality ul li, .quality ul .ingredients .wrapper li {
    order: 10;
    text-align: center !important;
    margin-bottom: var(--gutter);
  }
}
.ingredients figure {
  position: relative;
  z-index: 100;
}
@media only screen and (max-width: 992px) {
  .ingredients figure {
    order: 1;
    max-width: 400px;
  }
}
.ingredients .ingredient-item {
  position: relative;
  padding: 0.25em 1em;
  display: inline-block;
  background: rgb(255, 255, 255);
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 2px solid #333;
}
.ingredients .ingredient-item:hover {
  background: rgb(0, 0, 0);
  color: rgba(var(--color-white));
  animation: squiggly-anim 0.34s linear infinite;
}
@media only screen and (max-width: 992px) {
  .ingredients .ingredient-item {
    display: block;
  }
  .ingredients .ingredient-item:before {
    display: none;
  }
}
.ingredients .ingredient-item a {
  color: rgba(var(--color-link));
}
.ingredients .ingredient-item h3 {
  font-size: 1.6em;
}
.ingredients .ingredient-item:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 100%;
  transform: translateY(-50%);
  width: 100px;
  height: 1px;
  background: #000;
}

.ingredient-accordeon {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  margin-top: 3rem !important;
  display: flex;
  flex-direction: column;
}
.ingredient-accordeon li {
  list-style: none;
  padding: 1em;
  background: #fff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  border-radius: 6px;
  margin-bottom: 0.5em !important;
  transition: all 200ms ease-in-out;
}
.ingredient-accordeon li:hover {
  background: #000;
  color: #fff;
  transform: scale(1.05);
}
.ingredient-accordeon li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ingredient-accordeon li a h2, .ingredient-accordeon li a h3, .ingredient-accordeon li a h4, .ingredient-accordeon li a h5, .ingredient-accordeon li a h6 {
  margin: 0 !important;
  font-size: 1.2rem !important;
}

.product-carousel {
  background: #f7f7f7;
}
.product-carousel .wrapper {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: var(--gutter-h) 0;
}
.product-carousel .wbx-product-card {
  background: #fff;
  padding: var(--gutter);
  border-radius: 6px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

.shop-selector {
  background: #111;
  color: #fff;
}
.shop-selector .shop-selector-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gutter);
  padding: var(--gutter) 0;
}
.shop-selector .shop-selector-wrapper header {
  width: 100%;
  text-align: center;
}
.shop-selector .shop-selector-item {
  flex: 1;
  aspect-ratio: 16/9;
  position: relative;
  display: flex;
  padding: var(--gutter);
  overflow: hidden;
}
.shop-selector .shop-selector-item:hover img {
  transform: scale(1.05);
}
.shop-selector .shop-selector-item img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  transition: all 200ms ease-in-out;
}
.shop-selector .shop-selector-item .content, .shop-selector .shop-selector-item .quality ul li, .quality ul .shop-selector .shop-selector-item li {
  z-index: 10;
  position: relative;
  align-self: flex-end;
  justify-self: left;
  padding: var(--gutter);
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(10px);
}
.shop-categories-listing {
  background: #fefbf2;
}
.shop-categories-listing .wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gutter);
}
.shop-categories-listing .wrapper header {
  width: 100%;
  text-align: center;
  margin-bottom: 2rem;
}
.shop-categories-listing .wrapper header h1 {
  margin-bottom: 1rem;
}
.shop-categories-listing .content ul, .shop-categories-listing .quality ul li ul, .quality ul .shop-categories-listing li ul {
  display: grid;
  grid-gap: calc(var(--gutter-grid) / 2);
  gap: 2em;
  grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
}
.shop-categories-listing .content article, .shop-categories-listing .quality ul li article, .quality ul .shop-categories-listing li article {
  overflow: hidden;
  position: relative;
  min-height: 100%;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
  padding: 2em;
  border: 1em solid #fff;
}
.shop-categories-listing .content article figure, .shop-categories-listing .quality ul li article figure, .quality ul .shop-categories-listing li article figure {
  aspect-ratio: 16/9;
  margin: -2em;
  margin-bottom: 2em;
}
.shop-categories-listing .content article figure img, .shop-categories-listing .quality ul li article figure img, .quality ul .shop-categories-listing li article figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.header-food {
  position: relative;
  background: linear-gradient(to bottom, rgb(244, 244, 244) 0%, rgb(255, 255, 255) 100%);
  background-size: auto 100%;
}
.header-food img {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  z-index: 0;
}
.header-food .header-food-wrapper {
  min-height: 50vh;
  display: flex;
}
.header-food .content, .header-food .quality ul li, .quality ul .header-food li {
  position: relative;
  z-index: 10;
  align-self: center;
  justify-content: left;
  max-width: 50%;
}
.header-food h1 {
  font-weight: var(--fw-extra-bold);
  font-size: 52px;
  margin: 0;
}
.header-food strong {
  color: rgba(var(--color-main), 1);
  font-size: 28px;
  font-weight: var(--fw-regular);
  display: block;
  margin-bottom: 0.5em;
}

/**************************
  COMMONS
**************************/
.footer-payments {
  background: #333;
  color: rgb(var(--color-black));
}
.footer-payments > .wrapper {
  max-width: 800px;
  text-align: center;
  padding: var(--gutter) 0;
  filter: invert(1);
}
.footer-payments .payments-title {
  font-weight: var(--fw-bold);
  margin-bottom: 1em;
  font-size: 1.5em;
}
.footer-payments .payments-list {
  display: flex;
  justify-content: center;
  gap: calc(var(--gutter) / 2);
  margin-top: calc(var(--gutter));
}
.footer-payments .payments-list li {
  width: 120px;
}
.footer-payments .payments-list li img {
  width: 100%;
  height: auto;
}

.subscribe-module {
  position: relative;
}
.subscribe-module > .wrapper {
  position: relative;
  width: 80%;
  max-width: 800px;
  padding-left: 3vw;
  padding-right: 3vw;
  padding-top: var(--gutter-h);
}
@media only screen and (max-width: 768px) {
  .subscribe-module > .wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}
.subscribe-module header {
  text-align: center;
  margin-bottom: 3em;
}
.subscribe-module header h1,
.subscribe-module header h2,
.subscribe-module header h3,
.subscribe-module header h4 {
  color: rgba(var(--color-main), 1);
  font-size: 1.8em;
  margin-top: var(--gutter-h);
  margin-bottom: 0.25em;
}
.subscribe-module .illustration .img-marmotte {
  position: absolute;
  width: 6vw;
  min-width: 100px;
  right: -10%;
  bottom: -10%;
}
@media only screen and (max-width: 768px) {
  .subscribe-module .illustration .img-marmotte {
    display: none;
  }
}
.subscribe-module form {
  padding-bottom: calc(var(--gutter-h) * 2);
  display: flex;
}
.subscribe-module form [type=submit] {
  background: rgb(var(--color-black));
  margin: 0px;
  margin-left: 1em;
  font-size: 0.9rem;
  border: 0px;
  border-radius: 0px;
}
.subscribe-module form [type=submit]:after {
  background: rgb(var(--color-black));
}
.subscribe-module form [type=submit]:hover after {
  background: rgb(var(--color-white));
}
.subscribe-module form .form-field {
  flex: 1;
  margin-bottom: 0;
}
.subscribe-module form .form-field input {
  width: 100%;
  background: #f7f7f7 !important;
  padding: 0.75em 1em;
  font-weight: var(--fw-medium);
  border: none;
  border-bottom: 3px solid rgb(var(--color-black));
}
.subscribe-module form .form-label {
  display: none;
}

/*
 * Associations
 */
.associations-introduction {
  background: #fde8ee;
  width: 100%;
  position: relative;
}
.associations-introduction:after {
  content: "";
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 25%;
  z-index: 2;
}
.associations-introduction:before {
  content: "";
  background: url("../images/bg.png") top left;
  background-size: 400px auto;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: color-dodge;
  z-index: 1;
}
.associations-introduction > .wrapper {
  padding-bottom: 0;
  min-height: 50vh;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 10;
}
@media only screen and (max-width: 992px) {
  .associations-introduction > .wrapper {
    flex-direction: column;
  }
}
.associations-introduction .content, .associations-introduction .quality ul li, .quality ul .associations-introduction li {
  width: 70%;
  margin-left: auto;
  margin-top: calc(var(--gutter-h));
}
@media only screen and (max-width: 992px) {
  .associations-introduction .content, .associations-introduction .quality ul li, .quality ul .associations-introduction li {
    width: 100%;
  }
}
.associations-introduction h2 {
  font-family: var(--font-special);
  margin-left: auto;
  font-size: 3em;
  font-size: clamp(2em, 2.7vw, 3em);
  margin-bottom: 0.25em;
}
.associations-introduction h2 + div {
  font-weight: var(--fw-light);
}
.associations-introduction h2 em {
  margin-right: 0.25em;
}
.associations-introduction h2 em:first-of-type {
  color: rgba(var(--color-main), 1);
}
.associations-introduction figure {
  position: absolute;
  top: 30%;
  left: 2%;
  width: 35%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 992px) {
  .associations-introduction figure {
    position: static !important;
    width: 100%;
    transform: none;
  }
}

.associations-listing {
  width: 100%;
  margin: 0 auto;
}
.associations-listing .wrapper > ul {
  justify-content: center;
}
.associations-listing .wrapper > ul > li {
  display: flex;
  flex-direction: row;
  padding: 2rem 0;
  border-bottom: 1px solid #eee;
  align-items: center;
}
@media only screen and (max-width: 992px) {
  .associations-listing .wrapper > ul > li {
    flex-direction: column;
  }
}
.associations-listing .wrapper > ul > li figure {
  width: 200px;
  margin-right: 2em;
}
.associations-listing .wrapper > ul > li figure img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 992px) {
  .associations-listing .wrapper > ul > li figure {
    width: 200px;
    margin: auto;
    text-align: center;
  }
}
.associations-listing .wrapper > ul > li footer {
  margin-top: 2em;
}
.associations-listing .wrapper > ul > li footer a {
  margin-right: 1em;
}
.associations-listing .wrapper > ul > li .content, .associations-listing .quality .wrapper > ul > li li, .quality .associations-listing .wrapper > ul > li li {
  flex: 1;
  padding: 2rem;
}
.associations-listing .wrapper > ul > li .content ul, .associations-listing .quality .wrapper > ul > li li ul, .quality .associations-listing .wrapper > ul > li li ul {
  list-style-type: square;
  margin-left: 2em;
}
.associations-listing .wrapper > ul > li .content ul li, .associations-listing .quality .wrapper > ul > li li ul li, .quality .associations-listing .wrapper > ul > li li ul li {
  margin-bottom: 0.25em;
}
.associations-listing h3 {
  font-weight: var(--fw-light);
  margin: 0.5em 0;
  font-size: 1em;
}

.associations-inscription {
  width: 100%;
  position: relative;
}
.associations-inscription > .wrapper {
  padding: var(--gutter-h) 0;
}
.associations-inscription .form {
  padding: calc(var(--gutter-h)) calc(var(--gutter-w));
}
.associations-inscription .label-promo {
  background: rgba(var(--color-white), 1);
  color: rgba(var(--color-black), 1);
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-style: normal;
  white-space: nowrap;
}
.associations-inscription .label-promo + div {
  padding: var(--gutter-h) 0;
}
@media only screen and (max-width: 768px) {
  .associations-inscription .label-promo + div {
    margin-top: 3em;
  }
}
.associations-inscription p {
  font-size: 1.3em;
  line-height: 1.25em;
  font-weight: var(--fw-light);
  text-align: center;
  margin-bottom: 0em;
}

/** -----------------------------------
  MODULES PROMOTIONS
----------------------------------- **/
.transparent-text {
  background-color: #fff;
  overflow: hidden;
  display: inline-block;
  font-weight: var(--fw-extra-bold);
  color: transparent;
  font-size: 1.53rem;
}
.transparent-text em {
  background-size: 400%;
  background-position: left center;
  text-transform: lowercase;
  color: black;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  display: block;
  padding: 0.25em 0.6em;
  font-style: normal;
}

.promotions {
  width: 100%;
}
.promotions > .wrapper {
  display: flex;
  flex-wrap: wrap;
  padding: var(--gutter-h) 0;
  margin: auto;
  gap: 1em;
}
.promotions [href*=mailto] {
  color: rgb(var(--color-black)) !important;
}
.promotions [href*=mailto]:hover {
  color: rgb(var(--color-white)) !important;
}

.promotion-item {
  height: 50vh;
  min-height: 350px;
  position: relative;
  padding: var(--gutter-w);
  padding-top: calc(var(--gutter-w) + 40px);
  padding-bottom: calc(var(--gutter-w) + 20px);
  background-size: auto 100%;
  background-position: center center;
  color: rgb(var(--color-white));
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: column;
  flex: 1;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .promotion-item {
    width: 100%;
    flex: inherit;
    margin-bottom: var(--gutter-w);
  }
}
@media only screen and (max-width: 576px) {
  .promotion-item {
    padding-left: var(--gutter-w);
    padding-right: var(--gutter-w);
  }
}
.promotion-item:only-child {
  width: 100%;
  margin: 0;
}
.promotion-item:only-child .content, .promotion-item:only-child .quality ul li, .quality ul .promotion-item:only-child li {
  max-width: 500px;
}
.promotion-item:only-child .content p, .promotion-item:only-child .quality ul li p, .quality ul .promotion-item:only-child li p {
  text-align: left;
}
.promotion-item .transparent-text {
  position: absolute;
  top: 0;
  left: var(--gutter-w);
}
@media only screen and (max-width: 576px) {
  .promotion-item .transparent-text {
    left: var(--gutter-w);
  }
}
.promotion-item .button {
  position: absolute;
  right: var(--gutter-w);
  bottom: 0;
  border-radius: 0px;
  background: #000;
  border: 0px;
}
.promotion-item .button i {
  transition: all 200ms ease-in-out;
  margin-left: 0.25em;
  margin-right: 0;
}
.promotion-item .button:hover {
  background: #fff;
  color: #000 !important;
}
.promotion-item .button:hover i {
  color: #000;
}
@media only screen and (max-width: 576px) {
  .promotion-item .button {
    right: var(--gutter-w);
  }
}
.promotion-item header {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1;
}
.promotion-item header h1,
.promotion-item header h2,
.promotion-item header h3 {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  font-size: 5em;
  font-size: clamp(3em, 6vw, 5em);
  line-height: 0.85em;
  margin-bottom: 0;
  text-align: center;
  text-transform: lowercase;
}
.promotion-item header h1 span,
.promotion-item header h2 span,
.promotion-item header h3 span {
  display: block;
}
.promotion-item .content, .promotion-item .quality ul li, .quality ul .promotion-item li {
  display: flex;
  align-items: flex-end;
}
@media only screen and (max-width: 768px) {
  .promotion-item .content, .promotion-item .quality ul li, .quality ul .promotion-item li {
    align-items: center;
    flex-direction: column;
    justify-content: center;
  }
}
.promotion-item .content p > strong, .promotion-item .quality ul li p > strong, .quality ul .promotion-item li p > strong {
  display: block;
}
.promotion-item .promotion-partners {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .promotion-item .promotion-partners {
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 768px) {
  .promotion-item .promotion-partners {
    width: 40%;
    min-width: 115px;
    max-width: 140px;
    flex-direction: column;
    margin-right: calc(var(--gutter-w) / 3);
  }
}
.promotion-item .promotion-partners > * {
  flex: 1;
}
.promotion-item .promotion-partners img {
  width: 100%;
  max-width: 100%;
}
@media only screen and (max-width: 992px) {
  .promotion-item .promotion-partners img {
    max-width: 120px;
  }
}
.promotion-item .promotion-partners img + p {
  text-align: left !important;
}
@media only screen and (max-width: 576px) {
  .promotion-item .promotion-partners img + p {
    text-align: center !important;
  }
}

.page-template-default .page-header,
.page-template-default .default-content {
  width: 100%;
}
.page-template-default .page-header h1,
.page-template-default .default-content h1 {
  font-size: 40px;
}
.page-template-default .page-header .wrapper,
.page-template-default .default-content .wrapper {
  min-height: 10vh;
  padding-top: 4em;
  padding-bottom: 4em;
}

/*
 * CONCEPT
 */
.page-concept section {
  position: relative;
  width: 100%;
}
.page-concept .shop-category h1,
.page-concept .shop-category h2,
.page-concept .shop-category h3 {
  text-align: center;
}
.page-concept .shop-category h1 strong,
.page-concept .shop-category h2 strong,
.page-concept .shop-category h3 strong {
  font-weight: var(--fw-regular);
}
.page-concept #page-header > div {
  position: relative;
  color: rgba(var(--color-white), 1);
  background-position: center top;
  background-size: auto 100%;
  min-height: 95vh;
}
@media only screen and (max-width: 992px) {
  .page-concept #page-header > div {
    min-height: inherit;
  }
}
.page-concept #page-header > div:before {
  position: absolute;
  top: 85%;
  left: 50%;
  font-size: 4vw;
  font-size: clamp(2em, 4vw, 3em);
  transform: translateX(-50%);
}
.page-concept #page-header > div > .wrapper {
  display: flex;
  min-height: 80vh;
  max-width: 100%;
  width: 100%;
  padding: var(--gutter-h) var(--gutter-w);
  align-items: center;
  flex-wrap: wrap;
}
@media only screen and (max-width: 992px) {
  .page-concept #page-header > div > .wrapper {
    padding: calc(var(--gutter-h) * 3) var(--gutter-w);
    min-height: inherit;
  }
}
@media only screen and (max-width: 768px) {
  .page-concept #page-header > div > .wrapper {
    padding: calc(var(--gutter-h) * 2) var(--gutter-w);
  }
}
.page-concept #page-header > div > .wrapper > [class*=col-] {
  padding: 0 var(--gutter-w);
  width: 50%;
}
@media only screen and (max-width: 992px) {
  .page-concept #page-header > div > .wrapper > [class*=col-] {
    width: 100%;
  }
}
.page-concept #page-header > div > .wrapper h1 {
  font-family: var(--font-special);
  width: 50%;
  text-align: right;
  margin-left: auto;
  font-size: 3em;
  font-size: clamp(2em, 2.7vw, 3em);
}
@media only screen and (max-width: 992px) {
  .page-concept #page-header > div > .wrapper h1 {
    width: 80%;
    text-align: center;
    margin-right: auto;
  }
}
@media only screen and (max-width: 992px) {
  .page-concept #page-header > div > .wrapper h1 {
    width: 100%;
  }
}
.page-concept #page-header > div > .wrapper p {
  font-size: 1.6em;
  line-height: 1.4em;
  font-weight: var(--fw-light);
  text-align: center;
}
.page-concept #page-header > div:after {
  content: url("../images/cache_pattern_concept.svg");
  position: absolute;
  bottom: -2vw;
  left: 0;
  width: 100%;
}
.page-concept h2:not(.label-promo) {
  font-family: var(--font-special);
  font-size: 3em;
  font-size: clamp(2em, 2.7vw, 3em);
}
.page-concept h2:not(.label-promo) > em {
  display: block;
  color: rgba(var(--color-main), 1);
}

.our-mission figure {
  margin-top: -9vw;
  text-align: center;
}
.our-mission figure > img:last-child {
  max-width: 80%;
  margin: auto;
  margin-left: -14vw;
}
@media only screen and (max-width: 768px) {
  .our-mission figure > img:last-child {
    margin-left: 0;
    max-width: 100%;
    margin-top: -6vw;
  }
}
.our-mission figure > img.img-marmotte {
  width: 14vw;
  max-width: 250px;
  margin-right: auto;
  position: relative;
  top: 22vw;
  left: 0;
  z-index: 100;
}
@media only screen and (min-width: 1600px) {
  .our-mission figure > img.img-marmotte {
    top: 20vw;
  }
}
@media only screen and (max-width: 768px) {
  .our-mission figure > img.img-marmotte {
    display: none;
  }
}
.our-mission .content, .our-mission .quality ul li, .quality ul .our-mission li {
  padding: 10vh 5vw;
  display: flex;
}
@media only screen and (max-width: 992px) {
  .our-mission .content, .our-mission .quality ul li, .quality ul .our-mission li {
    flex-direction: column;
    padding-top: var(--gutter-h);
  }
}
@media only screen and (max-width: 768px) {
  .our-mission .content, .our-mission .quality ul li, .quality ul .our-mission li {
    padding-left: 0;
  }
}
.our-mission .content > *, .our-mission .quality ul li > *, .quality ul .our-mission li > * {
  width: 50%;
  padding: 0 calc(var(--gutter-w) / 2);
}
@media only screen and (max-width: 992px) {
  .our-mission .content > *, .our-mission .quality ul li > *, .quality ul .our-mission li > * {
    width: 100%;
    padding-left: 10vw;
  }
}
@media only screen and (max-width: 768px) {
  .our-mission .content > *, .our-mission .quality ul li > *, .quality ul .our-mission li > * {
    width: 100%;
  }
}
.our-mission .content h2, .our-mission .quality ul li h2, .quality ul .our-mission li h2 {
  padding-left: 10vw;
  text-align: right;
}
@media only screen and (max-width: 992px) {
  .our-mission .content h2, .our-mission .quality ul li h2, .quality ul .our-mission li h2 {
    text-align: left;
  }
}

.blog-main-navigation {
  display: none;
}

.blog-main > .wrapper {
  padding: var(--gutter-h) 0;
}

.newsletter-subscribe > .wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-bottom: var(--gutter-h);
}
.newsletter-subscribe figure {
  animation: squiggly-light-anim 0.34s linear infinite;
  max-width: 800px;
  position: relative;
  margin: auto;
  z-index: 10;
  pointer-events: none;
}
.newsletter-subscribe .content, .newsletter-subscribe .quality ul li, .quality ul .newsletter-subscribe li {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  text-align: center;
  font-size: 20px;
  font-weight: var(--fw-medium);
}
.newsletter-subscribe .content h1, .newsletter-subscribe .quality ul li h1, .quality ul .newsletter-subscribe li h1, .newsletter-subscribe .content h2, .newsletter-subscribe .quality ul li h2, .quality ul .newsletter-subscribe li h2, .newsletter-subscribe .content h3, .newsletter-subscribe .quality ul li h3, .quality ul .newsletter-subscribe li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.newsletter-subscribe .content h1:first-child, .newsletter-subscribe .quality ul li h1:first-child, .quality ul .newsletter-subscribe li h1:first-child, .newsletter-subscribe .content h2:first-child, .newsletter-subscribe .quality ul li h2:first-child, .quality ul .newsletter-subscribe li h2:first-child, .newsletter-subscribe .content h3:first-child, .newsletter-subscribe .quality ul li h3:first-child, .quality ul .newsletter-subscribe li h3:first-child {
  margin-top: 0;
}
.newsletter-subscribe .content h1 span, .newsletter-subscribe .quality ul li h1 span, .quality ul .newsletter-subscribe li h1 span, .newsletter-subscribe .content h2 span, .newsletter-subscribe .quality ul li h2 span, .quality ul .newsletter-subscribe li h2 span, .newsletter-subscribe .content h3 span, .newsletter-subscribe .quality ul li h3 span, .quality ul .newsletter-subscribe li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.newsletter-subscribe .content h1, .newsletter-subscribe .quality ul li h1, .quality ul .newsletter-subscribe li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.newsletter-subscribe .content h2, .newsletter-subscribe .quality ul li h2, .quality ul .newsletter-subscribe li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.newsletter-subscribe .content h3, .newsletter-subscribe .quality ul li h3, .quality ul .newsletter-subscribe li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.newsletter-subscribe .content h4, .newsletter-subscribe .quality ul li h4, .quality ul .newsletter-subscribe li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.newsletter-subscribe .content > h1:first-child, .newsletter-subscribe .quality ul li > h1:first-child, .quality ul .newsletter-subscribe li > h1:first-child,
.newsletter-subscribe .content > h2:first-child,
.newsletter-subscribe .quality ul li > h2:first-child,
.quality ul .newsletter-subscribe li > h2:first-child,
.newsletter-subscribe .content > h3:first-child,
.newsletter-subscribe .quality ul li > h3:first-child,
.quality ul .newsletter-subscribe li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.newsletter-subscribe .content p, .newsletter-subscribe .quality ul li p, .quality ul .newsletter-subscribe li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.newsletter-subscribe .content p:last-child, .newsletter-subscribe .quality ul li p:last-child, .quality ul .newsletter-subscribe li p:last-child, .newsletter-subscribe .content p:last-of-type, .newsletter-subscribe .quality ul li p:last-of-type, .quality ul .newsletter-subscribe li p:last-of-type {
  margin-bottom: 0;
}
.newsletter-subscribe .content p a, .newsletter-subscribe .quality ul li p a, .quality ul .newsletter-subscribe li p a {
  color: rgba(var(--color-link));
}
.newsletter-subscribe .content p a:hover, .newsletter-subscribe .quality ul li p a:hover, .quality ul .newsletter-subscribe li p a:hover {
  text-decoration: underline;
}
.newsletter-subscribe .content ul, .newsletter-subscribe .quality ul li ul, .quality ul .newsletter-subscribe li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.newsletter-subscribe .content ul li, .newsletter-subscribe .quality ul li ul li, .quality ul .newsletter-subscribe li ul li {
  margin-bottom: 0.25em;
}
.newsletter-subscribe .content strong, .newsletter-subscribe .quality ul li strong, .quality ul .newsletter-subscribe li strong {
  font-weight: var(--fw-bold);
}
.newsletter-subscribe .content img.auto, .newsletter-subscribe .quality ul li img.auto, .quality ul .newsletter-subscribe li img.auto {
  height: auto;
}
.newsletter-subscribe .content img.img-full-width, .newsletter-subscribe .quality ul li img.img-full-width, .quality ul .newsletter-subscribe li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.newsletter-subscribe .newsletter-subscribe-form {
  background: #f7f6f4;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  padding: 6em;
  padding-bottom: 3em;
  max-width: 800px;
  width: 100%;
  margin: auto;
  margin-top: -80px;
  position: relative;
}
@media only screen and (max-width: 992px) {
  .newsletter-subscribe .newsletter-subscribe-form {
    padding: 2em;
    padding-top: 80px;
  }
}
.newsletter-subscribe .newsletter-subscribe-form .field {
  margin-top: 2em;
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
}
@media only screen and (max-width: 992px) {
  .newsletter-subscribe .newsletter-subscribe-form .field {
    flex-direction: column;
    gap: 0;
  }
}
.newsletter-subscribe .newsletter-subscribe-form .email {
  line-height: 50px;
  padding: 0 2em;
  text-align: center;
  border: 2px solid rgba(var(--color-black));
  min-width: 400px;
  font-size: 18px;
  font-weight: var(--fw-medium);
}
@media only screen and (max-width: 992px) {
  .newsletter-subscribe .newsletter-subscribe-form .email {
    min-width: 100%;
  }
}
.newsletter-subscribe .newsletter-subscribe-form:before {
  pointer-events: none;
  content: "";
  position: absolute;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 4px solid #000;
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

@keyframes rotateBackground {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.out-top {
  animation: rotateBackground 20s linear infinite;
  transform-origin: 13px 25px;
  fill: #ffffff;
  opacity: 0.3;
}

.in-top {
  animation: rotateBackground 10s linear infinite;
  transform-origin: 13px 25px;
  fill: #ffffff;
  opacity: 0.3;
}

.out-bottom {
  animation: rotateBackground 25s linear infinite;
  transform-origin: 84px 93px;
  fill: #000000;
  opacity: 0.05;
}

.in-bottom {
  animation: rotateBackground 15s linear infinite;
  transform-origin: 84px 93px;
  fill: #000000;
  opacity: 0.05;
}

#page:has(.page-notice) .homepage-carousel {
  margin-top: 2em;
}

.homepage-carousel {
  display: flex;
  justify-content: center;
  padding: 1em;
}
.homepage-carousel > .wrapper {
  max-width: 2000px;
  width: 100%;
  min-height: 60vh;
}
.homepage-carousel .container {
  height: 100%;
  width: 100%;
  display: flex;
  gap: 1em;
  flex-wrap: wrap;
}
.homepage-carousel .content, .homepage-carousel .quality ul li, .quality ul .homepage-carousel li {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
}
.homepage-carousel .content h1, .homepage-carousel .quality ul li h1, .quality ul .homepage-carousel li h1, .homepage-carousel .content h2, .homepage-carousel .quality ul li h2, .quality ul .homepage-carousel li h2, .homepage-carousel .content h3, .homepage-carousel .quality ul li h3, .quality ul .homepage-carousel li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.homepage-carousel .content h1:first-child, .homepage-carousel .quality ul li h1:first-child, .quality ul .homepage-carousel li h1:first-child, .homepage-carousel .content h2:first-child, .homepage-carousel .quality ul li h2:first-child, .quality ul .homepage-carousel li h2:first-child, .homepage-carousel .content h3:first-child, .homepage-carousel .quality ul li h3:first-child, .quality ul .homepage-carousel li h3:first-child {
  margin-top: 0;
}
.homepage-carousel .content h1 span, .homepage-carousel .quality ul li h1 span, .quality ul .homepage-carousel li h1 span, .homepage-carousel .content h2 span, .homepage-carousel .quality ul li h2 span, .quality ul .homepage-carousel li h2 span, .homepage-carousel .content h3 span, .homepage-carousel .quality ul li h3 span, .quality ul .homepage-carousel li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.homepage-carousel .content h1, .homepage-carousel .quality ul li h1, .quality ul .homepage-carousel li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.homepage-carousel .content h2, .homepage-carousel .quality ul li h2, .quality ul .homepage-carousel li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.homepage-carousel .content h3, .homepage-carousel .quality ul li h3, .quality ul .homepage-carousel li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.homepage-carousel .content h4, .homepage-carousel .quality ul li h4, .quality ul .homepage-carousel li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.homepage-carousel .content > h1:first-child, .homepage-carousel .quality ul li > h1:first-child, .quality ul .homepage-carousel li > h1:first-child,
.homepage-carousel .content > h2:first-child,
.homepage-carousel .quality ul li > h2:first-child,
.quality ul .homepage-carousel li > h2:first-child,
.homepage-carousel .content > h3:first-child,
.homepage-carousel .quality ul li > h3:first-child,
.quality ul .homepage-carousel li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.homepage-carousel .content p, .homepage-carousel .quality ul li p, .quality ul .homepage-carousel li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.homepage-carousel .content p:last-child, .homepage-carousel .quality ul li p:last-child, .quality ul .homepage-carousel li p:last-child, .homepage-carousel .content p:last-of-type, .homepage-carousel .quality ul li p:last-of-type, .quality ul .homepage-carousel li p:last-of-type {
  margin-bottom: 0;
}
.homepage-carousel .content p a, .homepage-carousel .quality ul li p a, .quality ul .homepage-carousel li p a {
  color: rgba(var(--color-link));
}
.homepage-carousel .content p a:hover, .homepage-carousel .quality ul li p a:hover, .quality ul .homepage-carousel li p a:hover {
  text-decoration: underline;
}
.homepage-carousel .content ul, .homepage-carousel .quality ul li ul, .quality ul .homepage-carousel li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.homepage-carousel .content ul li, .homepage-carousel .quality ul li ul li, .quality ul .homepage-carousel li ul li {
  margin-bottom: 0.25em;
}
.homepage-carousel .content strong, .homepage-carousel .quality ul li strong, .quality ul .homepage-carousel li strong {
  font-weight: var(--fw-bold);
}
.homepage-carousel .content img.auto, .homepage-carousel .quality ul li img.auto, .quality ul .homepage-carousel li img.auto {
  height: auto;
}
.homepage-carousel .content img.img-full-width, .homepage-carousel .quality ul li img.img-full-width, .quality ul .homepage-carousel li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.homepage-carousel footer {
  display: flex;
  margin-top: 2em;
  gap: 0 1em;
}
.homepage-carousel svg {
  position: absolute;
  top: 0;
  width: 100%;
  left: 0;
  height: 100%;
  z-index: 1;
}
.homepage-carousel .main {
  overflow: hidden;
  position: relative;
  display: flex;
  flex: 1;
  align-items: center;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  padding: 4em;
  gap: 2em;
}
.homepage-carousel .main .dates {
  position: absolute;
  bottom: 2em;
  left: 4em;
}
@media only screen and (max-width: 992px) {
  .homepage-carousel .main .dates {
    left: 2em;
  }
}
@media only screen and (max-width: 992px) {
  .homepage-carousel .main {
    width: 100%;
  }
}
.homepage-carousel .main .content, .homepage-carousel .main .quality ul li, .quality ul .homepage-carousel .main li {
  width: 50%;
  position: relative;
  z-index: 10;
}
.homepage-carousel .main .composition {
  width: 50% !important;
  position: relative;
  z-index: 50;
}
@media only screen and (max-width: 768px) {
  .homepage-carousel .main .composition {
    width: 100% !important;
  }
}
.homepage-carousel .main figure {
  width: 50%;
  height: 100%;
  position: relative;
  z-index: 10;
}
.homepage-carousel .main figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.homepage-carousel .main figure img.layer-001 {
  z-index: 20;
}
.homepage-carousel .main figure img.layer-002 {
  z-index: 10;
  animation: squiggly-light-anim 0.34s linear infinite;
}
@media only screen and (max-width: 768px) {
  .homepage-carousel .main {
    aspect-ratio: inherit;
    flex-direction: column;
    justify-content: center;
  }
  .homepage-carousel .main .content, .homepage-carousel .main .quality ul li, .quality ul .homepage-carousel .main li {
    width: 100%;
    text-align: center;
    padding: 0;
  }
  .homepage-carousel .main figure {
    width: 100%;
    aspect-ratio: 1/1;
  }
}
.homepage-carousel .square {
  overflow: hidden;
  position: relative;
  width: 30%;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  padding: 4em;
  text-align: center;
  gap: 2em;
}
@media only screen and (max-width: 992px) {
  .homepage-carousel .square {
    width: 100%;
  }
}
.homepage-carousel .square h2 {
  font-size: 52px !important;
  margin-bottom: 0.25em;
}
.homepage-carousel .square .wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 10;
  height: 100%;
}
.homepage-carousel .square figure {
  position: relative;
  max-height: 100%;
  width: 100%;
  aspect-ratio: 1/1;
}
.homepage-carousel .square figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.page-header > .wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.page-header > .wrapper .content, .page-header > .wrapper .quality ul li, .quality ul .page-header > .wrapper li {
  position: relative;
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
  z-index: 10;
}
.page-header > .wrapper .content h1, .page-header > .wrapper .quality ul li h1, .quality ul .page-header > .wrapper li h1, .page-header > .wrapper .content h2, .page-header > .wrapper .quality ul li h2, .quality ul .page-header > .wrapper li h2, .page-header > .wrapper .content h3, .page-header > .wrapper .quality ul li h3, .quality ul .page-header > .wrapper li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.page-header > .wrapper .content h1:first-child, .page-header > .wrapper .quality ul li h1:first-child, .quality ul .page-header > .wrapper li h1:first-child, .page-header > .wrapper .content h2:first-child, .page-header > .wrapper .quality ul li h2:first-child, .quality ul .page-header > .wrapper li h2:first-child, .page-header > .wrapper .content h3:first-child, .page-header > .wrapper .quality ul li h3:first-child, .quality ul .page-header > .wrapper li h3:first-child {
  margin-top: 0;
}
.page-header > .wrapper .content h1 span, .page-header > .wrapper .quality ul li h1 span, .quality ul .page-header > .wrapper li h1 span, .page-header > .wrapper .content h2 span, .page-header > .wrapper .quality ul li h2 span, .quality ul .page-header > .wrapper li h2 span, .page-header > .wrapper .content h3 span, .page-header > .wrapper .quality ul li h3 span, .quality ul .page-header > .wrapper li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.page-header > .wrapper .content h1, .page-header > .wrapper .quality ul li h1, .quality ul .page-header > .wrapper li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.page-header > .wrapper .content h2, .page-header > .wrapper .quality ul li h2, .quality ul .page-header > .wrapper li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.page-header > .wrapper .content h3, .page-header > .wrapper .quality ul li h3, .quality ul .page-header > .wrapper li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.page-header > .wrapper .content h4, .page-header > .wrapper .quality ul li h4, .quality ul .page-header > .wrapper li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.page-header > .wrapper .content > h1:first-child, .page-header > .wrapper .quality ul li > h1:first-child, .quality ul .page-header > .wrapper li > h1:first-child,
.page-header > .wrapper .content > h2:first-child,
.page-header > .wrapper .quality ul li > h2:first-child,
.quality ul .page-header > .wrapper li > h2:first-child,
.page-header > .wrapper .content > h3:first-child,
.page-header > .wrapper .quality ul li > h3:first-child,
.quality ul .page-header > .wrapper li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.page-header > .wrapper .content p, .page-header > .wrapper .quality ul li p, .quality ul .page-header > .wrapper li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.page-header > .wrapper .content p:last-child, .page-header > .wrapper .quality ul li p:last-child, .quality ul .page-header > .wrapper li p:last-child, .page-header > .wrapper .content p:last-of-type, .page-header > .wrapper .quality ul li p:last-of-type, .quality ul .page-header > .wrapper li p:last-of-type {
  margin-bottom: 0;
}
.page-header > .wrapper .content p a, .page-header > .wrapper .quality ul li p a, .quality ul .page-header > .wrapper li p a {
  color: rgba(var(--color-link));
}
.page-header > .wrapper .content p a:hover, .page-header > .wrapper .quality ul li p a:hover, .quality ul .page-header > .wrapper li p a:hover {
  text-decoration: underline;
}
.page-header > .wrapper .content ul, .page-header > .wrapper .quality ul li ul, .quality ul .page-header > .wrapper li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.page-header > .wrapper .content ul li, .page-header > .wrapper .quality ul li ul li, .quality ul .page-header > .wrapper li ul li {
  margin-bottom: 0.25em;
}
.page-header > .wrapper .content strong, .page-header > .wrapper .quality ul li strong, .quality ul .page-header > .wrapper li strong {
  font-weight: var(--fw-bold);
}
.page-header > .wrapper .content img.auto, .page-header > .wrapper .quality ul li img.auto, .quality ul .page-header > .wrapper li img.auto {
  height: auto;
}
.page-header > .wrapper .content img.img-full-width, .page-header > .wrapper .quality ul li img.img-full-width, .quality ul .page-header > .wrapper li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.page-header > .wrapper .content h1, .page-header > .wrapper .quality ul li h1, .quality ul .page-header > .wrapper li h1 {
  text-align: center;
}
.page-header > .wrapper .image {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  max-width: var(--background-image-max-width);
  height: 100%;
  z-index: 0;
  transform: translateX(-50%);
}
.page-header > .wrapper .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/** -----------------------------------
  PAGE CONTACT
----------------------------------- **/
.rgpd-form-consent-checkbox {
  background: none;
  border: 0px;
  padding: 1em;
  width: 100%;
}
.rgpd-form-consent-checkbox:before {
  display: none;
}
.rgpd-form-consent-checkbox.rgpd-form-consent-checkbox--checked {
  box-shadow: none;
  border: 0px;
  background: none;
}

.form-buttons {
  text-align: center;
  padding: 3em 0;
}
/*************
 * Catalog
 *************/
.wbx-categories-list .list > li:first-child > a {
  background: rgba(var(--color-black), 1);
  color: #fff;
}

.wbx-categories-list ul li > a {
  padding: 0.75em 0.5em;
}

.wbx-categories-title {
  display: none;
}

.wbx-product-prices {
  margin-bottom: 0.5em;
}

.wbx-product-resume .wbx-product-price, .wbx-product-card .wbx-product-price {
  font-size: 1.4rem;
}

.wbx-product-resume .wbx-product-resume-wrapper {
  position: sticky;
  top: calc(var(--nav-sticky) + 10px);
  max-width: 600px;
  margin: auto;
}

.wbx-product-main .codezip-donation-information {
  order: 25;
  margin-right: auto;
  display: inline-flex;
  align-items: center;
  background: #fef5e3;
  padding: 0.5em;
}
.wbx-product-main .codezip-donation-information svg {
  width: 50px;
  height: 50px;
  color: rgba(var(--color-main));
  margin-right: 0.5em;
}
.wbx-product-main .codezip-donation-information strong {
  display: block;
}
.wbx-product-main .codezip-donation-information span {
  font-size: 1.4em;
  font-weight: var(--fw-extra-bold);
  color: rgba(var(--color-main));
}
.wbx-product-main .codezip-donation-information i {
  font-style: normal;
  font-size: 0.8em;
}
.wbx-product-main .wbx-product-preview {
  background: #f7f6f4;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 2px dashed #f7f6f4;
}
.wbx-product-main .wbx-product-brand-name {
  font-size: 0.5em;
  color: rgba(var(--color-main), 1);
}
.wbx-product-main .wbx-brand-picture {
  display: none;
}
.wbx-product-main .wbx-brand-picture-figure {
  width: 140px;
}
.wbx-product-main .wbx-product-resume-header h1 {
  font-size: 42px;
  font-weight: var(--fw-extra-bold);
  margin-bottom: 0.5em;
}
.wbx-product-main .wbx-product-resume-header > * {
  margin-bottom: 1rem;
}
.wbx-product-main .wbx-product-details-wrapper {
  padding: var(--gutter-h) 0;
  gap: var(--gutter) var(--gutter-w);
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header {
  grid-area: details-header;
  align-self: center;
  text-align: left;
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h1, .wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h2, .wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h1:first-child, .wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h2:first-child, .wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h3:first-child {
  margin-top: 0;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h1 span, .wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h2 span, .wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header > h1:first-child,
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header > h2:first-child,
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header p:last-child, .wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header p:last-of-type {
  margin-bottom: 0;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header p a {
  color: rgba(var(--color-link));
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header p a:hover {
  text-decoration: underline;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header ul li {
  margin-bottom: 0.25em;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header strong {
  font-weight: var(--fw-bold);
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header img.auto {
  height: auto;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.wbx-product-main .wbx-product-details-wrapper .wbx-product-details-header h2 {
  font-size: 32px;
  font-weight: var(--fw-extra-bold);
  margin-bottom: 1em;
}
.wbx-product-main .wbx-product-main-wrapper {
  width: 100%;
  gap: 0 4em;
  grid-template-areas: "breadcrumb breadcrumb" "product-image product-resume" "product-details product-details" "brand brand" "product-related-brand product-related-brand";
}
@media only screen and (max-width: 992px) {
  .wbx-product-main .wbx-product-main-wrapper {
    grid-template-areas: "breadcrumb" "product-image" "product-resume" "product-details" "brand" "product-related-brand";
  }
}

.wbx-product-related-brand > .wrapper {
  padding: 2rem 0;
}
.wbx-product-related-brand .wbx-related-products-header {
  text-align: center;
  padding: 4rem 0;
}
.wbx-product-related-brand .wbx-related-products-header h3 {
  font-size: 32px;
  font-weight: var(--fw-extra-bold);
}
.wbx-product-related-brand .wbx-related-products-footer {
  text-align: center;
  padding: 4rem 0;
}

.wbx-product-brand {
  grid-area: brand;
  background: #f2eee4;
  display: flex;
  align-items: center;
  position: relative;
  min-height: 50vh;
}
.wbx-product-brand img {
  max-width: 150px;
  margin: auto;
  margin-bottom: 3rem;
}
.wbx-product-brand svg:nth-child(1) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
}
.wbx-product-brand svg:nth-child(2) {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
}
.wbx-product-brand footer {
  margin-top: 4rem;
}
.wbx-product-brand footer a {
  margin: 0 0.5em;
}
.wbx-product-brand .wbx-product-brand-wrapper {
  padding: 10vh 5vw;
  margin: auto;
  text-align: center;
}
.wbx-product-brand .wbx-product-brand-wrapper h2 {
  font-size: 32px;
  font-weight: var(--fw-extra-bold);
  margin-bottom: 1em;
}

.wbx-product-card {
  border: 0px;
}
.wbx-product-card .wbx-product-card-variants-colors {
  display: none;
}
.wbx-product-card .wbx-product-card-preview {
  background: #f7f6f4;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
}
.wbx-product-card .wbx-product-sku {
  display: none;
}
.wbx-product-card .wbx-product-headline {
  margin-bottom: 0.5em;
}
.wbx-product-card .wbx-product-card-header {
  margin-bottom: 0.5em;
}
.wbx-product-card .wbx-product-card-content {
  margin-top: 1em;
}
.wbx-product-card .wbx-product-card-title {
  font-size: 1.6em;
}
.wbx-product-card .wbx-product-card-content,
.wbx-product-card .wbx-product-card-footer {
  align-self: inherit;
  justify-content: center;
}
.wbx-product-card .wbx-button-container {
  width: 100%;
}
#page-main > .wrapper {
  padding-top: var(--navigation-height);
}

.page-template-error #page-main {
  background: #f7f7f7;
}

#error {
  min-height: 60vh;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: auto;
  padding: var(--gutter-h) var(--gutter-w);
}
#error h1 {
  color: rgba(var(--color-main), 1);
  margin-bottom: 0.25em;
  font-size: 40px;
}
#error .btn {
  line-height: 40px;
}
#error .btn a {
  z-index: 1;
}

.wbx-breadcrumb {
  font-size: 12px;
}
.wbx-catalog-main--with-aside .wbx-catalog-main-wrapper {
  display: grid;
  grid-template-columns: 300px auto auto;
  grid-template-rows: min-content;
  gap: 0em 2em;
  grid-template-areas: "catalog-search catalog-search catalog-search" "breadcrumb breadcrumb breadcrumb" "catalog-header catalog-header catalog-header" "catalog-aside catalog-sorting catalog-sorting" "catalog-aside catalog-filters catalog-filters" "catalog-aside catalog-filters-active catalog-filters-active" "catalog-aside catalog-listing catalog-listing" "catalog-aside catalog-pagination catalog-pagination";
}
@media only screen and (max-width: 992px) {
  .wbx-catalog-main--with-aside .wbx-catalog-main-wrapper {
    gap: 1em 0;
    grid-template-columns: auto;
    grid-template-areas: "catalog-search" "breadcrumb" "catalog-header" "catalog-sorting" "catalog-aside" "catalog-filters" "catalog-filters-active" "catalog-listing" "catalog-pagination";
  }
}

@keyframes squiggly-anim {
  0% {
    filter: url("#squiggly-0");
  }
  25% {
    filter: url("#squiggly-1");
  }
  50% {
    filter: url("#squiggly-2");
  }
  75% {
    filter: url("#squiggly-3");
  }
  100% {
    filter: url("#squiggly-4");
  }
}
@keyframes squiggly-light-anim {
  0% {
    filter: url("#squiggly-0");
  }
  25% {
    filter: url("#squiggly-1");
  }
  50% {
    filter: url("#squiggly-0");
  }
  75% {
    filter: url("#squiggly-1");
  }
  100% {
    filter: url("#squiggly-0");
  }
}
.blog-related > header {
  text-align: center;
  padding: var(--gutter-h);
}
.range-products .range-products-item .composition, .modular-faq .composition, .banner-product .composition, .homepage-carousel .main .composition {
  position: relative;
  aspect-ratio: 1/1;
  width: 100%;
}
.range-products .range-products-item .composition .squiggly, .modular-faq .composition .squiggly, .banner-product .composition .squiggly, .homepage-carousel .main .composition .squiggly {
  animation: squiggly-anim 0.34s linear infinite;
}
.range-products .range-products-item .composition .squiggly-light, .modular-faq .composition .squiggly-light, .banner-product .composition .squiggly-light, .homepage-carousel .main .composition .squiggly-light {
  animation: squiggly-light-anim 0.34s linear infinite;
}
.range-products .range-products-item .composition .composition-box, .modular-faq .composition .composition-box, .banner-product .composition .composition-box, .homepage-carousel .main .composition .composition-box {
  transform: rotate(-5deg) scale(0.72) translateX(-22%) translateY(23%);
}
.range-products .range-products-item .composition .composition-layer-bg, .modular-faq .composition .composition-layer-bg, .banner-product .composition .composition-layer-bg, .homepage-carousel .main .composition .composition-layer-bg {
  -webkit-mask-box-image: url("../images/background-spot-mask.svg");
  mask-box-image: url("../images/background-spot-mask.svg");
  background: linear-gradient(135deg, rgb(var(--page-theme-color-main)) 0%, rgb(var(--page-theme-color-secondary)) 100%);
  width: 90%;
  aspect-ratio: 1/1;
  align-self: center;
}
.range-products .range-products-item .composition .composition-layer, .modular-faq .composition .composition-layer, .banner-product .composition .composition-layer, .homepage-carousel .main .composition .composition-layer {
  position: absolute;
  width: 100%;
  aspect-ratio: 1/1;
  top: 0;
  left: 0;
  display: flex;
  align-items: flex-end;
  justify-content: left;
}
.range-products .range-products-item .composition .composition-layer img, .modular-faq .composition .composition-layer img, .banner-product .composition .composition-layer img, .homepage-carousel .main .composition .composition-layer img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.range-products .range-products-item .composition .composition-layer:nth-child(1), .modular-faq .composition .composition-layer:nth-child(1), .banner-product .composition .composition-layer:nth-child(1), .homepage-carousel .main .composition .composition-layer:nth-child(1) {
  z-index: 10;
}
.range-products .range-products-item .composition .composition-layer:nth-child(2), .modular-faq .composition .composition-layer:nth-child(2), .banner-product .composition .composition-layer:nth-child(2), .homepage-carousel .main .composition .composition-layer:nth-child(2) {
  z-index: 9;
}
.range-products .range-products-item .composition .composition-layer:nth-child(3), .modular-faq .composition .composition-layer:nth-child(3), .banner-product .composition .composition-layer:nth-child(3), .homepage-carousel .main .composition .composition-layer:nth-child(3) {
  z-index: 8;
}
.range-products .range-products-item .composition .composition-layer:nth-child(4), .modular-faq .composition .composition-layer:nth-child(4), .banner-product .composition .composition-layer:nth-child(4), .homepage-carousel .main .composition .composition-layer:nth-child(4) {
  z-index: 7;
}

.range-products > header {
  text-align: center;
  padding: var(--gutter-h);
}
.range-products > .wrapper {
  gap: var(--gutter) var(--gutter);
}
.range-products .range-products-item {
  position: relative;
  background: radial-gradient(ellipse at center, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 100%);
}
.range-products .range-products-item > .wrapper {
  position: relative;
  display: flex;
  align-items: center;
  padding: var(--gutter-h) 0;
  min-height: 100vh;
  flex-wrap: wrap;
}
.range-products .range-products-item .claim {
  font-family: var(--font-special);
  font-size: 140px;
  line-height: 0.8em;
  text-align: center;
  width: 100%;
}
.range-products .range-products-item .claim .claim-wrapper {
  position: relative;
  transform: rotate(-5deg);
}
.range-products .range-products-item .claim .claim-wrapper:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  height: 90%;
  aspect-ratio: 1/2;
  background: url("../images/booster-him/arrow.png");
  background-size: contain;
  transform-origin: center top;
  transform: rotate(-25deg) translateX(-50%);
  animation: squiggly-anim 0.34s linear infinite;
}
.range-products .range-products-item .claim p {
  margin: 0 !important;
  line-height: 0.8em !important;
}
.range-products .range-products-item .claim p:first-child {
  font-size: 0.7em !important;
}
.range-products .range-products-item .claim p strong {
  color: var(--page-theme-color-text);
  animation: squiggly-light-anim 0.34s linear infinite;
}
.range-products .range-products-item h2 {
  font-size: clamp(14px, 10vw, 60px) !important;
  margin-bottom: 2em;
}
.range-products .range-products-item p:first-of-type {
  font-size: 1.4em;
  font-weight: var(--fw-medium);
}
.range-products .range-products-item .image {
  order: 2;
  width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1/1;
  position: relative;
}
.range-products .range-products-item .image .product {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-25%);
  width: 80%;
  max-width: 500px;
  z-index: 10;
  aspect-ratio: 60/65;
}
.range-products .range-products-item .image .product .product-floating {
  width: 100%;
}
.range-products .range-products-item .image .range-picture {
  position: absolute;
  width: 110%;
  top: 0;
  left: 0;
  aspect-ratio: 60/50;
  -webkit-mask-box-image: url("../images/mask.svg");
  mask-box-image: url("../images/mask.svg");
  z-index: 1;
  transform: scale(-1, 1);
}
.range-products .range-products-item .image .range-picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(-1, 1);
}
.range-products .range-products-item .content, .range-products .range-products-item .quality ul li, .quality ul .range-products .range-products-item li {
  order: 1;
  width: 50%;
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
}
.range-products .range-products-item .content h1, .range-products .range-products-item .quality ul li h1, .quality ul .range-products .range-products-item li h1, .range-products .range-products-item .content h2, .range-products .range-products-item .quality ul li h2, .quality ul .range-products .range-products-item li h2, .range-products .range-products-item .content h3, .range-products .range-products-item .quality ul li h3, .quality ul .range-products .range-products-item li h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.range-products .range-products-item .content h1:first-child, .range-products .range-products-item .quality ul li h1:first-child, .quality ul .range-products .range-products-item li h1:first-child, .range-products .range-products-item .content h2:first-child, .range-products .range-products-item .quality ul li h2:first-child, .quality ul .range-products .range-products-item li h2:first-child, .range-products .range-products-item .content h3:first-child, .range-products .range-products-item .quality ul li h3:first-child, .quality ul .range-products .range-products-item li h3:first-child {
  margin-top: 0;
}
.range-products .range-products-item .content h1 span, .range-products .range-products-item .quality ul li h1 span, .quality ul .range-products .range-products-item li h1 span, .range-products .range-products-item .content h2 span, .range-products .range-products-item .quality ul li h2 span, .quality ul .range-products .range-products-item li h2 span, .range-products .range-products-item .content h3 span, .range-products .range-products-item .quality ul li h3 span, .quality ul .range-products .range-products-item li h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.range-products .range-products-item .content h1, .range-products .range-products-item .quality ul li h1, .quality ul .range-products .range-products-item li h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.range-products .range-products-item .content h2, .range-products .range-products-item .quality ul li h2, .quality ul .range-products .range-products-item li h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.range-products .range-products-item .content h3, .range-products .range-products-item .quality ul li h3, .quality ul .range-products .range-products-item li h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.range-products .range-products-item .content h4, .range-products .range-products-item .quality ul li h4, .quality ul .range-products .range-products-item li h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.range-products .range-products-item .content > h1:first-child, .range-products .range-products-item .quality ul li > h1:first-child, .quality ul .range-products .range-products-item li > h1:first-child,
.range-products .range-products-item .content > h2:first-child,
.range-products .range-products-item .quality ul li > h2:first-child,
.quality ul .range-products .range-products-item li > h2:first-child,
.range-products .range-products-item .content > h3:first-child,
.range-products .range-products-item .quality ul li > h3:first-child,
.quality ul .range-products .range-products-item li > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.range-products .range-products-item .content p, .range-products .range-products-item .quality ul li p, .quality ul .range-products .range-products-item li p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.range-products .range-products-item .content p:last-child, .range-products .range-products-item .quality ul li p:last-child, .quality ul .range-products .range-products-item li p:last-child, .range-products .range-products-item .content p:last-of-type, .range-products .range-products-item .quality ul li p:last-of-type, .quality ul .range-products .range-products-item li p:last-of-type {
  margin-bottom: 0;
}
.range-products .range-products-item .content p a, .range-products .range-products-item .quality ul li p a, .quality ul .range-products .range-products-item li p a {
  color: rgba(var(--color-link));
}
.range-products .range-products-item .content p a:hover, .range-products .range-products-item .quality ul li p a:hover, .quality ul .range-products .range-products-item li p a:hover {
  text-decoration: underline;
}
.range-products .range-products-item .content ul, .range-products .range-products-item .quality ul li ul, .quality ul .range-products .range-products-item li ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.range-products .range-products-item .content ul li, .range-products .range-products-item .quality ul li ul li, .quality ul .range-products .range-products-item li ul li {
  margin-bottom: 0.25em;
}
.range-products .range-products-item .content strong, .range-products .range-products-item .quality ul li strong, .quality ul .range-products .range-products-item li strong {
  font-weight: var(--fw-bold);
}
.range-products .range-products-item .content img.auto, .range-products .range-products-item .quality ul li img.auto, .quality ul .range-products .range-products-item li img.auto {
  height: auto;
}
.range-products .range-products-item .content img.img-full-width, .range-products .range-products-item .quality ul li img.img-full-width, .quality ul .range-products .range-products-item li img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.range-products .range-products-item:nth-child(even):before {
  right: inherit;
  left: 50%;
}
.range-products .range-products-item:nth-child(even) .claim-wrapper:before {
  top: 120%;
  transform: rotate(35deg) scaleX(-1) translateX(50%);
}
.range-products .range-products-item:nth-child(even) .image {
  flex-direction: row-reverse;
  order: 1;
  padding-left: 0;
  padding-right: var(--gutter);
}
.range-products .range-products-item:nth-child(even) .image .range-picture {
  left: inherit;
  right: 0;
  transform: scale(1);
}
.range-products .range-products-item:nth-child(even) .image .range-picture img {
  transform: scale(1);
}
.range-products .range-products-item:nth-child(even) .content, .range-products .range-products-item:nth-child(even) .quality ul li, .quality ul .range-products .range-products-item:nth-child(even) li {
  order: 1;
}

.range-products-navigation {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  right: var(--gutter);
  z-index: 1000;
}
.range-products-navigation ul {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(var(--gutter) / 2);
}
.range-products-navigation ul li {
  position: relative;
}
.range-products-navigation ul li a {
  transition: all 200ms ease-in-out;
  display: flex;
}
.range-products-navigation ul li a figure {
  width: 80px;
  height: 80px;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.1);
}
.range-products-navigation ul li a figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.range-products-navigation ul li a:hover {
  transform: scale(1.1);
}
.range-products-navigation ul li span {
  position: absolute;
  right: calc(100% + var(--gutter));
  top: 50%;
  transform: translateY(-50%);
  white-space: nowrap;
  visibility: hidden;
}

.section-bg {
  position: relative;
}
.section-bg:after {
  content: "";
  background: #f7f6f4;
  width: 110vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  z-index: -1;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 6px dashed #ffffff;
}

.ranges-header > .wrapper {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.ranges-header > .wrapper > * {
  width: 100%;
}
.ranges-header > .wrapper figure {
  max-width: 1200px;
}

.ranges-tags > .wrapper {
  padding: var(--gutter-h) 0;
  padding-top: 0;
}
.ranges-tags > .wrapper .ranges-tags-selector-wrapper {
  display: none;
  padding-top: calc(var(--nav-sticky) + 10px);
}
@media only screen and (max-width: 576px) {
  .ranges-tags > .wrapper .ranges-tags-selector-wrapper {
    display: block;
  }
}
.ranges-tags > .wrapper .ranges-tags-selector {
  background: #000;
  border: 2px dashed #000;
  font-size: clamp(16px, 5vw, 18px);
  color: #fff;
  font-family: var(--font-content);
  font-weight: var(--fw-medium);
  padding: 1em;
  width: 100%;
  outline: none;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  border-bottom-right-radius: 225px 15px;
  border-bottom-left-radius: 15px 255px;
  border: 2px dashed rgba(var(--page-theme-color-main));
}
.ranges-tags > .wrapper ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 1000px;
  margin: auto;
}
@media only screen and (max-width: 576px) {
  .ranges-tags > .wrapper ul {
    display: none !important;
  }
}
.ranges-tags > .wrapper ul li > * {
  color: #fff;
  background: #000;
  border: 2px dashed #000;
  font-size: clamp(16px, 5vw, 18px);
}

.section-arrow-curved {
  position: relative;
  margin-bottom: calc(var(--gutter-h) / 2);
}
.section-arrow-curved:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform-origin: center top;
  transform: translateX(-50%) translateY(-30%) rotate(-10deg);
  width: calc(var(--gutter-h) * 2);
  aspect-ratio: 1/1;
  background: url("../images/arrow-curved.png") center center no-repeat;
  background-size: contain;
  pointer-events: none;
  animation: squiggly-light-anim 0.34s linear infinite;
}
@media only screen and (max-width: 992px) {
  .section-arrow-curved:before {
    width: 36%;
    transform: translateX(-50%) translateY(-50%) rotate(0deg);
  }
}
.section-arrow-curved .wrapper:not(:last-child):after {
  content: "+";
  position: absolute;
  top: 100%;
  left: 50%;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%);
  width: 60px;
  font-size: clamp(80px, 20vw, 200px);
  aspect-ratio: 1/1;
  font-family: var(--font-special);
  animation: squiggly-light-anim 0.34s linear infinite;
}

.animation-squiggle {
  animation: squiggly-light-anim 0.34s linear infinite;
}

.scrolling-wrapper {
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 500;
}
.scrolling-wrapper .text-scroll {
  text-transform: uppercase;
  position: absolute;
  left: 0%;
  transform: translateX(-50%);
  font-size: 1em;
  bottom: 100%;
  margin-bottom: var(--gutter);
  white-space: nowrap;
  font-weight: var(--fw-bold);
}
.scrolling-wrapper .scrolling {
  width: 1px;
  height: 100%;
  clip-path: inset(0px -5px 0px -5px);
}
@media only screen and (max-width: 768px) {
  .scrolling-wrapper .scrolling {
    height: 150px !important;
  }
}
.scrolling-wrapper .scrolling .pan {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: #000000;
  opacity: 1;
}
.scrolling-wrapper .scrolling .pan-moving {
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 10%;
  background: #000;
  animation: scrollingPan ease-in-out infinite 2000ms;
  margin-left: -1px;
  border-radius: 20px;
}

@keyframes scrollingPan {
  0% {
    top: -100%;
    height: 100%;
  }
  70% {
    top: 100%;
    height: 20px;
  }
  100% {
    top: 100%;
    height: 30px;
  }
}
@keyframes scrollingPanReverse {
  0% {
    top: 100%;
    height: 30px;
  }
  70% {
    top: 100%;
    height: 20px;
  }
  100% {
    top: -100%;
    height: 100%;
  }
}
/* TRUSTED BADGE */
[id*=trustbadge-container] {
  z-index: 10000 !important;
}

/* LEGACY PAGE */
.default-content > .wrapper {
  padding-bottom: var(--gutter-h);
}
.default-content > .wrapper .content-wysiwyg li:empty {
  display: none;
}

.content-wysiwyg {
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
}
.content-wysiwyg h1, .content-wysiwyg h2, .content-wysiwyg h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
.content-wysiwyg h1:first-child, .content-wysiwyg h2:first-child, .content-wysiwyg h3:first-child {
  margin-top: 0;
}
.content-wysiwyg h1 span, .content-wysiwyg h2 span, .content-wysiwyg h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
.content-wysiwyg h1 {
  font-size: clamp(28px, 2vw, 42px);
}
.content-wysiwyg h2 {
  font-size: clamp(20px, 2vw, 36px);
}
.content-wysiwyg h3 {
  font-size: clamp(18px, 2vw, 26px);
}
.content-wysiwyg h4 {
  font-size: clamp(16px, 2vw, 20px);
}
.content-wysiwyg > h1:first-child,
.content-wysiwyg > h2:first-child,
.content-wysiwyg > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
.content-wysiwyg p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
.content-wysiwyg p:last-child, .content-wysiwyg p:last-of-type {
  margin-bottom: 0;
}
.content-wysiwyg p a {
  color: rgba(var(--color-link));
}
.content-wysiwyg p a:hover {
  text-decoration: underline;
}
.content-wysiwyg ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
.content-wysiwyg ul li {
  margin-bottom: 0.25em;
}
.content-wysiwyg strong {
  font-weight: var(--fw-bold);
}
.content-wysiwyg img.auto {
  height: auto;
}
.content-wysiwyg img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.content-wysiwyg p > a,
.content-wysiwyg li > a {
  color: rgba(var(--color-link));
}

#tinymce {
  padding: 1em;
  background: #fff;
  text-wrap: balance;
  font-size: clamp(14px, 8vw, 18px);
}
#tinymce h1, #tinymce h2, #tinymce h3 {
  font-family: var(--font-title);
  text-wrap: balance;
  line-height: 1em;
  font-weight: 800;
  margin-bottom: 0.5em;
  margin-top: 1.5rem;
}
#tinymce h1:first-child, #tinymce h2:first-child, #tinymce h3:first-child {
  margin-top: 0;
}
#tinymce h1 span, #tinymce h2 span, #tinymce h3 span {
  font-weight: var(--fw-light);
  display: block;
  font-size: 0.8em;
  color: rgba(var(--page-theme-color-text));
  margin-top: -0.1em;
}
#tinymce h1 {
  font-size: clamp(28px, 2vw, 42px);
}
#tinymce h2 {
  font-size: clamp(20px, 2vw, 36px);
}
#tinymce h3 {
  font-size: clamp(18px, 2vw, 26px);
}
#tinymce h4 {
  font-size: clamp(16px, 2vw, 20px);
}
#tinymce > h1:first-child,
#tinymce > h2:first-child,
#tinymce > h3:first-child {
  text-wrap: balance;
  line-height: 1em;
  font-size: clamp(36px, 5vw, 80px);
  font-weight: 800;
}
#tinymce p {
  line-height: 1.4em;
  margin-bottom: 1em;
  text-wrap: pretty;
}
#tinymce p:last-child, #tinymce p:last-of-type {
  margin-bottom: 0;
}
#tinymce p a {
  color: rgba(var(--color-link));
}
#tinymce p a:hover {
  text-decoration: underline;
}
#tinymce ul {
  list-style: square;
  margin-left: 2em;
  margin-bottom: 1em;
}
#tinymce ul li {
  margin-bottom: 0.25em;
}
#tinymce strong {
  font-weight: var(--fw-bold);
}
#tinymce img.auto {
  height: auto;
}
#tinymce img.img-full-width {
  width: 100%;
  height: auto;
  max-width: 100%;
}