@charset "UTF-8";
/* Box sizing rules */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.otgs-development-site-front-end {
  display: none !important;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core body defaults */
html {
  scroll-behavior: smooth;
  min-height: 100%;
  height: auto;
}
html.noscroll {
  overflow: hidden !important;
  scroll-behavior: unset;
}

body {
  min-height: 100%;
  height: auto;
  text-rendering: geometricPrecision;
  line-height: 1.5;
  scroll-behavior: smooth;
}

/* Set Sections to take all width available */
section {
  width: 100%;
}

/* Make HR easier to work with */
hr {
  display: block;
  margin: rem(16) 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ccc;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul {
  margin: 0;
  padding: 0;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  display: block;
  height: auto;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
  cursor: pointer;
}

a {
  text-decoration: none;
  opacity: 1;
  cursor: pointer !important;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
@font-face {
  font-family: grift;
  src: url("../fonts/grift/Grift-Regular.otf");
  src: url("../fonts/grift/Grift-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/grift/Grift-Regular.woff2") format("woff2"), url("../fonts/grift/Grift-Regular.woff") format("woff"), url("../fonts/grift/Grift-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: grift;
  src: url("../fonts/grift/Grift-ExtraBold.otf");
  src: url("../fonts/grift/Grift-ExtraBold.eot?#iefix") format("embedded-opentype"), url("../fonts/grift/Grift-ExtraBold.woff2") format("woff2"), url("../fonts/grift/Grift-ExtraBold.woff") format("woff"), url("../fonts/grift/Grift-ExtraBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
body {
  background-color: #f3f0ea;
}

#tinymce {
  background-color: white;
}

@media only screen and (min-width: 1024px) {
  [data-splitting] .word {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    overflow: hidden;
  }
  [data-splitting] .word-content {
    display: inline-block;
    will-change: transform;
    -webkit-transform: translateZ(0) translateY(101%);
            transform: translateZ(0) translateY(101%);
    -webkit-transition: -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transition-delay: calc(var(--line-index) * 0.1s);
            transition-delay: calc(var(--line-index) * 0.1s);
  }
}
form.wpcf7-form {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  width: 100%;
  row-gap: 15px;
}
@media only screen and (min-width: 1024px) {
  form.wpcf7-form {
    row-gap: 20px;
  }
}

.mid {
  width: 100%;
}

.form-full {
  width: 100%;
}

label {
  width: 100%;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=textarea],
textarea {
  width: 100%;
  font-size: 14px;
  border-bottom: 1px solid #fff !important;
  color: #ffffff;
  -webkit-appearance: none;
  outline: none;
  padding: 13px 0;
}
@media only screen and (min-width: 1024px) {
  input[type=text],
input[type=email],
input[type=tel],
input[type=textarea],
textarea {
    padding: 20px 0;
    font-size: 16px;
    width: calc(100% - 50px) !important;
  }
}

textarea {
  width: 100%;
  font-size: 14px;
  border-bottom: 1px solid #fff;
  -webkit-appearance: none;
  background-color: transparent;
  outline: none;
  padding: 10px 0;
  border: none;
  /* remove default border */
  border-bottom: 1px solid #fff;
  background-color: transparent;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  /* remove gray glow / shadow */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 10px 0;
  resize: none;
}
@media only screen and (min-width: 1024px) {
  textarea {
    width: calc(100% - 50px) !important;
    padding: 20px 0;
    font-size: 16px;
  }
}

.cg-button {
  margin-bottom: 0 !important;
}

.control-group {
  margin-bottom: 15px;
}
.control-group p {
  margin-bottom: 0;
}
.control-group br {
  display: none;
}
.control-group label {
  font-size: 16px;
  display: block;
  color: #ffffff;
}
.control-group input {
  width: 100%;
}

.control-group .dd-wrap select {
  position: relative;
  display: block;
  cursor: pointer;
  -moz-appearance: none;
       appearance: none;
  width: 100%;
  padding-right: 50px;
  padding: 16px 35px 16px 0px;
  border-bottom: 1px solid #fff;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: transparent;
  cursor: pointer;
  font-size: 15px !important;
  font-weight: 500;
  line-height: 140% !important;
  font-family: inherit;
  position: relative;
  -webkit-appearance: none;
  outline: none;
  color: #ffffff;
}
@media only screen and (min-width: 1024px) {
  .control-group .dd-wrap select {
    width: calc(100% - 50px) !important;
    padding: 20px 0;
    font-size: 16px;
  }
}

.control-group .dd-wrap svg {
  position: absolute;
  width: 16px;
  top: 30px;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
@media only screen and (min-width: 1024px) {
  .control-group .dd-wrap svg {
    right: 50px;
  }
}

.dd-wrap {
  position: relative;
}

.cg-button {
  width: 100%;
}

.wpcf7-submit {
  text-align: center;
  display: block;
  background-color: #ffffff;
  padding: 13px 20px;
  border-radius: 5px;
  font-size: 16px;
  color: #1d1d15;
  width: 100% !important;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media only screen and (min-width: 1024px) {
  .wpcf7-submit {
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
    padding: 13px 40px;
  }
  .wpcf7-submit:hover {
    background-color: #f3f0ea;
  }
}

.wpcf7-not-valid-tip {
  font-size: 14px;
  margin-top: 5px;
}

.wpcf7-response-output {
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  color: #ffffff;
}
@media only screen and (min-width: 1024px) {
  .wpcf7-response-output {
    font-size: 24px;
  }
}

.title-form-wp {
  font-size: 20px;
  margin-bottom: 20px;
}

.divider-form-wp {
  margin-top: 30px;
  margin-bottom: 50px;
  width: 100%;
  border-bottom: 1px solid #1d1d15;
  opacity: 0.1;
}

.wpcf7-list-item {
  margin-left: 0 !important;
  margin-right: 15px;
  margin-bottom: 20px;
}

.codedropz-upload-handler {
  border: 1px solid #3e3e3f80 !important;
  padding-bottom: 20px;
  border-radius: 0 !important;
}
.codedropz-upload-handler h3 {
  font-size: 18px !important;
}
.codedropz-upload-handler .cd-upload-btn {
  margin-top: 10px;
  border-radius: 5px;
  background-color: #733f2a;
  color: #1d1d15;
  padding: 15px 25px;
  display: inline-block;
}

.dnd-upload-status .dnd-upload-details .dnd-progress-bar {
  height: 5px !important;
}

.dnd-upload-status .dnd-upload-details .name {
  color: #1d1d15 !important;
}

.dnd-upload-status .dnd-upload-details span.has-error {
  font-size: 12px !important;
}

.wpcf7-response-output {
  width: 100%;
}

.wpcf7-list-item-label {
  font-size: 16px;
}

@media only screen and (min-width: 1024px) {
  .mid {
    width: 49%;
  }

  .title-form-wp {
    font-size: 20px;
  }

  .title-form-wp {
    font-size: 23px;
    margin-bottom: 30px;
  }
}
[data-marquee-container] {
  width: 100vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
}

[data-marquee-content] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
  -webkit-animation: marquee linear infinite;
          animation: marquee linear infinite;
  will-change: transform;
}

[data-marquee-container-reverse] {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

[data-marquee-content-reverse] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
  -webkit-animation: marquee-reverse linear infinite;
          animation: marquee-reverse linear infinite;
  will-change: transform;
}

@-webkit-keyframes marquee {
  0% {
    -webkit-transform: translate3d(0%, 0, 0);
            transform: translate3d(0%, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
}

@keyframes marquee {
  0% {
    -webkit-transform: translate3d(0%, 0, 0);
            transform: translate3d(0%, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
}
@-webkit-keyframes marquee-reverse {
  0% {
    -webkit-transform: translate3d(0%, 0, 0);
            transform: translate3d(0%, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
}
@keyframes marquee-reverse {
  0% {
    -webkit-transform: translate3d(0%, 0, 0);
            transform: translate3d(0%, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
}
/* ----------------------------------------------------------------------------------------------------
Super Form Reset
A couple of things to watch out for:
- IE8: If a text input doesn't have padding on all sides or none the text won't be centered.
- The default border sizes on text inputs in all UAs seem to be slightly different. You're better off using custom borders.
- You NEED to set the font-size and family on all form elements
- Search inputs need to have their appearance reset and the box-sizing set to content-box to match other UAs
- You can style the upload button in webkit using ::-webkit-file-upload-button
- ::-webkit-file-upload-button selectors can't be used in the same selector as normal ones. FF and IE freak out.
- IE: You don't need to fake inline-block with labels and form controls in IE. They function as inline-block.
- By turning off ::-webkit-search-decoration, it removes the extra whitespace on the left on search inputs
----------------------------------------------------------------------------------------------------*/
input,
label,
select,
button {
  margin: 0;
  border: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  background: none;
  line-height: 1;
  border-radius: 0px;
  font-size: 16px;
  font-family: "grift", Helvetica, Arial, sans-serif;
  background-color: none !important;
}

/* Chrome / Edge / Safari : retire le fond d'autofill sur les formulaires sombres (CF7, etc.) */
.md-section-form input:-webkit-autofill,
.md-section-form textarea:-webkit-autofill,
.md-section-form select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px transparent inset !important;
  box-shadow: 0 0 0px 1000px transparent inset !important;
  -webkit-text-fill-color: #fff !important;
  caret-color: #fff !important;
  -webkit-transition: background-color 9999s ease-out 0s;
  transition: background-color 9999s ease-out 0s;
  font-size: 16px !important;
}

/* Firefox (formulaires sombres) */
.md-section-form input:-moz-autofill,
.md-section-form textarea:-moz-autofill,
.md-section-form select:-moz-autofill {
  font-size: 16px;
  color: white !important;
  box-shadow: 0 0 0px 1000px transparent inset !important;
  filter: none !important;
}

/* WooCommerce / My Account : fond clair → texte sombre pour l'autofill */
body.woocommerce-checkout input:-webkit-autofill,
body.woocommerce-checkout textarea:-webkit-autofill,
body.woocommerce-checkout select:-webkit-autofill,
body.woocommerce-account input:-webkit-autofill,
body.woocommerce-account textarea:-webkit-autofill,
body.woocommerce-account select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px rgba(0, 0, 0, 0.04) inset !important;
  box-shadow: 0 0 0px 1000px rgba(0, 0, 0, 0.04) inset !important;
  -webkit-text-fill-color: #1d1d15 !important;
  caret-color: #1d1d15 !important;
  -webkit-transition: background-color 9999s ease-out 0s;
  transition: background-color 9999s ease-out 0s;
}

/* Remove the stupid outer glow in Webkit */
input:focus {
  outline: 0;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: none;
}

/* Box Sizing Reset
-----------------------------------------------*/
/* All of our custom controls should be what we expect them to be */
input,
textarea {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

/* These elements are usually rendered a certain way by the browser */
button,
input[type=reset],
input[type=button],
input[type=submit],
input[type=checkbox],
input[type=radio],
select {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Text Inputs
-----------------------------------------------*/
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=range],
input[type=search],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
input[type=week] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  border: 0;
  border-radius: 0px;
  margin: 0;
  outline: none;
  outline-color: transparent;
  background-color: transparent;
  -webkit-font-smoothing: inherit !important;
}

/* Button Controls
-----------------------------------------------*/
input[type=radio] {
  width: 0.9375rem;
  height: 1.625rem;
  margin: 0;
  border-radius: 0px;
}

/* File Uploads
-----------------------------------------------*/
input[type=file] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  border: 0;
  outline: none;
  outline-color: transparent;
  background-color: transparent;
  -webkit-font-smoothing: inherit !important;
}

/* Search Input
-----------------------------------------------*/
/* Make webkit render the search input like a normal text field */
input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* Turn off the recent search for webkit. It adds about 15px padding on the left */
::-webkit-search-decoration {
  display: none;
}

/* Buttons
-----------------------------------------------*/
button,
input[type=reset],
input[type=button],
input[type=submit] {
  /* Fix IE7 display bug */
  overflow: visible;
  width: auto;
}

/* IE8 and FF freak out if this rule is within another selector */
::-webkit-file-upload-button {
  padding: 0;
  border: 0;
  background: none;
}

/* Textarea
-----------------------------------------------*/
textarea {
  /* Move the label to the top */
  vertical-align: top;
  /* Turn off scroll bars in IE unless needed */
  overflow: auto;
}

/* Selects
-----------------------------------------------*/
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  border: 0;
  outline: none;
  outline-color: transparent;
  background-color: transparent;
  -webkit-font-smoothing: inherit !important;
  background-repeat: no-repeat, repeat;
  background-position: right 0 top 50%, 0 0;
  background-size: 0.7em auto, 100%;
}

select[multiple] {
  /* Move the label to the top */
  vertical-align: top;
}

input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: none !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

h1,
.title-1 {
  font-size: 30px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 600px) {
  h1,
.title-1 {
    font-size: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  h1,
.title-1 {
    font-size: 60px;
  }
}

h2,
.title-2 {
  font-size: 25px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  color: #1d1d15;
  font-weight: 600;
}
@media only screen and (min-width: 600px) {
  h2,
.title-2 {
    font-size: 40px;
  }
}

h3,
.title-3 {
  font-size: 20px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  h3,
.title-3 {
    font-size: 30px;
  }
}

h4,
.title-4 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  h4,
.title-4 {
    font-size: 24px;
  }
}

h5,
.title-5 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}

h6,
.title-6 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 500;
  color: #1d1d15;
}

body {
  font: 500 1rem/1.25 "grift", Helvetica, Arial, sans-serif;
  color: #1d1d15;
}

p,
.paragraph {
  font-size: 16px;
  line-height: 1.3;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 400;
  color: #1d1d15;
}
@media only screen and (min-width: 600px) {
  p,
.paragraph {
    font-size: 18px;
  }
}

::-moz-selection {
  border: 0;
  text-shadow: none;
  outline: none;
  background-color: #dadada;
}

::selection {
  border: 0;
  text-shadow: none;
  outline: none;
  background-color: #dadada;
}

.container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}

.page-wrapper {
  position: relative;
  min-height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

[data-splitting=lines] .line {
  display: block;
  overflow: hidden;
}
[data-splitting=lines] .line-content {
  display: inline-block;
  will-change: transform;
  -webkit-transform: translate3d(0, 110%, 0);
          transform: translate3d(0, 110%, 0);
  -webkit-transition: -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-delay: calc(var(--line-index) * 0.12s);
          transition-delay: calc(var(--line-index) * 0.12s);
}

.menu-banner-offset {
  height: var(--header-banner-height, 0px);
}

.banner-head {
  background-color: #1d1d15;
  border-bottom: 1px solid #303030;
}
.banner-head__container {
  padding: 8px;
}
.banner-head__container h1,
.banner-head__container h2,
.banner-head__container h3,
.banner-head__container h4,
.banner-head__container h5,
.banner-head__container p,
.banner-head__container a,
.banner-head__container li {
  color: #ffffff !important;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2000;
  width: 100%;
  -webkit-transition: all 500ms cubic-bezier(0.34, 0.7, 0.27, 1), background-position 300ms cubic-bezier(0.34, 0.7, 0.27, 1);
  transition: all 500ms cubic-bezier(0.34, 0.7, 0.27, 1), background-position 300ms cubic-bezier(0.34, 0.7, 0.27, 1);
}
.header__container {
  -webkit-transition: all 500ms cubic-bezier(0.34, 0.7, 0.27, 1);
  transition: all 500ms cubic-bezier(0.34, 0.7, 0.27, 1);
  padding-top: 20px;
  padding-bottom: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .header__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 1024px) {
  .header__container {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
  }
}
.header__logo {
  font-size: 30px;
  color: #1d1d15;
  width: 55px;
  pointer-events: all;
  -webkit-filter: invert(1);
          filter: invert(1);
}
@media only screen and (min-width: 1024px) {
  .header__logo {
    width: 70px;
    -webkit-transition: all 500ms cubic-bezier(0.34, 0.7, 0.27, 1);
    transition: all 500ms cubic-bezier(0.34, 0.7, 0.27, 1);
  }
}
.header__logo img {
  width: 100%;
}
.header__buttons {
  position: relative;
  z-index: 2;
}
.header__mobile {
  margin-left: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
}
@media only screen and (min-width: 1024px) {
  .header__mobile {
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
}
.header__mobile-menu {
  margin-top: 3px;
  pointer-events: all;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.5s ease;
  transition: 0.5s ease;
}
.header__mobile-menu--open .header__burger-line:first-of-type {
  margin: 0px;
  -webkit-transform: rotate(45deg) translateY(1px);
          transform: rotate(45deg) translateY(1px);
}
.header__mobile-menu--open .header__burger-line:last-of-type {
  margin: 0px;
  -webkit-transform: rotate(-45deg) translateY(-1px);
          transform: rotate(-45deg) translateY(-1px);
}
.header__mobile-menu--open .header__burger-line-second {
  display: none;
}
.header .wpml-ls-legacy-list-horizontal {
  border: none !important;
}
.header .wpml-ls {
  padding: 0 !important;
}
.header__translate {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .header__translate {
    display: block;
  }
  .header__translate .wpml-ls-link {
    display: block;
    color: #1d1d15;
    font-size: 22px !important;
    line-height: 0.9;
    padding: 0;
    pointer-events: all;
    margin: 0;
    -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .header__translate .wpml-ls-link:hover {
    opacity: 0.8;
  }
}
.header .header-cart {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 3px;
     -moz-column-gap: 3px;
          column-gap: 3px;
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .header .header-cart svg {
    width: 23px;
    height: auto;
  }
}
.header .cart-count {
  background-color: #1d1d15;
  color: #ffffff;
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 16px;
  height: 16px;
  top: 7px;
  left: 1px;
}
.header .cart-count span {
  position: absolute;
  color: #ffffff;
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
}
@media only screen and (min-width: 1024px) {
  .header .cart-count {
    width: 20px;
    height: 21px;
  }
  .header .cart-count span {
    font-size: 14px;
  }
}
.header__burger-line {
  width: 35px;
  height: 2px;
  display: block;
  background-color: #1d1d15;
  -webkit-transition: 0.5s ease;
  transition: 0.5s ease;
}
.header__burger-line:first-of-type {
  margin-bottom: 5px;
}
.header__menu-large {
  display: none;
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 1024px) {
  .header__menu-large {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
}
.header__link {
  font-size: 22px;
  line-height: 1;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  .header__link {
    -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
  }
  .header__link::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #1d1d15;
    bottom: -1px;
    left: 0;
    -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  .header__link:hover {
    opacity: 0.8;
  }
  .header__link:hover::after {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  .header__link.active::after {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}
.header__grid-right {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
@media only screen and (min-width: 1024px) {
  .header__grid-right {
    position: relative;
  }
}
.header--white .header__logo {
  -webkit-filter: invert(0);
          filter: invert(0);
}
.header--white .header__burger-line {
  background-color: #ffffff;
}
.header--white svg path {
  fill: #fff !important;
}
@media only screen and (min-width: 1024px) {
  .header--white .header__link {
    color: #ffffff;
  }
  .header--white .header__link::after {
    background-color: #ffffff;
  }
  .header--white .wpml-ls-link {
    color: #ffffff;
  }
}
.header--white .cart-count {
  background-color: #ffffff;
}
.header--white .cart-count span {
  color: #1d1d15;
}
.header--small {
  background-color: #1d1d15;
}
.header--small .header__container {
  background-color: #1d1d15;
  border-bottom: 1px solid #303030;
}
.header--small .header__logo {
  -webkit-filter: invert(0) !important;
          filter: invert(0) !important;
}
.header--small .wpml-ls-link {
  color: #ffffff;
}
.header--small .header__grid-right::after {
  opacity: 1;
}
.header--small .header__logo {
  -webkit-filter: invert(1);
          filter: invert(1);
}
.header--small .header__burger-line {
  background-color: #ffffff;
}
.header--small .header__link {
  color: #ffffff;
}
.header--small .header__link::after {
  background-color: #1d1d15;
}
.header--small svg path {
  fill: #fff !important;
}
.header--small .cart-count {
  background-color: #ffffff;
}
.header--small .cart-count span {
  color: #1d1d15;
}
.header--hide {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

.menu {
  background-color: #1d1d15;
  z-index: 1999;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  height: 100dvh;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  scroll-behavior: unset;
  pointer-events: none;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.34, 0.7, 0.27, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.34, 0.7, 0.27, 1);
  transition: transform 0.5s cubic-bezier(0.34, 0.7, 0.27, 1);
  transition: transform 0.5s cubic-bezier(0.34, 0.7, 0.27, 1), -webkit-transform 0.5s cubic-bezier(0.34, 0.7, 0.27, 1);
}
.menu--show {
  -webkit-transform: translateX(0%);
          transform: translateX(0%);
  pointer-events: all;
}
.menu__container {
  height: 100%;
  position: relative;
}
.menu__container-invisible {
  width: 100%;
}
.menu__links {
  padding: 150px 20px;
  display: grid;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 600px) {
  .menu__links {
    padding-top: 180px;
  }
}
@media only screen and (min-width: 1024px) {
  .menu__links {
    padding: 20px;
  }
}
.menu__link {
  padding: 10px 0;
  border-bottom: 1px solid #ffffff;
  color: #ffffff;
  font-size: 18px;
  font-weight: 500;
}
@media only screen and (min-width: 600px) {
  .menu__link {
    font-size: 23px;
  }
}
@media only screen and (min-width: 1024px) {
  .menu__link {
    padding: 10px 0;
    -webkit-transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .menu__link--principal {
    display: none;
  }
  .menu__link:hover {
    opacity: 0.5;
  }
}
.menu .wpml-ls {
  padding: 0 !important;
}
.menu .wpml-ls-link {
  color: #ffffff;
  padding: 10px 0;
  pointer-events: all;
  margin: 0;
  font-size: 18px;
  font-weight: 500;
}
@media only screen and (min-width: 600px) {
  .menu .wpml-ls-link {
    padding: 20px 0;
    font-size: 23px;
  }
}
@media only screen and (min-width: 1024px) {
  .menu .wpml-ls-link {
    display: none;
  }
}
.menu__socials {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 5px;
}
.menu__link-social {
  font-size: 16px;
  color: #ffffff;
  -webkit-transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.menu__link-social:hover {
  opacity: 0.5;
}
@media only screen and (min-width: 1024px) {
  .menu {
    overflow-y: inherit;
    border-radius: 3px;
    border: 1px solid #303030;
    width: 300px;
    opacity: 0;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    top: 100px;
    right: 20px;
    left: initial;
    -webkit-transform: translateX(0%) translateY(-20px);
            transform: translateX(0%) translateY(-20px);
  }
  .menu--banner-active {
    top: 135px !important;
  }
  .menu--show {
    -webkit-transition: 0.5s cubic-bezier(0.34, 0.7, 0.27, 1);
    transition: 0.5s cubic-bezier(0.34, 0.7, 0.27, 1);
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    pointer-events: all;
    opacity: 1;
    -webkit-transform: translateX(0%) translateY(0);
            transform: translateX(0%) translateY(0);
  }
}

body.menu-show .header__logo--black {
  display: block !important;
}
body.menu-show .header__logo--white {
  display: none !important;
}

@media only screen and (max-width: 1024px) {
  .menu-show svg path {
    fill: #fff !important;
  }
  .menu-show .header__burger-line {
    background-color: #ffffff;
  }
  .menu-show .header__logo {
    -webkit-filter: invert(0);
            filter: invert(0);
  }
}

[data-temporary-content] {
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}

.grecaptcha-badge {
  visibility: hidden !important;
}

/* Enlève le highlight bleu au tap (iOS Safari / Chrome iOS) */
a,
button,
input,
textarea,
select,
[role=button] {
  -webkit-tap-highlight-color: transparent;
}

/* Retire le focus au clic/tap */
a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

/* Mais garde un focus visible au clavier (recommandé) */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid currentColor;
  /* ou ta couleur */
  outline-offset: 2px;
}

#trustedsite-tm-image {
  display: none !important;
}

.footer {
  position: relative;
  z-index: 2;
  background-color: #1d1d15;
  padding-top: 30px;
  padding-bottom: 30px;
}
@media only screen and (min-width: 1024px) {
  .footer {
    padding-top: 50px;
  }
}
.footer__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 1024px) {
  .footer__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.footer__head {
  display: grid;
  grid-template-columns: 1fr;
  padding-top: 20px;
  border-top: 1px solid #ffffff;
  margin-bottom: 30px;
}
@media only screen and (min-width: 600px) {
  .footer__head {
    margin-bottom: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .footer__head {
    margin-bottom: 0;
    padding-top: 40px;
  }
}
.footer__head-title {
  color: #ffffff;
  margin-bottom: 20px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
@media only screen and (min-width: 1024px) {
  .footer__head-title {
    margin-bottom: 40px;
  }
}
.footer__head-link {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #ffffff;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: #1d1d15;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  text-decoration: none;
  width: 100%;
}
.footer__head-link:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .footer__head-link {
    overflow: hidden;
    font-size: 20px;
    padding: 11px 150px 10px 10px;
  }
  .footer__head-link::after {
    top: 14px;
  }
  .footer__head-link:hover {
    opacity: 0.9;
    padding: 11px 160px 10px 10px;
  }
}
@media only screen and (min-width: 600px) {
  .footer__head-link {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.footer__logos {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 50px;
}
@media only screen and (min-width: 1024px) {
  .footer__logos {
    margin-bottom: 0;
  }
}
.footer__logo {
  width: 150px;
  height: auto;
  margin: 10px;
}
@media only screen and (min-width: 1024px) {
  .footer__logo {
    width: 150px;
  }
}
.footer__mid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  row-gap: 30px;
  padding-bottom: 30px;
}
@media only screen and (min-width: 600px) {
  .footer__mid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only screen and (min-width: 1024px) {
  .footer__mid {
    width: 50%;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    justify-self: flex-end;
    padding-bottom: 50px;
  }
}
.footer__bottom {
  border-top: 1px solid #ffffff;
  padding: 20px 0 20px 0;
}
.footer__menu-principal {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 4px;
}
.footer__menu-secondary {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 4px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.footer__menu-socials {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 4px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.footer__link {
  color: #ffffff !important;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (min-width: 1024px) {
  .footer__link {
    font-size: 20px;
    -webkit-transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .footer__link:hover {
    opacity: 0.5;
  }
}
.footer__bottom {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 10px;
}
@media only screen and (min-width: 600px) {
  .footer__bottom {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.footer__copyright p,
.footer__copyright a, .footer__policy p,
.footer__policy a {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 18px;
  font-weight: 400;
}
@media only screen and (min-width: 600px) {
  .footer__copyright p,
.footer__copyright a, .footer__policy p,
.footer__policy a {
    margin-right: 10px;
    font-size: 16px !important;
  }
}

.module-description {
  padding: 50px 0;
}
.module-description--white .module-description__title {
  color: #ffffff !important;
}
.module-description--white .module-description__description {
  color: #ffffff !important;
}
@media only screen and (min-width: 1024px) {
  .module-description {
    padding: 100px 0;
  }
}
.module-description__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-description__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-description__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 30px;
}
@media only screen and (min-width: 600px) {
  .module-description__grid {
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
    row-gap: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .module-description__grid {
    grid-template-columns: 4fr 8fr;
    -webkit-column-gap: 100px;
       -moz-column-gap: 100px;
            column-gap: 100px;
  }
}

.module-image-text {
  padding-bottom: 20px;
}
.module-image-text.mask .module-image-text__container-image {
  position: relative;
  overflow: hidden;
  padding-bottom: 110%;
  width: 100%;
  border-radius: 0.6rem;
}
.module-image-text.mask .module-image-text__image {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.module-image-text__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-image-text__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-image-text__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 20px;
}
.module-image-text__container-image {
  width: 100%;
}
.module-image-text__image {
  width: 100%;
  height: auto;
  opacity: 0;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
  border-radius: 0.6rem;
}
.module-image-text__caption {
  margin-top: 5px;
  font-size: 16px;
}
.module-image-text__grid-item-right {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.5s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.5s;
}
@media only screen and (min-width: 600px) {
  .module-image-text__grid-item-right {
    padding: 100px 50px;
    -webkit-transform: translateY(60px);
            transform: translateY(60px);
  }
}
@media only screen and (min-width: 1024px) {
  .module-image-text__grid-item-right {
    padding: 30px 25% 30px 30px;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
}
.module-image-text.appear .module-image-text__image {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.module-image-text.appear .module-image-text__grid-item-right {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

@media only screen and (min-width: 1024px) {
  .module-image-text__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }

  .module-image-text--inverted .module-image-text__grid {
    grid-template-columns: repeat(12, 1fr) !important;
  }
  .module-image-text--inverted .module-image-text__grid-item-left {
    grid-column: 7/13 !important;
    grid-row: 1/2;
  }
  .module-image-text--inverted .module-image-text__grid-item-right {
    grid-column: 1/7 !important;
    grid-row: 1/2;
  }
}
.module-formulaire {
  background-color: #1d1d15;
  padding-top: 30px;
  padding-bottom: 50px;
}
@media only screen and (min-width: 1024px) {
  .module-formulaire {
    padding-bottom: 100px;
  }
}
.module-formulaire__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-formulaire__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-formulaire__grid {
  display: grid;
  row-gap: 30px;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  grid-template-columns: repeat(12, 1fr);
}
.module-formulaire__grid-left {
  grid-column: 1/13;
  grid-row: 1/2;
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1);
}
.module-formulaire__grid-left h1,
.module-formulaire__grid-left h2,
.module-formulaire__grid-left h3,
.module-formulaire__grid-left h4,
.module-formulaire__grid-left h5,
.module-formulaire__grid-left p,
.module-formulaire__grid-left a,
.module-formulaire__grid-left li {
  color: #ffffff;
}
@media only screen and (min-width: 600px) {
  .module-formulaire__grid-left {
    grid-column: 1/13;
    grid-row: 1/2;
  }
}
@media only screen and (min-width: 1024px) {
  .module-formulaire__grid-left {
    grid-column: 1/7;
    grid-row: 1/2;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
}
.module-formulaire__container-image {
  grid-column: 1/13;
  grid-row: 3/4;
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
  border-radius: 0.6rem;
  color: #ffffff;
  -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
          clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  -webkit-transition: -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s, -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
}
.module-formulaire__container-image::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background-color: #f3f0ea;
  height: 100%;
  width: 100%;
  -webkit-transition: 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  -webkit-transform-origin: top;
          transform-origin: top;
}
@media only screen and (min-width: 600px) {
  .module-formulaire__container-image {
    grid-column: 1/5;
    grid-row: 2/3;
  }
}
@media only screen and (min-width: 1024px) {
  .module-formulaire__container-image {
    grid-column: 1/4;
    grid-row: 2/3;
  }
}
.module-formulaire__image {
  width: 100%;
}
.module-formulaire__grid-right {
  grid-column: 1/13;
  grid-row: 2/3;
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.3s;
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.3s;
}
@media only screen and (min-width: 600px) {
  .module-formulaire__grid-right {
    grid-column: 6/13;
    grid-row: 2/3;
  }
}
@media only screen and (min-width: 1024px) {
  .module-formulaire__grid-right {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
    grid-column: 5/13;
    grid-row: 2/3;
  }
}
.module-formulaire.appear .module-formulaire__container-image {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.module-formulaire.appear .module-formulaire__container-image::before {
  -webkit-transform: scaleY(0);
          transform: scaleY(0);
}
.module-formulaire.appear .module-formulaire__grid-left {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.module-formulaire.appear .module-formulaire__grid-right {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.module-formulaire .wpcf7-turnstile {
  width: 100% !important;
}

.module-wysiwyg {
  padding: 30px 0;
}
@media only screen and (min-width: 1024px) {
  .module-wysiwyg {
    padding: 50px 0;
  }
}
.module-wysiwyg__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1);
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
  opacity: 0;
}
@media only screen and (min-width: 1024px) {
  .module-wysiwyg__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-wysiwyg__grid {
  width: 100%;
  display: inline-block;
}
@media only screen and (min-width: 1024px) {
  .module-wysiwyg__grid {
    padding: 0 16.66%;
  }
}
.module-wysiwyg.appear .module-wysiwyg__container {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.module-carrousel {
  position: relative;
}
.module-carrousel__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.5s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.5s;
  border-radius: 0.6rem;
  overflow: hidden;
}
@media only screen and (min-width: 1024px) {
  .module-carrousel__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-carrousel__container-image {
  position: relative;
  overflow: hidden;
  padding-bottom: 65%;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .module-carrousel__container-image {
    padding-bottom: 60%;
  }
}
.module-carrousel__image {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
.module-carrousel__container-arrows {
  position: absolute;
  z-index: 1;
  bottom: 20px;
  right: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
@media only screen and (min-width: 1024px) {
  .module-carrousel__container-arrows {
    -webkit-column-gap: 8;
       -moz-column-gap: 8;
            column-gap: 8;
    right: 60px;
  }
}
.module-carrousel__arrow {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 2px solid white;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0.9;
  -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.module-carrousel__arrow svg {
  position: absolute;
  opacity: 0.9;
  width: 15px;
  height: auto;
}
@media only screen and (min-width: 1024px) {
  .module-carrousel__arrow {
    width: 50px;
    height: 50px;
    cursor: pointer;
  }
  .module-carrousel__arrow svg {
    width: 18px;
  }
  .module-carrousel__arrow:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.module-carrousel.appear .module-carrousel__container {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.module-spacer {
  display: block;
  height: var(--height-mobile);
}
@media only screen and (min-width: 37.5rem) {
  .module-spacer {
    height: var(--height-tablet);
  }
}
@media only screen and (min-width: 64rem) {
  .module-spacer {
    height: var(--height-desktop);
  }
}

.module-formulaire {
  background-color: #1d1d15;
  padding-top: 30px;
  padding-bottom: 50px;
}
@media only screen and (min-width: 1024px) {
  .module-formulaire {
    padding-bottom: 100px;
  }
}
.module-formulaire__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-formulaire__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-formulaire__grid {
  display: grid;
  row-gap: 30px;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  grid-template-columns: repeat(12, 1fr);
}
.module-formulaire__grid-left {
  grid-column: 1/13;
  grid-row: 1/2;
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1);
}
.module-formulaire__grid-left h1,
.module-formulaire__grid-left h2,
.module-formulaire__grid-left h3,
.module-formulaire__grid-left h4,
.module-formulaire__grid-left h5,
.module-formulaire__grid-left p,
.module-formulaire__grid-left a,
.module-formulaire__grid-left li {
  color: #ffffff;
}
@media only screen and (min-width: 600px) {
  .module-formulaire__grid-left {
    grid-column: 1/13;
    grid-row: 1/2;
  }
}
@media only screen and (min-width: 1024px) {
  .module-formulaire__grid-left {
    grid-column: 1/7;
    grid-row: 1/2;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
}
.module-formulaire__container-image {
  grid-column: 1/13;
  grid-row: 3/4;
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
  border-radius: 0.6rem;
  color: #ffffff;
  -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
          clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  -webkit-transition: -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s, -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
}
.module-formulaire__container-image::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background-color: #f3f0ea;
  height: 100%;
  width: 100%;
  -webkit-transition: 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  -webkit-transform-origin: top;
          transform-origin: top;
}
@media only screen and (min-width: 600px) {
  .module-formulaire__container-image {
    grid-column: 1/5;
    grid-row: 2/3;
  }
}
@media only screen and (min-width: 1024px) {
  .module-formulaire__container-image {
    grid-column: 1/4;
    grid-row: 2/3;
  }
}
.module-formulaire__image {
  width: 100%;
}
.module-formulaire__grid-right {
  grid-column: 1/13;
  grid-row: 2/3;
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.3s;
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.3s;
}
@media only screen and (min-width: 600px) {
  .module-formulaire__grid-right {
    grid-column: 6/13;
    grid-row: 2/3;
  }
}
@media only screen and (min-width: 1024px) {
  .module-formulaire__grid-right {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
    grid-column: 5/13;
    grid-row: 2/3;
  }
}
.module-formulaire.appear .module-formulaire__container-image {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.module-formulaire.appear .module-formulaire__container-image::before {
  -webkit-transform: scaleY(0);
          transform: scaleY(0);
}
.module-formulaire.appear .module-formulaire__grid-left {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.module-formulaire.appear .module-formulaire__grid-right {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.module-formulaire .wpcf7-turnstile {
  width: 100% !important;
}

.module-about {
  background-color: #1d1d15;
}
.module-about__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-about__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-about__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 20px;
}
@media only screen and (min-width: 600px) {
  .module-about__grid {
    row-gap: 40px;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
    grid-template-columns: repeat(12, 1fr);
  }
}
.module-about__title {
  font-size: 30px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  font-size: 25px;
  color: #ffffff;
  text-transform: uppercase;
}
@media only screen and (min-width: 600px) {
  .module-about__title {
    font-size: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .module-about__title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 600px) {
  .module-about__title {
    grid-column: 1/13;
    grid-row: 1/2;
  }
}
@media only screen and (min-width: 1024px) {
  .module-about__title {
    grid-column: 1/9;
  }
}
.module-about__content-left {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.5s;
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.5s;
}
.module-about__content-left h1,
.module-about__content-left h2,
.module-about__content-left h3,
.module-about__content-left h4,
.module-about__content-left h5,
.module-about__content-left p,
.module-about__content-left a,
.module-about__content-left li {
  color: #ffffff !important;
}
.module-about__content-left .wysiwyg-button-blanc {
  color: #1d1d15 !important;
  opacity: 1 !important;
}
@media only screen and (min-width: 600px) {
  .module-about__content-left {
    grid-column: 1/7;
    grid-row: 2/3;
  }
}
@media only screen and (min-width: 1024px) {
  .module-about__content-left {
    grid-column: 1/5;
  }
}
.module-about__content-right {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.8s;
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.8s;
}
.module-about__content-right h1,
.module-about__content-right h2,
.module-about__content-right h3,
.module-about__content-right h4,
.module-about__content-right h5,
.module-about__content-right p,
.module-about__content-right a,
.module-about__content-right li {
  color: #ffffff !important;
}
@media only screen and (min-width: 600px) {
  .module-about__content-right {
    grid-column: 7/13;
    grid-row: 2/3;
  }
}
@media only screen and (min-width: 1024px) {
  .module-about__content-right {
    grid-column: 5/9;
  }
}
.module-about__container-image {
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
  border-radius: 0.6rem;
  color: #ffffff;
  -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
          clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  -webkit-transition: -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
  transition: clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s, -webkit-clip-path 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
}
.module-about__container-image::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background-color: #f3f0ea;
  height: 100%;
  width: 100%;
  -webkit-transition: 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: 0.7s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  -webkit-transform-origin: top;
          transform-origin: top;
}
@media only screen and (min-width: 600px) {
  .module-about__container-image {
    grid-column: 1/7;
    grid-row: 3/4;
  }
}
@media only screen and (min-width: 1024px) {
  .module-about__container-image {
    grid-column: 10/13;
    grid-row: 1/5;
  }
}
.module-about__image {
  width: 100%;
}
.module-about.appear [data-splitting=lines] .line-content {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.module-about.appear .module-about__content-right,
.module-about.appear .module-about__content-left {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.module-about.appear .module-about__container-image {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.module-about.appear .module-about__container-image::before {
  -webkit-transform: scaleY(0);
          transform: scaleY(0);
}

.module-list {
  padding-bottom: 30px;
}
.module-list__title {
  font-size: 20px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  text-transform: uppercase;
}
@media only screen and (min-width: 1024px) {
  .module-list__title {
    font-size: 30px;
  }
}
.module-list__line {
  width: 100%;
  display: block;
  height: 1px;
  background-color: #1d1d15;
  margin-top: 20px;
  margin-bottom: 20px;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition: 0.8s ease-in;
  transition: 0.8s ease-in;
}
.module-list__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-list__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-list__grid {
  display: grid;
  grid-template-columns: 1fr;
}
.module-list__item {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 20px;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  opacity: 0;
}
.module-list__item:nth-of-type(1n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0s;
}
.module-list__item:nth-of-type(2n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.2s;
}
.module-list__item:nth-of-type(3n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.4s;
}
.module-list__item:nth-of-type(4n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.6s;
}
.module-list__item:nth-of-type(5n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.8s;
}
.module-list__item:nth-of-type(6n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1s;
}
.module-list__item:nth-of-type(7n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.2s;
}
.module-list__item:nth-of-type(8n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.4s;
}
.module-list__item:nth-of-type(9n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.6s;
}
.module-list__item:nth-of-type(10n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.8s;
}
.module-list__item:nth-of-type(11n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2s;
}
.module-list__item:nth-of-type(12n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.2s;
}
.module-list__item:nth-of-type(13n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.4s;
}
.module-list__item:nth-of-type(14n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.6s;
}
.module-list__item:nth-of-type(15n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.8s;
}
.module-list__item:nth-of-type(16n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3s;
}
.module-list__item:nth-of-type(17n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.2s;
}
.module-list__item:nth-of-type(18n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.4s;
}
.module-list__item:nth-of-type(19n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.6s;
}
.module-list__item:nth-of-type(20n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.8s;
}
.module-list__item:nth-of-type(21n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4s;
}
.module-list__item:nth-of-type(22n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.2s;
}
.module-list__item:nth-of-type(23n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.4s;
}
.module-list__item:nth-of-type(24n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.6s;
}
.module-list__item:nth-of-type(25n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.8s;
}
.module-list__item:nth-of-type(26n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5s;
}
.module-list__item:nth-of-type(27n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.2s;
}
.module-list__item:nth-of-type(28n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.4s;
}
.module-list__item:nth-of-type(29n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.6s;
}
.module-list__item:nth-of-type(30n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.8s;
}
.module-list__item:nth-of-type(31n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6s;
}
.module-list__item:nth-of-type(32n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.2s;
}
.module-list__item:nth-of-type(33n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.4s;
}
.module-list__item:nth-of-type(34n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.6s;
}
.module-list__item:nth-of-type(35n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.8s;
}
.module-list__item:nth-of-type(36n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7s;
}
.module-list__item:nth-of-type(37n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.2s;
}
.module-list__item:nth-of-type(38n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.4s;
}
.module-list__item:nth-of-type(39n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.6s;
}
.module-list__item:nth-of-type(40n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.8s;
}
.module-list__item:nth-of-type(41n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8s;
}
.module-list__item:nth-of-type(42n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.2s;
}
.module-list__item:nth-of-type(43n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.4s;
}
.module-list__item:nth-of-type(44n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.6s;
}
.module-list__item:nth-of-type(45n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.8s;
}
.module-list__item:nth-of-type(46n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9s;
}
.module-list__item:nth-of-type(47n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.2s;
}
.module-list__item:nth-of-type(48n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.4s;
}
.module-list__item:nth-of-type(49n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.6s;
}
.module-list__item:nth-of-type(50n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.8s;
}
.module-list__item:nth-of-type(51n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10s;
}
.module-list__item:nth-of-type(52n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.2s;
}
.module-list__item:nth-of-type(53n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.4s;
}
.module-list__item:nth-of-type(54n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.6s;
}
.module-list__item:nth-of-type(55n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.8s;
}
.module-list__item:nth-of-type(56n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11s;
}
.module-list__item:nth-of-type(57n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.2s;
}
.module-list__item:nth-of-type(58n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.4s;
}
.module-list__item:nth-of-type(59n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.6s;
}
.module-list__item:nth-of-type(60n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.8s;
}
.module-list__item:nth-of-type(61n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12s;
}
.module-list__item:nth-of-type(62n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.2s;
}
.module-list__item:nth-of-type(63n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.4s;
}
.module-list__item:nth-of-type(64n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.6s;
}
.module-list__item:nth-of-type(65n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.8s;
}
.module-list__item:nth-of-type(66n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13s;
}
.module-list__item:nth-of-type(67n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.2s;
}
.module-list__item:nth-of-type(68n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.4s;
}
.module-list__item:nth-of-type(69n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.6s;
}
.module-list__item:nth-of-type(70n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.8s;
}
.module-list__item:nth-of-type(71n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14s;
}
.module-list__item:nth-of-type(72n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.2s;
}
.module-list__item:nth-of-type(73n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.4s;
}
.module-list__item:nth-of-type(74n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.6s;
}
.module-list__item:nth-of-type(75n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.8s;
}
.module-list__item:nth-of-type(76n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15s;
}
.module-list__item:nth-of-type(77n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.2s;
}
.module-list__item:nth-of-type(78n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.4s;
}
.module-list__item:nth-of-type(79n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.6s;
}
.module-list__item:nth-of-type(80n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.8s;
}
.module-list__item:nth-of-type(81n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16s;
}
.module-list__item:nth-of-type(82n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.2s;
}
.module-list__item:nth-of-type(83n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.4s;
}
.module-list__item:nth-of-type(84n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.6s;
}
.module-list__item:nth-of-type(85n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.8s;
}
.module-list__item:nth-of-type(86n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17s;
}
.module-list__item:nth-of-type(87n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.2s;
}
.module-list__item:nth-of-type(88n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.4s;
}
.module-list__item:nth-of-type(89n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.6s;
}
.module-list__item:nth-of-type(90n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.8s;
}
.module-list__item:nth-of-type(91n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18s;
}
.module-list__item:nth-of-type(92n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.2s;
}
.module-list__item:nth-of-type(93n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.4s;
}
.module-list__item:nth-of-type(94n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.6s;
}
.module-list__item:nth-of-type(95n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.8s;
}
.module-list__item:nth-of-type(96n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19s;
}
.module-list__item:nth-of-type(97n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.2s;
}
.module-list__item:nth-of-type(98n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.4s;
}
.module-list__item:nth-of-type(99n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.6s;
}
.module-list__item:nth-of-type(100n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.8s;
}
@media only screen and (min-width: 600px) {
  .module-list__item {
    row-gap: 15px;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (min-width: 600px) {
  .module-list__item-tag {
    grid-column: 1/9;
    grid-row: 1/2;
  }
}
@media only screen and (min-width: 1024px) {
  .module-list__item-tag {
    grid-column: 1/3;
    grid-row: 1/2;
    margin-top: 20px;
  }
}
@media only screen and (min-width: 600px) {
  .module-list__item-content {
    grid-column: 1/9;
    grid-row: 2/3;
  }
}
@media only screen and (min-width: 1024px) {
  .module-list__item-content {
    grid-column: 3/8;
    grid-row: 1/2;
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
.module-list__item-image {
  width: 100%;
  border-radius: 0.6rem;
}
@media only screen and (min-width: 600px) {
  .module-list__item-image {
    grid-column: 10/13;
    grid-row: 1/3;
  }
}
@media only screen and (min-width: 1024px) {
  .module-list__item-image {
    grid-column: 10/13;
    grid-row: 1/2;
    max-width: 350px;
    justify-self: flex-end;
  }
}
.module-list__link {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #1d1d15;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: white;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  width: 100%;
}
.module-list__link:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .module-list__link {
    font-size: 20px;
    padding: 11px 150px 10px 10px;
    overflow: hidden;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .module-list__link::after {
    top: 14px;
  }
  .module-list__link:hover {
    padding: 11px 160px 10px 10px;
    opacity: 0.9;
  }
}
@media only screen and (min-width: 600px) {
  .module-list__link {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.module-list.appear [data-splitting=lines] .line-content {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.module-list.appear .module-list__item {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.module-list.appear .module-list__line {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}

.module-portfolio-hero {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.32, 0.94, 0.6, 1) 0.5s;
  transition: 1s cubic-bezier(0.32, 0.94, 0.6, 1) 0.5s;
}
.module-portfolio-hero__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-portfolio-hero__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-portfolio-hero__filters {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  row-gap: 10px;
  margin-bottom: 10px;
}
@media only screen and (min-width: 1024px) {
  .module-portfolio-hero__filters {
    margin-bottom: 20px;
  }
}
.module-portfolio-hero__filter-container {
  width: 100%;
  height: 40px;
  cursor: pointer;
  position: relative;
  border: 1px solid #1d1d15;
  padding: 8px 40px 8px 10px;
  border-radius: 5px;
}
.module-portfolio-hero__filter-container select {
  padding-left: 10px;
  position: absolute;
  width: 100%;
  height: 37px;
  top: 0;
  left: 0;
  font-size: 16px;
  font-weight: 500;
  color: #1d1d15;
}
.module-portfolio-hero__filter-container svg {
  position: absolute;
  right: 10px;
  top: 14px;
  width: 17px;
}
.module-portfolio-hero__filter-container svg path {
  stroke: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  .module-portfolio-hero__filter-container {
    width: 350px;
    padding: 11px 40px 10px 10px;
    height: 45px;
  }
  .module-portfolio-hero__filter-container select {
    height: 45px;
    width: 350px !important;
    font-size: 18px;
  }
  .module-portfolio-hero__filter-container svg {
    top: 17px;
  }
}
.module-portfolio-hero.appear {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.module-portfolio {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.32, 0.94, 0.6, 1) 0.5s;
  transition: 1s cubic-bezier(0.32, 0.94, 0.6, 1) 0.5s;
  padding: 15px 0 30px 0;
}
.module-portfolio__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@media only screen and (min-width: 1024px) {
  .module-portfolio__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-portfolio__container--animate {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}
.module-portfolio__grid-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 30px;
}
.module-portfolio__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 15px;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
}
@media only screen and (min-width: 600px) {
  .module-portfolio__grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 1024px) {
  .module-portfolio__grid {
    grid-template-columns: 1fr 1fr 1fr;
    row-gap: 30px;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
}
.module-portfolio__card {
  position: relative;
  width: 100%;
  padding-bottom: 130%;
  border-radius: 0.6rem;
  height: 0;
  overflow: hidden;
  margin-right: 20px;
}
@media only screen and (min-width: 1024px) {
  .module-portfolio__card:hover .module-portfolio__image {
    -webkit-transform: scale(1.04);
            transform: scale(1.04);
  }
  .module-portfolio__card:hover .module-portfolio__arrow {
    opacity: 1 !important;
  }
}
.module-portfolio__image {
  position: absolute;
  height: 100%;
  width: 100%;
  bottom: 0;
  margin: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.module-portfolio__filter {
  position: absolute;
  height: 50%;
  width: 100%;
  bottom: 0;
  z-index: 3;
  background: #000000;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.53)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.53) 0%, rgba(0, 0, 0, 0) 100%);
}
.module-portfolio__content {
  width: 100%;
  padding: 20px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 4;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media only screen and (min-width: 1024px) {
  .module-portfolio__content {
    padding: 30px;
  }
}
.module-portfolio__arrow {
  opacity: 0;
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
}
.module-portfolio__content-title {
  color: #ffffff;
  font-size: 20px;
}
@media only screen and (min-width: 1024px) {
  .module-portfolio__content-title {
    font-size: 30px;
  }
}
.module-portfolio.appear {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.module-portfolio.appear .module-portfolio__card {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.module-description-video {
  position: relative;
}
.module-description-video__container {
  position: relative;
  z-index: 2;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
}
@media only screen and (min-width: 1024px) {
  .module-description-video__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-description-video__video-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  border-radius: 0.6rem;
}
.module-description-video__overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: rgba(0, 0, 0, 0.151);
  border-radius: 0.6rem;
  cursor: pointer;
  -webkit-transition: 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.module-description-video__overlay svg {
  width: 50px;
  height: 50px;
  position: absolute;
  z-index: 4;
}
@media only screen and (min-width: 1024px) {
  .module-description-video__overlay svg {
    width: 90px;
    height: 90px;
    -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .module-description-video__overlay svg:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.module-description-video__overlay--hide {
  opacity: 0;
  pointer-events: none;
}
.module-description-video__video {
  width: 100%;
  display: block;
  border-radius: 0.6rem;
}
.module-description-video.appear .module-description-video__container {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.module-logos {
  background-color: #1d1d15;
  overflow: hidden;
  padding: 50px 0;
}
@media only screen and (min-width: 1024px) {
  .module-logos {
    padding: 100px 0;
  }
}
.module-logos__container {
  overflow: hidden;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-logos__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 64rem) {
  .module-logos__container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.module-logos__title {
  font-size: 20px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  text-transform: uppercase;
  color: #ffffff;
  width: 100%;
  margin-bottom: 30px;
}
@media only screen and (min-width: 1024px) {
  .module-logos__title {
    font-size: 30px;
  }
}
@media only screen and (min-width: 64rem) {
  .module-logos__title {
    margin-bottom: 50px;
  }
}
.module-logos__logos {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  white-space: nowrap;
  width: calc(100% + 80px);
  margin-left: -40px;
}
@media only screen and (min-width: 64rem) {
  .module-logos__logos {
    width: 100vw;
    margin-left: 0;
  }
}
.module-logos__logo {
  height: 40px;
  width: auto;
  margin: 0 15px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media only screen and (min-width: 37.5rem) {
  .module-logos__logo {
    height: 40px;
    margin: 0 25px;
  }
}
@media only screen and (min-width: 64rem) {
  .module-logos__logo {
    height: 50px;
    margin: 0 40px;
  }
}
.module-logos.appear [data-splitting=lines] .line-content {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.module-logos.appear .module-logos__logos {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.module-head-none {
  position: relative;
  overflow: hidden;
  padding: 100px 0 0 0;
}
@media only screen and (min-width: 600px) {
  .module-head-none {
    padding: 100px 0 0 0;
  }
}
@media only screen and (min-width: 1024px) {
  .module-head-none {
    padding: 150px 0 0 0;
  }
}
.module-head-none__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 3;
}
@media only screen and (min-width: 1024px) {
  .module-head-none__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}

.module-head-text {
  position: relative;
  overflow: hidden;
  padding: 130px 0 0 0;
}
@media only screen and (min-width: 600px) {
  .module-head-text {
    padding: 150px 0 0 0;
  }
}
@media only screen and (min-width: 1024px) {
  .module-head-text {
    padding: 200px 0 30px 0;
  }
}
.module-head-text__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 3;
}
@media only screen and (min-width: 1024px) {
  .module-head-text__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-head-text__title {
  font-size: 20px;
  display: block;
  font-size: 20px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  text-transform: uppercase;
}
@media only screen and (min-width: 1024px) {
  .module-head-text__title {
    font-size: 30px;
  }
}
.module-head-text__subtitle {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 30px;
  opacity: 0;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.3s;
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.3s;
}
@media only screen and (min-width: 1024px) {
  .module-head-text__subtitle {
    font-size: 20px;
    margin-bottom: 0;
  }
}
.module-head-text__line {
  width: 100%;
  display: block;
  height: 1px;
  background-color: #1d1d15;
  margin-top: 20px;
  margin-bottom: 20px;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition: 0.8s ease-in;
  transition: 0.8s ease-in;
}
@media only screen and (min-width: 600px) {
  .module-head-text__line {
    margin-top: 25px;
    margin-bottom: 25px;
  }
}
.module-head-text__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 20px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 600px) {
  .module-head-text__grid {
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 15px;
       -moz-column-gap: 15px;
            column-gap: 15px;
  }
}
@media only screen and (min-width: 1024px) {
  .module-head-text__grid {
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
}
.module-head-text__grid-left {
  margin-bottom: 30px;
}
.module-head-text__grid-right {
  max-width: 700px;
}
@media only screen and (min-width: 1024px) {
  .module-head-text__grid-right {
    margin-top: 20px;
  }
}
.module-head-text__item {
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  opacity: 0;
}
.module-head-text__item:nth-of-type(1n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0s;
}
.module-head-text__item:nth-of-type(2n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.2s;
}
.module-head-text__item:nth-of-type(3n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.4s;
}
.module-head-text__item:nth-of-type(4n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.6s;
}
.module-head-text__item:nth-of-type(5n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.8s;
}
.module-head-text__item:nth-of-type(6n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1s;
}
.module-head-text__item:nth-of-type(7n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.2s;
}
.module-head-text__item:nth-of-type(8n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.4s;
}
.module-head-text__item:nth-of-type(9n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.6s;
}
.module-head-text__item:nth-of-type(10n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.8s;
}
.module-head-text__item:nth-of-type(11n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2s;
}
.module-head-text__item:nth-of-type(12n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.2s;
}
.module-head-text__item:nth-of-type(13n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.4s;
}
.module-head-text__item:nth-of-type(14n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.6s;
}
.module-head-text__item:nth-of-type(15n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.8s;
}
.module-head-text__item:nth-of-type(16n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3s;
}
.module-head-text__item:nth-of-type(17n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.2s;
}
.module-head-text__item:nth-of-type(18n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.4s;
}
.module-head-text__item:nth-of-type(19n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.6s;
}
.module-head-text__item:nth-of-type(20n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.8s;
}
.module-head-text__item:nth-of-type(21n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4s;
}
.module-head-text__item:nth-of-type(22n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.2s;
}
.module-head-text__item:nth-of-type(23n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.4s;
}
.module-head-text__item:nth-of-type(24n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.6s;
}
.module-head-text__item:nth-of-type(25n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.8s;
}
.module-head-text__item:nth-of-type(26n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5s;
}
.module-head-text__item:nth-of-type(27n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.2s;
}
.module-head-text__item:nth-of-type(28n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.4s;
}
.module-head-text__item:nth-of-type(29n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.6s;
}
.module-head-text__item:nth-of-type(30n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.8s;
}
.module-head-text__item:nth-of-type(31n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6s;
}
.module-head-text__item:nth-of-type(32n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.2s;
}
.module-head-text__item:nth-of-type(33n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.4s;
}
.module-head-text__item:nth-of-type(34n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.6s;
}
.module-head-text__item:nth-of-type(35n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.8s;
}
.module-head-text__item:nth-of-type(36n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7s;
}
.module-head-text__item:nth-of-type(37n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.2s;
}
.module-head-text__item:nth-of-type(38n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.4s;
}
.module-head-text__item:nth-of-type(39n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.6s;
}
.module-head-text__item:nth-of-type(40n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.8s;
}
.module-head-text__item:nth-of-type(41n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8s;
}
.module-head-text__item:nth-of-type(42n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.2s;
}
.module-head-text__item:nth-of-type(43n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.4s;
}
.module-head-text__item:nth-of-type(44n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.6s;
}
.module-head-text__item:nth-of-type(45n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.8s;
}
.module-head-text__item:nth-of-type(46n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9s;
}
.module-head-text__item:nth-of-type(47n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.2s;
}
.module-head-text__item:nth-of-type(48n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.4s;
}
.module-head-text__item:nth-of-type(49n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.6s;
}
.module-head-text__item:nth-of-type(50n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.8s;
}
.module-head-text__item:nth-of-type(51n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10s;
}
.module-head-text__item:nth-of-type(52n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.2s;
}
.module-head-text__item:nth-of-type(53n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.4s;
}
.module-head-text__item:nth-of-type(54n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.6s;
}
.module-head-text__item:nth-of-type(55n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.8s;
}
.module-head-text__item:nth-of-type(56n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11s;
}
.module-head-text__item:nth-of-type(57n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.2s;
}
.module-head-text__item:nth-of-type(58n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.4s;
}
.module-head-text__item:nth-of-type(59n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.6s;
}
.module-head-text__item:nth-of-type(60n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.8s;
}
.module-head-text__item:nth-of-type(61n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12s;
}
.module-head-text__item:nth-of-type(62n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.2s;
}
.module-head-text__item:nth-of-type(63n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.4s;
}
.module-head-text__item:nth-of-type(64n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.6s;
}
.module-head-text__item:nth-of-type(65n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.8s;
}
.module-head-text__item:nth-of-type(66n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13s;
}
.module-head-text__item:nth-of-type(67n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.2s;
}
.module-head-text__item:nth-of-type(68n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.4s;
}
.module-head-text__item:nth-of-type(69n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.6s;
}
.module-head-text__item:nth-of-type(70n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.8s;
}
.module-head-text__item:nth-of-type(71n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14s;
}
.module-head-text__item:nth-of-type(72n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.2s;
}
.module-head-text__item:nth-of-type(73n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.4s;
}
.module-head-text__item:nth-of-type(74n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.6s;
}
.module-head-text__item:nth-of-type(75n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.8s;
}
.module-head-text__item:nth-of-type(76n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15s;
}
.module-head-text__item:nth-of-type(77n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.2s;
}
.module-head-text__item:nth-of-type(78n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.4s;
}
.module-head-text__item:nth-of-type(79n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.6s;
}
.module-head-text__item:nth-of-type(80n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.8s;
}
.module-head-text__item:nth-of-type(81n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16s;
}
.module-head-text__item:nth-of-type(82n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.2s;
}
.module-head-text__item:nth-of-type(83n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.4s;
}
.module-head-text__item:nth-of-type(84n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.6s;
}
.module-head-text__item:nth-of-type(85n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.8s;
}
.module-head-text__item:nth-of-type(86n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17s;
}
.module-head-text__item:nth-of-type(87n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.2s;
}
.module-head-text__item:nth-of-type(88n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.4s;
}
.module-head-text__item:nth-of-type(89n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.6s;
}
.module-head-text__item:nth-of-type(90n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.8s;
}
.module-head-text__item:nth-of-type(91n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18s;
}
.module-head-text__item:nth-of-type(92n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.2s;
}
.module-head-text__item:nth-of-type(93n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.4s;
}
.module-head-text__item:nth-of-type(94n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.6s;
}
.module-head-text__item:nth-of-type(95n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.8s;
}
.module-head-text__item:nth-of-type(96n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19s;
}
.module-head-text__item:nth-of-type(97n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.2s;
}
.module-head-text__item:nth-of-type(98n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.4s;
}
.module-head-text__item:nth-of-type(99n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.6s;
}
.module-head-text__item:nth-of-type(100n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.8s;
}
.module-head-text__item-text {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
  font-family: "grift", Helvetica, Arial, sans-serif;
  color: #1d1d15;
  max-width: 450px;
}
@media only screen and (min-width: 600px) {
  .module-head-text__item-text {
    font-size: 18px;
  }
}
@media only screen and (min-width: 1024px) {
  .module-head-text__item-text {
    font-size: 20px;
  }
}
.module-head-text__item-link {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #1d1d15;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: white;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  width: 100%;
}
.module-head-text__item-link:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .module-head-text__item-link {
    font-size: 20px;
    padding: 11px 150px 10px 10px;
    overflow: hidden;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .module-head-text__item-link::after {
    top: 14px;
  }
  .module-head-text__item-link:hover {
    padding: 11px 160px 10px 10px;
    opacity: 0.9;
  }
}
.module-head-text.appear [data-splitting=lines] .line-content {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.module-head-text.appear .module-head-text__line {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}
.module-head-text.appear .module-head-text__item {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}
.module-head-text.appear .module-head-text__container-link {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.background--white {
  background-color: #f3f0ea;
}

.background--black {
  background-color: #1d1d15;
}
.background--black h1,
.background--black h2,
.background--black h3,
.background--black h4,
.background--black h5,
.background--black p,
.background--black a,
.background--black li {
  color: #ffffff !important;
}
.background--black .footer__head-link {
  color: #1d1d15 !important;
}
.background--black .mwg_effect024 .cta-button {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #ffffff;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: #1d1d15;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  text-decoration: none;
  color: #1d1d15 !important;
}
.background--black .mwg_effect024 .cta-button:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .background--black .mwg_effect024 .cta-button {
    overflow: hidden;
    font-size: 20px;
    padding: 11px 150px 10px 10px;
  }
  .background--black .mwg_effect024 .cta-button::after {
    top: 14px;
  }
  .background--black .mwg_effect024 .cta-button:hover {
    opacity: 0.9;
    padding: 11px 160px 10px 10px;
  }
}
.background--black .faq__label, .background--black .faq__title, .background--black .faq__question, .background--black .faq__answer {
  color: #fff;
}
.background--black .faq__list {
  border-color: rgba(255, 255, 255, 0.2);
}
.background--black .faq__item:not(:last-child)::after {
  background: rgba(255, 255, 255, 0.2);
}
.background--black .faq__icon svg path {
  stroke: #fff;
}
.background--black .module-testimonials__grid-head-title {
  color: #ffffff;
}
.background--black .module-testimonials__title, .background--black .module-testimonials__name, .background--black .module-testimonials__content {
  color: #ffffff;
}
.background--black .module-testimonials__line {
  background-color: white;
}
.background--black .module-testimonials__card-inner {
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.background--black .module-testimonials__arrow {
  border: 1px solid white;
}
.background--black .module-testimonials__arrow svg path {
  fill: white;
  stroke: white;
}
.background--black .wysiwyg-button-blanc {
  color: #1d1d15 !important;
}
.background--black .module-testimonials {
  color: #1d1d15;
}
.background--black .module-testimonials__title, .background--black .module-testimonials__name, .background--black .module-testimonials__content {
  color: #1d1d15;
}
.background--black .module-testimonials__card {
  border: 1px solid rgba(0, 0, 0, 0.2);
}
.background--black .is-dark .module-testimonials {
  color: #ffffff;
}
.background--black .is-dark .module-testimonials__title, .background--black .is-dark .module-testimonials__name, .background--black .is-dark .module-testimonials__content {
  color: #ffffff;
}
.background--black .is-dark .module-testimonials__card {
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.background--black .module-content-video__overlay {
  border: 2px solid white !important;
}
.background--black .mwg_effect025 .card .content {
  border: 2px solid white !important;
}
.background--black .module-images__image {
  border: 2px solid white !important;
}
.background--black .module-content-video__video {
  border: 2px solid white !important;
}
.background--black .module-content-video__overlay {
  border: 2px solid white !important;
}

.hero {
  position: relative;
  overflow: hidden;
}
.hero__media {
  position: relative;
  width: 100%;
  height: 100vh;
}
.hero__content {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding: 0 20px;
}
.hero__content .wysiwyg {
  display: block;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .hero__content {
    padding: 0 40px;
  }
}
.hero__overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 2;
  background: #1d1d15;
  background: -webkit-gradient(linear, left bottom, left top, from(#1d1d15), to(rgba(29, 29, 21, 0.28)));
  background: linear-gradient(0deg, #1d1d15 0%, rgba(29, 29, 21, 0.28) 100%);
}
.hero__video, .hero__image, .hero__placeholder {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.hero .wysiwyg h1,
.hero .wysiwyg h2,
.hero .wysiwyg h3,
.hero .wysiwyg h4,
.hero .wysiwyg h5,
.hero .wysiwyg h6,
.hero .wysiwyg ul,
.hero .wysiwyg li,
.hero .wysiwyg a,
.hero .wysiwyg p {
  color: #ffffff !important;
}
.hero .wysiwyg .wysiwyg-button-blanc {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #ffffff;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: #1d1d15;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  text-decoration: none;
  color: #1d1d15 !important;
}
.hero .wysiwyg .wysiwyg-button-blanc:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .hero .wysiwyg .wysiwyg-button-blanc {
    overflow: hidden;
    font-size: 20px;
    padding: 11px 150px 10px 10px;
  }
  .hero .wysiwyg .wysiwyg-button-blanc::after {
    top: 14px;
  }
  .hero .wysiwyg .wysiwyg-button-blanc:hover {
    opacity: 0.9;
    padding: 11px 160px 10px 10px;
  }
}

@-webkit-keyframes scroll-indicator {
  0% {
    top: 0;
    opacity: 1;
  }
  100% {
    top: 100%;
    opacity: 0;
  }
}

@keyframes scroll-indicator {
  0% {
    top: 0;
    opacity: 1;
  }
  100% {
    top: 100%;
    opacity: 0;
  }
}
.homepage {
  /* Le thumb maintenant est relatif au track */
}
.homepage .height-offset {
  min-height: calc(100vh - var(--header-banner-height, 0px));
}
.homepage__title {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1), -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1), -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1), transform 1.1s cubic-bezier(0.22, 1, 0.36, 1);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1), transform 1.1s cubic-bezier(0.22, 1, 0.36, 1), -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1);
}
.homepage__subtitle {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.3s, -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.3s;
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.3s, -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.3s;
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.3s, transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.3s;
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.3s, transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.3s, -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.3s;
}
.homepage__container-link {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.6s, -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.6s;
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.6s, -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.6s;
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.6s, transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.6s;
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.6s, transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.6s, -webkit-transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) 0.6s;
}
@media only screen and (min-width: 1024px) {
  .homepage__container-link {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.homepage .scroll-indicator {
  position: absolute;
  right: 24px;
  bottom: 24px;
  width: 3px;
  height: 110px;
  pointer-events: none;
  z-index: 10;
}
@media only screen and (min-width: 1024px) {
  .homepage .scroll-indicator {
    right: 30px;
    bottom: 30px;
  }
}
.homepage .scroll-indicator__track {
  position: absolute;
  inset: 0;
  background: #ffffff1f;
  overflow: hidden;
  /* ✅ empêche le thumb de dépasser */
}
.homepage .scroll-indicator__thumb {
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 3px;
  height: 36px;
  background: #ffffff;
  /* ✅ durée totale + pause incluse */
  -webkit-animation: scrollHint 5s cubic-bezier(0.22, 0.61, 0.36, 1) infinite;
          animation: scrollHint 5s cubic-bezier(0.22, 0.61, 0.36, 1) infinite;
  will-change: top, opacity;
}
@-webkit-keyframes scrollHint {
  0% {
    top: 0px;
  }
  15% {
    top: 74px;
  }
  31% {
    top: 0px;
  }
  100% {
    top: 0px;
  }
  /* pause ~2s */
}
@keyframes scrollHint {
  0% {
    top: 0px;
  }
  15% {
    top: 74px;
  }
  31% {
    top: 0px;
  }
  100% {
    top: 0px;
  }
  /* pause ~2s */
}
@media (prefers-reduced-motion: reduce) {
  .homepage .scroll-indicator__thumb {
    -webkit-animation: none;
            animation: none;
    opacity: 0.9;
  }
}
.homepage.appear .homepage__title, .homepage.appear .homepage__subtitle, .homepage.appear .homepage__container-link {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.module-images {
  padding-top: 20px;
}
.module-images.mask .module-images__container-image {
  position: relative;
  overflow: hidden;
  padding-bottom: 130%;
  width: 100%;
}
.module-images.mask .module-images__image {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.module-images__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1500px;
}
@media only screen and (min-width: 1024px) {
  .module-images__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-images__title {
  margin-bottom: 20px;
}
.module-images__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 40px;
}
@media only screen and (min-width: 600px) {
  .module-images__grid.two-column {
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
}
@media only screen and (min-width: 600px) {
  .module-images__grid.three-column {
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
}
@media only screen and (min-width: 1024px) {
  .module-images__grid.three-column {
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
}
@media only screen and (min-width: 1024px) {
  .module-images__grid {
    row-gap: 50px;
  }
}
.module-images__container-image {
  overflow: hidden;
  border-radius: 3px;
}
.module-images__image {
  border-radius: 0.6em;
  width: 100%;
  opacity: 0;
  -webkit-transform: scale(1.4);
          transform: scale(1.4);
  border: 2px solid #1d1d15;
}
.module-images__grid-item:nth-of-type(1n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0s;
}
.module-images__grid-item:nth-of-type(2n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.2s;
}
.module-images__grid-item:nth-of-type(3n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.4s;
}
.module-images__grid-item:nth-of-type(4n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.6s;
}
.module-images__grid-item:nth-of-type(5n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.8s;
}
.module-images__grid-item:nth-of-type(6n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1s;
}
.module-images__grid-item:nth-of-type(7n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.2s;
}
.module-images__grid-item:nth-of-type(8n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.4s;
}
.module-images__grid-item:nth-of-type(9n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.6s;
}
.module-images__grid-item:nth-of-type(10n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 1.8s;
}
.module-images__grid-item:nth-of-type(11n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2s;
}
.module-images__grid-item:nth-of-type(12n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.2s;
}
.module-images__grid-item:nth-of-type(13n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.4s;
}
.module-images__grid-item:nth-of-type(14n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.6s;
}
.module-images__grid-item:nth-of-type(15n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 2.8s;
}
.module-images__grid-item:nth-of-type(16n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3s;
}
.module-images__grid-item:nth-of-type(17n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.2s;
}
.module-images__grid-item:nth-of-type(18n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.4s;
}
.module-images__grid-item:nth-of-type(19n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.6s;
}
.module-images__grid-item:nth-of-type(20n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 3.8s;
}
.module-images__grid-item:nth-of-type(21n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4s;
}
.module-images__grid-item:nth-of-type(22n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.2s;
}
.module-images__grid-item:nth-of-type(23n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.4s;
}
.module-images__grid-item:nth-of-type(24n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.6s;
}
.module-images__grid-item:nth-of-type(25n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 4.8s;
}
.module-images__grid-item:nth-of-type(26n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5s;
}
.module-images__grid-item:nth-of-type(27n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.2s;
}
.module-images__grid-item:nth-of-type(28n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.4s;
}
.module-images__grid-item:nth-of-type(29n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.6s;
}
.module-images__grid-item:nth-of-type(30n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 5.8s;
}
.module-images__grid-item:nth-of-type(31n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6s;
}
.module-images__grid-item:nth-of-type(32n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.2s;
}
.module-images__grid-item:nth-of-type(33n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.4s;
}
.module-images__grid-item:nth-of-type(34n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.6s;
}
.module-images__grid-item:nth-of-type(35n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 6.8s;
}
.module-images__grid-item:nth-of-type(36n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7s;
}
.module-images__grid-item:nth-of-type(37n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.2s;
}
.module-images__grid-item:nth-of-type(38n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.4s;
}
.module-images__grid-item:nth-of-type(39n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.6s;
}
.module-images__grid-item:nth-of-type(40n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 7.8s;
}
.module-images__grid-item:nth-of-type(41n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8s;
}
.module-images__grid-item:nth-of-type(42n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.2s;
}
.module-images__grid-item:nth-of-type(43n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.4s;
}
.module-images__grid-item:nth-of-type(44n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.6s;
}
.module-images__grid-item:nth-of-type(45n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 8.8s;
}
.module-images__grid-item:nth-of-type(46n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9s;
}
.module-images__grid-item:nth-of-type(47n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.2s;
}
.module-images__grid-item:nth-of-type(48n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.4s;
}
.module-images__grid-item:nth-of-type(49n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.6s;
}
.module-images__grid-item:nth-of-type(50n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 9.8s;
}
.module-images__grid-item:nth-of-type(51n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10s;
}
.module-images__grid-item:nth-of-type(52n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.2s;
}
.module-images__grid-item:nth-of-type(53n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.4s;
}
.module-images__grid-item:nth-of-type(54n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.6s;
}
.module-images__grid-item:nth-of-type(55n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 10.8s;
}
.module-images__grid-item:nth-of-type(56n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11s;
}
.module-images__grid-item:nth-of-type(57n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.2s;
}
.module-images__grid-item:nth-of-type(58n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.4s;
}
.module-images__grid-item:nth-of-type(59n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.6s;
}
.module-images__grid-item:nth-of-type(60n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 11.8s;
}
.module-images__grid-item:nth-of-type(61n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12s;
}
.module-images__grid-item:nth-of-type(62n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.2s;
}
.module-images__grid-item:nth-of-type(63n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.4s;
}
.module-images__grid-item:nth-of-type(64n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.6s;
}
.module-images__grid-item:nth-of-type(65n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 12.8s;
}
.module-images__grid-item:nth-of-type(66n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13s;
}
.module-images__grid-item:nth-of-type(67n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.2s;
}
.module-images__grid-item:nth-of-type(68n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.4s;
}
.module-images__grid-item:nth-of-type(69n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.6s;
}
.module-images__grid-item:nth-of-type(70n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 13.8s;
}
.module-images__grid-item:nth-of-type(71n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14s;
}
.module-images__grid-item:nth-of-type(72n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.2s;
}
.module-images__grid-item:nth-of-type(73n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.4s;
}
.module-images__grid-item:nth-of-type(74n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.6s;
}
.module-images__grid-item:nth-of-type(75n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 14.8s;
}
.module-images__grid-item:nth-of-type(76n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15s;
}
.module-images__grid-item:nth-of-type(77n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.2s;
}
.module-images__grid-item:nth-of-type(78n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.4s;
}
.module-images__grid-item:nth-of-type(79n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.6s;
}
.module-images__grid-item:nth-of-type(80n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 15.8s;
}
.module-images__grid-item:nth-of-type(81n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16s;
}
.module-images__grid-item:nth-of-type(82n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.2s;
}
.module-images__grid-item:nth-of-type(83n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.4s;
}
.module-images__grid-item:nth-of-type(84n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.6s;
}
.module-images__grid-item:nth-of-type(85n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 16.8s;
}
.module-images__grid-item:nth-of-type(86n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17s;
}
.module-images__grid-item:nth-of-type(87n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.2s;
}
.module-images__grid-item:nth-of-type(88n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.4s;
}
.module-images__grid-item:nth-of-type(89n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.6s;
}
.module-images__grid-item:nth-of-type(90n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 17.8s;
}
.module-images__grid-item:nth-of-type(91n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18s;
}
.module-images__grid-item:nth-of-type(92n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.2s;
}
.module-images__grid-item:nth-of-type(93n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.4s;
}
.module-images__grid-item:nth-of-type(94n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.6s;
}
.module-images__grid-item:nth-of-type(95n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 18.8s;
}
.module-images__grid-item:nth-of-type(96n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19s;
}
.module-images__grid-item:nth-of-type(97n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.2s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.2s;
}
.module-images__grid-item:nth-of-type(98n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.4s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.4s;
}
.module-images__grid-item:nth-of-type(99n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.6s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.6s;
}
.module-images__grid-item:nth-of-type(100n) {
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.8s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 19.8s;
}
.module-images__description {
  margin-top: 20px;
}
.module-images.appear .word {
  opacity: 1;
  -webkit-transform: translateZ(0) translateY(0);
          transform: translateZ(0) translateY(0);
}
.module-images.appear .module-images__image {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}

.module-favorites {
  background-color: #1d1d15;
  padding: 50px 0;
}
.module-favorites__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-favorites__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-favorites__grid-head {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-column-gap: 100px;
     -moz-column-gap: 100px;
          column-gap: 100px;
}
.module-favorites__grid-head-title {
  font-size: 20px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  text-transform: uppercase;
  color: #ffffff;
}
@media only screen and (min-width: 1024px) {
  .module-favorites__grid-head-title {
    font-size: 30px;
  }
}
@media only screen and (min-width: 600px) {
  .module-favorites__grid-head-title {
    margin-bottom: 0;
  }
}
.module-favorites__container-arrows {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
@media only screen and (min-width: 1024px) {
  .module-favorites__container-arrows {
    -webkit-column-gap: 8;
       -moz-column-gap: 8;
            column-gap: 8;
  }
}
.module-favorites__arrow {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid white;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0.9;
  -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.module-favorites__arrow svg {
  position: absolute;
  opacity: 0.9;
  width: 15px;
  height: auto;
}
@media only screen and (min-width: 1024px) {
  .module-favorites__arrow {
    width: 50px;
    height: 50px;
    cursor: pointer;
  }
  .module-favorites__arrow svg {
    width: 18px;
  }
  .module-favorites__arrow:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.module-favorites__line {
  width: 100%;
  display: block;
  height: 1px;
  background-color: #ffffff;
  margin-top: 20px;
  margin-bottom: 25px;
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
}
@media only screen and (min-width: 600px) {
  .module-favorites__line {
    margin-top: 25px;
    margin-bottom: 35px;
  }
}
.module-favorites__card {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 15px;
  width: 80%;
}
@media only screen and (min-width: 600px) {
  .module-favorites__card {
    width: 45%;
  }
}
@media only screen and (min-width: 1024px) {
  .module-favorites__card {
    width: 32%;
  }
  .module-favorites__card:hover .module-favorites__card-image {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}
.module-favorites__card-container-image {
  position: relative;
  overflow: hidden;
  padding-bottom: 130%;
  width: 100%;
  border-radius: 0.6rem;
}
.module-favorites__card-image {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.module-favorites__content {
  margin-top: 10px;
  display: grid;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  row-gap: 15px;
  grid-template-columns: repeat(12, 1fr);
}
.module-favorites__content-title {
  color: #ffffff;
  font-size: 18px;
  grid-column: 1/13;
  grid-row: 1/2;
}
@media only screen and (min-width: 1024px) {
  .module-favorites__content-title {
    font-size: 23px;
    grid-column: 1/13;
    grid-row: 1/2;
  }
}
.module-favorites__content-price {
  color: #ffffff;
  font-size: 16px;
  grid-column: 1/13;
  grid-row: 2/3;
}
@media only screen and (min-width: 1024px) {
  .module-favorites__content-price {
    grid-column: 1/13;
    grid-row: 2/3;
  }
}
.module-favorites.appear [data-splitting=lines] .line-content {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.module-products__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 50px;
}
@media only screen and (min-width: 1024px) {
  .module-products__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-products__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 20px;
  margin-top: 20px;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.5s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.5s;
}
@media only screen and (min-width: 600px) {
  .module-products__grid {
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 15px;
       -moz-column-gap: 15px;
            column-gap: 15px;
  }
}
@media only screen and (min-width: 1024px) {
  .module-products__grid {
    grid-template-columns: 1fr 1fr 1fr;
    row-gap: 40px;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
}
.module-products__card {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .module-products__card:hover .module-products__card-image {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}
.module-products__card-container-image {
  position: relative;
  overflow: hidden;
  padding-bottom: 130%;
  width: 100%;
  border-radius: 0.6rem;
}
.module-products__card-image {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.module-products__content {
  margin-top: 10px;
  display: grid;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  row-gap: 15px;
  grid-template-columns: repeat(12, 1fr);
}
.module-products__content-title {
  font-size: 18px;
  grid-column: 1/13;
  grid-row: 1/2;
}
@media only screen and (min-width: 1024px) {
  .module-products__content-title {
    font-size: 23px;
  }
}
.module-products__content-price {
  color: #1d1d15;
  font-size: 16px;
  grid-column: 1/13;
  grid-row: 2/3;
}
.module-products.appear .module-products__grid {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.faq {
  padding: 60px 20px;
  position: relative;
  /* État actif */
}
@media (min-width: 1024px) {
  .faq {
    padding: 130px 40px;
  }
}
.faq__container {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.faq__header {
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (min-width: 1024px) {
  .faq__header {
    margin-bottom: 40px;
  }
}
.faq__label {
  color: #1d1d15;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
  font-family: "grift", Helvetica, Arial, sans-serif;
  color: #1d1d15;
  margin-bottom: 10px;
}
@media only screen and (min-width: 600px) {
  .faq__label {
    font-size: 18px;
  }
}
@media only screen and (min-width: 1024px) {
  .faq__label {
    margin-bottom: 20px;
  }
}
.faq__title {
  color: #1d1d15;
  font-size: 44px;
  font-weight: 600;
}
@media only screen and (min-width: 600px) {
  .faq__title {
    font-size: 84px;
  }
}
@media only screen and (min-width: 1024px) {
  .faq__title {
    font-size: 96px;
  }
}
.faq__list {
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 12px;
  overflow: hidden;
}
.faq__item {
  position: relative;
}
.faq__item:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: rgba(0, 0, 0, 0.2);
}
.faq__trigger {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  padding: 20px;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
}
@media only screen and (min-width: 1024px) {
  .faq__trigger {
    padding: 30px;
  }
}
.faq__question {
  font-size: 16px;
  line-height: 1.4;
  color: #1d1d15;
}
@media (min-width: 768px) {
  .faq__question {
    font-size: 18px;
  }
}
.faq__icon svg {
  width: 14px;
  height: 14px;
  stroke: #000;
  stroke-width: 1.5;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.faq__panel {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.3s ease;
  transition: max-height 0.3s ease;
}
.faq__answer {
  padding-bottom: 20px;
  padding-right: 60px;
  padding-left: 20px;
  font-size: 14px;
  line-height: 1.6;
  color: #1d1d15;
}
.faq__answer h1,
.faq__answer h2,
.faq__answer h3,
.faq__answer h4,
.faq__answer h5,
.faq__answer h6,
.faq__answer ul,
.faq__answer li,
.faq__answer a,
.faq__answer p {
  color: #1d1d15;
}
@media (min-width: 768px) {
  .faq__answer {
    font-size: 16px;
  }
}
@media only screen and (min-width: 1024px) {
  .faq__answer {
    padding-left: 30px;
  }
}
.faq__item.is-active .faq__panel {
  max-height: 500px;
}
.faq__item.is-active .faq__icon svg {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

.animated-cards {
  position: relative;
}
.animated-cards .wysiwyg {
  width: 100%;
  position: absolute;
  bottom: 0;
  z-index: 2;
  padding: 0 20px 0 20px;
}
@media only screen and (min-width: 1500px) {
  .animated-cards .wysiwyg {
    bottom: 100px;
  }
}

.mwg_effect025 {
  min-height: 300px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: hidden;
}
@media only screen and (min-width: 600px) {
  .mwg_effect025 {
    min-height: 500px;
  }
}
@media only screen and (min-width: 1500px) {
  .mwg_effect025 {
    min-height: 700px;
    height: 50vh;
  }
}
@media only screen and (min-width: 2000px) {
  .mwg_effect025 {
    min-height: 900px;
    height: 50vh;
  }
}

.mwg_effect025 .container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.mwg_effect025 .title {
  position: absolute;
  top: 25px;
  left: 25px;
  font: 500 normal 4vw/0.9 "Inter", sans-serif;
  letter-spacing: -0.03em;
}

.mwg_effect025 .card {
  width: 15vw;
  -webkit-transform-origin: center bottom 0px;
          transform-origin: center bottom 0px;
}

.mwg_effect025 .card:not(:first-child) {
  margin: 0 0 0 -8vw;
}

.mwg_effect025 .card .content {
  width: 100%;
  height: 100%;
  border-radius: 0.6em;
  border: 2px solid #1d1d15;
  color: #000;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  overflow: hidden;
  position: relative;
}
.mwg_effect025 .card .content img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.mwg_effect025 .card .content .top {
  font: 500 normal 1.9vw/0.9 "Inter", sans-serif;
  letter-spacing: -0.03em;
}

.mwg_effect025 .card .content .bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  font: 500 normal 1.1vw/0.9 "Inter", sans-serif;
  letter-spacing: -0.03em;
  border-top: 1px dashed #000;
  padding: 25px 0 0;
}

.mwg_effect025 .card .content .bubble {
  width: 3.3vw;
  aspect-ratio: 1;
  border-radius: 100%;
  background-color: #fff;
  display: grid;
  place-items: center;
}

.mwg_effect025 .card .content .bubble img {
  width: 40%;
  height: 40%;
  -o-object-fit: contain;
     object-fit: contain;
}

.mwg_effect025 .card .content .job {
  font: 500 normal 0.9vw/normal "IBM Plex Mono";
  text-transform: uppercase;
}

.mwg_effect025 .card:nth-child(1) {
  z-index: 1;
}

.mwg_effect025 .card:nth-child(2) {
  z-index: 2;
}

.mwg_effect025 .card:nth-child(3) {
  z-index: 3;
}

.mwg_effect025 .card:nth-child(4) {
  z-index: 4;
}

.mwg_effect025 .card:nth-child(5) {
  z-index: 5;
}

.mwg_effect025 .card:nth-child(6) {
  z-index: 6;
}

.mwg_effect025 .card:nth-child(7) {
  z-index: 7;
}

.mwg_effect025 .card:nth-child(8) {
  z-index: 8;
}

.mwg_effect024 .sentence p {
  font: inherit;
}

.mwg_effect024 .container-cta {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mwg_effect024 .sentences {
  position: relative;
  font: normal 500 10vw/1.2 "Inter", sans-serif;
  letter-spacing: -0.06em;
}

.mwg_effect024 .sentence {
  overflow: hidden;
}

.mwg_effect024 .sentence p {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  will-change: transform;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font: normal 600 10vw/1.2 "grift", Helvetica, Arial, sans-serif, sans-serif;
}

.mwg_effect024 .glyph {
  width: 5.5vw;
  height: auto;
}

.mwg_effect024 .texts {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 1vw 0 0;
  padding: 20px 20px 0;
  font: normal 600 10vw/1.2 "grift", Helvetica, Arial, sans-serif, sans-serif;
  text-transform: uppercase;
}
.mwg_effect024 .texts::after {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  right: 20px;
  height: 1px;
  background-color: #484848;
}
@media only screen and (min-width: 1024px) {
  .mwg_effect024 .texts::after {
    left: 40px;
    right: 40px;
  }
}
@media only screen and (min-width: 1024px) {
  .mwg_effect024 .texts {
    padding: 20px 40px 0;
  }
}

.mwg_effect024 .cta-button {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #1d1d15;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: white;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  margin: 20px;
  display: block;
  width: calc(100% - 40px) !important;
}
.mwg_effect024 .cta-button:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .mwg_effect024 .cta-button {
    font-size: 20px;
    padding: 11px 150px 10px 10px;
    overflow: hidden;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .mwg_effect024 .cta-button::after {
    top: 14px;
  }
  .mwg_effect024 .cta-button:hover {
    padding: 11px 160px 10px 10px;
    opacity: 0.9;
  }
}
@media only screen and (min-width: 1024px) {
  .mwg_effect024 .cta-button {
    margin: 50px auto;
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
  }
}

.module-testimonials {
  padding: 50px 0;
}
.module-testimonials__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .module-testimonials__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-testimonials__grid-head {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-column-gap: 100px;
     -moz-column-gap: 100px;
          column-gap: 100px;
}
.module-testimonials__grid-head-title {
  font-size: 20px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  text-transform: uppercase;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  .module-testimonials__grid-head-title {
    font-size: 30px;
  }
}
@media only screen and (min-width: 600px) {
  .module-testimonials__grid-head-title {
    margin-bottom: 0;
  }
}
.module-testimonials__container-arrows {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
@media only screen and (min-width: 1024px) {
  .module-testimonials__container-arrows {
    -webkit-column-gap: 8;
       -moz-column-gap: 8;
            column-gap: 8;
  }
}
.module-testimonials__arrow {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid black;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0.9;
  -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.module-testimonials__arrow svg {
  position: absolute;
  opacity: 0.9;
  width: 15px;
  height: auto;
}
@media only screen and (min-width: 1024px) {
  .module-testimonials__arrow {
    width: 50px;
    height: 50px;
    cursor: pointer;
  }
  .module-testimonials__arrow svg {
    width: 18px;
  }
  .module-testimonials__arrow:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.module-testimonials__line {
  width: 100%;
  display: block;
  height: 1px;
  background-color: #1d1d15;
  margin-top: 20px;
  margin-bottom: 25px;
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
}
@media only screen and (min-width: 600px) {
  .module-testimonials__line {
    margin-top: 25px;
    margin-bottom: 35px;
  }
}
.module-testimonials__card {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 15px;
  width: 80%;
}
@media only screen and (min-width: 600px) {
  .module-testimonials__card {
    width: 45%;
  }
}
@media only screen and (min-width: 1024px) {
  .module-testimonials__card {
    width: 22%;
  }
}
.module-testimonials__card-inner {
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 20px;
  padding: 20px;
  height: 100%;
  min-height: 300px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.module-testimonials__card-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  margin-bottom: 15px;
}
.module-testimonials__avatar {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}
.module-testimonials__name {
  color: #1d1d15;
  font-size: 18px;
}
.module-testimonials__content {
  color: #1d1d15;
  font-size: 16px;
  line-height: 1.5;
}

.module-content-video {
  position: relative;
}
.module-content-video__container {
  position: relative;
  z-index: 2;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 30px;
}
@media only screen and (min-width: 1024px) {
  .module-content-video__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.module-content-video .wysiwyg {
  width: 100%;
  max-width: 1000px;
  text-align: center;
  font-size: 18px;
  line-height: 1.5;
}
@media only screen and (min-width: 600px) {
  .module-content-video .wysiwyg {
    font-size: 20px;
  }
}
@media only screen and (min-width: 1024px) {
  .module-content-video .wysiwyg {
    font-size: 22px;
  }
}
.module-content-video__video-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  max-width: 1400px;
  border-radius: 1.5rem;
}
.module-content-video__overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: rgba(0, 0, 0, 0.151);
  cursor: pointer;
  -webkit-transition: 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  border-radius: 1.5rem;
}
.module-content-video__overlay svg {
  width: 50px;
  height: 50px;
  position: absolute;
  z-index: 4;
}
@media only screen and (min-width: 1024px) {
  .module-content-video__overlay svg {
    width: 90px;
    height: 90px;
    -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .module-content-video__overlay svg:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.module-content-video__overlay--hide {
  opacity: 0;
  pointer-events: none;
}
.module-content-video__video {
  width: 100%;
  display: block;
  border-radius: 1.5rem;
  border: 2px solid #1d1d15;
}
.module-content-video.appear .module-content-video__container {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

#tinymce {
  background-color: white;
  color: black;
  margin-top: 0 !important;
}
#tinymce h1 {
  font-size: 30px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 600px) {
  #tinymce h1 {
    font-size: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  #tinymce h1 {
    font-size: 60px;
  }
}
#tinymce h2 {
  font-size: 25px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  color: #1d1d15;
  font-weight: 600;
}
@media only screen and (min-width: 600px) {
  #tinymce h2 {
    font-size: 40px;
  }
}
#tinymce h3 {
  font-size: 20px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  #tinymce h3 {
    font-size: 30px;
  }
}
#tinymce h4 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  #tinymce h4 {
    font-size: 24px;
  }
}
#tinymce h5 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
#tinymce h5 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 500;
  color: #1d1d15;
}
#tinymce h1,
#tinymce h2,
#tinymce h3,
#tinymce h4,
#tinymce h5,
#tinymce h6 {
  text-transform: initial;
  color: #1d1d15;
}
#tinymce ul {
  padding-left: 40px;
  list-style: disc !important;
}
#tinymce p,
#tinymce ul,
#tinymce li {
  margin: 0 !important;
  font-size: 18px;
  color: #1d1d15;
  font-weight: 400;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
}
#tinymce p {
  margin: 0 !important;
  font-size: 18px;
  color: #1d1d15;
  line-height: 1.1;
}
#tinymce a {
  text-decoration: underline;
}
#tinymce .wysiwyg-button-noir {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #1d1d15;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: white;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
}
#tinymce .wysiwyg-button-noir:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  #tinymce .wysiwyg-button-noir {
    font-size: 20px;
    padding: 11px 150px 10px 10px;
    overflow: hidden;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  #tinymce .wysiwyg-button-noir::after {
    top: 14px;
  }
  #tinymce .wysiwyg-button-noir:hover {
    padding: 11px 160px 10px 10px;
    opacity: 0.9;
  }
}
#tinymce .wysiwyg-button-blanc {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #ffffff;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: #1d1d15;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  text-decoration: none;
}
#tinymce .wysiwyg-button-blanc:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  #tinymce .wysiwyg-button-blanc {
    overflow: hidden;
    font-size: 20px;
    padding: 11px 150px 10px 10px;
  }
  #tinymce .wysiwyg-button-blanc::after {
    top: 14px;
  }
  #tinymce .wysiwyg-button-blanc:hover {
    opacity: 0.9;
    padding: 11px 160px 10px 10px;
  }
}
#tinymce .p-medium {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
  font-family: "grift", Helvetica, Arial, sans-serif;
  color: #1d1d15;
}
@media only screen and (min-width: 600px) {
  #tinymce .p-medium {
    font-size: 18px;
  }
}
#tinymce .line--coming {
  font-weight: 700;
  font-size: 58px;
  line-height: 0.7;
}
@media only screen and (min-width: 600px) {
  #tinymce .line--coming {
    font-size: 108px;
  }
}
@media only screen and (min-width: 1024px) {
  #tinymce .line--coming {
    font-size: 128px;
  }
}
#tinymce .line--soon {
  font-size: 44px;
  font-weight: 400;
}
@media only screen and (min-width: 600px) {
  #tinymce .line--soon {
    font-size: 84px;
  }
}
@media only screen and (min-width: 1024px) {
  #tinymce .line--soon {
    font-size: 96px;
  }
}
#tinymce hr {
  border-top: 1px solid #1d1d15;
}

.page-wysiwyg h1,
.wysiwyg h1 {
  font-size: 30px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg h1,
.wysiwyg h1 {
    font-size: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg h1,
.wysiwyg h1 {
    font-size: 60px;
  }
}
.page-wysiwyg h2,
.wysiwyg h2 {
  font-size: 25px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  color: #1d1d15;
  font-weight: 600;
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg h2,
.wysiwyg h2 {
    font-size: 40px;
  }
}
.page-wysiwyg h3,
.wysiwyg h3 {
  font-size: 20px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg h3,
.wysiwyg h3 {
    font-size: 30px;
  }
}
.page-wysiwyg h4,
.wysiwyg h4 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg h4,
.wysiwyg h4 {
    font-size: 24px;
  }
}
.page-wysiwyg h5,
.wysiwyg h5 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
}
.page-wysiwyg h5,
.wysiwyg h5 {
  font-size: 18px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 500;
  color: #1d1d15;
}
.page-wysiwyg h1,
.page-wysiwyg h2,
.page-wysiwyg h3,
.page-wysiwyg h4,
.page-wysiwyg h5,
.page-wysiwyg h6,
.wysiwyg h1,
.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg h5,
.wysiwyg h6 {
  text-transform: initial;
  font-weight: 600 !important;
}
.page-wysiwyg ul,
.wysiwyg ul {
  padding-left: 40px;
  list-style: disc !important;
  margin-bottom: 10px;
}
.page-wysiwyg ul li,
.wysiwyg ul li {
  margin-bottom: 10px;
  position: relative;
  word-break: break-word;
  font-size: 16px;
  line-height: 1.3;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 400;
  color: #1d1d15;
}
.page-wysiwyg ul li:before,
.wysiwyg ul li:before {
  position: absolute;
  left: -17px;
  top: 10px;
  display: inline-block;
  content: "";
  height: 1px;
  width: 10px;
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg ul li,
.wysiwyg ul li {
    font-size: 18px;
  }
}
.page-wysiwyg ul li ul,
.wysiwyg ul li ul {
  margin-top: 10px;
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg ul li:before,
.wysiwyg ul li:before {
    top: 11px;
  }
}
.page-wysiwyg ol,
.wysiwyg ol {
  padding-left: 40px;
  list-style: auto !important;
}
.page-wysiwyg ol li,
.wysiwyg ol li {
  margin-bottom: 10px;
  word-break: break-word;
  font-size: 16px;
  line-height: 1.3;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 400;
  color: #1d1d15;
}
.page-wysiwyg ol li::marker,
.wysiwyg ol li::marker {
  font-weight: 500;
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg ol li,
.wysiwyg ol li {
    font-size: 18px;
  }
}
.page-wysiwyg ol li ol,
.wysiwyg ol li ol {
  margin-top: 10px;
}
.page-wysiwyg p,
.page-wysiwyg ul,
.page-wysiwyg ol,
.wysiwyg p,
.wysiwyg ul,
.wysiwyg ol {
  font-weight: 400;
}
.page-wysiwyg p,
.wysiwyg p {
  margin: 0 !important;
  font-size: 16px;
  line-height: 1.3;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 400;
  color: #1d1d15;
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg p,
.wysiwyg p {
    font-size: 18px;
  }
}
.page-wysiwyg figure,
.wysiwyg figure {
  margin: 5px;
}
.page-wysiwyg a,
.wysiwyg a {
  text-decoration: underline;
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg a,
.wysiwyg a {
    -webkit-transition: 0.5s cubic-bezier(0.34, 0.7, 0.27, 1);
    transition: 0.5s cubic-bezier(0.34, 0.7, 0.27, 1);
  }
  .page-wysiwyg a:hover,
.wysiwyg a:hover {
    opacity: 0.5;
  }
}
.page-wysiwyg video:focus,
.page-wysiwyg .wp-video-shortcode:focus,
.wysiwyg video:focus,
.wysiwyg .wp-video-shortcode:focus {
  outline: none !important;
}
.page-wysiwyg .wp-video-shortcode:focus,
.wysiwyg .wp-video-shortcode:focus {
  outline: none !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}
.page-wysiwyg .aligncenter,
.wysiwyg .aligncenter {
  margin: auto;
}
.page-wysiwyg .alignright,
.wysiwyg .alignright {
  float: right;
  padding-left: 50px;
}
.page-wysiwyg .alignleft,
.wysiwyg .alignleft {
  float: left;
  padding-right: 50px;
}
.page-wysiwyg .wysiwyg-button-noir,
.wysiwyg .wysiwyg-button-noir {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #1d1d15;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: white;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  width: 100%;
}
.page-wysiwyg .wysiwyg-button-noir:after,
.wysiwyg .wysiwyg-button-noir:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg .wysiwyg-button-noir,
.wysiwyg .wysiwyg-button-noir {
    font-size: 20px;
    padding: 11px 150px 10px 10px;
    overflow: hidden;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .page-wysiwyg .wysiwyg-button-noir::after,
.wysiwyg .wysiwyg-button-noir::after {
    top: 14px;
  }
  .page-wysiwyg .wysiwyg-button-noir:hover,
.wysiwyg .wysiwyg-button-noir:hover {
    padding: 11px 160px 10px 10px;
    opacity: 0.9;
  }
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg .wysiwyg-button-noir,
.wysiwyg .wysiwyg-button-noir {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.page-wysiwyg .wysiwyg-button-blanc,
.wysiwyg .wysiwyg-button-blanc {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #ffffff;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: #1d1d15;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  text-decoration: none;
  width: 100%;
}
.page-wysiwyg .wysiwyg-button-blanc:after,
.wysiwyg .wysiwyg-button-blanc:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg .wysiwyg-button-blanc,
.wysiwyg .wysiwyg-button-blanc {
    overflow: hidden;
    font-size: 20px;
    padding: 11px 150px 10px 10px;
  }
  .page-wysiwyg .wysiwyg-button-blanc::after,
.wysiwyg .wysiwyg-button-blanc::after {
    top: 14px;
  }
  .page-wysiwyg .wysiwyg-button-blanc:hover,
.wysiwyg .wysiwyg-button-blanc:hover {
    opacity: 0.9;
    padding: 11px 160px 10px 10px;
  }
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg .wysiwyg-button-blanc,
.wysiwyg .wysiwyg-button-blanc {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.page-wysiwyg .line--coming,
.wysiwyg .line--coming {
  font-weight: 700;
  font-size: 40px;
  line-height: 0.9;
  word-break: normal;
  overflow-wrap: normal;
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg .line--coming,
.wysiwyg .line--coming {
    font-size: 80px;
  }
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg .line--coming,
.wysiwyg .line--coming {
    font-size: 128px;
  }
}
.page-wysiwyg .line--soon,
.wysiwyg .line--soon {
  font-size: 35px;
  font-weight: 400;
  word-break: normal;
  overflow-wrap: normal;
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg .line--soon,
.wysiwyg .line--soon {
    font-size: 60px;
  }
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg .line--soon,
.wysiwyg .line--soon {
    font-size: 96px;
  }
}
.page-wysiwyg .p-medium,
.wysiwyg .p-medium {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
  font-family: "grift", Helvetica, Arial, sans-serif;
  color: #1d1d15;
}
@media only screen and (min-width: 600px) {
  .page-wysiwyg .p-medium,
.wysiwyg .p-medium {
    font-size: 18px;
  }
}
.page-wysiwyg hr,
.wysiwyg hr {
  border-top: 1px solid #1d1d15;
}

.page-wysiwyg {
  padding-top: 80px;
  padding-bottom: 100px;
}
.page-wysiwyg__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .page-wysiwyg__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media only screen and (min-width: 600px) {
  .page-wysiwyg {
    padding-top: 100px;
    padding-bottom: 150px;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-tp-wysiwyg .module-logo__logo {
    height: 20px;
  }
  .page-template-tp-wysiwyg .module-logo__logo-secondary {
    display: none;
  }

  .page-wysiwyg {
    padding-top: 150px;
    padding-bottom: 100px;
  }
  .page-wysiwyg__grid {
    margin: 0 12.66%;
    -webkit-transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  .page-wysiwyg.appear .page-wysiwyg__grid {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.error {
  min-height: 60vh;
  min-height: 60dvh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  overflow: hidden;
}
.error__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  min-height: 500px;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 1024px) {
  .error__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.error__title {
  text-align: center;
  margin-bottom: 40px;
  font-size: 30px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  color: #1d1d15;
}
@media only screen and (min-width: 600px) {
  .error__title {
    font-size: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .error__title {
    font-size: 60px;
  }
}
.error__button {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #1d1d15;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: white;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
}
.error__button:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .error__button {
    font-size: 20px;
    padding: 11px 150px 10px 10px;
    overflow: hidden;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .error__button::after {
    top: 14px;
  }
  .error__button:hover {
    padding: 11px 160px 10px 10px;
    opacity: 0.9;
  }
}

.page-template-tp-home .header__logo {
  -webkit-filter: invert(0);
          filter: invert(0);
}
.page-template-tp-home .header__burger-line {
  background-color: #ffffff;
}
.page-template-tp-home svg path {
  fill: #fff !important;
}
.page-template-tp-home .cart-count {
  background-color: #ffffff;
}
.page-template-tp-home .cart-count span {
  color: #1d1d15;
}
@media only screen and (min-width: 1024px) {
  .page-template-tp-home .header__link {
    color: #ffffff;
  }
  .page-template-tp-home .header__link::after {
    background-color: #ffffff;
  }
}
.page-template-tp-home .module-spacer {
  background-color: #1d1d15 !important;
}
.page-template-tp-home .module-content-video {
  background-color: #1d1d15 !important;
}
.page-template-tp-home .module-content-video svg path {
  fill: black !important;
}
.page-template-tp-home .wysiwyg {
  background-color: #1d1d15;
}
.page-template-tp-home .wysiwyg h1,
.page-template-tp-home .wysiwyg h2,
.page-template-tp-home .wysiwyg h3,
.page-template-tp-home .wysiwyg h4,
.page-template-tp-home .wysiwyg h5,
.page-template-tp-home .wysiwyg h6,
.page-template-tp-home .wysiwyg ul,
.page-template-tp-home .wysiwyg li,
.page-template-tp-home .wysiwyg a,
.page-template-tp-home .wysiwyg p {
  color: #ffffff !important;
}
.page-template-tp-home .wysiwyg .wysiwyg-button-blanc {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #ffffff;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: #1d1d15;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  text-decoration: none;
  color: #1d1d15 !important;
}
.page-template-tp-home .wysiwyg .wysiwyg-button-blanc:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .page-template-tp-home .wysiwyg .wysiwyg-button-blanc {
    overflow: hidden;
    font-size: 20px;
    padding: 11px 150px 10px 10px;
  }
  .page-template-tp-home .wysiwyg .wysiwyg-button-blanc::after {
    top: 14px;
  }
  .page-template-tp-home .wysiwyg .wysiwyg-button-blanc:hover {
    opacity: 0.9;
    padding: 11px 160px 10px 10px;
  }
}

.home-head {
  position: relative;
  overflow: hidden;
}
.home-head__container {
  position: relative;
  height: 95vh;
  min-height: 600px;
}
@media only screen and (min-width: 1024px) {
  .home-head__container {
    height: 100vh;
    min-height: 800px;
  }
}
.home-head__overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 2;
  background: #1d1d15;
  background: -webkit-gradient(linear, left bottom, left top, from(#1d1d15), to(rgba(29, 29, 21, 0.28)));
  background: linear-gradient(0deg, #1d1d15 0%, rgba(29, 29, 21, 0.28) 100%);
}
.home-head__grid-content {
  width: 100%;
  position: absolute;
  z-index: 4;
  bottom: 0;
  left: 0;
}
@media only screen and (min-width: 1024px) {
  .home-head__grid-content {
    bottom: 15vh;
    display: grid;
    grid-template-columns: 4fr 8fr;
  }
}
.home-head__carrousel-text-card {
  padding: 0 20px;
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 10px;
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel-text-card {
    row-gap: 30px;
    padding: 0 40px;
  }
}
.home-head__carrousel-text-card.is-active [data-splitting=lines] .line-content {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.home-head__carrousel-text-card.is-active .home-head__carrousel-text-card-paragraph {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.4s;
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.4s;
}
.home-head__carrousel-text-card.is-active .home-head__carrousel-text-card-container-link {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.6s;
  transition: 0.8s cubic-bezier(0.3, 1, 0.7, 1) 0.6s;
}
.home-head__carrousel-text-card-title {
  font-size: 30px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  color: #ffffff;
}
@media only screen and (min-width: 600px) {
  .home-head__carrousel-text-card-title {
    font-size: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel-text-card-title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel-text-card-title {
    font-size: 80px;
  }
}
.home-head__carrousel-text-card-paragraph {
  color: #ffffff;
  margin-bottom: 20px;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 0.4s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 0.4s cubic-bezier(0.3, 1, 0.7, 1);
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel-text-card-paragraph {
    margin-bottom: 0;
  }
}
.home-head__carrousel-text-card-container-link {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 0.4s cubic-bezier(0.3, 1, 0.7, 1);
  transition: 0.4s cubic-bezier(0.3, 1, 0.7, 1);
}
.home-head__carrousel-text-card-link {
  text-align: left !important;
  display: inline-block;
  text-align: center;
  background-color: #ffffff;
  padding: 12px 150px 10px 10px;
  font-size: 16px;
  border-radius: 5px;
  color: #1d1d15;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  text-decoration: none;
  width: 100%;
}
.home-head__carrousel-text-card-link:after {
  content: "";
  position: absolute;
  top: 11px;
  right: 10px;
  width: 28px;
  height: 17px;
  background-image: url("../svg/arrow-thick.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel-text-card-link {
    overflow: hidden;
    font-size: 20px;
    padding: 11px 150px 10px 10px;
  }
  .home-head__carrousel-text-card-link::after {
    top: 14px;
  }
  .home-head__carrousel-text-card-link:hover {
    opacity: 0.9;
    padding: 11px 160px 10px 10px;
  }
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel-text-card-link {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.home-head__content-carrousel {
  padding: 40px 20px;
}
@media only screen and (min-width: 1024px) {
  .home-head__content-carrousel {
    padding: 0 40px;
  }
}
.home-head__content-carrousel-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media only screen and (min-width: 1024px) {
  .home-head__content-carrousel-head {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-bottom: 30px;
  }
}
.home-head__link-all {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: block;
  pointer-events: all;
  color: #ffffff;
  font-size: 16px;
  line-height: 1;
  font-weight: 500;
  position: relative;
  -webkit-transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  margin-bottom: 10px;
}
.home-head__link-all::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #ffffff;
  bottom: -5px;
  left: 0;
  -webkit-transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-transform-origin: center;
          transform-origin: center;
}
@media only screen and (min-width: 1024px) {
  .home-head__link-all {
    font-size: 18px;
  }
  .home-head__link-all:hover::after {
    -webkit-transform: scaleX(0.5);
            transform: scaleX(0.5);
  }
}
.home-head__arrows {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
@media only screen and (min-width: 1024px) {
  .home-head__arrows {
    -webkit-column-gap: 8;
       -moz-column-gap: 8;
            column-gap: 8;
  }
}
.home-head__arrow {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid white;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0.9;
  -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.home-head__arrow svg {
  position: absolute;
  opacity: 0.9;
  width: 15px;
  height: auto;
}
@media only screen and (min-width: 1024px) {
  .home-head__arrow {
    width: 50px;
    height: 50px;
    cursor: pointer;
  }
  .home-head__arrow svg {
    width: 18px;
  }
  .home-head__arrow:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.home-head__carrousel {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel {
    display: block;
    overflow: hidden;
  }
}
.home-head__card {
  width: 32%;
  margin-left: 15px;
}
.home-head__card.is-selected .home-head__card-title {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}
.home-head__card-container-image {
  position: relative;
  width: 100%;
  padding-bottom: 130%;
  height: 0;
  overflow: hidden;
  border-radius: 0.6rem;
}
@media only screen and (min-width: 1024px) {
  .home-head__card-container-image {
    padding-bottom: 130%;
  }
}
.home-head__card-image {
  position: absolute;
  height: 100%;
  width: 100%;
  bottom: 0;
  margin: auto;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.home-head__card-image--small {
  display: block;
}
@media only screen and (min-width: 600px) {
  .home-head__card-image--small {
    display: none;
  }
}
.home-head__card-image--large {
  display: none;
}
@media only screen and (min-width: 600px) {
  .home-head__card-image--large {
    display: block;
  }
}
.home-head__card-link {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: block;
  pointer-events: all;
  color: #ffffff;
  font-size: 16px;
  line-height: 1;
  font-weight: 500;
  position: relative;
  -webkit-transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.home-head__card-link::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #ffffff;
  bottom: -5px;
  left: 0;
  -webkit-transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-transform-origin: center;
          transform-origin: center;
}
@media only screen and (min-width: 1024px) {
  .home-head__card-link {
    font-size: 18px;
  }
  .home-head__card-link:hover::after {
    -webkit-transform: scaleX(0.5);
            transform: scaleX(0.5);
  }
}
.home-head__carrousel-fond {
  inset: 0;
  z-index: 0;
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100vh;
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  overflow: hidden;
}
.home-head__image-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  -webkit-transform: scale(1.15);
          transform: scale(1.15);
  -webkit-transition: none;
  transition: none;
  z-index: 1;
}
.home-head__image-bg.selected {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 1.2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 2;
}
.home-head__image-bg.exiting {
  opacity: 0;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  -webkit-transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1;
}
.home-head__image-bg--mobile {
  display: block;
}
@media only screen and (min-width: 1024px) {
  .home-head__image-bg--mobile {
    display: none;
  }
}
.home-head__image-bg--desktop {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .home-head__image-bg--desktop {
    display: block;
  }
}
.home-head__carrousel-text {
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel-text {
    max-width: 600px;
  }
}
.home-head__carrousel-text-card {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
}
.home-head__carrousel-text-card.is-active {
  opacity: 1;
  visibility: visible;
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .home-head__carrousel-text-card-paragraph {
    font-size: 23px;
  }
}
.home-head.appear .word-content {
  -webkit-transform: translateZ(0) translateY(0);
          transform: translateZ(0) translateY(0);
}
.home-head.appear .home-head__arrows {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}
.home-head.appear .home-head__card-container-title {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}
.home-head.appear .home-head__container-card-link {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}
.home-head.appear .home-head__card-paragraph {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.page-template-tp-home-solo footer,
.page-template-tp-home-solo header {
  display: none !important;
}

.home-head-pre {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 48px 24px;
}

.home-head-pre__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.home-head-pre__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.home-head-pre__logo {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 3;
  width: 70px;
  line-height: 0;
  display: block;
}

.home-head-pre__logo img {
  display: block;
  width: 100%;
  height: auto;
}

.home-head-pre__container {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
}

.home-head-pre__content {
  max-width: 1240px;
  margin: 0 auto;
  text-align: center;
  color: #fff;
}

.home-head-pre__text,
.home-head-pre__text *,
.home-head-pre__text h1,
.home-head-pre__text h2,
.home-head-pre__text h3,
.home-head-pre__text h4,
.home-head-pre__text h5,
.home-head-pre__text h6,
.home-head-pre__text p,
.home-head-pre__text strong {
  color: #fff;
}

.home-head-pre__text > *:first-child {
  margin-top: 0;
}

.home-head-pre__text p {
  margin: 0 0 28px;
}

.home-head-pre__text h1,
.home-head-pre__text h2,
.home-head-pre__text h3,
.home-head-pre__text h4,
.home-head-pre__text h5,
.home-head-pre__text h6 {
  margin: 0 0 24px;
}

.home-head-pre__text strong {
  font-weight: 700;
}

.home-head-pre__text p:first-child {
  font-size: 22px;
  line-height: 1.2;
  font-weight: 300;
  margin-bottom: 34px;
}

.home-head-pre__title {
  margin: 0 0 36px;
  line-height: 0.9;
  text-transform: uppercase;
  letter-spacing: -0.04em;
}

.home-head-pre__title .line {
  display: block;
}

.home-head-pre__title .line--coming {
  font-size: 108px;
  font-weight: 700;
}

.home-head-pre__title .line--soon {
  font-size: 84px;
  font-weight: 400;
}

.home-head-pre__text p:not(:first-child) {
  font-size: 24px;
  line-height: 1.28;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}

.home-head-pre__form {
  margin-top: 48px;
}

#mc_embed_signup {
  background: transparent !important;
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  clear: both;
}

#mc_embed_signup form {
  padding: 0 !important;
  margin: 0 !important;
}

#mc_embed_signup h2,
#mc_embed_signup .indicates-required,
#mc_embed_signup label:not(.screen-reader-text) {
  display: none !important;
}

.mc-form-row {
  width: 100%;
}

#mc_embed_signup_scroll {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  border: 2px solid rgba(255, 255, 255, 0.92);
  background: rgba(255, 255, 255, 0.03);
  min-height: 62px;
}

#mc_embed_signup .mc-field-group {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  width: auto !important;
  min-height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

#mc_embed_signup .mc-field-group input {
  width: 100% !important;
  height: 60px !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  font-size: 18px !important;
  padding: 0 20px !important;
  margin: 0 !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  outline: none !important;
  line-height: 1.1 !important;
}

#mc_embed_signup .mc-field-group input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.92);
  opacity: 1;
}

#mc_embed_signup .mc-field-group input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.92);
  opacity: 1;
}

#mc_embed_signup .mc-field-group input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.92);
  opacity: 1;
}

#mc_embed_signup .mc-field-group input::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.92);
  opacity: 1;
}

#mc_embed_signup .mc-field-group input::placeholder {
  color: rgba(255, 255, 255, 0.92);
  opacity: 1;
}

#mc_embed_signup .clear {
  width: auto !important;
  margin: 0 !important;
}

#mc_embed_signup .button {
  min-width: 165px;
  height: 60px !important;
  margin: 0 !important;
  border: 0 !important;
  border-left: 2px solid rgba(255, 255, 255, 0.92) !important;
  border-radius: 0 !important;
  background: rgba(232, 220, 205, 0.95) !important;
  color: #8e7662 !important;
  font-size: 30px !important;
  font-weight: 500 !important;
  text-transform: uppercase;
  padding: 0 22px !important;
  line-height: 1 !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

#mc_embed_signup .button:hover {
  background: #fff !important;
  color: #8e7662 !important;
}

#mc_embed_signup div.mce_inline_error {
  margin: 12px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  border: 0 !important;
  text-align: left;
  position: absolute !important;
  width: 100% !important;
  display: block !important;
}

#mc_embed_signup input.mce_inline_error {
  border: 0 !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

#mce-responses {
  margin-top: 12px !important;
  width: 100%;
}

#mc_embed_signup .response {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  background: transparent !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1.4;
  text-align: left;
}

.mc-hidden-field {
  position: absolute;
  left: -5000px;
}

.home-head-pre__socials {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 18px;
  margin-top: 28px;
}

.home-head-pre__socials a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 34px;
  height: 34px;
  color: #fff;
  -webkit-transition: opacity 0.25s ease, -webkit-transform 0.25s ease;
  transition: opacity 0.25s ease, -webkit-transform 0.25s ease;
  transition: opacity 0.25s ease, transform 0.25s ease;
  transition: opacity 0.25s ease, transform 0.25s ease, -webkit-transform 0.25s ease;
}

.home-head-pre__socials a:hover {
  opacity: 0.75;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

.home-head-pre__socials svg {
  display: block;
  width: 100%;
  height: 100%;
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media screen and (min-width: 1200px) {
  .home-head-pre__logo {
    top: 26px;
    left: 26px;
    width: 92px;
  }

  .home-head-pre__title .line--coming {
    font-size: 128px;
    line-height: 0.7;
  }

  .home-head-pre__title .line--soon {
    font-size: 96px;
  }
}
@media screen and (max-width: 991px) {
  .home-head-pre {
    padding: 90px 20px 50px;
  }

  .home-head-pre__logo {
    top: 16px;
    left: 16px;
    width: 54px;
  }

  .home-head-pre__text p:first-child {
    font-size: 18px;
    margin-bottom: 24px;
  }

  .home-head-pre__title {
    margin-bottom: 24px;
  }

  .home-head-pre__title .line--coming {
    font-size: 58px;
    line-height: 0.7;
  }

  .home-head-pre__title .line--soon {
    font-size: 44px;
  }

  .home-head-pre__text p:not(:first-child) {
    font-size: 18px;
    line-height: 1.35;
  }

  .home-head-pre__form {
    margin-top: 34px;
  }

  #mc_embed_signup {
    max-width: 100%;
  }

  #mc_embed_signup_scroll {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    min-height: auto;
  }

  #mc_embed_signup .mc-field-group input {
    height: 56px !important;
    font-size: 18px !important;
    padding: 0 18px !important;
  }

  #mc_embed_signup .button {
    width: 100%;
    min-width: 100%;
    height: 56px !important;
    border-left: 0 !important;
    border-top: 2px solid rgba(255, 255, 255, 0.92) !important;
    font-size: 16px !important;
  }

  #mc_embed_signup div.mce_inline_error,
#mc_embed_signup .response {
    text-align: center;
  }

  .home-head-pre__socials {
    margin-top: 24px;
    gap: 16px;
  }

  .home-head-pre__socials a {
    width: 30px;
    height: 30px;
  }
}
.single-product-page {
  padding: 100px 0 50px 0;
  /* Optionnel: feedback hover/focus */
}
@media only screen and (min-width: 1024px) {
  .single-product-page {
    padding: 150px 0 100px 0;
  }
}
.single-product-page__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .single-product-page__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.single-product-page__grid {
  row-gap: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.single-product-page__grid-item-left {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.1s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.1s;
  border-radius: 0.6rem;
  overflow: hidden;
}
@media only screen and (min-width: 600px) {
  .single-product-page__grid-item-left {
    -webkit-transform: translateY(60px);
            transform: translateY(60px);
  }
}
@media only screen and (min-width: 1024px) {
  .single-product-page__grid-item-left {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
}
.single-product-page__container-image {
  position: relative;
  overflow: hidden;
  padding-bottom: 130%;
  width: 100%;
}
.single-product-page__container-image img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
.single-product-page__arrows {
  position: absolute;
  z-index: 2;
  top: 20px;
  right: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
@media only screen and (min-width: 1024px) {
  .single-product-page__arrows {
    -webkit-column-gap: 8;
       -moz-column-gap: 8;
            column-gap: 8;
  }
}
.single-product-page__arrow {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid white;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0.9;
  -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.single-product-page__arrow svg {
  position: absolute;
  opacity: 0.9;
  width: 15px;
  height: auto;
}
@media only screen and (min-width: 1024px) {
  .single-product-page__arrow {
    width: 50px;
    height: 50px;
    cursor: pointer;
  }
  .single-product-page__arrow svg {
    width: 18px;
  }
  .single-product-page__arrow:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.single-product-page__indicators,
.single-product-page [data-slider-indicators] {
  position: absolute;
  z-index: 3;
  bottom: 0;
  padding: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  /* espace entre les lignes */
  width: 100%;
}
.single-product-page .carrousel-indicator {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  /* prend largeur égale selon nb de slides */
  height: 3px;
  /* épaisseur de la ligne */
  background: #ffffff;
  /* hérite la couleur du parent */
  opacity: 0.5;
  border: 0;
  padding: 0;
  cursor: pointer;
}
.single-product-page .carrousel-indicator.is-active {
  opacity: 1;
}
.single-product-page .carrousel-indicator:hover {
  opacity: 0.8;
}
.single-product-page .carrousel-indicator:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
.single-product-page__grid-item-right {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.3s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.3s;
}
@media only screen and (min-width: 600px) {
  .single-product-page__grid-item-right {
    -webkit-transform: translateY(60px);
            transform: translateY(60px);
  }
}
@media only screen and (min-width: 1024px) {
  .single-product-page__grid-item-right {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
}
.single-product-page__details {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 20px;
  width: 100%;
  max-width: 700px;
}
.single-product-page__price {
  font-size: 20px;
}
.single-product-page .quantity {
  display: none !important;
}
.single-product-page .single_add_to_cart_button {
  width: 100%;
  padding: 15px !important;
  background-color: #1d1d15 !important;
  border-radius: 0 !important;
  margin-top: 10px !important;
}
@media only screen and (min-width: 1024px) {
  .single-product-page .single_add_to_cart_button {
    font-size: 18px;
    padding: 20px !important;
    font-weight: 500;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .single-product-page .single_add_to_cart_button:hover {
    background-color: #31312f !important;
  }
}
.single-product-page__description {
  margin-top: 30px;
}
.single-product-page.appear .single-product-page__grid-item-left {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.single-product-page.appear .single-product-page__grid-item-right {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

@media only screen and (min-width: 1024px) {
  .single-product-page__grid {
    display: grid;
    grid-template-columns: 5fr 7fr;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-column-gap: 80px;
       -moz-column-gap: 80px;
            column-gap: 80px;
  }
}
.single-projects .module-wysiwyg__grid {
  padding: 0 !important;
}
.single-projects .module-description-video__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@media only screen and (min-width: 1024px) {
  .single-projects .module-description-video__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.single-projects .module-images__image {
  border: none !important;
}
.single-projects .module-wysiwyg__container,
.single-projects .module-images__container,
.single-projects .module-description-video__container,
.single-projects .module-image-text__container {
  padding: 0 !important;
}
.single-projects .module-wysiwyg,
.single-projects .module-image-text__grid-item-right {
  opacity: 1 !important;
  -webkit-transform: translateY(0) !important;
          transform: translateY(0) !important;
}
.single-projects .module-image-text__grid-item-right {
  padding: 0;
}

/* =========================================================
   SINGLE PROJECT HEAD — REFONTE TYPE PRODUCT PAGE
========================================================= */
.single-project-head {
  padding: 100px 0 50px 0;
  /* GRID = COMME SINGLE PRODUCT */
  /* LEFT CONTENT */
  /* RIGHT CARROUSEL (IMPORTANT FIX) */
  /* IMAGE WRAPPER — MODE PRODUCT STYLE */
  /* ARROWS */
  /* INDICATORS */
  /* ANIMATION */
}
@media only screen and (min-width: 1024px) {
  .single-project-head {
    padding: 150px 0 100px 0;
  }
}
.single-project-head__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .single-project-head__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.single-project-head__title-mobile {
  margin-bottom: 15px;
}
@media only screen and (min-width: 1024px) {
  .single-project-head__title-mobile {
    display: none;
  }
}
.single-project-head__arrows {
  position: absolute;
  z-index: 2;
  top: 20px;
  right: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
@media only screen and (min-width: 1024px) {
  .single-project-head__arrows {
    -webkit-column-gap: 8;
       -moz-column-gap: 8;
            column-gap: 8;
  }
}
.single-project-head__arrow {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid white;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0.9;
  -webkit-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.single-project-head__arrow svg {
  position: absolute;
  opacity: 0.9;
  width: 15px;
  height: auto;
}
@media only screen and (min-width: 1024px) {
  .single-project-head__arrow {
    width: 50px;
    height: 50px;
    cursor: pointer;
  }
  .single-project-head__arrow svg {
    width: 18px;
  }
  .single-project-head__arrow:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.single-project-head__grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  row-gap: 20px;
}
@media only screen and (min-width: 1024px) {
  .single-project-head__grid {
    display: grid;
    grid-template-columns: 7fr 5fr;
    -webkit-column-gap: 80px;
       -moz-column-gap: 80px;
            column-gap: 80px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.single-project-head__grid-left {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 30px;
  opacity: 0;
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
  -webkit-transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.1s;
  transition: 1s cubic-bezier(0.3, 1, 0.7, 1) 0.1s;
}
.single-project-head__grid-left section {
  padding: 0 !important;
}
.single-project-head__grid-left section img {
  opacity: 1 !important;
  -webkit-transform: scale(1) !important;
          transform: scale(1) !important;
}
@media only screen and (min-width: 1024px) {
  .single-project-head__grid-left {
    -webkit-transform: translateY(80px);
            transform: translateY(80px);
  }
}
.single-project-head__title-large {
  font-size: 30px;
  line-height: 1.1;
  font-family: "grift", Helvetica, Arial, sans-serif;
  font-weight: 600;
  color: #1d1d15;
  display: none;
}
@media only screen and (min-width: 600px) {
  .single-project-head__title-large {
    font-size: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .single-project-head__title-large {
    font-size: 60px;
  }
}
@media only screen and (min-width: 1024px) {
  .single-project-head__title-large {
    display: block;
    width: 100%;
  }
}
.single-project-head__grid-right {
  position: relative;
  border-radius: 3px;
  border-radius: 0.6rem;
  overflow: hidden;
}
@media only screen and (min-width: 1024px) {
  .single-project-head__grid-right {
    margin: 0;
  }
}
.single-project-head__container-image {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-bottom: 130%;
}
.single-project-head__container-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.single-project-head__container-arrows {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: calc(100% - 80px);
}
.single-project-head__container-arrows svg {
  width: 60px;
  height: auto;
  margin-left: 5px;
  cursor: pointer;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media only screen and (min-width: 1024px) {
  .single-project-head__container-arrows svg {
    width: 70px;
  }
  .single-project-head__container-arrows svg:hover {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
.single-project-head__arrow-prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.single-project-head__indicators,
.single-project-head [data-slider-indicators] {
  position: absolute;
  bottom: 0;
  z-index: 3;
  width: 100%;
  padding: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.single-project-head .carrousel-indicator {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 3px;
  border: 0;
  background: #ffffff;
  opacity: 0.5;
  cursor: pointer;
  padding: 0;
}
.single-project-head .carrousel-indicator.is-active {
  opacity: 1;
}
.single-project-head .carrousel-indicator:hover {
  opacity: 0.8;
}
.single-project-head .carrousel-indicator:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
.single-project-head.appear .single-project-head__grid-left,
.single-project-head.appear .single-project-head__grid-right {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* =========================================================
   PANIER CUSTOM — Style inspiré “Services”
   Scope: .custom-cart-page (safe)
========================================================= */
.custom-cart-page {
  /* Palette */
  --bg: #f3f0ea;
  /* beige / papier */
  --text: #111;
  --muted: rgba(17, 17, 17, 0.65);
  --line: rgba(17, 17, 17, 0.9);
  --line-soft: rgba(17, 17, 17, 0.22);
  background: var(--bg);
  color: var(--text);
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  /* Espace top/bottom (ajuste selon ton header) */
  margin-top: 200px;
  margin-bottom: 100px;
}
@media only screen and (min-width: 1024px) {
  .custom-cart-page {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}

/* Titre */
.custom-cart-page > h1 {
  margin: 0 0 22px 0;
}

/* Texte (panier vide) */
.custom-cart-page p {
  color: var(--muted);
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
}

/* =========================================================
   TABLE
========================================================= */
.custom-cart-page .cart-form {
  margin-top: 22px;
  padding-top: 22px;
}

.custom-cart-page table.shop_table.cart {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  background: transparent;
  table-layout: fixed;
}

/* Header */
.custom-cart-page table.shop_table.cart thead th {
  text-align: left;
  font-size: 18px;
  font-weight: 600;
  padding: 14px 10px;
  border-bottom: 1px solid #1d1d15;
  color: var(--text);
}

/* Lignes */
.custom-cart-page table.shop_table.cart tbody tr {
  border-bottom: 1px solid #1d1d15;
}

.custom-cart-page table.shop_table.cart td {
  padding: 22px 10px;
  vertical-align: middle;
  font-size: 15px;
  line-height: 1.35;
}

/* Largeurs desktop */
.custom-cart-page th.product-thumbnail,
.custom-cart-page td.product-thumbnail {
  width: 90px;
}

.custom-cart-page th.product-price,
.custom-cart-page td.product-price {
  width: 140px;
}

.custom-cart-page th.product-quantity,
.custom-cart-page td.product-quantity {
  width: 240px;
}

.custom-cart-page th.product-remove,
.custom-cart-page td.product-remove {
  width: 160px;
}

/* Miniature desktop (petite) */
.custom-cart-page .product-thumbnail a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* ===== Thumbnail XL (desktop) ===== */
.custom-cart-page th.product-thumbnail,
.custom-cart-page td.product-thumbnail--xl {
  width: 260px;
  /* augmente la colonne */
}

.custom-cart-page .product-thumbnail--xl .product-thumb-link {
  display: block;
  width: 260px;
}

.custom-cart-page .product-thumbnail img {
  width: 200px !important;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  border-radius: 0.6rem;
}

/* Nom produit */
.custom-cart-page .product-name a {
  color: var(--text);
  text-decoration: none;
  font-size: 18px;
  letter-spacing: -0.01em;
  font-weight: 600;
}

.custom-cart-page .product-name a:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Prix */
.custom-cart-page .product-price {
  white-space: nowrap;
  font-weight: 600;
}

/* =========================================================
   QUANTITÉ — on force l’input visible (si thème le cache)
========================================================= */
.custom-cart-page .product-quantity {
  text-align: left;
}

.custom-cart-page .quantity,
.custom-cart-page .product-quantity .quantity {
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

/* Force l’input qty visible */
.custom-cart-page input.qty,
.custom-cart-page .product-quantity input.qty {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 120px;
  height: 52px;
  padding: 0 12px;
  background: transparent;
  border: 1px solid var(--line);
  border-radius: 0;
  color: var(--text);
  font-weight: 600;
  font-size: 15px;
  outline: none;
}

.custom-cart-page input.qty:focus,
.custom-cart-page .product-quantity input.qty:focus {
  -webkit-box-shadow: 0 0 0 3px rgba(17, 17, 17, 0.12);
          box-shadow: 0 0 0 3px rgba(17, 17, 17, 0.12);
}

/* Boutons +/- (si présents) */
.custom-cart-page .product-quantity button,
.custom-cart-page .product-quantity .plus,
.custom-cart-page .product-quantity .minus {
  background: transparent;
  border: 1px solid var(--line);
  border-radius: 5px;
  height: 52px;
  line-height: 1;
  width: 52px;
  cursor: pointer;
  color: var(--text);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.custom-cart-page .product-quantity button:hover,
.custom-cart-page .product-quantity .plus:hover,
.custom-cart-page .product-quantity .minus:hover {
  background: rgba(17, 17, 17, 0.06);
}

/* =========================================================
   SUPPRIMER (texte + x)
========================================================= */
.custom-cart-page .product-remove {
  text-align: right;
}

.custom-cart-page a.remove {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  height: -webkit-fit-content !important;
  height: -moz-fit-content !important;
  height: fit-content !important;
  width: 100%;
  background: var(--wc-btn-bg) !important;
  color: var(--wc-btn-text) !important;
  border: 1px solid var(--wc-btn-bg) !important;
  border-radius: 5px !important;
  padding: 12px 16px !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  -webkit-transition: opacity 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: opacity 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: transform 0.12s ease, opacity 0.12s ease !important;
  transition: transform 0.12s ease, opacity 0.12s ease, -webkit-transform 0.12s ease !important;
}

.custom-cart-page a.remove .remove-icon {
  font-size: 18px;
  line-height: 1;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

.custom-cart-page a.remove:hover {
  background-color: #1d1d15;
  color: #ffffff;
}

/* =========================================================
   ACTIONS (boutons)
========================================================= */
.custom-cart-page .cart-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 14px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 18px;
  padding-top: 22px;
}

/* Boutons */
.custom-cart-page .cart-actions .button,
.custom-cart-page .cart-actions button.button {
  text-align: center !important;
  display: inline-block;
  text-align: center;
  background-color: #1d1d15;
  padding: 20px;
  font-size: 16px;
  border-radius: 3px;
  color: white;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
  line-height: 1;
}
@media only screen and (min-width: 1024px) {
  .custom-cart-page .cart-actions .button,
.custom-cart-page .cart-actions button.button {
    overflow: hidden;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .custom-cart-page .cart-actions .button:hover,
.custom-cart-page .cart-actions button.button:hover {
    -webkit-transform: scale(0.97);
            transform: scale(0.97);
  }
}

/* =========================================================
   TOTAL
========================================================= */
.custom-cart-page .cart-totals {
  margin-top: 34px;
  padding-top: 22px;
  border-top: 1px solid #1d1d15;
  text-align: right;
}

.custom-cart-page .cart-totals h2 {
  margin: 0;
  font-size: clamp(22px, 2.6vw, 34px);
  line-height: 1.1;
  letter-spacing: -0.01em;
  font-weight: 600;
}

/* =========================================================
   MOBILE — cartes + image >= 250px
========================================================= */
@media (max-width: 860px) {
  .custom-cart-page {
    margin-top: 130px;
    margin-bottom: 50px;
  }

  /* Hide head, stack rows */
  .custom-cart-page table.shop_table.cart thead {
    display: none;
  }

  .custom-cart-page table.shop_table.cart,
.custom-cart-page table.shop_table.cart tbody,
.custom-cart-page table.shop_table.cart tr,
.custom-cart-page table.shop_table.cart td {
    display: block;
    width: 100%;
  }

  /* Card */
  .custom-cart-page table.shop_table.cart tbody tr {
    padding: 18px 0 22px 0;
    border-bottom: 1px solid #1d1d15;
  }

  .custom-cart-page table.shop_table.cart td {
    padding: 10px 0;
  }

  /* IMAGE: grosse & lisible */
  .custom-cart-page .product-thumbnail--lg {
    width: 160px;
    /* desktop */
  }

  .custom-cart-page .product-thumbnail--lg .product-thumb-img {
    width: 160px;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
  }

  /* Nom plus gros */
  .custom-cart-page td.product-name a {
    display: inline-block;
    font-size: 20px;
    line-height: 1.15;
  }

  /* Grid labels + content */
  .custom-cart-page td.product-price,
.custom-cart-page td.product-quantity,
.custom-cart-page td.product-remove {
    display: grid;
    grid-template-columns: 110px 1fr;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
    padding: 10px 0;
  }

  /* Qty mobile */
  .custom-cart-page .quantity,
.custom-cart-page .product-quantity .quantity {
    width: 100%;
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    gap: 10px;
  }

  .custom-cart-page input.qty,
.custom-cart-page .product-quantity input.qty {
    width: 100% !important;
    height: 56px;
  }

  /* Remove mobile */
  .custom-cart-page a.remove {
    justify-self: start;
    height: 56px;
  }

  /* Actions full width */
  .custom-cart-page .cart-actions {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 12px;
  }

  .custom-cart-page .cart-actions .button,
.custom-cart-page .cart-actions button.button {
    width: 100%;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }

  /* Total à gauche en mobile */
  .custom-cart-page .cart-totals {
    text-align: left;
  }
}
/* =========================================================
   FIX BONUS: si un style global met l’image à 0
========================================================= */
.custom-cart-page .product-thumbnail img {
  max-width: 100% !important;
}

.learndash-page {
  padding-top: 150px;
  padding-bottom: 100px;
}
@media only screen and (min-width: 600px) {
  .learndash-page {
    padding-top: 250px;
    padding-bottom: 150px;
  }
}
.learndash-page__container {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1024px) {
  .learndash-page__container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
  }
}
.learndash-page__header {
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  margin-bottom: 28px;
}
.learndash-page__kicker {
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.65;
  margin: 0 0 10px 0;
}
.learndash-page__title {
  margin: 0;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.05;
  letter-spacing: -0.02em;
}
.learndash-page__meta {
  margin-top: 14px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 14px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.learndash-page__back {
  font-size: 14px;
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.25);
  padding-bottom: 2px;
}
.learndash-page__back:hover {
  border-bottom-color: rgba(0, 0, 0, 0.6);
}
.learndash-page__back:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
  border-bottom-color: transparent;
}

.learndash-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
}
@media only screen and (min-width: 600px) {
  .learndash-layout {
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
  }
}

.learndash-card {
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 16px;
  padding: 18px;
  background: transparent;
}
@media only screen and (min-width: 600px) {
  .learndash-card {
    padding: 22px;
  }
}
@media only screen and (min-width: 600px) {
  .learndash-card--sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 140px;
  }
}

.course-content {
  font-size: 16px;
  line-height: 1.3;
}
@media only screen and (min-width: 600px) {
  .course-content {
    font-size: 18px;
  }
}
.course-content ul,
.course-content ol {
  padding-left: 18px;
}
.course-content li {
  margin: 6px 0;
}
.course-content a {
  color: #1d1d15;
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.25);
  padding-bottom: 1px;
}
.course-content a:hover {
  border-bottom-color: rgba(0, 0, 0, 0.6);
}
.course-content a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-bottom-color: transparent;
}
.course-content .ld-video {
  margin-bottom: 50px;
}
.course-content img,
.course-content video {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  display: block;
}

/* LearnDash: boutons sobres + actions */
.learndash-page .ld-button,
.learndash-page input[type=submit],
.learndash-page button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid rgba(0, 0, 0, 0.18);
  background: transparent;
  color: inherit;
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 14px;
  cursor: pointer;
  -webkit-transition: border-color 0.12s ease, opacity 0.12s ease, -webkit-transform 0.12s ease;
  transition: border-color 0.12s ease, opacity 0.12s ease, -webkit-transform 0.12s ease;
  transition: transform 0.12s ease, border-color 0.12s ease, opacity 0.12s ease;
  transition: transform 0.12s ease, border-color 0.12s ease, opacity 0.12s ease, -webkit-transform 0.12s ease;
}
.learndash-page .ld-button:hover,
.learndash-page input[type=submit]:hover,
.learndash-page button:hover {
  border-color: rgba(0, 0, 0, 0.5);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.learndash-page .ld-button:active,
.learndash-page input[type=submit]:active,
.learndash-page button:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 0.9;
}
.learndash-page .ld-button:focus-visible,
.learndash-page input[type=submit]:focus-visible,
.learndash-page button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

.learndash-page .ld-content-actions {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-list-item-preview > .ld-tooltip,
.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-name {
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled {
  background-color: white !important;
}

.learndash-wrapper .ld-breadcrumbs {
  background-color: white !important;
}

.learndash-page__back {
  color: #1d1d15 !important;
}

.learndash-wrapper .ld-item-list {
  margin: 0 !important;
}

.learndash-wrapper .ld-item-list .ld-item-list-item {
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
}

/* ==========================================================
   LEARNDASH — Barre de progression + statut
   ========================================================== */
.learndash-wrapper .ld-progress {
  margin: 12px 0 !important;
}

.learndash-wrapper .ld-progress-bar {
  background: rgba(0, 0, 0, 0.08) !important;
  border-radius: 999px !important;
  height: 6px !important;
  overflow: hidden !important;
}

.learndash-wrapper .ld-progress-bar-percentage {
  background: #1d1d15 !important;
  height: 100% !important;
  border-radius: 999px !important;
  -webkit-transition: width 0.4s ease !important;
  transition: width 0.4s ease !important;
}

.learndash-wrapper .ld-progress-heading .ld-progress-stats {
  font-size: 13px !important;
  opacity: 0.65 !important;
}

/* ==========================================================
   LEARNDASH — Bouton "Marquer comme complété" + navigation
   ========================================================== */
.learndash-page .ld-button,
.learndash-page input[type=submit],
.learndash-page button,
.learndash-wrapper .ld-button,
.learndash-wrapper input[type=submit] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid rgba(0, 0, 0, 0.18);
  background: transparent;
  color: #1d1d15;
  border-radius: 999px;
  padding: 10px 18px;
  font-size: 14px;
  font-family: inherit;
  cursor: pointer;
  -webkit-transition: border-color 0.12s ease, background 0.12s ease, -webkit-transform 0.12s ease;
  transition: border-color 0.12s ease, background 0.12s ease, -webkit-transform 0.12s ease;
  transition: transform 0.12s ease, border-color 0.12s ease, background 0.12s ease;
  transition: transform 0.12s ease, border-color 0.12s ease, background 0.12s ease, -webkit-transform 0.12s ease;
}
.learndash-page .ld-button:hover,
.learndash-page input[type=submit]:hover,
.learndash-page button:hover,
.learndash-wrapper .ld-button:hover,
.learndash-wrapper input[type=submit]:hover {
  border-color: rgba(0, 0, 0, 0.5);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.learndash-page .ld-button:active,
.learndash-page input[type=submit]:active,
.learndash-page button:active,
.learndash-wrapper .ld-button:active,
.learndash-wrapper input[type=submit]:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 0.9;
}
.learndash-page .ld-button:focus-visible,
.learndash-page input[type=submit]:focus-visible,
.learndash-page button:focus-visible,
.learndash-wrapper .ld-button:focus-visible,
.learndash-wrapper input[type=submit]:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

/* Le bouton "Marquer comme complété" = accent plein */
.learndash-wrapper .ld-button.ld-button-reverse,
.learndash-page .sfwd-mark-complete input[type=submit],
.learndash-page #sfwd-mark-complete input[type=submit] {
  background: #1d1d15 !important;
  color: #fff !important;
  border-color: #1d1d15 !important;
  border-radius: 5px !important;
  padding: 12px 20px !important;
  font-size: 14px !important;
}
.learndash-wrapper .ld-button.ld-button-reverse:hover,
.learndash-page .sfwd-mark-complete input[type=submit]:hover,
.learndash-page #sfwd-mark-complete input[type=submit]:hover {
  opacity: 0.88 !important;
  -webkit-transform: translateY(-1px) !important;
          transform: translateY(-1px) !important;
}

/* ==========================================================
   LEARNDASH — Quiz : questions, résultats
   ========================================================== */
.learndash-wrapper .wpProQuiz_content {
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 12px;
  padding: 22px;
  background: transparent;
}

.learndash-wrapper .wpProQuiz_questionList {
  padding: 0 !important;
  list-style: none !important;
}

.learndash-wrapper .wpProQuiz_questionListItem {
  margin: 0 0 10px 0 !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  -webkit-transition: border-color 0.12s ease !important;
  transition: border-color 0.12s ease !important;
}
.learndash-wrapper .wpProQuiz_questionListItem:hover {
  border-color: rgba(0, 0, 0, 0.35) !important;
}

.learndash-wrapper .wpProQuiz_questionListItem.correct {
  border-color: rgba(0, 0, 0, 0.7) !important;
  background: rgba(0, 0, 0, 0.03) !important;
}

.learndash-wrapper .wpProQuiz_questionListItem.incorrect {
  border-color: rgba(0, 0, 0, 0.2) !important;
  background: rgba(0, 0, 0, 0.03) !important;
}

.learndash-wrapper .wpProQuiz_results {
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  border-radius: 12px !important;
  padding: 22px !important;
  margin: 18px 0 !important;
}

/* ==========================================================
   LEARNDASH — Focus sur onglet/contenu actif
   ========================================================== */
.learndash-wrapper .ld-item-list-item.ld-is-current-item {
  background: rgba(0, 0, 0, 0.03) !important;
}

.learndash-wrapper .ld-item-list-item.ld-is-current-item > .ld-item-list-item-preview {
  font-weight: 500 !important;
}

/* Leçon complétée */
.learndash-wrapper .ld-item-list-item.ld-item-lesson-item.learndash-complete .ld-item-name {
  opacity: 0.55 !important;
  text-decoration: line-through !important;
}

/* ==========================================================
   LEARNDASH — Certificat / bouton de téléchargement
   ========================================================== */
.learndash-wrapper .ld-certificate-link a,
.learndash-page .ld-certificate-link a {
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  gap: 8px !important;
  background: #1d1d15 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 5px !important;
  padding: 12px 20px !important;
  font-size: 14px !important;
  text-decoration: none !important;
  -webkit-transition: opacity 0.15s ease !important;
  transition: opacity 0.15s ease !important;
}
.learndash-wrapper .ld-certificate-link a:hover,
.learndash-page .ld-certificate-link a:hover {
  opacity: 0.88 !important;
}

/* ==========================================================
   WOOCOMMERCE — FULL BRAND STYLES (CLASSIC + BLOCKS)
   - Fields: full width, grey background, uniform
   - Checkout: custom layout (Billing 3/4 + Comments 1/4 + Payment full width)
   - My Account: nav left / content right
   ========================================================== */
/* ---------- Variables ---------- */
body.woocommerce,
body.woocommerce-page {
  --bp-desktop: 1200px;
  /* desktop seulement à partir de 1200 */
  --wc-border: rgba(0, 0, 0, 0.12);
  --wc-border-strong: rgba(0, 0, 0, 0.2);
  --wc-muted: rgba(0, 0, 0, 0.62);
  --wc-field-bg: rgba(0, 0, 0, 0.04);
  --wc-field-border: rgba(0, 0, 0, 0.18);
  --wc-field-border-focus: rgba(0, 0, 0, 0.55);
  --wc-radius: 10px;
  --wc-radius-sm: 5px;
  --wc-pad: 22px;
  --wc-gap: 16px;
  --wc-gap-lg: 28px;
  --wc-btn-bg: #1d1d15;
  --wc-btn-text: #fff;
}

/* ==========================================================
   A) CHECKOUT — CLASSIC (CUSTOM LAYOUT)
   Desktop:
     - Row 1: Billing (3/4) + Additional/Comments (1/4)
     - Row 2: Order review + Payment (100% under row 1)
   Mobile:
     - Stack vertical
   ========================================================== */
/* 1) Safety: rien au-dessus n’impose un flex qui casse */
body.woocommerce-checkout .woocommerce,
body.woocommerce-checkout .entry-content,
body.woocommerce-checkout .site-content,
body.woocommerce-checkout .content-area,
body.woocommerce-checkout .woocommerce-checkout {
  display: block !important;
}

/* 2) Neutralise floats Woo classiques */
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #order_review_heading {
  float: none !important;
  width: auto !important;
}

/* 3) On retire le heading du flow (c’est lui qui casse la grille) */
body.woocommerce-checkout #order_review_heading {
  position: absolute !important;
  left: -99999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

/* Desktop layout: billing 3/4 + comments 1/4 */
@media (min-width: 1200px) {
  body.woocommerce-checkout #customer_details.col2-set {
    display: grid !important;
    grid-template-columns: 3fr 1fr !important;
    gap: var(--wc-gap-lg) !important;
    -webkit-box-align: start !important;
    -webkit-align-items: start !important;
        -ms-flex-align: start !important;
            align-items: start !important;
    margin: 0 !important;
  }

  body.woocommerce-checkout #customer_details .col-1 {
    grid-column: 1/2 !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.woocommerce-checkout #customer_details .col-2 {
    grid-column: 2/3 !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  /* Payment full width under the first row */
  body.woocommerce-checkout #order_review {
    margin-top: var(--wc-gap-lg) !important;
  }
}
/* Mobile: stack */
@media (max-width: 979px) {
  body.woocommerce-checkout #customer_details.col2-set {
    display: block !important;
  }

  body.woocommerce-checkout #order_review {
    margin-top: 18px !important;
  }
}
/* 4) Cards: billing / additional / order review */
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout #order_review {
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: var(--wc-pad);
  background: transparent;
}

/* Range spacing interne des champs (billing + additional) */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
  display: grid;
  gap: var(--wc-gap);
}

/* Titres */
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-additional-fields > h3 {
  font-size: 22px;
  letter-spacing: -0.01em;
  margin: 0 0 12px;
}

/* 5) Champs 100% : prénom/nom full width */
body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last {
  float: none !important;
  width: 100% !important;
}

/* Force rows full width */
body.woocommerce-checkout .woocommerce-billing-fields .form-row,
body.woocommerce-checkout .woocommerce-additional-fields .form-row {
  width: 100% !important;
  margin: 0 !important;
  clear: both !important;
}

/* Inputs/select/textarea/Select2 full width */
body.woocommerce-checkout .form-row input:not([type=checkbox]):not([type=radio]),
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .select2-container {
  width: 100% !important;
  max-width: 100% !important;
}

/* 6) Faux titre “Paiement” dans la card order_review */
body.woocommerce-checkout #order_review {
  position: relative;
}

/* Checkbox / radio: keep natural size + align left of label */
body.woocommerce-checkout .form-row input[type=checkbox],
body.woocommerce-checkout .form-row input[type=radio] {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}

/* Woo default checkbox label wrapper */
body.woocommerce-checkout .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout label.woocommerce-form__label.woocommerce-form__label-for-checkbox {
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  gap: 10px !important;
}

/* If some plugins wrap in .checkbox */
body.woocommerce-checkout label.checkbox {
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  gap: 10px !important;
}

body.woocommerce-checkout #order_review::before {
  content: "Paiement";
  display: block;
  font-size: 22px;
  letter-spacing: -0.01em;
  margin: 0 0 12px 0;
}

/* Table clean */
body.woocommerce-checkout #order_review table.shop_table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 16px;
  overflow: hidden;
  background: transparent;
  margin: 0 0 16px 0;
}

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td {
  padding: 12px 14px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  text-align: left;
  font-size: 14px;
}

body.woocommerce-checkout #order_review table.shop_table thead th {
  font-size: 13px;
  color: rgba(0, 0, 0, 0.62);
  font-weight: 500;
}

body.woocommerce-checkout #order_review table.shop_table tr:last-child td,
body.woocommerce-checkout #order_review table.shop_table tr:last-child th {
  border-bottom: 0;
}

/* Payment block clean (inside order_review) */
body.woocommerce-checkout #payment {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
  padding: 0 !important;
  margin: 0 0 16px 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  list-style: none !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

body.woocommerce-checkout #payment ul.payment_methods li:last-child {
  border-bottom: 0;
}

body.woocommerce-checkout #payment .place-order {
  margin-top: 12px !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  margin: 14px 0 10px !important;
}

/* ==========================================================
   B) CHECKOUT — BLOCKS (kept for safety, no-op if not used)
   ========================================================== */
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-checkout .wc-block-checkout {
  width: 100%;
}

@media (min-width: 1200px) {
  body.woocommerce-checkout .wc-block-checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 380px !important;
    gap: var(--wc-gap-lg) !important;
    -webkit-box-align: start !important;
    -webkit-align-items: start !important;
        -ms-flex-align: start !important;
            align-items: start !important;
  }

  body.woocommerce-checkout .wc-block-checkout__main {
    grid-column: 1/2 !important;
    min-width: 0 !important;
  }

  body.woocommerce-checkout .wc-block-checkout__sidebar {
    grid-column: 2/3 !important;
    min-width: 0 !important;
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 140px;
  }
}
body.woocommerce-checkout .wc-block-checkout__main,
body.woocommerce-checkout .wc-block-checkout__sidebar {
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: var(--wc-pad);
  background: transparent;
}

body.woocommerce-checkout .wc-block-components-text-input,
body.woocommerce-checkout .wc-block-components-textarea,
body.woocommerce-checkout .wc-block-components-select,
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-textarea textarea,
body.woocommerce-checkout .wc-block-components-select select {
  width: 100% !important;
  max-width: 100% !important;
}

body.woocommerce-checkout .wc-block-components-address-form__first_name,
body.woocommerce-checkout .wc-block-components-address-form__last_name,
body.woocommerce-checkout .wc-block-components-address-form__city,
body.woocommerce-checkout .wc-block-components-address-form__state {
  grid-column: 1/-1 !important;
}

/* ==========================================================
   C) UNIFORMISER TOUS LES CHAMPS (Classic + Blocks)
   ========================================================== */
body.woocommerce-checkout input,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select,
body.woocommerce-checkout .select2-container .select2-selection,
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-textarea textarea,
body.woocommerce-checkout .wc-block-components-select select {
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  background-image: none !important;
}

/* Classic fields */
body.woocommerce-checkout input[type=text],
body.woocommerce-checkout input[type=email],
body.woocommerce-checkout input[type=tel],
body.woocommerce-checkout input[type=password],
body.woocommerce-checkout input[type=search],
body.woocommerce-checkout textarea,
body.woocommerce-checkout select {
  background: var(--wc-field-bg) !important;
  border: 1px solid var(--wc-field-border) !important;
  border-radius: var(--wc-radius-sm) !important;
  padding: 14px 14px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  color: inherit !important;
}

/* Blocks fields */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-textarea textarea,
body.woocommerce-checkout .wc-block-components-select select {
  background: var(--wc-field-bg) !important;
  border: 1px solid var(--wc-field-border) !important;
  border-radius: var(--wc-radius-sm) !important;
  padding: 14px 14px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  color: inherit !important;
}

/* Focus */
body.woocommerce-checkout input:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-textarea textarea:focus,
body.woocommerce-checkout .wc-block-components-select select:focus {
  outline: none !important;
  border-color: var(--wc-field-border-focus) !important;
}

body.woocommerce-checkout input:focus-visible,
body.woocommerce-checkout textarea:focus-visible,
body.woocommerce-checkout select:focus-visible,
body.woocommerce-checkout .wc-block-components-text-input input:focus-visible,
body.woocommerce-checkout .wc-block-components-textarea textarea:focus-visible,
body.woocommerce-checkout .wc-block-components-select select:focus-visible {
  outline: 2px solid rgba(0, 0, 0, 0.8) !important;
  outline-offset: 3px !important;
}

/* Select2 (classic) */
body.woocommerce-checkout .select2-container--default .select2-selection--single {
  background: var(--wc-field-bg) !important;
  border: 1px solid var(--wc-field-border) !important;
  border-radius: var(--wc-radius-sm) !important;
  height: auto !important;
  padding: 12px 14px !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  padding-left: 0 !important;
  line-height: 1.2 !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 50% !important;
  -webkit-transform: translateY(-50%) !important;
          transform: translateY(-50%) !important;
}

/* Labels spacing */
body.woocommerce-checkout form .form-row label {
  display: block;
  font-size: 16px;
  letter-spacing: 0.02em;
  color: var(--wc-muted);
  margin: 0 0 8px 0;
}

body.woocommerce-checkout form .form-row {
  margin: 0 0 var(--wc-gap) 0;
}

/* ==========================================================
   D) BOUTONS NOIRS (GLOBAL Woo)
   ========================================================== */
body.woocommerce a.button,
body.woocommerce button.button,
body.woocommerce input.button,
body.woocommerce #place_order,
body.woocommerce-page a.button,
body.woocommerce-page button.button,
body.woocommerce-page input.button,
body.woocommerce-page #place_order,
body.woocommerce-checkout .wc-block-components-button:not(.is-link) {
  background: var(--wc-btn-bg) !important;
  color: var(--wc-btn-text) !important;
  border: 1px solid var(--wc-btn-bg) !important;
  border-radius: 5px !important;
  padding: 12px 16px !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  -webkit-transition: opacity 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: opacity 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: transform 0.12s ease, opacity 0.12s ease !important;
  transition: transform 0.12s ease, opacity 0.12s ease, -webkit-transform 0.12s ease !important;
}

body.woocommerce a.button:hover,
body.woocommerce button.button:hover,
body.woocommerce input.button:hover,
body.woocommerce #place_order:hover,
body.woocommerce-checkout .wc-block-components-button:not(.is-link):hover {
  opacity: 0.92 !important;
  -webkit-transform: translateY(-1px) !important;
          transform: translateY(-1px) !important;
}

body.woocommerce a.button:focus-visible,
body.woocommerce button.button:focus-visible,
body.woocommerce input.button:focus-visible,
body.woocommerce #place_order:focus-visible,
body.woocommerce-checkout .wc-block-components-button:not(.is-link):focus-visible {
  outline: 2px solid #000 !important;
  outline-offset: 4px !important;
}

/* ==========================================================
   E) MY ACCOUNT — nav gauche / contenu droite
   ========================================================== */
body.woocommerce-account .woocommerce {
  display: grid !important;
  gap: var(--wc-gap-lg) !important;
  -webkit-box-align: start !important;
  -webkit-align-items: start !important;
      -ms-flex-align: start !important;
          align-items: start !important;
}

@media (min-width: 1200px) {
  body.woocommerce-account .woocommerce {
    grid-template-columns: 320px minmax(0, 1fr) !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation {
    grid-column: 1/2 !important;
    width: auto !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content {
    grid-column: 2/3 !important;
    width: auto !important;
    min-width: 0 !important;
  }
}
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: var(--wc-pad);
  background: transparent;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  gap: 10px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  -webkit-box-pack: justify !important;
  -webkit-justify-content: space-between !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important;
  padding: 12px 14px !important;
  border: 1px solid var(--wc-border) !important;
  border-radius: 5px !important;
  text-decoration: none !important;
  color: inherit !important;
  -webkit-transition: border-color 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: border-color 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: transform 0.12s ease, border-color 0.12s ease !important;
  transition: transform 0.12s ease, border-color 0.12s ease, -webkit-transform 0.12s ease !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  border-color: rgba(0, 0, 0, 0.55) !important;
  -webkit-transform: translateY(-1px) !important;
          transform: translateY(-1px) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
  border-color: #000 !important;
}

/* ==========================================================
   WooCommerce — Alerts / Notices (clean)
   ========================================================== */
.woocommerce .woocommerce-notices-wrapper {
  margin: 18px 0 24px;
}

.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
  position: relative;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  border-left: 4px solid #000 !important;
  border-radius: 18px !important;
  padding: 14px 16px !important;
  margin: 0 0 12px !important;
  background: rgba(0, 0, 0, 0.03) !important;
  color: inherit !important;
  line-height: 1.5 !important;
  font-size: 14px !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before {
  position: static !important;
  margin-right: 10px;
  opacity: 0.85;
}

.woocommerce ul.woocommerce-error {
  list-style: none !important;
  padding-left: 0 !important;
}

.woocommerce ul.woocommerce-error li {
  margin: 0 !important;
}

.woocommerce .woocommerce-message a,
.woocommerce .woocommerce-info a,
.woocommerce .woocommerce-error a {
  color: inherit !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.35);
  padding-bottom: 1px;
}

.woocommerce .woocommerce-message a:hover,
.woocommerce .woocommerce-info a:hover,
.woocommerce .woocommerce-error a:hover {
  border-bottom-color: rgba(0, 0, 0, 0.7);
}

.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-error .button {
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  padding: 10px 14px !important;
  font-size: 16px !important;
  line-height: 1 !important;
  margin-left: 10px !important;
}

@media (max-width: 640px) {
  .woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
    padding: 14px 14px !important;
  }

  .woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-error .button {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin: 10px 0 0 !important;
  }
}
.woocommerce .woocommerce-error {
  border-left-color: rgba(0, 0, 0, 0.95) !important;
  background: rgba(0, 0, 0, 0.04) !important;
}

.woocommerce .woocommerce-info {
  border-left-color: rgba(0, 0, 0, 0.85) !important;
}

.woocommerce .woocommerce-message {
  border-left-color: #000 !important;
}

/* ==========================================================
   WOOCOMMERCE — MY ACCOUNT + LOGIN forms
   ========================================================== */
body.woocommerce-account,
body.woocommerce-page.woocommerce-account {
  --wc-field-bg: rgba(0, 0, 0, 0.04);
  --wc-field-border: rgba(0, 0, 0, 0.18);
  --wc-field-border-focus: rgba(0, 0, 0, 0.55);
  --wc-radius: 5px;
  --wc-radius-sm: 5px;
  --wc-border: rgba(0, 0, 0, 0.12);
}

.woocommerce-account form,
.woocommerce-account .woocommerce-form,
.woocommerce form.woocommerce-form-login,
.woocommerce form.woocommerce-form-register,
.woocommerce form.lost_reset_password,
.woocommerce form.woocommerce-EditAccountForm {
  margin: 0;
}

.woocommerce-account .form-row,
.woocommerce-account .woocommerce-form-row {
  margin: 0 0 16px 0 !important;
  width: 100% !important;
}

.woocommerce-account .form-row label,
.woocommerce-account .woocommerce-form-row label {
  display: block;
  font-size: 16px;
  letter-spacing: 0.02em;
  opacity: 0.7;
  margin: 0 0 8px 0;
}

.woocommerce-account input[type=text],
.woocommerce-account input[type=email],
.woocommerce-account input[type=tel],
.woocommerce-account input[type=password],
.woocommerce-account input[type=search],
.woocommerce-account textarea,
.woocommerce-account select,
.woocommerce-account .woocommerce-Input,
.woocommerce-account .input-text {
  width: 100% !important;
  max-width: 100% !important;
  background: var(--wc-field-bg) !important;
  border: 1px solid var(--wc-field-border) !important;
  border-radius: var(--wc-radius-sm) !important;
  padding: 14px 14px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  color: inherit !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  background-image: none !important;
}

.woocommerce-account input:focus,
.woocommerce-account textarea:focus,
.woocommerce-account select:focus {
  outline: none !important;
  border-color: var(--wc-field-border-focus) !important;
}

.woocommerce-account input:focus-visible,
.woocommerce-account textarea:focus-visible,
.woocommerce-account select:focus-visible {
  outline: 2px solid rgba(0, 0, 0, 0.8) !important;
  outline-offset: 3px !important;
}

.woocommerce-account .form-row-first,
.woocommerce-account .form-row-last {
  float: none !important;
  width: 100% !important;
}

.woocommerce-account fieldset {
  border: 1px solid var(--wc-border) !important;
  border-radius: var(--wc-radius) !important;
  padding: 18px !important;
  margin: 18px 0 0 !important;
}

.woocommerce-account fieldset legend {
  padding: 0 10px !important;
  font-size: 16px !important;
  letter-spacing: 0.02em;
  opacity: 0.75;
}

.woocommerce-account .woocommerce-form-row span,
.woocommerce-account .form-row span,
.woocommerce-account em,
.woocommerce-account small {
  color: rgba(0, 0, 0, 0.62);
}

.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account .button,
.woocommerce-account .woocommerce-button {
  background: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  padding: 12px 16px !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  -webkit-transition: opacity 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: opacity 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: transform 0.12s ease, opacity 0.12s ease !important;
  transition: transform 0.12s ease, opacity 0.12s ease, -webkit-transform 0.12s ease !important;
}

.woocommerce-account button.button:hover,
.woocommerce-account input.button:hover,
.woocommerce-account .button:hover,
.woocommerce-account .woocommerce-button:hover {
  opacity: 0.92 !important;
  -webkit-transform: translateY(-1px) !important;
          transform: translateY(-1px) !important;
}

.woocommerce-account button.button:focus-visible,
.woocommerce-account input.button:focus-visible,
.woocommerce-account .button:focus-visible,
.woocommerce-account .woocommerce-button:focus-visible {
  outline: 2px solid #000 !important;
  outline-offset: 4px !important;
}

.woocommerce-account .form-row .woocommerce-form__label-for-checkbox,
.woocommerce-account .woocommerce-form__label-for-checkbox {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  gap: 10px !important;
  margin-top: 8px !important;
}

/* ==========================================================
  //  MY ACCOUNT — Addresses spacing (woocommerce-Addresses)
   ========================================================== */
body.woocommerce-account .woocommerce-Addresses {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 18px !important;
  margin-top: 18px !important;
}

@media (min-width: 1200px) {
  body.woocommerce-account .woocommerce-Addresses {
    gap: 28px !important;
  }
}
/* Chaque bloc adresse */
body.woocommerce-account .woocommerce-Address {
  border: 1px solid var(--wc-border) !important;
  border-radius: var(--wc-radius) !important;
  padding: 18px !important;
}

/* Header: titre + CTA mieux séparés */
body.woocommerce-account .woocommerce-Address-title {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: baseline !important;
  -webkit-align-items: baseline !important;
      -ms-flex-align: baseline !important;
          align-items: baseline !important;
  -webkit-box-pack: justify !important;
  -webkit-justify-content: space-between !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important;
  gap: 14px !important;
  margin: 0 0 12px 0 !important;
}

body.woocommerce-account .woocommerce-Address-title h2 {
  margin: 0 !important;
  font-size: 22px !important;
  letter-spacing: -0.01em;
}

/* Le lien "Ajouter..." style bouton discret */
body.woocommerce-account .woocommerce-Address-title .edit {
  text-decoration: none !important;
  border: 1px solid var(--wc-border) !important;
  border-radius: 5px !important;
  padding: 10px 12px !important;
  line-height: 1 !important;
  font-size: 14px !important;
  color: inherit !important;
  white-space: nowrap;
  -webkit-transition: border-color 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: border-color 0.12s ease, -webkit-transform 0.12s ease !important;
  transition: transform 0.12s ease, border-color 0.12s ease !important;
  transition: transform 0.12s ease, border-color 0.12s ease, -webkit-transform 0.12s ease !important;
}

body.woocommerce-account .woocommerce-Address-title .edit:hover {
  border-color: rgba(0, 0, 0, 0.55) !important;
  -webkit-transform: translateY(-1px) !important;
          transform: translateY(-1px) !important;
}

/* Texte d'adresse */
body.woocommerce-account .woocommerce-Address address {
  margin: 0 !important;
  color: rgba(0, 0, 0, 0.62);
  line-height: 1.5;
}

.woocommerce-Address {
  width: 100% !important;
}

.woocommerce-account .addresses .title::after,
.woocommerce-account .addresses .title::before {
  display: none !important;
}

/* ==========================================================
   TABLET = MOBILE (force stack under desktop breakpoint)
   ========================================================== */
@media (max-width: 1199px) {
  /* Checkout: stack tout */
  body.woocommerce-checkout #customer_details.col2-set {
    display: block !important;
  }

  body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
    width: 100% !important;
    float: none !important;
  }

  /* My Account: nav au-dessus + contenu en dessous */
  body.woocommerce-account .woocommerce {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
    width: 100% !important;
  }

  /* Addresses: stack (évite les 30% / colonnes weird) */
  body.woocommerce-account .woocommerce-Addresses {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-account .woocommerce-Addresses .woocommerce-Address,
body.woocommerce-account .u-columns .u-column1,
body.woocommerce-account .u-columns .u-column2 {
    width: 100% !important;
    float: none !important;
    max-width: 100% !important;
  }
}
.select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
  font-size: 16px !important;
}

.woocommerce-form__input-checkbox {
  width: 15px !important;
}

.woocommerce-notice--success {
  margin-bottom: 50px !important;
}

.woocommerce-thankyou-order-details {
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  padding: 20px !important;
  border-radius: 5px !important;
}

@media print {
  @page {
    size: portrait;
  }
  *,
*::before,
*::after {
    color: #000 !important;
  }

  body {
    max-width: 670px;
  }

  html {
    font-size: 10px !important;
  }
}
/*! Flickity v2.2.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: rgba(255, 255, 255, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 5px #19f;
          box-shadow: 0 0 0 5px #19f;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: 10px;
}

.flickity-prev-next-button.next {
  right: 10px;
}

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}
/*# sourceMappingURL=main.css.map */
