/*!*******************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/main.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap);
/*!***********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/main.scss (1) ***!
  \***********************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*Museo_sans*/
/**
 * Breakpoints
 * @sass-export-section="breakpoints"
 */
/**
 * Couleurs
 * @sass-export-section="colors"
 */
/**
 * Fonts
 * @sass-export-section="fonts"
 */
/**
 * Textes couleurs
 * @sass-export-section="text-colors"
 */
/**
 * Gaps
 * @sass-export-section="gaps"
 */
@media screen and (max-width: 640px) {
  .hide-mobile {
    display: none !important;
  }
}

@media screen and (max-width: 1024px) {
  .hide-tablette {
    display: none !important;
  }
}

@media screen and (min-width: 1025px) {
  .hide-desktop {
    display: none !important;
  }
}

@media screen and (max-width: 1128px) {
  .hide-reduit {
    display: none !important;
  }
}

@media screen and (min-width: 1025px) and (max-width: 1128px) {
  .hide-only-reduit {
    display: none !important;
  }
}

@media screen and (min-width: 641px) and (max-width: 1024px) {
  .hide-only-tablette {
    display: none !important;
  }
}

@media screen and (max-width: 640px) {
  .hide-only-mobile {
    display: none !important;
  }
}

@media screen and (min-width: 1025px) {
  .hide-only-desktop {
    display: none !important;
  }
}

.card, .account-delete, .layout-checkout-form > .checkout-pane, .layout-checkout-form .layout-region-checkout-main > *, .layout-checkout-form .layout-region-checkout-secondary {
  border-radius: 8px;
  padding: 16px;
  border: 1px solid var(--color-blue-light);
  box-shadow: 0 2px 8px rgba(20, 49, 72, 0.12);
}

.card-info {
  background-color: color-mix(in srgb, var(--color-tertiary) 6%, transparent);
  border-radius: calc(6 * var(--ratio, 1));
  border-left: 3px solid var(--color-tertiary);
  padding: calc(16 * var(--ratio, 1));
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: calc(16 * var(--ratio, 1));
}
.card-info::before {
  content: "";
  background-color: var(--color-tertiary);
  -webkit-mask-image: url("../images/svg/font/info.svg");
          mask-image: url("../images/svg/font/info.svg");
  -webkit-mask-size: calc(20 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
          mask-size: calc(20 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  width: calc(20 * var(--ratio, 1));
  height: calc(20 * var(--ratio, 1));
}

.lock, .node--horizontal-overlay.is-paywalled .content-container::before, .node--vertical.is-paywalled .content-container::before, .node--vertical-hover.is-paywalled .content-container::before, .node--widget-article.is-paywalled .content-container::before, .node--widget-article-aside.is-paywalled .text-box::before {
  content: "";
  width: calc(36 * var(--ratio, 1));
  height: calc(36 * var(--ratio, 1));
  background-color: var(--color-secondary);
  position: absolute;
  border-radius: calc(18 * var(--ratio, 1));
  left: calc(50% - 18 * var(--ratio, 1));
  top: calc(-18 * var(--ratio, 1));
  background-image: url("../images/svg/lock_w.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: calc(24 * var(--ratio, 1));
}

:root {
  --color-black: #000000;
  --mc-color-black: #000000;
  --color-white: #ffffff;
  --mc-color-white: #ffffff;
  --color-grey: #737373;
  --mc-color-grey: #737373;
  --color-grey-light: #f9f9f9;
  --mc-color-grey-light: #f9f9f9;
  --color-grey-light-2: #f2f2f2;
  --mc-color-grey-light-2: #f2f2f2;
  --color-grey-medium-2: #e9e9e9;
  --mc-color-grey-medium-2: #e9e9e9;
  --color-grey-medium: #bfbfbf;
  --mc-color-grey-medium: #bfbfbf;
  --color-grey-dark: #8c8c8c;
  --mc-color-grey-dark: #8c8c8c;
  --color-grey-dark-2: #757575;
  --mc-color-grey-dark-2: #757575;
  --color-mix-black: rgba(0, 0, 0, 0.8784313725);
  --mc-color-mix-black: rgba(0, 0, 0, 0.8784313725);
  --color-mix-white: #ffffff;
  --mc-color-mix-white: #ffffff;
  --color-primary: #143148;
  --mc-color-primary: #143148;
  --color-secondary: #f26531;
  --mc-color-secondary: #f26531;
  --color-tertiary: #0080cb;
  --mc-color-tertiary: #0080cb;
  --color-blue: #2eabe1;
  --mc-color-blue: #2eabe1;
  --color-blue-light: #e5ebf0;
  --mc-color-blue-light: #e5ebf0;
  --color-blue-dark-light: #3c4773;
  --mc-color-blue-dark-light: #3c4773;
  --color-blue-dark: #2a3768;
  --mc-color-blue-dark: #2a3768;
  --color-warning: #f26531;
  --mc-color-warning: #f26531;
  --color-success: #00c554;
  --mc-color-success: #00c554;
  --color-error: #e74c3c;
  --mc-color-error: #e74c3c;
  --ff1: "Museo_sans", Arial;
  --ff2: Roboto Condensed, Arial;
  --fz-10: 0.625rem;
  --fz-12: 0.75rem;
  --fz-14: 0.875rem;
  --fz-15: 0.9375rem;
  --fz-16: 1rem;
  --fz-18: 1.125rem;
  --fz-20: 1.25rem;
  --fz-22: 1.375rem;
  --fz-24: 1.5rem;
  --fz-26: 1.625rem;
  --fz-32: 2rem;
  --fz-40: 2.5rem;
  --fz-44: 2.75rem;
  --fz-48: 3rem;
  --ratio: 1px;
  --inline-padding: calc(20 * var(--ratio, 1));
  --max-width: 1368px;
}
@media screen and (max-width: 1024px) {
  :root {
    --ratio: calc((1 / 1024 * 100) * 1vw);
    --max-width: 100vw;
  }
}
@media screen and (max-width: 640px) {
  :root {
    --ratio: calc((1 / 375 * 100) * 1vw);
  }
}

@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans-100-webfont.woff") format("woff"), url("../fonts/museosans-100-webfont.ttf") format("truetype");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans-100italic-webfont.woff") format("woff"), url("../fonts/museosans-100italic-webfont.ttf") format("truetype");
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans-300-webfont.woff") format("woff"), url("../fonts/museosans-300-webfont.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans-300italic-webfont.woff") format("woff"), url("../fonts/museosans-300italic-webfont.ttf") format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans_500-webfont.woff") format("woff"), url("../fonts/museosans_500-webfont.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans_500_italic-webfont.woff") format("woff"), url("../fonts/museosans_500_italic-webfont.ttf") format("truetype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans_700-webfont.woff") format("woff"), url("../fonts/museosans_700-webfont.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans-700italic-webfont.woff") format("woff"), url("../fonts/museosans-700italic-webfont.ttf") format("truetype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans_900-webfont.woff") format("woff"), url("../fonts/museosans_900-webfont.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Museo_sans";
  font-display: swap;
  src: url("../fonts/museosans-900italic-webfont.woff") format("woff"), url("../fonts/museosans-900italic-webfont.ttf") format("truetype");
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Merriweather";
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/Merriweather-LightItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Merriweather-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/Merriweather-BoldItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather";
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/Merriweather-BlackItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/Merriweather-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Merriweather-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/Merriweather-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Merriweather";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/Merriweather-Black.ttf") format("truetype");
}
a {
  color: currentColor;
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}

ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

* {
  box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6,
.editor-styles-wrapper h1,
.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.editor-styles-wrapper h4,
.editor-styles-wrapper h5,
.editor-styles-wrapper h6 {
  margin-top: 0;
  margin-bottom: 0;
}

#block-pagetitle h1 {
  margin: 0;
  padding-bottom: 24px;
  margin-bottom: 24px;
}

h2 {
  margin-bottom: 0;
}

p:not(.components-base-control__help) {
  margin-top: 0;
  margin-bottom: 0;
}

ul {
  padding-left: 0;
}

hr {
  border: none;
}

.i {
  font-style: italic;
}

.small {
  font-size: var(--fz-12);
}

.alert {
  color: red;
}

.warning {
  color: orange;
}

.info {
  color: blue;
}

.nm {
  margin: 0 !important;
}

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

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

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

#mix-environment-indicator {
  opacity: 0.25;
  position: absolute;
  padding: 3px 0px;
  width: 300px;
  left: calc(50% - 150px);
}

a {
  text-decoration: none;
}

.d-inline-block {
  display: inline-block;
}

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

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

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

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

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

.justify-content-end {
  justify-content: flex-end;
}

.align-items-center {
  align-items: center;
}

.align-items-start {
  align-items: flex-start;
}

.align-items-end {
  align-items: flex-end;
}

.text-right {
  text-align: right;
}

.text-left {
  text-align: left;
}

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

.w-auto {
  width: auto;
}

.w-fit {
  width: -moz-fit-content;
  width: fit-content;
}

.g0 {
  gap: calc(0 * var(--ratio, 1));
}

.g4 {
  gap: calc(4 * var(--ratio, 1));
}

.g6 {
  gap: calc(6 * var(--ratio, 1));
}

.g8 {
  gap: calc(8 * var(--ratio, 1));
}

.g10 {
  gap: calc(10 * var(--ratio, 1));
}

.g12 {
  gap: calc(12 * var(--ratio, 1));
}

.g16 {
  gap: calc(16 * var(--ratio, 1));
}

.g20 {
  gap: calc(20 * var(--ratio, 1));
}

.g24 {
  gap: calc(24 * var(--ratio, 1));
}

.g32 {
  gap: calc(32 * var(--ratio, 1));
}

.g64 {
  gap: calc(64 * var(--ratio, 1));
}

.g100 {
  gap: calc(100 * var(--ratio, 1));
}

.g128 {
  gap: calc(128 * var(--ratio, 1));
}

.p-0 {
  padding: calc(0 * var(--ratio, 1));
}

.p-x-0 {
  padding-left: calc(0 * var(--ratio, 1));
  padding-right: calc(0 * var(--ratio, 1));
}

.p-y-0 {
  padding-top: calc(0 * var(--ratio, 1));
  padding-bottom: calc(0 * var(--ratio, 1));
}

.p-t-0 {
  padding-top: calc(0 * var(--ratio, 1));
}

.p-b-0 {
  padding-bottom: calc(0 * var(--ratio, 1));
}

.p-l-0 {
  padding-left: calc(0 * var(--ratio, 1));
}

.p-r-0 {
  padding-right: calc(0 * var(--ratio, 1));
}

.m-0 {
  margin: calc(0 * var(--ratio, 1));
}

.m-x-0 {
  margin-left: calc(0 * var(--ratio, 1));
  margin-right: calc(0 * var(--ratio, 1));
}

.m-y-0 {
  margin-top: calc(0 * var(--ratio, 1));
  margin-bottom: calc(0 * var(--ratio, 1));
}

.m-t-0 {
  margin-top: calc(0 * var(--ratio, 1));
}

.m-b-0 {
  margin-bottom: calc(0 * var(--ratio, 1));
}

.m-l-0 {
  margin-left: calc(0 * var(--ratio, 1));
}

.m-r-0 {
  margin-right: calc(0 * var(--ratio, 1));
}

.p-4 {
  padding: calc(4 * var(--ratio, 1));
}

.p-x-4 {
  padding-left: calc(4 * var(--ratio, 1));
  padding-right: calc(4 * var(--ratio, 1));
}

.p-y-4 {
  padding-top: calc(4 * var(--ratio, 1));
  padding-bottom: calc(4 * var(--ratio, 1));
}

.p-t-4 {
  padding-top: calc(4 * var(--ratio, 1));
}

.p-b-4 {
  padding-bottom: calc(4 * var(--ratio, 1));
}

.p-l-4 {
  padding-left: calc(4 * var(--ratio, 1));
}

.p-r-4 {
  padding-right: calc(4 * var(--ratio, 1));
}

.m-4 {
  margin: calc(4 * var(--ratio, 1));
}

.m-x-4 {
  margin-left: calc(4 * var(--ratio, 1));
  margin-right: calc(4 * var(--ratio, 1));
}

.m-y-4 {
  margin-top: calc(4 * var(--ratio, 1));
  margin-bottom: calc(4 * var(--ratio, 1));
}

.m-t-4 {
  margin-top: calc(4 * var(--ratio, 1));
}

.m-b-4 {
  margin-bottom: calc(4 * var(--ratio, 1));
}

.m-l-4 {
  margin-left: calc(4 * var(--ratio, 1));
}

.m-r-4 {
  margin-right: calc(4 * var(--ratio, 1));
}

.p-6 {
  padding: calc(6 * var(--ratio, 1));
}

.p-x-6 {
  padding-left: calc(6 * var(--ratio, 1));
  padding-right: calc(6 * var(--ratio, 1));
}

.p-y-6 {
  padding-top: calc(6 * var(--ratio, 1));
  padding-bottom: calc(6 * var(--ratio, 1));
}

.p-t-6 {
  padding-top: calc(6 * var(--ratio, 1));
}

.p-b-6 {
  padding-bottom: calc(6 * var(--ratio, 1));
}

.p-l-6 {
  padding-left: calc(6 * var(--ratio, 1));
}

.p-r-6 {
  padding-right: calc(6 * var(--ratio, 1));
}

.m-6 {
  margin: calc(6 * var(--ratio, 1));
}

.m-x-6 {
  margin-left: calc(6 * var(--ratio, 1));
  margin-right: calc(6 * var(--ratio, 1));
}

.m-y-6 {
  margin-top: calc(6 * var(--ratio, 1));
  margin-bottom: calc(6 * var(--ratio, 1));
}

.m-t-6 {
  margin-top: calc(6 * var(--ratio, 1));
}

.m-b-6 {
  margin-bottom: calc(6 * var(--ratio, 1));
}

.m-l-6 {
  margin-left: calc(6 * var(--ratio, 1));
}

.m-r-6 {
  margin-right: calc(6 * var(--ratio, 1));
}

.p-8 {
  padding: calc(8 * var(--ratio, 1));
}

.p-x-8 {
  padding-left: calc(8 * var(--ratio, 1));
  padding-right: calc(8 * var(--ratio, 1));
}

.p-y-8 {
  padding-top: calc(8 * var(--ratio, 1));
  padding-bottom: calc(8 * var(--ratio, 1));
}

.p-t-8 {
  padding-top: calc(8 * var(--ratio, 1));
}

.p-b-8 {
  padding-bottom: calc(8 * var(--ratio, 1));
}

.p-l-8 {
  padding-left: calc(8 * var(--ratio, 1));
}

.p-r-8 {
  padding-right: calc(8 * var(--ratio, 1));
}

.m-8 {
  margin: calc(8 * var(--ratio, 1));
}

.m-x-8 {
  margin-left: calc(8 * var(--ratio, 1));
  margin-right: calc(8 * var(--ratio, 1));
}

.m-y-8 {
  margin-top: calc(8 * var(--ratio, 1));
  margin-bottom: calc(8 * var(--ratio, 1));
}

.m-t-8 {
  margin-top: calc(8 * var(--ratio, 1));
}

.m-b-8 {
  margin-bottom: calc(8 * var(--ratio, 1));
}

.m-l-8 {
  margin-left: calc(8 * var(--ratio, 1));
}

.m-r-8 {
  margin-right: calc(8 * var(--ratio, 1));
}

.p-10 {
  padding: calc(10 * var(--ratio, 1));
}

.p-x-10 {
  padding-left: calc(10 * var(--ratio, 1));
  padding-right: calc(10 * var(--ratio, 1));
}

.p-y-10 {
  padding-top: calc(10 * var(--ratio, 1));
  padding-bottom: calc(10 * var(--ratio, 1));
}

.p-t-10 {
  padding-top: calc(10 * var(--ratio, 1));
}

.p-b-10 {
  padding-bottom: calc(10 * var(--ratio, 1));
}

.p-l-10 {
  padding-left: calc(10 * var(--ratio, 1));
}

.p-r-10 {
  padding-right: calc(10 * var(--ratio, 1));
}

.m-10 {
  margin: calc(10 * var(--ratio, 1));
}

.m-x-10 {
  margin-left: calc(10 * var(--ratio, 1));
  margin-right: calc(10 * var(--ratio, 1));
}

.m-y-10 {
  margin-top: calc(10 * var(--ratio, 1));
  margin-bottom: calc(10 * var(--ratio, 1));
}

.m-t-10 {
  margin-top: calc(10 * var(--ratio, 1));
}

.m-b-10 {
  margin-bottom: calc(10 * var(--ratio, 1));
}

.m-l-10 {
  margin-left: calc(10 * var(--ratio, 1));
}

.m-r-10 {
  margin-right: calc(10 * var(--ratio, 1));
}

.p-12 {
  padding: calc(12 * var(--ratio, 1));
}

.p-x-12 {
  padding-left: calc(12 * var(--ratio, 1));
  padding-right: calc(12 * var(--ratio, 1));
}

.p-y-12 {
  padding-top: calc(12 * var(--ratio, 1));
  padding-bottom: calc(12 * var(--ratio, 1));
}

.p-t-12 {
  padding-top: calc(12 * var(--ratio, 1));
}

.p-b-12 {
  padding-bottom: calc(12 * var(--ratio, 1));
}

.p-l-12 {
  padding-left: calc(12 * var(--ratio, 1));
}

.p-r-12 {
  padding-right: calc(12 * var(--ratio, 1));
}

.m-12 {
  margin: calc(12 * var(--ratio, 1));
}

.m-x-12 {
  margin-left: calc(12 * var(--ratio, 1));
  margin-right: calc(12 * var(--ratio, 1));
}

.m-y-12 {
  margin-top: calc(12 * var(--ratio, 1));
  margin-bottom: calc(12 * var(--ratio, 1));
}

.m-t-12 {
  margin-top: calc(12 * var(--ratio, 1));
}

.m-b-12 {
  margin-bottom: calc(12 * var(--ratio, 1));
}

.m-l-12 {
  margin-left: calc(12 * var(--ratio, 1));
}

.m-r-12 {
  margin-right: calc(12 * var(--ratio, 1));
}

.p-16 {
  padding: calc(16 * var(--ratio, 1));
}

.p-x-16 {
  padding-left: calc(16 * var(--ratio, 1));
  padding-right: calc(16 * var(--ratio, 1));
}

.p-y-16 {
  padding-top: calc(16 * var(--ratio, 1));
  padding-bottom: calc(16 * var(--ratio, 1));
}

.p-t-16 {
  padding-top: calc(16 * var(--ratio, 1));
}

.p-b-16 {
  padding-bottom: calc(16 * var(--ratio, 1));
}

.p-l-16 {
  padding-left: calc(16 * var(--ratio, 1));
}

.p-r-16 {
  padding-right: calc(16 * var(--ratio, 1));
}

.m-16 {
  margin: calc(16 * var(--ratio, 1));
}

.m-x-16 {
  margin-left: calc(16 * var(--ratio, 1));
  margin-right: calc(16 * var(--ratio, 1));
}

.m-y-16 {
  margin-top: calc(16 * var(--ratio, 1));
  margin-bottom: calc(16 * var(--ratio, 1));
}

.m-t-16 {
  margin-top: calc(16 * var(--ratio, 1));
}

.m-b-16 {
  margin-bottom: calc(16 * var(--ratio, 1));
}

.m-l-16 {
  margin-left: calc(16 * var(--ratio, 1));
}

.m-r-16 {
  margin-right: calc(16 * var(--ratio, 1));
}

.p-20 {
  padding: calc(20 * var(--ratio, 1));
}

.p-x-20 {
  padding-left: calc(20 * var(--ratio, 1));
  padding-right: calc(20 * var(--ratio, 1));
}

.p-y-20 {
  padding-top: calc(20 * var(--ratio, 1));
  padding-bottom: calc(20 * var(--ratio, 1));
}

.p-t-20 {
  padding-top: calc(20 * var(--ratio, 1));
}

.p-b-20 {
  padding-bottom: calc(20 * var(--ratio, 1));
}

.p-l-20 {
  padding-left: calc(20 * var(--ratio, 1));
}

.p-r-20 {
  padding-right: calc(20 * var(--ratio, 1));
}

.m-20 {
  margin: calc(20 * var(--ratio, 1));
}

.m-x-20 {
  margin-left: calc(20 * var(--ratio, 1));
  margin-right: calc(20 * var(--ratio, 1));
}

.m-y-20 {
  margin-top: calc(20 * var(--ratio, 1));
  margin-bottom: calc(20 * var(--ratio, 1));
}

.m-t-20 {
  margin-top: calc(20 * var(--ratio, 1));
}

.m-b-20 {
  margin-bottom: calc(20 * var(--ratio, 1));
}

.m-l-20 {
  margin-left: calc(20 * var(--ratio, 1));
}

.m-r-20 {
  margin-right: calc(20 * var(--ratio, 1));
}

.p-24 {
  padding: calc(24 * var(--ratio, 1));
}

.p-x-24 {
  padding-left: calc(24 * var(--ratio, 1));
  padding-right: calc(24 * var(--ratio, 1));
}

.p-y-24 {
  padding-top: calc(24 * var(--ratio, 1));
  padding-bottom: calc(24 * var(--ratio, 1));
}

.p-t-24 {
  padding-top: calc(24 * var(--ratio, 1));
}

.p-b-24 {
  padding-bottom: calc(24 * var(--ratio, 1));
}

.p-l-24 {
  padding-left: calc(24 * var(--ratio, 1));
}

.p-r-24 {
  padding-right: calc(24 * var(--ratio, 1));
}

.m-24 {
  margin: calc(24 * var(--ratio, 1));
}

.m-x-24 {
  margin-left: calc(24 * var(--ratio, 1));
  margin-right: calc(24 * var(--ratio, 1));
}

.m-y-24 {
  margin-top: calc(24 * var(--ratio, 1));
  margin-bottom: calc(24 * var(--ratio, 1));
}

.m-t-24 {
  margin-top: calc(24 * var(--ratio, 1));
}

.m-b-24 {
  margin-bottom: calc(24 * var(--ratio, 1));
}

.m-l-24 {
  margin-left: calc(24 * var(--ratio, 1));
}

.m-r-24 {
  margin-right: calc(24 * var(--ratio, 1));
}

.p-32 {
  padding: calc(32 * var(--ratio, 1));
}

.p-x-32 {
  padding-left: calc(32 * var(--ratio, 1));
  padding-right: calc(32 * var(--ratio, 1));
}

.p-y-32 {
  padding-top: calc(32 * var(--ratio, 1));
  padding-bottom: calc(32 * var(--ratio, 1));
}

.p-t-32 {
  padding-top: calc(32 * var(--ratio, 1));
}

.p-b-32 {
  padding-bottom: calc(32 * var(--ratio, 1));
}

.p-l-32 {
  padding-left: calc(32 * var(--ratio, 1));
}

.p-r-32 {
  padding-right: calc(32 * var(--ratio, 1));
}

.m-32 {
  margin: calc(32 * var(--ratio, 1));
}

.m-x-32 {
  margin-left: calc(32 * var(--ratio, 1));
  margin-right: calc(32 * var(--ratio, 1));
}

.m-y-32 {
  margin-top: calc(32 * var(--ratio, 1));
  margin-bottom: calc(32 * var(--ratio, 1));
}

.m-t-32 {
  margin-top: calc(32 * var(--ratio, 1));
}

.m-b-32 {
  margin-bottom: calc(32 * var(--ratio, 1));
}

.m-l-32 {
  margin-left: calc(32 * var(--ratio, 1));
}

.m-r-32 {
  margin-right: calc(32 * var(--ratio, 1));
}

.p-64 {
  padding: calc(64 * var(--ratio, 1));
}

.p-x-64 {
  padding-left: calc(64 * var(--ratio, 1));
  padding-right: calc(64 * var(--ratio, 1));
}

.p-y-64 {
  padding-top: calc(64 * var(--ratio, 1));
  padding-bottom: calc(64 * var(--ratio, 1));
}

.p-t-64 {
  padding-top: calc(64 * var(--ratio, 1));
}

.p-b-64 {
  padding-bottom: calc(64 * var(--ratio, 1));
}

.p-l-64 {
  padding-left: calc(64 * var(--ratio, 1));
}

.p-r-64 {
  padding-right: calc(64 * var(--ratio, 1));
}

.m-64 {
  margin: calc(64 * var(--ratio, 1));
}

.m-x-64 {
  margin-left: calc(64 * var(--ratio, 1));
  margin-right: calc(64 * var(--ratio, 1));
}

.m-y-64 {
  margin-top: calc(64 * var(--ratio, 1));
  margin-bottom: calc(64 * var(--ratio, 1));
}

.m-t-64 {
  margin-top: calc(64 * var(--ratio, 1));
}

.m-b-64 {
  margin-bottom: calc(64 * var(--ratio, 1));
}

.m-l-64 {
  margin-left: calc(64 * var(--ratio, 1));
}

.m-r-64 {
  margin-right: calc(64 * var(--ratio, 1));
}

.p-100 {
  padding: calc(100 * var(--ratio, 1));
}

.p-x-100 {
  padding-left: calc(100 * var(--ratio, 1));
  padding-right: calc(100 * var(--ratio, 1));
}

.p-y-100 {
  padding-top: calc(100 * var(--ratio, 1));
  padding-bottom: calc(100 * var(--ratio, 1));
}

.p-t-100 {
  padding-top: calc(100 * var(--ratio, 1));
}

.p-b-100 {
  padding-bottom: calc(100 * var(--ratio, 1));
}

.p-l-100 {
  padding-left: calc(100 * var(--ratio, 1));
}

.p-r-100 {
  padding-right: calc(100 * var(--ratio, 1));
}

.m-100 {
  margin: calc(100 * var(--ratio, 1));
}

.m-x-100 {
  margin-left: calc(100 * var(--ratio, 1));
  margin-right: calc(100 * var(--ratio, 1));
}

.m-y-100 {
  margin-top: calc(100 * var(--ratio, 1));
  margin-bottom: calc(100 * var(--ratio, 1));
}

.m-t-100 {
  margin-top: calc(100 * var(--ratio, 1));
}

.m-b-100 {
  margin-bottom: calc(100 * var(--ratio, 1));
}

.m-l-100 {
  margin-left: calc(100 * var(--ratio, 1));
}

.m-r-100 {
  margin-right: calc(100 * var(--ratio, 1));
}

.p-128 {
  padding: calc(128 * var(--ratio, 1));
}

.p-x-128 {
  padding-left: calc(128 * var(--ratio, 1));
  padding-right: calc(128 * var(--ratio, 1));
}

.p-y-128 {
  padding-top: calc(128 * var(--ratio, 1));
  padding-bottom: calc(128 * var(--ratio, 1));
}

.p-t-128 {
  padding-top: calc(128 * var(--ratio, 1));
}

.p-b-128 {
  padding-bottom: calc(128 * var(--ratio, 1));
}

.p-l-128 {
  padding-left: calc(128 * var(--ratio, 1));
}

.p-r-128 {
  padding-right: calc(128 * var(--ratio, 1));
}

.m-128 {
  margin: calc(128 * var(--ratio, 1));
}

.m-x-128 {
  margin-left: calc(128 * var(--ratio, 1));
  margin-right: calc(128 * var(--ratio, 1));
}

.m-y-128 {
  margin-top: calc(128 * var(--ratio, 1));
  margin-bottom: calc(128 * var(--ratio, 1));
}

.m-t-128 {
  margin-top: calc(128 * var(--ratio, 1));
}

.m-b-128 {
  margin-bottom: calc(128 * var(--ratio, 1));
}

.m-l-128 {
  margin-left: calc(128 * var(--ratio, 1));
}

.m-r-128 {
  margin-right: calc(128 * var(--ratio, 1));
}

.m-x {
  margin-left: auto;
  margin-right: auto;
}

.grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto;
}

.grid-3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto;
}

.border {
  border: 1px solid currentColor;
}

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

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

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

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

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

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

.border-clr-grey {
  border-color: var(--color-grey-medium-2);
}

[data-drupal-messages] {
  display: block;
  margin: 0 auto;
}
[data-drupal-messages] .messages {
  color: var(--color-white);
  border-radius: calc(4 * var(--ratio, 1));
  padding: calc(10 * var(--ratio, 1)) calc(10 * var(--ratio, 1)) calc(10 * var(--ratio, 1)) calc(11 * var(--ratio, 1));
  margin-bottom: calc(20 * var(--ratio, 1));
  font-size: var(--fz-16);
  font-weight: 400;
  line-height: calc(20 * var(--ratio, 1));
}
[data-drupal-messages] .messages--status {
  background-color: var(--color-success);
  border: calc(1 * var(--ratio, 1)) solid var(--color-success);
}
[data-drupal-messages] .messages--warning {
  background-color: var(--color-warning);
  border: calc(1 * var(--ratio, 1)) solid var(--color-warning);
}
[data-drupal-messages] .messages--error {
  background-color: var(--color-error);
  border: calc(1 * var(--ratio, 1)) solid var(--color-error);
}

.ui-widget-overlay.ui-front {
  opacity: 0.5;
}

.ui-dialog.ui-front:not(.ui-dialog-off-canvas) {
  background-color: var(--color-white);
  border-radius: calc(6 * var(--ratio, 1));
  box-shadow: 0 calc(12 * var(--ratio, 1)) calc(32 * var(--ratio, 1)) rgba(0, 0, 0, 0.25);
  overflow: hidden;
}
.ui-dialog.ui-front:not(.ui-dialog-off-canvas) .ui-widget-content.ui-dialog-content {
  padding: calc(20 * var(--ratio, 1)) calc(24 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
}
.ui-dialog.ui-front .ui-dialog-titlebar {
  padding: calc(14 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
  border: 0;
  border-radius: 0;
  background-color: var(--color-primary);
}
.ui-dialog.ui-front .ui-dialog-titlebar .ui-dialog-title {
  margin: 0;
  font-family: var(--ff2);
  font-size: var(--fz-20);
  font-weight: 700;
  color: var(--color-white);
}
.ui-dialog.ui-front .ui-dialog-titlebar .ui-dialog-titlebar-close {
  right: calc(14 * var(--ratio, 1));
  border: 0;
  background: transparent;
}
.ui-dialog.ui-front .ui-button .ui-button-icon {
  transform: translate(0, 0) !important;
}
.ui-dialog.ui-front .ui-dialog-buttonpane {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: calc(10 * var(--ratio, 1));
}
.ui-dialog.ui-front .ui-dialog-buttonpane .ui-dialog-buttonset {
  margin: 0;
}
.ui-dialog.ui-front .ui-dialog-buttonpane .ui-button {
  width: 100%;
  height: 100%;
  background-color: var(--color-primary);
  color: var(--color-white);
  border: none;
}

.btn, .account-delete .button--danger, .btn-container-white-grey-outline a,
.btn-white-grey-outline, .btn-container-white-grey a,
.btn-white-grey, .btn-container-grey-outline a,
.btn-grey-outline,
.account-delete a.button, .btn-container-grey a,
.btn-grey, .btn-container-white-secondary-outline a,
.btn-white-secondary-outline, .btn-container-white-secondary a,
.btn-white-secondary, .btn-container-secondary-outline a,
.btn-secondary-outline, .btn-container-secondary a,
.btn-secondary,
.block-global a,
.region-footer-first .block-global a,
.region-secondary-menu .block-global a,
.bloc-complet.bloc-complet-lien-titre-sous-titre .btn, .btn-container-white-primary-outline a,
.btn-white-primary-outline, .btn-container-white-primary a,
.btn-white-primary, .btn-container-primary-outline a,
.btn-primary-outline, .btn-container-primary a,
.btn-primary,
[type=button],
[type=submit],
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li:last-child a {
  --_color: var(--color, var(--color-white));
  --_bg: var(--bg, var(--color-primary));
  --_hover-bg: var(--hover-bg, color-mix(in oklab, var(--_bg) 80%, var(--color-white)));
  --_hover-color: var(--hover-color, var(--color-white));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: var(--fz-12);
  line-height: 1;
  font-weight: 600;
  font-family: var(--ff1);
  letter-spacing: calc(1 * var(--ratio, 1));
  text-transform: uppercase;
  text-decoration: none;
  color: var(--_color);
  background-color: var(--_bg);
  border-radius: calc(2 * var(--ratio, 1));
  padding: calc(8 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
  gap: calc(3 * var(--ratio, 1));
  border: calc(1 * var(--ratio, 1)) solid var(--_bg);
  transition: all 0.3s ease;
  height: -moz-fit-content;
  height: fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.text-align-center .btn, .text-align-center .account-delete .button--danger, .account-delete .text-align-center .button--danger, .text-align-center .btn-container-white-grey-outline a, .btn-container-white-grey-outline .text-align-center a,
.text-align-center .btn-white-grey-outline, .text-align-center .btn-container-white-grey a, .btn-container-white-grey .text-align-center a,
.text-align-center .btn-white-grey, .text-align-center .btn-container-grey-outline a, .btn-container-grey-outline .text-align-center a,
.text-align-center .btn-grey-outline,
.text-align-center .account-delete a.button,
.account-delete .text-align-center a.button, .text-align-center .btn-container-grey a, .btn-container-grey .text-align-center a,
.text-align-center .btn-grey, .text-align-center .btn-container-white-secondary-outline a, .btn-container-white-secondary-outline .text-align-center a,
.text-align-center .btn-white-secondary-outline, .text-align-center .btn-container-white-secondary a, .btn-container-white-secondary .text-align-center a,
.text-align-center .btn-white-secondary, .text-align-center .btn-container-secondary-outline a, .btn-container-secondary-outline .text-align-center a,
.text-align-center .btn-secondary-outline, .text-align-center .btn-container-secondary a, .btn-container-secondary .text-align-center a,
.text-align-center .btn-secondary,
.text-align-center .block-global a,
.block-global .text-align-center a,
.text-align-center .bloc-complet.bloc-complet-lien-titre-sous-titre .btn,
.bloc-complet.bloc-complet-lien-titre-sous-titre .text-align-center .btn, .text-align-center .btn-container-white-primary-outline a, .btn-container-white-primary-outline .text-align-center a,
.text-align-center .btn-white-primary-outline, .text-align-center .btn-container-white-primary a, .btn-container-white-primary .text-align-center a,
.text-align-center .btn-white-primary, .text-align-center .btn-container-primary-outline a, .btn-container-primary-outline .text-align-center a,
.text-align-center .btn-primary-outline, .text-align-center .btn-container-primary a, .btn-container-primary .text-align-center a,
.text-align-center .btn-primary,
.text-align-center [type=button],
.text-align-center [type=submit],
.text-align-center #page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li:last-child a,
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li:last-child .text-align-center a {
  justify-content: center;
}
.btn:hover, .account-delete .button--danger:hover, .btn-container-white-grey-outline a:hover,
.btn-white-grey-outline:hover, .btn-container-white-grey a:hover,
.btn-white-grey:hover, .btn-container-grey-outline a:hover,
.btn-grey-outline:hover,
.account-delete a.button:hover, .btn-container-grey a:hover,
.btn-grey:hover, .btn-container-white-secondary-outline a:hover,
.btn-white-secondary-outline:hover, .btn-container-white-secondary a:hover,
.btn-white-secondary:hover, .btn-container-secondary-outline a:hover,
.btn-secondary-outline:hover, .btn-container-secondary a:hover,
.btn-secondary:hover,
.block-global a:hover,
.bloc-complet.bloc-complet-lien-titre-sous-titre .btn:hover, .btn-container-white-primary-outline a:hover,
.btn-white-primary-outline:hover, .btn-container-white-primary a:hover,
.btn-white-primary:hover, .btn-container-primary-outline a:hover,
.btn-primary-outline:hover, .btn-container-primary a:hover,
.btn-primary:hover,
[type=button]:hover,
[type=submit]:hover,
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li:last-child a:hover {
  background-color: var(--_hover-bg);
  border-color: var(--_hover-bg);
  color: var(--_hover-color);
}

.bg-color-primary {
  background-color: var(--color-primary);
}

.btn-container-primary a,
.btn-primary,
[type=button],
[type=submit],
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li:last-child a {
  --_bg: var(--color-primary);
}

.btn-container-primary-outline a,
.btn-primary-outline {
  --_bg: transparent;
  --_color: var(--color-primary);
  --_hover-color: var(--color-white);
  --_hover-bg: color-mix(in oklab, var(--color-primary) 80%, var(--color-white));
  border-color: var(--color-primary);
}

.btn-container-white-primary a,
.btn-white-primary {
  --_bg: var(--color-white);
  --_color: var(--color-primary);
  --_hover-color: var(--color-primary);
  --_hover-bg: color-mix(in oklab, var(--color-primary) 15%, var(--color-white));
}

.btn-container-white-primary-outline a,
.btn-white-primary-outline {
  --_bg: transparent;
  --_color: var(--color-white);
  --_hover-color: var(--color-white);
  --_hover-bg: var(--color-primary);
  border-color: var(--color-white);
}

.bg-color-secondary {
  background-color: var(--color-secondary);
}

.btn-container-secondary a,
.btn-secondary,
.block-global a,
.region-footer-first .block-global a,
.region-secondary-menu .block-global a,
.bloc-complet.bloc-complet-lien-titre-sous-titre .btn {
  --_bg: var(--color-secondary);
}

.btn-container-secondary-outline a,
.btn-secondary-outline {
  --_bg: transparent;
  --_color: var(--color-secondary);
  --_hover-color: var(--color-white);
  --_hover-bg: color-mix(in oklab, var(--color-secondary) 80%, var(--color-white));
  border-color: var(--color-secondary);
}

.btn-container-white-secondary a,
.btn-white-secondary {
  --_bg: var(--color-white);
  --_color: var(--color-secondary);
  --_hover-color: var(--color-secondary);
  --_hover-bg: color-mix(in oklab, var(--color-secondary) 15%, var(--color-white));
}

.btn-container-white-secondary-outline a,
.btn-white-secondary-outline {
  --_bg: transparent;
  --_color: var(--color-white);
  --_hover-color: var(--color-white);
  --_hover-bg: var(--color-secondary);
  border-color: var(--color-white);
}

.bg-color-grey {
  background-color: var(--color-grey);
}

.btn-container-grey a,
.btn-grey {
  --_bg: var(--color-grey);
}

.btn-container-grey-outline a,
.btn-grey-outline,
.account-delete a.button {
  --_bg: transparent;
  --_color: var(--color-grey);
  --_hover-color: var(--color-white);
  --_hover-bg: color-mix(in oklab, var(--color-grey) 80%, var(--color-white));
  border-color: var(--color-grey);
}

.btn-container-white-grey a,
.btn-white-grey {
  --_bg: var(--color-white);
  --_color: var(--color-grey);
  --_hover-color: var(--color-grey);
  --_hover-bg: color-mix(in oklab, var(--color-grey) 15%, var(--color-white));
}

.btn-container-white-grey-outline a,
.btn-white-grey-outline {
  --_bg: transparent;
  --_color: var(--color-white);
  --_hover-color: var(--color-white);
  --_hover-bg: var(--color-grey);
  border-color: var(--color-white);
}

.bg-color-warning {
  background-color: var(--color-warning);
}

/* Taille */
.btn-full {
  flex: 1;
}

.btn-100 {
  width: 100%;
}

.btn-sm {
  padding-top: calc(6 * var(--ratio, 1));
  padding-bottom: calc(6 * var(--ratio, 1));
}

.btn-md {
  padding-top: calc(8 * var(--ratio, 1));
  padding-bottom: calc(8 * var(--ratio, 1));
}

.btn-lg {
  padding-top: calc(10 * var(--ratio, 1));
  padding-bottom: calc(10 * var(--ratio, 1));
}

.btn-xl {
  padding-top: calc(17 * var(--ratio, 1));
  padding-bottom: calc(17 * var(--ratio, 1));
}

.btn-size-sm {
  padding-left: calc(10 * var(--ratio, 1));
  padding-right: calc(10 * var(--ratio, 1));
}

.btn-size-md {
  padding-left: calc(12 * var(--ratio, 1));
  padding-right: calc(12 * var(--ratio, 1));
}

.btn-size-lg {
  padding-left: calc(28 * var(--ratio, 1));
  padding-right: calc(28 * var(--ratio, 1));
}

.btn-size-xl {
  padding-left: calc(36 * var(--ratio, 1));
  padding-right: calc(36 * var(--ratio, 1));
}

.nav-link, .nav-link-back {
  font-size: var(--fz-14);
  color: var(--color-grey);
  text-transform: uppercase;
  font-weight: 600;
  font-family: var(--ff2);
  text-decoration: none;
}
.nav-link:hover, .nav-link-back:hover {
  color: var(--var--black);
}

.nav-link-back {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: calc(2 * var(--ratio, 1));
}
.nav-link-back::before {
  content: "←";
}

html {
  font-size: calc(16 * var(--ratio, 1));
}
html body {
  -webkit-tap-highlight-color: transparent;
  margin: 0;
  padding: 0;
  background-color: var(--color-white);
  font-size: var(--fz-16);
  font-family: var(--ff1);
  color: var(--color-black);
}

#page-wrapper {
  position: relative;
  width: 100%;
}
#page-wrapper div.overlay {
  display: none;
  pointer-events: none;
  position: sticky;
  top: var(--drupal-displace-offset-top, 0);
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  opacity: 0;
  transition: all 0.3s ease;
}
#page-wrapper.menu-open .region-mobile-menu {
  transform: translateX(0);
  overflow: auto;
}
#page-wrapper.menu-open #page {
  transition: all 0.3s ease;
  transform: translateX(-50vw);
}
@media screen and (max-width: 640px) {
  #page-wrapper.menu-open #page {
    transform: translateX(-90vw);
  }
}
#page-wrapper.menu-open div.overlay {
  display: block;
  pointer-events: all;
  opacity: 1;
}
#page-wrapper .region-mobile-menu {
  position: fixed;
  top: var(--drupal-displace-offset-top, 0);
  bottom: 0;
  right: 0;
  width: 50vw;
  height: 100vh;
  background-color: var(--color-blue-dark);
  z-index: 2000;
  transform: translateX(100%);
  transition: all 0.3s ease;
}
@media screen and (max-width: 640px) {
  #page-wrapper .region-mobile-menu {
    width: 90vw;
  }
}
#page-wrapper .region-mobile-menu.is-active {
  transform: translateX(0);
}
#page-wrapper .region-mobile-menu nav > ul > li {
  background-color: var(--color-blue-dark);
  margin: 0;
}
#page-wrapper .region-mobile-menu nav > ul > li > span,
#page-wrapper .region-mobile-menu nav > ul > li > a {
  color: var(--color-white);
  padding: calc(10 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  display: block;
  border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-blue-dark);
}
#page-wrapper .region-mobile-menu nav > ul > li > ul > li {
  margin: 0;
  background-color: var(--color-blue-dark-light);
  padding-left: calc(20 * var(--ratio, 1));
  border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-blue-dark);
}
#page-wrapper .region-mobile-menu nav > ul > li > ul > li a {
  color: var(--color-white);
  padding: calc(10 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  display: block;
}

#page {
  transition: all 0.3s ease;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr auto;
  grid-template-areas: "header" "main" "footer";
  margin: 0 auto;
  padding: 0;
  min-height: 100vh;
  width: 100%;
}
#page > header {
  position: sticky;
  top: var(--drupal-displace-offset-top, 0);
  z-index: 100;
  grid-area: header;
  width: 100%;
  margin: 0 auto;
  background-color: var(--color-white);
  transition: padding-top 0.3s ease;
}
#page-wrapper.search-open #page > header {
  padding-top: calc(48 * var(--ratio, 1));
}
#page > header .site-header__fixable {
  width: 100%;
}
#page > header .site-header__fixable #header-nav .primary-menu-container {
  background-color: var(--color-white);
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: calc(35 * var(--ratio, 1));
  max-width: var(--max-width);
  padding-left: var(--inline-padding);
  padding-right: var(--inline-padding);
  padding-top: calc(16 * var(--ratio, 1));
  padding-bottom: calc(16 * var(--ratio, 1));
  margin: 0 auto calc(10 * var(--ratio, 1));
  height: calc(80 * var(--ratio, 1));
}
@media screen and (min-width: 1025px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container {
    gap: clamp(20px, 4vw - 21px, 35px);
  }
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container {
    height: calc(58 * var(--ratio, 1));
    padding: calc(12 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container {
    height: calc(52 * var(--ratio, 1));
    padding: 0 calc(16 * var(--ratio, 1));
  }
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container {
    margin: 0 auto;
  }
}
#page > header .site-header__fixable #header-nav .primary-menu-container .logo-link {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 100%;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .logo-link .logo {
  height: calc(50 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .logo-link .logo {
    height: calc(34 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .logo-link .logo {
    height: auto;
    width: calc(97 * var(--ratio, 1));
  }
}
#page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: calc(2 * var(--ratio, 1));
}
#page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons a {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  color: var(--color-primary);
  width: calc(48 * var(--ratio, 1));
  height: calc(48 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons a {
    width: calc(38 * var(--ratio, 1));
    height: calc(38 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons a {
    width: calc(36 * var(--ratio, 1));
    height: calc(36 * var(--ratio, 1));
  }
}
#page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons a svg {
  width: calc(30 * var(--ratio, 1));
  height: calc(30 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons a svg {
    width: calc(20 * var(--ratio, 1));
    height: calc(20 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons a svg {
    width: calc(18 * var(--ratio, 1));
    height: calc(18 * var(--ratio, 1));
  }
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons a.btn-menu svg {
    width: calc(54 * var(--ratio, 1));
    height: calc(54 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .mobile-buttons a.btn-menu svg {
    width: calc(26 * var(--ratio, 1));
    height: calc(26 * var(--ratio, 1));
  }
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: calc(30 * var(--ratio, 1));
  width: 100%;
}
@media screen and (min-width: 1025px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu {
    gap: clamp(16px, 3.7333333333vw - 22.2666666667px, 30px);
  }
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu {
    justify-content: center;
  }
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu > nav {
  flex: 0 0 auto;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu > [\:has\(\%3E\%20.search-block-form\)] {
  flex: 0 1 calc(300 * var(--ratio, 1));
  min-width: 0;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu > :has(> .search-block-form) {
  flex: 0 1 calc(300 * var(--ratio, 1));
  min-width: 0;
}
@media screen and (min-width: 1025px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu > [\:has\(\%3E\%20.search-block-form\)] {
    min-width: calc(48 * var(--ratio, 1));
  }
  #page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu > :has(> .search-block-form) {
    min-width: calc(48 * var(--ratio, 1));
  }
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: clamp(6px, 5.0666666667vw - 45.9333333333px, 25px);
  text-transform: uppercase;
}
[dir="ltr"] #page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li{
  padding-left: clamp(5px, 1.6vw - 11.4px, 11px);
  padding-right: clamp(4px, 1.6vw - 12.4px, 10px);
}
[dir="rtl"] #page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li{
  padding-right: clamp(5px, 1.6vw - 11.4px, 11px);
  padding-left: clamp(4px, 1.6vw - 12.4px, 10px);
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li {
  position: relative;
  padding-top: calc(10 * var(--ratio, 1));
  padding-bottom: calc(10 * var(--ratio, 1));
  border-left: 1px solid transparent;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li > span,
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li a {
  color: var(--color-primary);
  font-size: var(--fz-14);
  font-weight: 400;
  line-height: calc(20 * var(--ratio, 1));
  white-space: nowrap;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li > span.is-active,
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li a.is-active {
  color: var(--color-secondary);
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li:hover {
  border-left: 1px solid var(--color-primary);
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li:hover > a {
  color: var(--color-secondary);
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li:hover > ul {
  display: block !important;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li:hover > ul {
  z-index: 1000;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li > ul:not(.contextual-links) {
  display: none;
  margin-left: calc(-11 * var(--ratio, 1));
  width: -moz-max-content;
  width: max-content;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: var(--color-white);
  padding: 0 calc(10 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
  border-radius: 5px;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .region-primary-menu ul:not(.contextual-links) > li > ul:not(.contextual-links) li {
  border-left: 1px solid var(--color-primary);
  padding: 10px 10px 10px 9px;
  display: flex;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form {
  gap: 10px;
  width: 100%;
  max-width: calc(300 * var(--ratio, 1));
  border: none;
  position: relative;
}
@media screen and (max-width: 640px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    max-width: none;
    height: calc(48 * var(--ratio, 1));
    transform: translateY(-100%);
    transition: all 0.3s ease;
  }
  body #page-wrapper.search-open #page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form {
    transform: translateY(0);
  }
}
#page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input {
  width: 100%;
  height: calc(48 * var(--ratio, 1));
  background-color: var(--color-grey-light);
  color: var(--color-black);
  border: none;
  padding: calc(14 * var(--ratio, 1)) calc(48 * var(--ratio, 1)) calc(14 * var(--ratio, 1)) calc(18 * var(--ratio, 1));
  border-radius: calc(50 * var(--ratio, 1));
  border: none;
  font-size: var(--fz-12);
  font-weight: 400;
  text-overflow: ellipsis;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input::-moz-placeholder {
  content: "Rechercher";
  color: var(--color-grey-dark-2);
}
#page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input::placeholder {
  content: "Rechercher";
  color: var(--color-grey-dark-2);
}
#page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input:focus, #page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input:active, #page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input.focus-visible {
  outline: none;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input:focus, #page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input:active, #page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input:focus-visible {
  outline: none;
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .js-form-item input {
    height: calc(35 * var(--ratio, 1));
    padding: calc(9 * var(--ratio, 1)) calc(24 * var(--ratio, 1)) calc(9 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  }
}
#page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .form-actions {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
}
#page > header .site-header__fixable #header-nav .primary-menu-container .search-block-form .form-actions input[type=submit] {
  opacity: 0.6;
  cursor: pointer;
  background-image: url("../images/svg/search.svg");
  background-repeat: no-repeat;
  background-size: calc(16 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  background-position: center;
  background-color: transparent;
  border: none;
  width: calc(48 * var(--ratio, 1));
  height: calc(48 * var(--ratio, 1));
  font-size: 0;
  padding: 0;
}
#page > header .site-header__fixable #header-nav .secondary-menu-container {
  background-color: var(--color-primary);
  grid-area: secondary-menu;
  color: var(--color-white);
}
#page > header .site-header__fixable #header-nav .secondary-menu-container .region-secondary-menu {
  height: calc(60 * var(--ratio, 1));
  max-width: var(--max-width);
  padding-left: calc(16 * var(--ratio, 1));
  padding-right: calc(16 * var(--ratio, 1));
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  width: 100dvw;
}
@media screen and (max-width: 1024px) {
  #page > header .site-header__fixable #header-nav .secondary-menu-container .region-secondary-menu {
    height: calc(46 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  #page > header .site-header__fixable #header-nav .secondary-menu-container .region-secondary-menu {
    height: calc(60 * var(--ratio, 1));
    justify-content: center;
  }
}
#page #main-wrapper {
  grid-area: main;
  max-width: var(--max-width);
  width: 100%;
  margin: 0 auto;
  padding-left: var(--inline-padding);
  padding-right: var(--inline-padding);
}
#page #main-wrapper .region-highlighted {
  padding: var(--inline-padding);
}
#page #main-wrapper .region-highlighted .contextual-region > ul {
  display: flex;
  flex-direction: row;
  justify-content: space-flex-start;
  align-items: center;
  gap: calc(6 * var(--ratio, 1));
}
#page #main-wrapper .region-highlighted .contextual-region > ul > li {
  display: flex;
}
#page #main-wrapper .region-highlighted .contextual-region > ul > li a {
  font-size: var(--fz-14);
  font-weight: 400;
  line-height: calc(20 * var(--ratio, 1));
  color: var(--color-primary);
  border: calc(1 * var(--ratio, 1)) solid var(--color-primary);
  padding: calc(10 * var(--ratio, 1)) calc(10 * var(--ratio, 1)) calc(10 * var(--ratio, 1)) calc(11 * var(--ratio, 1));
  border-radius: calc(4 * var(--ratio, 1));
}
#page #main-wrapper .region-highlighted .contextual-region > ul > li:hover > a {
  color: var(--color-secondary);
}
#page #main-wrapper .sidebar-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-template-areas: "content";
  grid-gap: calc(16 * var(--ratio, 1)) calc(36 * var(--ratio, 1));
  gap: calc(16 * var(--ratio, 1)) calc(36 * var(--ratio, 1));
  max-width: var(--max-width);
  overflow: hidden;
  margin-top: var(--inline-padding);
  margin-bottom: var(--inline-padding);
}
#page #main-wrapper .sidebar-grid.has-sidebar-right {
  grid-template-areas: "content sidebar-right";
  grid-template-columns: 1fr auto;
}
@media screen and (max-width: 1024px) {
  #page #main-wrapper .sidebar-grid.has-sidebar-right {
    grid-template-columns: 1fr;
    grid-template-areas: "content";
  }
}
#page #main-wrapper .sidebar-grid.has-sidebar-left {
  grid-template-areas: "sidebar-left content";
  grid-template-columns: auto 1fr;
}
@media screen and (max-width: 1024px) {
  #page #main-wrapper .sidebar-grid.has-sidebar-left {
    grid-template-columns: 1fr;
    grid-template-areas: "content";
  }
}
#page #main-wrapper .sidebar-grid.has-sidebar-right.has-sidebar-left {
  grid-template-areas: "sidebar-left content sidebar-right";
  grid-template-columns: auto 1fr auto;
}
@media screen and (max-width: 1024px) {
  #page #main-wrapper .sidebar-grid.has-sidebar-right.has-sidebar-left {
    grid-template-columns: 1fr;
    grid-template-areas: "content";
  }
}
#page #main-wrapper .sidebar-grid .region-sidebar-left {
  container-type: inline-size;
  grid-area: sidebar-left;
  width: calc(450 * var(--ratio, 1));
}
.path--boutique #page #main-wrapper .sidebar-grid .region-sidebar-left {
  width: calc(225 * var(--ratio, 1));
}
#page #main-wrapper .sidebar-grid .region-sidebar-left:empty {
  display: none;
}
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav {
  padding: calc(20 * var(--ratio, 1));
  border: calc(1 * var(--ratio, 1)) solid var(--color-primary);
}
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav h2 {
  text-align: center;
}
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul {
  margin: 0;
  padding: 0;
}
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li {
  border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-primary);
}
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li a {
  display: block;
  width: 100%;
  padding: calc(12 * var(--ratio, 1)) calc(10 * var(--ratio, 1)) calc(11 * var(--ratio, 1)) 0;
  color: var(--color-primary);
  font-size: var(--fz-14);
  font-weight: 400;
  line-height: calc(20 * var(--ratio, 1));
}
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li a.is-active {
  font-weight: 700;
}
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li:last-child {
  border-bottom: none;
}
#page #main-wrapper .sidebar-grid .region-sidebar-left > nav > ul > li:last-child a {
  width: 100%;
  margin-top: calc(16 * var(--ratio, 1));
}
#page #main-wrapper .sidebar-grid .region-sidebar-right {
  container-type: inline-size;
  grid-area: sidebar-right;
  width: 282px;
  display: flex;
  flex-direction: column;
  gap: calc(48 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  #page #main-wrapper .sidebar-grid .region-sidebar-right {
    display: none;
  }
}
#page #main-wrapper .sidebar-grid .region-content {
  container-type: inline-size;
  grid-area: content;
  width: auto;
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--ratio, 1));
}
#page #main-wrapper .sidebar-grid .region-content img {
  max-width: 100%;
  display: block;
}
#page > footer {
  width: 100%;
  grid-area: footer;
  margin: calc(20 * var(--ratio, 1)) auto 0;
  padding-top: calc(36 * var(--ratio, 1));
  background-color: var(--color-grey-light);
}
#page > footer .site-footer__inner {
  max-width: var(--max-width);
  margin: 0 auto;
  padding-left: var(--inline-padding);
  padding-right: var(--inline-padding);
  display: grid;
  grid-template-columns: 300px 1fr;
  grid-template-rows: auto;
  grid-gap: calc(100 * var(--ratio, 1));
  gap: calc(100 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  #page > footer .site-footer__inner {
    grid-template-columns: 1fr;
    gap: calc(36 * var(--ratio, 1));
  }
}
#page > footer .site-footer__inner > div > nav {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  color: var(--color-primary);
  font-size: var(--fz-14);
  gap: 16px;
}
#page > footer .site-footer__inner > div > nav > ul {
  display: contents;
}
#page > footer .site-footer__inner .region-footer-first {
  container-type: inline-size;
  display: flex;
  flex-direction: column;
  gap: calc(42 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  #page > footer .site-footer__inner .region-footer-first {
    display: none;
  }
}
#page > footer .region-footer-above {
  max-width: var(--max-width);
  margin: 0 auto;
  padding-left: var(--inline-padding);
  padding-right: var(--inline-padding);
  padding-bottom: calc(46 * var(--ratio, 1));
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: calc(24 * var(--ratio, 1));
  gap: calc(24 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  #page > footer .region-footer-above {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(12 * var(--ratio, 1));
  }
}
#page > footer .region-footer-below {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  color: #fff;
  font-size: var(--fz-12);
  font-weight: 300;
  color: var(--color-grey);
  gap: calc(4 * var(--ratio, 1));
  max-width: var(--max-width);
  margin: calc(42 * var(--ratio, 1)) auto;
  padding-left: var(--inline-padding);
  padding-right: var(--inline-padding);
}
@media screen and (max-width: 640px) {
  #page > footer .region-footer-below {
    flex-wrap: wrap;
  }
  #page > footer .region-footer-below > nav {
    display: contents;
  }
  #page > footer .region-footer-below > nav > ul {
    display: contents !important;
  }
}
#page > footer .region-footer-below nav > ul {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  color: var(--color-grey);
  gap: calc(2 * var(--ratio, 1));
}
#page > footer .region-footer-below nav > ul > li {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: calc(2 * var(--ratio, 1));
}
#page > footer .region-footer-below nav > ul > li:before {
  content: ".";
}
#page > footer .region-footer-below nav > ul > li:after {
  content: "";
}
#page > footer .region-footer-below nav > ul > li:last-child:after {
  content: ".";
}
#page > footer .region-footer-below nav > ul > li a {
  text-decoration: underline;
  transition: all 0.3s ease;
}
#page > footer .region-footer-below nav > ul > li a:hover {
  color: var(--color-secondary);
}
#page > footer .site-footer__inner .links-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: auto;
  grid-gap: calc(100 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
  gap: calc(100 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  #page > footer .site-footer__inner .links-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: calc(36 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
    gap: calc(36 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
  }
}
#page > footer .site-footer__inner .links-grid .region-footer-shared {
  grid-column: span 4;
}
@media screen and (max-width: 640px) {
  #page > footer .site-footer__inner .links-grid .region-footer-shared {
    grid-column: span 2;
  }
}
#page > footer .site-footer__inner .links-grid .region-footer-second nav,
#page > footer .site-footer__inner .links-grid .region-footer-third nav,
#page > footer .site-footer__inner .links-grid .region-footer-fourth nav,
#page > footer .site-footer__inner .links-grid .region-footer-fifth nav {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: calc(35 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  #page > footer .site-footer__inner .links-grid .region-footer-second nav,
  #page > footer .site-footer__inner .links-grid .region-footer-third nav,
  #page > footer .site-footer__inner .links-grid .region-footer-fourth nav,
  #page > footer .site-footer__inner .links-grid .region-footer-fifth nav {
    gap: calc(12 * var(--ratio, 1));
  }
}
#page > footer .site-footer__inner .links-grid .region-footer-second nav h2,
#page > footer .site-footer__inner .links-grid .region-footer-third nav h2,
#page > footer .site-footer__inner .links-grid .region-footer-fourth nav h2,
#page > footer .site-footer__inner .links-grid .region-footer-fifth nav h2 {
  text-transform: uppercase;
  font-size: var(--fz-16);
  color: var(--color-primary);
  font-weight: 500;
  line-height: calc(22 * var(--ratio, 1));
}
#page > footer .site-footer__inner .links-grid .region-footer-second nav > ul,
#page > footer .site-footer__inner .links-grid .region-footer-third nav > ul,
#page > footer .site-footer__inner .links-grid .region-footer-fourth nav > ul,
#page > footer .site-footer__inner .links-grid .region-footer-fifth nav > ul {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: calc(35 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  #page > footer .site-footer__inner .links-grid .region-footer-second nav > ul,
  #page > footer .site-footer__inner .links-grid .region-footer-third nav > ul,
  #page > footer .site-footer__inner .links-grid .region-footer-fourth nav > ul,
  #page > footer .site-footer__inner .links-grid .region-footer-fifth nav > ul {
    gap: calc(12 * var(--ratio, 1));
  }
}
#page > footer .site-footer__inner .links-grid .region-footer-second nav > ul > li > a,
#page > footer .site-footer__inner .links-grid .region-footer-third nav > ul > li > a,
#page > footer .site-footer__inner .links-grid .region-footer-fourth nav > ul > li > a,
#page > footer .site-footer__inner .links-grid .region-footer-fifth nav > ul > li > a {
  font-size: var(--fz-16);
  line-height: calc(22 * var(--ratio, 1));
  color: var(--color-black);
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.3s ease;
}
#page > footer .site-footer__inner .links-grid .region-footer-second nav > ul > li > a:hover,
#page > footer .site-footer__inner .links-grid .region-footer-third nav > ul > li > a:hover,
#page > footer .site-footer__inner .links-grid .region-footer-fourth nav > ul > li > a:hover,
#page > footer .site-footer__inner .links-grid .region-footer-fifth nav > ul > li > a:hover {
  color: var(--color-secondary);
}

.grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto;
  grid-gap: calc(24 * var(--ratio, 1));
  gap: calc(24 * var(--ratio, 1));
}
.grid-2.grid-align-center {
  align-items: flex-start;
  justify-content: center;
  gap: 0;
}
.grid-2.grid-align-center > * {
  border-right: 1px solid var(--color-grey-medium-2);
}
.grid-2.grid-align-center > *:last-child {
  border-right: none;
}

.pager__items {
  width: 100%;
  border: 1px solid var(--color-grey-medium-2);
  padding: 6px;
  border-radius: 0;
  font-size: var(--fz-16);
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: calc(6 * var(--ratio, 1));
}
.pager__items .pager__item {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.pager__items .pager__item.pager__item--previous + .pager__item {
  margin-left: auto;
}
.pager__items .pager__item.pager__item--previous + .pager__item--ellipsis {
  margin-right: 0;
}
.pager__items .pager__item:first-child:not(.pager__item--first) {
  margin-left: auto;
}
.pager__items .pager__item.pager__item--ellipsis, .pager__items .pager__item:last-child:not(.pager__item--last) {
  margin-right: auto;
}
.pager__items .pager__item:not(.pager__item--ellipsis) + .pager__item--next {
  margin-left: auto;
}
.pager__items .pager__item a {
  color: var(--color-grey-dark);
  padding: calc(12 * var(--ratio, 1)) calc(12 * var(--ratio, 1)) calc(12 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .pager__items .pager__item a {
    padding: calc(12 * var(--ratio, 1)) calc(6 * var(--ratio, 1)) calc(12 * var(--ratio, 1)) calc(6 * var(--ratio, 1));
  }
}
.pager__items .pager__item.pager__item--ellipsis {
  color: var(--color-grey-dark);
}
.pager__items .pager__item.is-active a {
  color: var(--color-black);
}
.pager__items .pager__item--first a,
.pager__items .pager__item--previous a,
.pager__items .pager__item--last a,
.pager__items .pager__item--next a {
  display: flex;
  background-color: var(--color-grey-dark);
  -webkit-mask-image: url("../images/svg/font/arrow-l.svg");
          mask-image: url("../images/svg/font/arrow-l.svg");
  -webkit-mask-size: calc(12 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
          mask-size: calc(12 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  width: calc(40 * var(--ratio, 1));
  height: calc(10 * var(--ratio, 1));
  flex: 0 0 calc(40 * var(--ratio, 1));
}
.pager__items .pager__item--first a span,
.pager__items .pager__item--previous a span,
.pager__items .pager__item--last a span,
.pager__items .pager__item--next a span {
  display: none;
}
.pager__items .pager__item--first.pager__item--last a, .pager__items .pager__item--first.pager__item--next a,
.pager__items .pager__item--previous.pager__item--last a,
.pager__items .pager__item--previous.pager__item--next a,
.pager__items .pager__item--last.pager__item--last a,
.pager__items .pager__item--last.pager__item--next a,
.pager__items .pager__item--next.pager__item--last a,
.pager__items .pager__item--next.pager__item--next a {
  transform: rotate(180deg);
}
.pager__items .pager__item--first.pager__item--first,
.pager__items .pager__item--previous.pager__item--first,
.pager__items .pager__item--last.pager__item--first,
.pager__items .pager__item--next.pager__item--first {
  border-right: 1px solid var(--color-grey-medium-2);
}
.pager__items .pager__item--first.pager__item--last,
.pager__items .pager__item--previous.pager__item--last,
.pager__items .pager__item--last.pager__item--last,
.pager__items .pager__item--next.pager__item--last {
  border-left: 1px solid var(--color-grey-medium-2);
}
.pager__items .pager__item--first.pager__item--next a, .pager__items .pager__item--first.pager__item--previous a,
.pager__items .pager__item--previous.pager__item--next a,
.pager__items .pager__item--previous.pager__item--previous a,
.pager__items .pager__item--last.pager__item--next a,
.pager__items .pager__item--last.pager__item--previous a,
.pager__items .pager__item--next.pager__item--next a,
.pager__items .pager__item--next.pager__item--previous a {
  -webkit-mask-image: url("../images/svg/font/chevron-l.svg");
          mask-image: url("../images/svg/font/chevron-l.svg");
}

#block-multicoques-custom-primary-local-tasks {
  position: fixed;
  bottom: 10px;
  left: calc(var(--gin-toolbar-x-offset, 0) + 10px);
  z-index: 1000;
}
#block-multicoques-custom-primary-local-tasks li a {
  background-color: var(--color-white);
}

@media screen and (max-width: 640px) {
  .views-element-container .header-border {
    gap: calc(12 * var(--ratio, 1));
  }
}
.views-element-container .header-border header {
  border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
}
@media screen and (max-width: 640px) {
  .views-element-container .header-border header {
    border-bottom: none;
  }
}
.views-element-container .item-list {
  width: 100%;
}
@media screen and (max-width: 640px) {
  .views-element-container .item-list .grid-2 {
    grid-template-columns: 1fr;
  }
}

.swiper-wrapper .swiper-slide {
  container-type: inline-size;
}

.region-content-above .ad-block {
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin: 0 auto;
}
@media screen and (max-width: 640px) {
  .region-content-above .ad-block {
    max-width: 100%;
  }
  .region-content-above .ad-block img {
    width: 100%;
    height: auto;
  }
}

.region-content > .main-title h1 {
  font-family: var(--ff2);
  font-size: var(--fz-20);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-title, var(--color-primary));
}

.region-content .ad-block {
  max-width: calc(812 * var(--ratio, 1));
  margin: calc(48 * var(--ratio, 1)) auto calc(24 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .region-content .ad-block {
    max-width: 100%;
  }
  .region-content .ad-block img {
    width: 100%;
    height: auto;
  }
}

.region-sidebar-right .ad-block {
  max-width: calc(282 * var(--ratio, 1));
  padding: calc(16 * var(--ratio, 1));
  margin-bottom: 0;
  background-color: var(--color-grey-light);
}
.region-sidebar-right .ad-block img {
  width: 100%;
  height: auto;
}
.region-sidebar-right .ad-block iframe {
  max-width: 100%;
}

[id^=block-multicoques-custom-vogueavecmoi] .ad-block {
  padding: 0;
  background-color: transparent;
}
[id^=block-multicoques-custom-vogueavecmoi] .ad-block iframe {
  display: block;
  width: calc(300 * var(--ratio, 1));
  max-width: 100%;
  zoom: 0.94;
}

.bloc_old_abo_app {
  grid-template-columns: calc(482 * var(--ratio, 1)) max-content !important;
}

.bloc_old_abo_app {
  justify-content: center;
  margin-bottom: calc(24 * var(--ratio, 1));
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 640px) {
  .bloc_old_abo_app {
    grid-template-columns: 1fr !important;
    padding: calc(24 * var(--ratio, 1)) !important;
  }
}

.block-reseaux {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: calc(10 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .block-reseaux {
    gap: calc(4 * var(--ratio, 1));
  }
}
.block-reseaux a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(30 * var(--ratio, 1));
  height: calc(30 * var(--ratio, 1));
  border-radius: 50%;
  color: var(--color-white);
  transition: all 0.3s ease;
}
.block-reseaux a:hover {
  color: var(--color-secondary);
}
.block-reseaux a svg {
  width: calc(20 * var(--ratio, 1));
  height: calc(20 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .block-reseaux a svg {
    width: calc(18 * var(--ratio, 1));
    height: calc(18 * var(--ratio, 1));
  }
}
@media screen and (max-width: 1024px) {
  .block-reseaux a {
    width: calc(28 * var(--ratio, 1));
    height: calc(28 * var(--ratio, 1));
  }
}
header .block-reseaux a {
  width: calc(40 * var(--ratio, 1));
  height: calc(40 * var(--ratio, 1));
  padding: calc(10 * var(--ratio, 1));
}

footer .block-reseaux {
  gap: calc(30 * var(--ratio, 1));
  justify-content: flex-end;
}
@media screen and (max-width: 640px) {
  footer .block-reseaux {
    justify-content: center;
  }
}
footer .block-reseaux a {
  color: var(--color-primary);
}
footer .block-reseaux a svg {
  height: calc(30 * var(--ratio, 1));
  width: calc(30 * var(--ratio, 1));
}

.block-min-menu {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .block-min-menu {
    background-color: var(--color-white);
  }
}
.block-min-menu a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: calc(8 * var(--ratio, 1));
  padding-right: calc(8 * var(--ratio, 1));
  width: calc(30 * var(--ratio, 1));
  height: calc(30 * var(--ratio, 1));
  border-left: 1px solid var(--color-white);
  position: relative;
}
.block-min-menu a:first-child {
  border-left: none;
}
.block-min-menu .cart-count {
  position: absolute;
  top: calc(-4 * var(--ratio, 1));
  right: calc(-2 * var(--ratio, 1));
  background-color: var(--color-primary);
  color: var(--color-white);
  font-size: calc(9 * var(--ratio, 1));
  font-weight: 700;
  line-height: 1;
  min-width: calc(16 * var(--ratio, 1));
  height: calc(16 * var(--ratio, 1));
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.region-mobile-menu .block-min-menu {
  height: calc(82 * var(--ratio, 1));
  justify-content: space-around;
}
@media screen and (max-width: 1024px) {
  .region-mobile-menu .block-min-menu {
    height: calc(62 * var(--ratio, 1));
  }
}
.region-mobile-menu .block-min-menu a {
  width: calc(40 * var(--ratio, 1));
  height: calc(40 * var(--ratio, 1));
  color: var(--color-primary);
}
.region-mobile-menu .block-min-menu a svg {
  width: calc(20 * var(--ratio, 1));
  height: calc(20 * var(--ratio, 1));
}

.block-min-menu .lang-switcher {
  position: relative;
  display: flex;
  align-items: center;
}
.block-min-menu .lang-switcher__toggle {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(30 * var(--ratio, 1));
  height: calc(30 * var(--ratio, 1));
  padding-left: calc(8 * var(--ratio, 1));
  padding-right: calc(8 * var(--ratio, 1));
  border-left: 1px solid var(--color-white);
}
.block-min-menu .lang-switcher__toggle::-webkit-details-marker {
  display: none;
}
.block-min-menu .lang-switcher__toggle svg {
  display: block;
  width: calc(22 * var(--ratio, 1));
  height: auto;
}
.block-min-menu .lang-switcher__code {
  font-size: calc(11 * var(--ratio, 1));
  font-weight: 700;
  text-transform: uppercase;
}
.block-min-menu .lang-switcher__list {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 100;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: calc(4 * var(--ratio, 1));
  margin: 0;
  padding: calc(6 * var(--ratio, 1));
  list-style: none;
  background-color: var(--color-white);
  border-radius: calc(4 * var(--ratio, 1));
  box-shadow: 0 calc(4 * var(--ratio, 1)) calc(12 * var(--ratio, 1)) rgba(0, 0, 0, 0.15);
}
.block-min-menu .lang-switcher__item {
  position: relative;
}
.block-min-menu .lang-switcher__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  padding: calc(4 * var(--ratio, 1));
  border-left: none;
  border-radius: calc(3 * var(--ratio, 1));
}
.block-min-menu .lang-switcher__item a:hover {
  background-color: var(--color-light, #f2f2f2);
}
.block-min-menu .lang-switcher__item:hover .lang-switcher__name, .block-min-menu .lang-switcher__item a.focus-visible .lang-switcher__name {
  opacity: 1;
  visibility: visible;
}
.block-min-menu .lang-switcher__item:hover .lang-switcher__name, .block-min-menu .lang-switcher__item a:focus-visible .lang-switcher__name {
  opacity: 1;
  visibility: visible;
}
.block-min-menu .lang-switcher__flag svg {
  display: block;
  width: calc(22 * var(--ratio, 1));
  height: auto;
  border-radius: calc(2 * var(--ratio, 1));
}
.block-min-menu .lang-switcher__item.is-active .lang-switcher__flag svg {
  outline: calc(2 * var(--ratio, 1)) solid var(--color-primary);
  outline-offset: calc(1 * var(--ratio, 1));
}
.block-min-menu .lang-switcher__name {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-top: calc(4 * var(--ratio, 1));
  padding: calc(2 * var(--ratio, 1)) calc(6 * var(--ratio, 1));
  white-space: nowrap;
  font-size: calc(11 * var(--ratio, 1));
  color: var(--color-text, #222);
  background-color: var(--color-white);
  border-radius: calc(3 * var(--ratio, 1));
  box-shadow: 0 calc(2 * var(--ratio, 1)) calc(6 * var(--ratio, 1)) rgba(0, 0, 0, 0.15);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.12s ease;
}

.block-global {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: calc(10 * var(--ratio, 1));
}
.block-global a {
  display: flex;
}

.region-footer-first .block-global {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: calc(10 * var(--ratio, 1));
}
.region-secondary-menu .block-global {
  display: grid;
  grid-template-columns: min-content 1fr;
  grid-auto-rows: min-content;
  align-items: start;
  justify-content: center;
  grid-gap: 0 calc(10 * var(--ratio, 1));
  gap: 0 calc(10 * var(--ratio, 1));
}
.region-secondary-menu .block-global h3 {
  grid-column: 2;
  grid-row: 2;
}
.region-secondary-menu .block-global h4 {
  grid-column: 2;
  grid-row: 1;
}
.region-secondary-menu .block-global a {
  grid-column: 1;
  grid-row: 1/span 2;
  align-self: center;
}

.bloc-complet img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
.bloc-complet .content {
  font-size: var(--fz-16);
  line-height: calc(22 * var(--ratio, 1));
  font-weight: 500;
  color: var(--color-black);
  margin-bottom: calc(12 * var(--ratio, 1));
}
.bloc-complet.bloc-complet-default {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: calc(24 * var(--ratio, 1));
  margin-bottom: calc(24 * var(--ratio, 1));
  padding-top: calc(24 * var(--ratio, 1));
  padding-bottom: calc(24 * var(--ratio, 1));
  margin-left: calc(50% + 24 * var(--ratio, 1));
}
.bloc-complet.bloc-complet-default img {
  height: 100% !important;
}
.bloc-complet.bloc-complet-default img {
  position: absolute;
  top: 50%;
  bottom: 0;
  left: 0%;
  transform: translateX(calc(-100% - 24 * var(--ratio, 1))) translateY(-50%);
  width: auto;
  max-height: calc(400 * var(--ratio, 1));
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.bloc-complet.bloc-complet-default > :not(img) {
  width: 100%;
}
@container (width <= 300px) {
  .bloc-complet.bloc-complet-default {
    display: block;
    margin-left: 0;
    margin-left: initial;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
    margin-bottom: 0;
  }
  .bloc-complet.bloc-complet-default img {
    height: auto !important;
  }
  .bloc-complet.bloc-complet-default img {
    position: relative;
    top: auto;
    top: initial;
    right: auto;
    right: initial;
    bottom: auto;
    bottom: initial;
    left: auto;
    left: initial;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    transform: initial;
    transform: none;
  }
  .bloc-complet.bloc-complet-default .btn-container-secondary a {
    width: 100%;
    flex: 1;
  }
}
.bloc-complet.bloc-complet-fond-colore {
  --color-headline: var(--color-white);
  --color-title: var(--color-white);
  --color-body: var(--color-white);
  background-color: var(--color-secondary);
  color: var(--color-white);
  position: relative;
  padding: calc(24 * var(--ratio, 1)) calc(50 * var(--ratio, 1));
  background-image: ellipse(89% 134% at 267px 189px);
  background-size: calc(330 * var(--ratio, 1)) auto;
  background-repeat: no-repeat;
  background-position: bottom right;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  grid-gap: calc(24 * var(--ratio, 1));
  gap: calc(24 * var(--ratio, 1));
  overflow: hidden;
}
.bloc-complet.bloc-complet-fond-colore .bloc-content {
  display: flex;
  flex-direction: column;
  gap: 0 calc(16 * var(--ratio, 1));
}
.bloc-complet.bloc-complet-fond-colore .img-container {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 315px;
  height: 155px;
  background-color: var(--color-white);
  clip-path: ellipse(86% 122% at 267px 189px);
  shape-outside: ellipse(86% 122% at 267px 189px);
}
.bloc-complet.bloc-complet-fond-colore .img-container img {
  display: none;
  height: 100%;
  max-height: calc(140 * var(--ratio, 1));
  width: calc(310 * var(--ratio, 1));
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  bottom: 0;
  right: 0;
  clip-path: ellipse(89% 134% at 267px 189px);
}
@container (width < 900px) {
  .bloc-complet.bloc-complet-fond-colore {
    grid-template-columns: 1fr;
    padding: calc(20 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
  }
}
@container (width < 300px) {
  .bloc-complet.bloc-complet-fond-colore {
    grid-template-columns: 1fr;
  }
  .bloc-complet.bloc-complet-fond-colore .bloc-content {
    order: 2;
  }
  .bloc-complet.bloc-complet-fond-colore img {
    order: 1;
  }
}
.bloc-complet.bloc-complet-lien-titre-sous-titre {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  width: -moz-fit-content;
  width: fit-content;
  gap: calc(16 * var(--ratio, 1));
  margin-left: auto;
  margin-right: auto;
}
.bloc-complet.bloc-complet-lien-titre-sous-titre .bloc-content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
}
header .bloc-complet.bloc-complet-lien-titre-sous-titre {
  --color-headline: var(--color-white);
  --color-title: var(--color-white);
  --color-body: var(--color-white);
  margin-left: 0;
  margin-right: 0;
}
header .bloc-complet.bloc-complet-lien-titre-sous-titre h3 {
  order: 2;
}
.bloc-complet.bloc-complet-complet-image-gauche {
  display: flex;
  flex-direction: row;
  gap: calc(48 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
}
.bloc-complet.bloc-complet-complet-image-gauche .img-container {
  height: 100%;
  max-height: calc(256 * var(--ratio, 1));
}
.bloc-complet.bloc-complet-complet-image-gauche .img-container img {
  width: 100%;
  height: auto;
  max-height: calc(256 * var(--ratio, 1));
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
@container (width <= 300px) {
  .bloc-complet.bloc-complet-complet-image-gauche {
    display: grid;
    grid-template-columns: 75px 1fr;
    grid-template-rows: auto auto;
    grid-template-areas: "title title" "image content" "image btn";
    grid-gap: calc(12 * var(--ratio, 1));
    gap: calc(12 * var(--ratio, 1));
  }
  .bloc-complet.bloc-complet-complet-image-gauche .img-container {
    grid-area: image;
    height: 100%;
    max-height: calc(256 * var(--ratio, 1));
  }
  .bloc-complet.bloc-complet-complet-image-gauche .img-container img {
    width: 100%;
    height: auto;
    max-height: calc(256 * var(--ratio, 1));
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center;
       object-position: center;
  }
  .bloc-complet.bloc-complet-complet-image-gauche .bloc-content {
    display: contents;
  }
  .bloc-complet.bloc-complet-complet-image-gauche .bloc-content .wysiwyg p {
    margin-bottom: 0;
  }
  .bloc-complet.bloc-complet-complet-image-gauche .bloc-content h3 {
    grid-area: title;
  }
  .bloc-complet.bloc-complet-complet-image-gauche .btn-container-secondary {
    grid-area: btn;
  }
  .bloc-complet.bloc-complet-complet-image-gauche .btn-container-secondary a {
    width: 100%;
  }
}
.bloc-complet.bloc-complet-lien-fond {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--ratio, 1));
  height: calc(256 * var(--ratio, 1));
  position: relative;
}
@media screen and (max-width: 640px) {
  .bloc-complet.bloc-complet-lien-fond {
    height: calc(200 * var(--ratio, 1));
  }
}
.bloc-complet.bloc-complet-lien-fond img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.bloc-complet.bloc-complet-lien-fond .btn {
  position: absolute;
  bottom: calc(24 * var(--ratio, 1));
  left: calc(48 * var(--ratio, 1));
  right: calc(48 * var(--ratio, 1));
  width: calc(100% - 96 * var(--ratio, 1));
  height: calc(48 * var(--ratio, 1));
  display: flex;
  font-size: var(--fz-16);
  font-weight: 700;
  padding: 0;
}
@media screen and (max-width: 640px) {
  .bloc-complet.bloc-complet-lien-fond .btn {
    height: calc(36 * var(--ratio, 1));
    font-size: var(--fz-12);
    width: calc(100% - 24 * var(--ratio, 1));
    left: calc(16 * var(--ratio, 1));
    right: calc(16 * var(--ratio, 1));
    bottom: calc(16 * var(--ratio, 1));
  }
}
.bloc-complet.bloc-complet-lien-fond .btn:hover {
  color: var(--color-secondary);
}
.bloc-complet.bloc-complet-simple {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--ratio, 1));
}

.block-cartes-postales {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.block-cartes-postales .item-list > ul {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin-top: calc(100 * var(--ratio, 1));
  margin-left: calc(-26 * var(--ratio, 1));
  margin-right: calc(-26 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .block-cartes-postales .item-list > ul {
    margin-left: calc(-12 * var(--ratio, 1));
    margin-right: calc(-12 * var(--ratio, 1));
  }
}
.block-cartes-postales .item-list > ul > li {
  width: 20%;
  height: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.block-cartes-postales .item-list > ul > li:nth-child(2n) {
  margin: calc(-95 * var(--ratio, 1)) calc(-30 * var(--ratio, 1)) 0;
}
@media screen and (max-width: 640px) {
  .block-cartes-postales .item-list > ul > li {
    width: 33%;
  }
  .block-cartes-postales .item-list > ul > li:nth-child(4) {
    display: none;
  }
  .block-cartes-postales .item-list > ul > li:nth-child(5) {
    display: none;
  }
  .block-cartes-postales .item-list > ul > li .content-container {
    display: none;
  }
}
.block-cartes-postales .item-list > ul > li article {
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
}
.block-cartes-postales .item-list > ul > li article h3 a,
.block-cartes-postales .item-list > ul > li article h2 {
  font-size: var(--fz-14);
}
.block-cartes-postales .item-list > ul > li article img {
  width: 100%;
  height: 100%;
}

.node--view-mode-image-titre-sous-titre {
  position: relative;
  overflow: hidden;
  width: 250px;
  --color-body: var(--color-white);
  --color-title: var(--color-white);
  --color-headline: var(--color-white);
}
.node--view-mode-image-titre-sous-titre img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  aspect-ratio: 1/1;
}
.node--view-mode-image-titre-sous-titre .item-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: color-mix(in srgb, var(--color-primary) 75%, transparent);
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--ratio, 1));
  padding: 8px 30px;
  color: var(--color-white);
  text-align: center;
  font-size: var(--fz-14);
}

.taxonomy-term--view-mode-journal {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.taxonomy-term--view-mode-journal .journal-cover {
  position: relative;
}
.taxonomy-term--view-mode-journal .journal-cover img {
  max-width: 206px !important;
}
.taxonomy-term--view-mode-journal .journal-cover img {
  margin-bottom: calc(15 * var(--ratio, 1));
  height: auto;
  position: relative;
}
.taxonomy-term--view-mode-journal .journal-cover .eye-icon {
  z-index: 10;
  opacity: 0;
  transition: all 0.3s ease;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
  height: 44px;
  background-color: var(--color-white);
  border-radius: 50%;
}
.taxonomy-term--view-mode-journal .journal-cover .eye-icon::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--color-primary);
  -webkit-mask-image: url("../images/svg/font/eye.svg");
          mask-image: url("../images/svg/font/eye.svg");
  -webkit-mask-size: 20px auto;
          mask-size: 20px auto;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
.taxonomy-term--view-mode-journal .journal-cover::after {
  z-index: 5;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--color-primary);
  opacity: 0;
  transition: all 0.3s ease;
}
.taxonomy-term--view-mode-journal .journal-cover:hover .eye-icon {
  opacity: 0.8;
}
.taxonomy-term--view-mode-journal .journal-cover:hover::after {
  opacity: 0.5;
}
.taxonomy-term--view-mode-journal .date {
  font-size: var(--fz-12);
  font-weight: 400;
  color: var(--color-grey);
  margin-bottom: calc(25 * var(--ratio, 1));
  text-align: center;
}
.taxonomy-term--view-mode-journal .journal-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(4 * var(--ratio, 1));
}

.journal-link .journal-owned {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(32 * var(--ratio, 1));
  height: calc(32 * var(--ratio, 1));
  padding: calc(8 * var(--ratio, 1));
  flex-shrink: 0;
  border-radius: 50%;
  background-color: var(--color-success);
}
.journal-link .journal-owned svg {
  width: 100%;
  height: 100%;
}

.liste-journaux > header {
  display: contents;
}
.liste-journaux > header > div {
  grid-column: span 4;
}
.liste-journaux > nav {
  grid-column: span 4;
}
.liste-journaux .item-list {
  border-top: 1px solid var(--color-grey-medium-2);
  padding-top: calc(30 * var(--ratio, 1));
  padding-bottom: calc(30 * var(--ratio, 1));
}
.liste-journaux .item-list > ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: calc(50 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  gap: calc(50 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .liste-journaux .item-list > ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .liste-journaux .item-list > ul {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 640px) {
  .liste-journaux .item-list > ul {
    grid-template-columns: repeat(1, 1fr);
    gap: calc(16 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  }
}
.liste-journaux .item-list > ul > li {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.liste-journaux .item-list > ul > div {
  position: relative;
  grid-column: span 4;
  margin-top: calc(36 * var(--ratio, 1));
  margin-bottom: calc(36 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .liste-journaux .item-list > ul > div {
    grid-column: span 3;
  }
}
@media screen and (max-width: 640px) {
  .liste-journaux .item-list > ul > div {
    grid-column: span 1;
  }
}
.liste-journaux .item-list > ul > div::before, .liste-journaux .item-list > ul > div::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  top: -36px;
  height: calc(1 * var(--ratio, 1));
  background-color: var(--color-grey-medium-2);
}
.liste-journaux .item-list > ul > div::after {
  top: auto;
  bottom: -36px;
}

.liste-fiches-techniques .item-list {
  padding-top: calc(30 * var(--ratio, 1));
  padding-bottom: calc(30 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .liste-fiches-techniques .item-list .grid-2 {
    grid-template-columns: 1fr;
  }
}
.liste-fiches-techniques .item-list ul > div {
  grid-column: span 2;
}
@media screen and (max-width: 640px) {
  .liste-fiches-techniques .item-list ul > div {
    grid-column: span 1;
  }
}

.page-terme > header article > header {
  width: 100%;
  max-width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr max-content;
  grid-template-rows: 1fr;
  grid-template-areas: "image info info";
  grid-gap: calc(16 * var(--ratio, 1));
  gap: calc(16 * var(--ratio, 1));
}
.page-terme > header article > header .journal-detail__cover {
  grid-area: image;
}
.page-terme > header article > header .journal-detail__info {
  grid-area: info;
}
.node--image-titre-sous-titre-date {
  position: relative;
  min-height: calc(200 * var(--ratio, 1));
  height: auto;
}
.node--image-titre-sous-titre-date .image-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.node--image-titre-sous-titre-date .image-container img {
  height: 100% !important;
}
.node--image-titre-sous-titre-date .image-container img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.node--image-titre-sous-titre-date .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: calc(6 * var(--ratio, 1));
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background-color: var(--color-white);
  max-width: 82%;
  margin-left: auto;
  margin-right: auto;
  padding: calc(20 * var(--ratio, 1)) calc(16 * var(--ratio, 1)) calc(8 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  text-align: center;
}
.node--image-titre-sous-titre-date .container :not(:first-child) {
  display: none;
}
@container (width <= 320px) {
  .node--image-titre-sous-titre-date {
    height: calc(266 * var(--ratio, 1));
  }
}

.title-widget {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: calc(4 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .title-widget {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 0;
  }
}
.title-widget a {
  text-transform: uppercase;
  font-size: var(--fz-12);
  line-height: 28px;
  font-weight: normal;
  color: var(--color-primary);
}

.share-btns {
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 640px) {
  .share-btns {
    width: 100%;
  }
  .share-btns h5 {
    display: none;
  }
}
.share-btns .btn-share {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(26 * var(--ratio, 1));
  height: calc(26 * var(--ratio, 1));
  flex: 0 0 calc(26 * var(--ratio, 1));
  border-radius: 50%;
  color: var(--color-white);
  background-color: var(--color-secondary);
  transition: all 0.3s ease;
}
.share-btns .btn-share:hover {
  background-color: var(--color-primary);
}
.share-btns .btn-share svg {
  width: calc(14 * var(--ratio, 1));
  height: calc(14 * var(--ratio, 1));
}

.liste-annuaire .item-list {
  padding-top: calc(30 * var(--ratio, 1));
  padding-bottom: calc(30 * var(--ratio, 1));
}
.liste-annuaire .item-list ul > div {
  grid-column: span 2;
}
.liste-annuaire .item-list ul > div.bloc-complet {
  grid-column: span 3;
}
@media screen and (max-width: 1024px) {
  .liste-annuaire .item-list ul > div.bloc-complet {
    grid-column: span 2;
  }
}
.liste-annuaire .item-list > ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-left: calc(-16 * var(--ratio, 1));
  margin-right: calc(-16 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .liste-annuaire .item-list > ul {
    grid-template-columns: repeat(2, 1fr);
  }
}

.glossaire-btns {
  margin: calc(15 * var(--ratio, 1)) auto;
  padding-top: calc(20 * var(--ratio, 1));
  padding-bottom: calc(20 * var(--ratio, 1));
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  border-top: 1px solid var(--color-grey-medium-2);
  border-bottom: 1px solid var(--color-grey-medium-2);
}
@media screen and (max-width: 640px) {
  .glossaire-btns {
    overflow-x: auto;
  }
}
.glossaire-btns .btn-glossaire {
  display: flex;
  font-size: var(--fz-26);
  color: var(--color-grey-medium);
  font-weight: 300;
  padding-left: calc(10 * var(--ratio, 1));
  padding-right: calc(10 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .glossaire-btns .btn-glossaire {
    padding-left: calc(4 * var(--ratio, 1));
    padding-right: calc(4 * var(--ratio, 1));
  }
}
.glossaire-btns .btn-glossaire.active {
  color: var(--color-primary);
  font-weight: 700;
}

.block-search {
  position: relative;
}
.block-search .block-search-input {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: calc(6 * var(--ratio, 1));
}
.block-search .block-search-input input {
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-grey-medium-2);
  border-radius: calc(4 * var(--ratio, 1));
  padding: calc(10 * var(--ratio, 1));
  font-size: var(--fz-16);
}
.block-search .block-search-input a {
  display: none;
  --_bg: var(--color-secondary);
  padding: calc(12 * var(--ratio, 1));
}
.block-search .search-results {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background-color: var(--color-white);
  padding: 20px 10px 10px 15px;
  box-shadow: -4px 4px 0 rgba(0, 0, 0, 0.1);
  z-index: 1000;
  overflow-y: auto;
  max-height: 500px;
}
.block-search .search-results.is-visible {
  display: block;
}
.block-search .search-suggestions-wrapper .search-category {
  margin-bottom: 20px;
}
.block-search .search-suggestions-wrapper .search-category:last-child {
  margin-bottom: 0;
}
.block-search .search-suggestions-wrapper .search-category-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 8px 0;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-grey-light);
}
.block-search .search-suggestions-wrapper .search-category-title .search-category-count {
  font-weight: 400;
  color: var(--color-grey);
  font-size: 12px;
}
.block-search .search-suggestions-wrapper .search-suggestions {
  list-style: none;
  margin: 0;
  padding: 0;
}
.block-search .search-suggestions-wrapper .search-suggestions .search-suggestion {
  margin-bottom: 4px;
}
.block-search .search-suggestions-wrapper .search-suggestions .search-suggestion:last-child {
  margin-bottom: 0;
}
.block-search .search-suggestions-wrapper .search-suggestions .search-suggestion a {
  display: block;
  padding: 8px 12px;
  text-decoration: none;
  color: var(--color-black);
  border-radius: 4px;
  transition: background-color 0.2s;
}
.block-search .search-suggestions-wrapper .search-suggestions .search-suggestion a:hover {
  background-color: var(--color-grey-light);
}
.block-search .search-suggestions-wrapper .search-suggestions .search-suggestion.is-active a {
  background-color: var(--color-primary);
  color: var(--color-white);
}
.block-search .search-suggestions-wrapper .search-category-more {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--color-grey-light);
}
.block-search .search-suggestions-wrapper .search-category-more a {
  font-size: 12px;
  color: var(--color-primary);
  text-decoration: none;
  font-weight: 600;
}
.block-search .search-suggestions-wrapper .search-category-more a:hover {
  text-decoration: underline;
}
.block-search .search-suggestions-wrapper .no-results {
  padding: 20px;
  text-align: center;
  color: var(--color-grey);
  margin: 0;
}

.search-essai .block-search .block-search-input a {
  display: flex;
}

@media screen and (max-width: 640px) {
  .vue-essais .grid-2 {
    grid-template-columns: 1fr;
    gap: calc(10 * var(--ratio, 1));
  }
}

.author-avatar-img {
  width: calc(76 * var(--ratio, 1));
  height: calc(76 * var(--ratio, 1));
  -o-object-fit: cover;
     object-fit: cover;
}

.colonne_annonces .head-box {
  padding-right: 15px;
  border-bottom: 1px solid #e9e9e9;
  text-align: right;
  padding: 0 0 12px;
}
.colonne_annonces .head-box .category-title {
  letter-spacing: 0.6px;
  margin-bottom: -1px;
  font-size: 12px;
  display: block;
  color: #bfbfbf;
  line-height: 1;
  font-weight: 700;
  text-transform: uppercase;
}
.colonne_annonces .head-box h3 {
  font-size: 22px;
  text-align: right;
  margin-right: 0;
  line-height: 1.2;
  margin: 0 0 2px;
}
.colonne_annonces .head-box .btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 16px;
  line-height: 1.5;
  border-radius: 2px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  white-space: normal;
  transition: background 0.2s, border-color 0.2s;
  font-weight: 600;
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 12px;
  padding-right: 12px;
  border-radius: 2px;
  border: 1px solid transparent;
  font-size: 12px;
  line-height: 12px;
  font-weight: 700;
  color: #000;
  letter-spacing: 0.3px;
  transition: color 0.2s;
  padding: 5px;
  text-align: right;
  background-color: transparent;
  box-shadow: none;
}
.colonne_annonces article {
  padding: 11px 0 6px;
  font-size: 12px;
  width: 100%;
  font-weight: 500;
  padding: 11px 0 4px;
  color: #bfbfbf;
  border-bottom: 1px solid #e9e9e9;
}
.colonne_annonces article .img-box {
  float: left;
  position: relative;
  width: 85px;
  margin: 1px 16px 6px 0;
}
.colonne_annonces article .img-box a {
  width: auto;
}
.colonne_annonces article .img-box a img {
  width: 85px;
}
.colonne_annonces article .text-box {
  overflow: hidden;
}
.colonne_annonces article .text-box h5 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 5px 0 4px;
}
.colonne_annonces article .text-box dl {
  margin: 0 0 2px;
  font-size: 11px;
  padding-left: 1px;
  display: grid;
  grid-template-columns: auto 1fr;
}
.colonne_annonces article .text-box dl dt {
  line-height: 1.66;
  float: none;
  text-wrap: nowrap;
  text-overflow: ellipsis;
  clear: both;
  padding: 0 2px 0 0;
  max-width: 50%;
  font-weight: 500;
}
.colonne_annonces article .text-box dl dd {
  line-height: 1.66;
  float: none;
  text-wrap: nowrap;
  text-overflow: ellipsis;
  max-width: 50%;
  font-weight: 700;
  margin: 0;
}
.colonne_annonces article .text-box .price {
  font: 700 20px/1.2 var(--ff2);
  color: #2a3768;
  display: block;
}

.node--horizontal {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(24 * var(--ratio, 1));
  --color-body: var(--color-grey-dark-2);
  --color-title: var(--color-prim);
  --color-caption: var(--color-primary);
  --color-headline: var(--color-primary);
}
@media screen and (max-width: 640px) {
  .node--horizontal {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: calc(12 * var(--ratio, 1));
  }
}
.node--horizontal img {
  aspect-ratio: 1.721/1;
  height: -webkit-fill-available;
  height: -moz-available;
  height: stretch;
  width: calc(50% - 12 * var(--ratio, 1));
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
@media screen and (max-width: 640px) {
  .node--horizontal img {
    width: 100%;
    max-height: calc(200 * var(--ratio, 1));
  }
}
.node--horizontal .content-container {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: min-content;
  grid-gap: calc(6 * var(--ratio, 1));
  gap: calc(6 * var(--ratio, 1));
}
.node--horizontal .content-container h3,
.node--horizontal .content-container h2,
.node--horizontal .content-container .description {
  grid-column: 1/span 2;
}
.node--horizontal .content-container .description {
  padding-bottom: calc(12 * var(--ratio, 1));
}
.node--horizontal .content-container .date {
  align-self: center;
  justify-self: end;
}

.node--horizontal-overlay {
  cursor: pointer;
  min-height: calc(475 * var(--ratio, 1));
  position: relative;
  overflow: hidden;
  --color-body: var(--color-white);
  --color-title: var(--color-white);
  --color-caption: var(--color-white);
  --color-headline: var(--color-white);
}
.node--horizontal-overlay.is-paywalled .content-container::before {
  top: calc(12 * var(--ratio, 1));
}
.node--horizontal-overlay img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
@media screen and (max-width: 640px) {
  .node--horizontal-overlay img {
    right: calc(-26 * var(--ratio, 1));
    left: calc(0 * var(--ratio, 1));
  }
}
.node--horizontal-overlay .content-container {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background-color: color-mix(in srgb, var(--color-primary) 75%, transparent);
  height: 100%;
  width: 50%;
  flex: 0 0 100%;
  padding: calc(36 * var(--ratio, 1));
  gap: calc(12 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .node--horizontal-overlay .content-container {
    position: relative;
    width: 100%;
    padding: calc(45 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  }
}
.node--horizontal-overlay .content-container .description {
  padding-bottom: calc(6 * var(--ratio, 1));
}

.node--horizontal-overlay-full {
  cursor: pointer;
  height: calc(500 * var(--ratio, 1));
  position: relative;
  overflow: hidden;
  --color-body: var(--color-white);
  --color-title: var(--color-white);
  --color-caption: var(--color-white);
  --color-headline: var(--color-white);
}
@media screen and (max-width: 640px) {
  .node--horizontal-overlay-full {
    height: 100%;
  }
}
.node--horizontal-overlay-full img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
.node--horizontal-overlay-full .content-container {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background-color: color-mix(in srgb, var(--color-primary) 30%, transparent);
  height: 100%;
  width: 100%;
  flex: 0 0 100%;
  padding: calc(40 * var(--ratio, 1)) calc(200 * var(--ratio, 1)) calc(40 * var(--ratio, 1)) calc(40 * var(--ratio, 1));
  gap: calc(12 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .node--horizontal-overlay-full .content-container {
    position: relative;
    padding: calc(5 * var(--ratio, 1)) 0 calc(24 * var(--ratio, 1)) 0;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
}
.node--horizontal-overlay-full .content-container .category {
  align-self: flex-start;
}
@media screen and (max-width: 640px) {
  .node--horizontal-overlay-full .content-container .category {
    align-self: center;
  }
}
.node--horizontal-overlay-full .content-container .description {
  max-width: 60%;
  padding-bottom: calc(6 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .node--horizontal-overlay-full .content-container .description {
    max-width: 100%;
    display: none;
  }
}
@media screen and (max-width: 640px) {
  .node--horizontal-overlay-full .content-container .bloc-btns {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: calc(12 * var(--ratio, 1));
  }
}

.node--search {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;
  gap: calc(30 * var(--ratio, 1));
  --color-body: var(--color-grey-dark);
  --color-caption: var(--color-grey-medium);
}
.node--search img {
  aspect-ratio: 4/3;
  width: calc(250 * var(--ratio, 1));
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
.node--search .content-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(6 * var(--ratio, 1));
}
.node--search .content-container .text-caption-xs {
  text-transform: uppercase;
}

.node--vertical {
  cursor: pointer;
  position: relative;
  min-height: calc(200 * var(--ratio, 1));
  --color-body: var(--color-white);
  --color-title: var(--color-white);
  --color-headline: var(--color-white);
  max-height: calc(362 * var(--ratio, 1));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.node--vertical.is-paywalled .content-container {
  position: relative;
  color: red;
}
@media screen and (max-width: 1024px) {
  .node--vertical {
    height: calc(200 * var(--ratio, 1));
  }
}
.node--vertical img {
  min-height: 1px;
  width: 100%;
  height: -moz-max-content;
  height: max-content;
  flex: 1;
  position: relative;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
.node--vertical .content-container {
  z-index: 10;
  background-color: var(--color-primary);
  margin-left: auto;
  margin-right: auto;
  padding: calc(18 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: calc(12 * var(--ratio, 1));
  width: 100%;
}
.node--vertical .content-container .content h2 {
  --h: 0;
  opacity: 0;
  overflow: hidden;
  margin: 0;
  height: 0;
  transition: all 0.3s ease-in-out;
  transform: translateY(var(--h));
}
.node--vertical .content-container .link {
  font-size: var(--fz-12);
  text-transform: uppercase;
  color: var(--color-white);
  white-space: nowrap;
}
.node--vertical:hover .content h2 {
  opacity: 1;
  height: var(--h);
  transform: translateY(0);
}
@container (width <= 320px) {
  .node--vertical {
    height: calc(266 * var(--ratio, 1));
  }
}

.node--vertical-overlay {
  cursor: pointer;
  aspect-ratio: 1/1;
  overflow: hidden;
  width: calc(250 * var(--ratio, 1));
  position: relative;
  --color-body: var(--color-white);
  --color-title: var(--color-white);
}
.node--vertical-overlay img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
.node--vertical-overlay .content-container {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-color: color-mix(in srgb, var(--color-primary) 75%, transparent);
  height: -moz-fit-content;
  height: fit-content;
  width: 100%;
  padding: calc(8 * var(--ratio, 1)) calc(30 * var(--ratio, 1));
}

.node--vertical-hover {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  min-height: calc(200 * var(--ratio, 1));
  max-height: calc(362 * var(--ratio, 1));
  --color-body: var(--color-grey-dark-2);
  --color-title: var(--color-black);
}
@media screen and (max-width: 640px) {
  .node--vertical-hover {
    width: 100%;
    aspect-ratio: 1/1;
  }
}
.node--vertical-hover img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
.node--vertical-hover .content-container {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  background-color: var(--color-white);
  width: 80%;
  padding: calc(16 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
  gap: calc(4 * var(--ratio, 1));
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.node--vertical-hover .content-container .date,
.node--vertical-hover .content-container .sub-title {
  --h: 0;
  opacity: 0;
  overflow: hidden;
  margin: 0;
  height: 0;
  transition: all 0.3s ease-in-out;
  transform: translateY(var(--h));
}
@media screen and (max-width: 640px) {
  .node--vertical-hover .content-container .date,
  .node--vertical-hover .content-container .sub-title {
    height: auto;
    opacity: 1;
    transform: translateY(0);
  }
}
.node--vertical-hover:hover .date,
.node--vertical-hover:hover .sub-title {
  opacity: 1;
  height: var(--h);
  transform: translateY(0);
}

.grid-2 > li > .node--vertical-hover {
  aspect-ratio: 4/3;
  min-height: 0;
  max-height: none;
}

.journal-detail__header {
  display: flex;
  gap: calc(24 * var(--ratio, 1));
  padding-bottom: 24px;
  border-bottom: 1px solid var(--color-grey-medium-2);
}
.journal-detail__header .journal-detail__cover {
  width: 200px;
  height: auto;
  flex: 0 0 200px;
}
.journal-detail__header .journal-detail__cover img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
.journal-detail__header .journal-detail__info {
  display: flex;
  flex-direction: column;
  gap: calc(12 * var(--ratio, 1));
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}
.journal-detail__header .journal-detail__info .journal-detail__info-content {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: calc(12 * var(--ratio, 1));
}
.journal-detail__header .journal-detail__info .journal-detail__actions {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: space-between;
  width: 100%;
}
.journal-detail__header .journal-detail__info .journal-detail__actions li {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding-top: calc(5 * var(--ratio, 1));
  padding-bottom: calc(5 * var(--ratio, 1));
  border-bottom: 1px solid var(--color-grey-medium-2);
}
.journal-detail__header .journal-detail__info .journal-detail__actions li:last-child {
  border-bottom: none;
}
.journal-detail__header .journal-detail__info .journal-detail__actions li a {
  width: calc(200 * var(--ratio, 1));
}

.infos-pratiques-section {
  flex: 0 0 280px;
  padding: calc(20 * var(--ratio, 1));
  border: 1px solid var(--color-grey-medium-2);
  height: -moz-max-content;
  height: max-content;
}
@media screen and (max-width: 640px) {
  .infos-pratiques-section {
    display: none;
  }
}
.infos-pratiques-section ul li {
  border-top: 1px solid var(--color-grey-medium-2);
  padding-top: calc(10 * var(--ratio, 1));
  margin-top: calc(10 * var(--ratio, 1));
  font-size: var(--fz-12);
  display: flex;
  gap: calc(5 * var(--ratio, 1));
  cursor: pointer;
}
.infos-pratiques-section ul li:first-child {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}
.infos-pratiques-section ul li:hover, .infos-pratiques-section ul li.active {
  font-weight: 900;
  color: var(--color-secondary);
}
.infos-pratiques-section ul li b {
  font-weight: 800;
}
.infos-pratiques-section ul li:after {
  content: "›";
  margin-left: auto;
}
.infos-pratiques-section ul li.video-link {
  text-align: center;
}
.infos-pratiques-section ul li.video-link img {
  width: calc(228 * var(--ratio, 1));
  margin-bottom: calc(5 * var(--ratio, 1));
}
.infos-pratiques-section ul li.video-link:after {
  align-self: center;
}

.node--fiche-technique--full .grid-2 {
  grid-template-columns: 280px 1fr;
}
.node--fiche-technique--full .specifications-section {
  flex: 1;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .node--fiche-technique--full .specifications-section {
    border-top: none;
    padding-top: 0;
  }
}
.node--fiche-technique--full .line-item {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: space-between;
  gap: calc(5 * var(--ratio, 1));
}
.node--fiche-technique--full .line-item h4 {
  font-weight: 900;
}
.node--fiche-technique--full .line-item hr {
  flex: 1;
  margin: 0;
}

.node--fiche-technique--teaser {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(24 * var(--ratio, 1));
  border-bottom: 1px solid var(--color-grey-medium-2);
  padding-bottom: calc(24 * var(--ratio, 1));
  cursor: pointer;
}
.node--fiche-technique--teaser .swiper-slide {
  display: contents;
}
.node--fiche-technique--teaser img {
  aspect-ratio: 4/3;
  width: calc(150 * var(--ratio, 1));
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
@media screen and (max-width: 640px) {
  .node--fiche-technique--teaser img {
    width: calc(100 * var(--ratio, 1));
  }
}
.node--fiche-technique--teaser .content-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}

.taxonomy-term--view-mode-horizontal .journal-cover {
  width: calc(90 * var(--ratio, 1));
  height: auto;
  flex: 0 0 calc(90 * var(--ratio, 1));
}
.taxonomy-term--view-mode-horizontal .journal-cover img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}

.tags-container a:hover {
  text-decoration: underline;
}

.node--annuaire--full .logo {
  background-color: var(--color-grey-medium-2);
  aspect-ratio: 1/1;
  width: calc(236 * var(--ratio, 1));
  padding: calc(24 * var(--ratio, 1));
  display: flex;
  align-items: center;
  justify-content: center;
  height: -moz-min-content;
  height: min-content;
}
.node--annuaire--full .logo img {
  width: calc(236 * var(--ratio, 1));
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position);
     object-position: var(--bg-position);
}
.node--annuaire--full .annuaire-fields h3 {
  width: calc(180 * var(--ratio, 1));
}

.node--type-annuaire.node--view-mode-teaser .node__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(12 * var(--ratio, 1));
  padding: calc(20 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  border-bottom: 1px solid var(--color-grey-medium-2);
}
.node--type-annuaire.node--view-mode-teaser .node__content .logo-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: calc(177 * var(--ratio, 1));
}
.node--type-annuaire.node--view-mode-teaser .node__content .logo-container img {
  width: 100%;
  height: calc(177 * var(--ratio, 1));
  -o-object-fit: contain;
     object-fit: contain;
}

.filters-fiches-container {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(12 * var(--ratio, 1));
}
.filters-fiches-container .filters-fiches-container-left {
  flex: 1;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .filters-fiches-container .essais-integrale-block {
    display: none;
  }
}
.filters-fiches-container .filters {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: calc(12 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .filters-fiches-container .filters {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: calc(8 * var(--ratio, 1));
  }
  .filters-fiches-container .filters form {
    flex-direction: column !important;
  }
  .filters-fiches-container .filters form {
    align-items: stretch;
    justify-content: flex-start;
    gap: calc(8 * var(--ratio, 1));
  }
}
.filters-fiches-container .filters > * {
  flex: 1;
}
.filters-fiches-container .filters .block-search {
  width: 100%;
}
.filters-fiches-container .filters .block-search input {
  width: 100%;
}
.filters-fiches-container .filters form {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: calc(12 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .filters-fiches-container .filters form {
    gap: calc(8 * var(--ratio, 1));
  }
}
.filters-fiches-container .filters form .form-item {
  width: 100%;
}
.filters-fiches-container .filters form .form-item select {
  width: 100%;
}
.filters-fiches-container .filters form .form-item input {
  width: 100%;
}
.filters-fiches-container .filters form .form-actions {
  width: 100%;
}
.filters-fiches-container .filters form input[type=submit] {
  --_bg: var(--color-secondary);
  padding-top: calc(18 * var(--ratio, 1));
  padding-bottom: calc(18 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .filters-fiches-container .filters form input[type=submit] {
    width: 100%;
  }
}

.node--essai--full .infos-pratiques-section {
  float: left;
  margin-right: calc(24 * var(--ratio, 1));
}
.node--essai--full .paywall-block {
  clear: both;
}
.node--essai--full .content-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(24 * var(--ratio, 1));
}

.search-essai {
  padding: calc(18 * var(--ratio, 1));
  background-color: var(--color-grey-medium-2);
}

@media screen and (max-width: 640px) {
  .bloc-infos-auteur {
    display: flex;
    flex-direction: column-reverse;
  }
}

.tag-page h2.tag-section__title,
.tag-page h2.tag-section__subtitle {
  border-bottom: 1px solid var(--color-grey-medium-2);
  margin-bottom: calc(22 * var(--ratio, 1));
  margin-top: calc(22 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .tag-page h2.tag-section__title,
  .tag-page h2.tag-section__subtitle {
    text-align: center;
  }
}
.tag-page .tag-section {
  margin-bottom: calc(32 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .tag-page .tag-section .grid-2 {
    grid-template-columns: 1fr;
  }
}
.tag-page .tag-section--articles > .tag-section__items--carousel > .swiper {
  margin-top: calc(24 * var(--ratio, 1));
}
.tag-page .tag-section--fiche-technique .node--fiche-technique--teaser {
  border-bottom: none;
  padding-bottom: calc(12 * var(--ratio, 1));
}

.node--widget-article {
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: calc(12 * var(--ratio, 1));
  height: 100%;
}
.node--widget-article img {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position, center);
     object-position: var(--bg-position, center);
}
.node--widget-article .content-container {
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--ratio, 1));
}
.node--widget-article .category {
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.node--widget-article .category a {
  color: inherit;
  text-decoration: none;
}
.node--widget-article .category a:hover {
  color: var(--color-primary);
}
.node--widget-article h3 {
  margin: 0;
}
.node--widget-article h3 a {
  color: var(--color-title, var(--color-black));
  text-decoration: none;
}
.node--widget-article:hover h3 a {
  color: var(--color-primary);
}
.node--widget-article .sub-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.node--widget-article-aside {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: calc(16 * var(--ratio, 1));
  padding-top: calc(11 * var(--ratio, 1));
  padding-bottom: calc(6 * var(--ratio, 1));
  border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
}
.node--widget-article-aside .img-box {
  flex: 0 0 calc(135 * var(--ratio, 1));
}
.node--widget-article-aside .img-box img {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position, center);
     object-position: var(--bg-position, center);
}
.node--widget-article-aside .text-box {
  display: flex;
  flex-direction: column;
  gap: calc(2 * var(--ratio, 1));
  min-width: 0;
}
.node--widget-article-aside .category {
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.node--widget-article-aside .category a {
  color: inherit;
  text-decoration: none;
}
.node--widget-article-aside .category a:hover {
  color: var(--color-primary);
}
.node--widget-article-aside h5 {
  margin: 0;
}
.node--widget-article-aside h5 a {
  color: var(--color-title, var(--color-black));
  text-decoration: none;
}
.node--widget-article-aside:hover h5 a {
  color: var(--color-primary);
}
.node--widget-article-aside h5 a {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.title-widget-aside {
  padding-bottom: calc(12 * var(--ratio, 1));
  border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
}
.title-widget-aside a {
  display: block;
  margin-top: calc(2 * var(--ratio, 1));
  text-align: right;
  text-transform: uppercase;
  font-size: var(--fz-12);
  font-weight: normal;
  line-height: 1.5;
  color: var(--color-primary);
}

.media-carousel {
  position: relative;
  width: 100%;
  margin-bottom: calc(24 * var(--ratio, 1));
  overflow: hidden;
}
.media-carousel .swiper-wrapper {
  display: flex;
  height: calc(556 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .media-carousel .swiper-wrapper {
    height: calc(512 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  .media-carousel .swiper-wrapper {
    height: calc(274 * var(--ratio, 1));
  }
}
.media-carousel .swiper-slide {
  position: relative;
  width: 100%;
  height: 100%;
  flex-shrink: 0;
}
.media-carousel .swiper-slide .contextual-region {
  position: static;
}
.media-carousel .swiper-slide img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--focal-point, center);
     object-position: var(--focal-point, center);
  display: block;
}
.media-carousel__caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.4);
  color: var(--color-white);
  padding: calc(12 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  font-size: var(--fz-14);
  line-height: 1.4;
  z-index: 5;
}
@media screen and (max-width: 640px) {
  .media-carousel__caption {
    font-size: var(--fz-12);
    padding: calc(8 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
  }
}
.media-carousel__controls {
  position: absolute;
  bottom: calc(60 * var(--ratio, 1));
  left: calc(16 * var(--ratio, 1));
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(4 * var(--ratio, 1));
  z-index: 10;
}
@media screen and (max-width: 640px) {
  .media-carousel__controls {
    left: calc(12 * var(--ratio, 1));
    bottom: calc(55 * var(--ratio, 1));
  }
}
.media-carousel__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(40 * var(--ratio, 1));
  height: calc(40 * var(--ratio, 1));
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.5);
  border: none;
  cursor: pointer;
  transition: background-color 0.3s ease;
  padding: 0;
  z-index: 10;
}
@media screen and (max-width: 640px) {
  .media-carousel__btn {
    width: calc(36 * var(--ratio, 1));
    height: calc(36 * var(--ratio, 1));
  }
}
.media-carousel__btn:hover {
  background-color: rgba(0, 0, 0, 0.7);
}
.media-carousel__btn svg {
  width: calc(16 * var(--ratio, 1));
  height: calc(16 * var(--ratio, 1));
  fill: var(--color-white);
  color: var(--color-white);
}
.media-carousel__btn svg path {
  fill: var(--color-white);
}
.media-carousel__btn--prev {
  position: absolute;
  left: calc(16 * var(--ratio, 1));
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .media-carousel__btn--prev {
    left: calc(12 * var(--ratio, 1));
  }
}
.media-carousel__btn--next {
  position: absolute;
  right: calc(16 * var(--ratio, 1));
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .media-carousel__btn--next {
    right: calc(12 * var(--ratio, 1));
  }
}
.media-carousel__btn--fullscreen {
  position: absolute;
  top: calc(16 * var(--ratio, 1));
  right: calc(16 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .media-carousel__btn--fullscreen {
    top: calc(12 * var(--ratio, 1));
    right: calc(12 * var(--ratio, 1));
  }
}
.media-carousel__btn--pause .icon-play {
  display: none;
}
.media-carousel__btn--pause.is-paused .icon-pause {
  display: none;
}
.media-carousel__btn--pause.is-paused .icon-play {
  display: flex;
}
.media-carousel__counter {
  display: flex;
  align-items: center;
  color: var(--color-white);
  font-size: var(--fz-14);
  font-weight: 500;
  padding-bottom: calc(4 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .media-carousel__counter {
    font-size: var(--fz-12);
  }
}
.media-carousel__progress {
  position: absolute !important;
  top: auto !important;
  bottom: 0 !important;
  height: calc(3 * var(--ratio, 1)) !important;
}
.media-carousel__progress {
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 10;
}
.media-carousel__progress .swiper-pagination-progressbar-fill {
  background-color: #f26531 !important;
}
.media-carousel__progress .swiper-pagination-progressbar-fill {
  height: 100%;
  width: 100%;
  transform-origin: left top;
}
.media-carousel__btn--fullscreen {
  background-color: transparent;
  padding: 0;
}
.media-carousel__btn--fullscreen .icon-full {
  width: calc(32 * var(--ratio, 1));
  height: calc(32 * var(--ratio, 1));
  display: flex;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.2s, visibility 0.2s;
}
.media-carousel__btn--fullscreen .icon-full svg {
  width: calc(32 * var(--ratio, 1));
  height: calc(32 * var(--ratio, 1));
}
.media-carousel__btn--fullscreen .icon-full svg path {
  fill: rgba(0, 0, 0, 0.5);
}
.media-carousel__btn--fullscreen .icon-full:hover svg path {
  fill: var(--color-secondary);
}
.media-carousel__btn--fullscreen .icon-reduce {
  width: calc(32 * var(--ratio, 1));
  height: calc(32 * var(--ratio, 1));
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s, visibility 0.2s;
}
.media-carousel__btn--fullscreen .icon-reduce svg {
  width: calc(32 * var(--ratio, 1));
  height: calc(32 * var(--ratio, 1));
}
.media-carousel__btn--fullscreen .icon-reduce svg path {
  fill: rgba(0, 0, 0, 0.5);
}
.media-carousel__btn--fullscreen .icon-reduce:hover svg path {
  fill: var(--color-secondary);
}
.media-carousel__btn--fullscreen:hover {
  background-color: transparent;
}
.media-carousel.full-mode-gallery {
  margin-top: 0 !important;
}
.media-carousel.full-mode-gallery {
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  top: var(--drupal-displace-offset-top, 0);
}
.media-carousel.full-mode-gallery .swiper-wrapper {
  height: 100%;
}
.media-carousel.full-mode-gallery .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #efefef;
}
.media-carousel.full-mode-gallery .swiper-slide img {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
.media-carousel.full-mode-gallery .media-carousel__btn--fullscreen .icon-full {
  opacity: 0;
  visibility: hidden;
}
.media-carousel.full-mode-gallery .media-carousel__btn--fullscreen .icon-reduce {
  opacity: 1;
  visibility: visible;
}
.media-carousel.full-mode-gallery .media-carousel__caption {
  max-width: none;
}

html.has-full-mode-gallery {
  overflow: hidden;
}

.media-video {
  position: relative;
  width: 100%;
}
.media-video__player {
  width: 100%;
}
.media-video__player iframe,
.media-video__player .media-oembed-content,
.media-video__player [videoID] {
  width: 100% !important;
  height: auto !important;
}
.media-video__player iframe,
.media-video__player .media-oembed-content,
.media-video__player [videoID] {
  display: block;
  aspect-ratio: 16/9;
  border: 0;
}
.media-video__poster {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  cursor: pointer;
}
.media-video__poster img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
}
.media-video.is-unplayable .media-video__poster {
  position: relative;
  cursor: default;
}
.media-video.is-unplayable .media-video__poster img {
  aspect-ratio: 16/9;
}
@media screen and (max-width: 1024px) {
  .media-video.is-unplayable .media-video__poster img {
    aspect-ratio: 4/3;
  }
}
@media screen and (max-width: 640px) {
  .media-video.is-unplayable .media-video__poster img {
    aspect-ratio: 1/1;
  }
}
.media-video.is-playing .media-video__poster {
  display: none;
}
.media-video__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(64 * var(--ratio, 1));
  height: calc(64 * var(--ratio, 1));
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.5);
  border: none;
  cursor: pointer;
  transition: background-color 0.3s ease;
  padding: 0;
  z-index: 10;
}
@media screen and (max-width: 640px) {
  .media-video__play {
    width: calc(48 * var(--ratio, 1));
    height: calc(48 * var(--ratio, 1));
  }
}
.media-video__play:hover {
  background-color: rgba(0, 0, 0, 0.7);
}
.media-video__play svg {
  width: calc(24 * var(--ratio, 1));
  height: calc(24 * var(--ratio, 1));
  margin-left: calc(3 * var(--ratio, 1));
  fill: var(--color-white);
  color: var(--color-white);
}
.media-video__play svg path {
  fill: var(--color-white);
}
@media screen and (max-width: 640px) {
  .media-video__play svg {
    width: calc(18 * var(--ratio, 1));
    height: calc(18 * var(--ratio, 1));
  }
}

.media-carousel .swiper-slide .media-video {
  height: 100%;
}
.media-carousel .swiper-slide .media-video__player {
  position: relative;
  height: 100%;
}
.media-carousel .swiper-slide .media-video__player iframe,
.media-carousel .swiper-slide .media-video__player .media-oembed-content,
.media-carousel .swiper-slide .media-video__player [videoID] {
  height: 100% !important;
}
.media-carousel .swiper-slide .media-video__player iframe,
.media-carousel .swiper-slide .media-video__player .media-oembed-content,
.media-carousel .swiper-slide .media-video__player [videoID] {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  aspect-ratio: auto;
}
.media-carousel .swiper-slide .media-video.is-unplayable .media-video__poster {
  height: 100%;
}
.media-carousel .swiper-slide .media-video.is-unplayable .media-video__poster img {
  height: 100%;
  aspect-ratio: auto;
}

.node--destination--full .destination-header {
  margin-bottom: calc(24 * var(--ratio, 1));
}

.destination-content {
  padding-bottom: calc(32 * var(--ratio, 1));
}
.destination-content > :last-child.day::before {
  opacity: 1;
}

.day {
  position: relative;
  padding-left: calc(38 * var(--ratio, 1));
  padding-top: calc(10 * var(--ratio, 1));
  padding-bottom: calc(30 * var(--ratio, 1));
}
.day + :not(.day) {
  padding-top: calc(24 * var(--ratio, 1));
  border-top: 1px solid var(--color-grey-medium-2);
}
.day:last-of-type {
  margin-bottom: 0;
}
.day::before {
  content: "";
  position: absolute;
  left: calc(7 * var(--ratio, 1));
  top: 0;
  width: calc(7 * var(--ratio, 1));
  height: 100%;
  background-image: url("../images/corde.png");
  background-repeat: repeat-y;
}
@media screen and (max-width: 640px) {
  .day::before {
    left: calc(7 * var(--ratio, 1));
    top: calc(28 * var(--ratio, 1));
  }
}
.day:last-of-type::before {
  opacity: 0;
}
.day__title {
  margin: 0 0 calc(4 * var(--ratio, 1)) !important;
}
.day__title {
  position: relative;
  font-family: var(--font-title);
  font-size: calc(24 * var(--ratio, 1));
  font-weight: 700;
  color: var(--color-primary);
  line-height: 1.2;
}
@media screen and (max-width: 1024px) {
  .day__title {
    font-size: calc(22 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  .day__title {
    font-size: calc(20 * var(--ratio, 1));
  }
}
.day__title::before {
  content: "";
  position: absolute;
  left: calc(-37.5 * var(--ratio, 1));
  top: calc(2 * var(--ratio, 1));
  width: calc(20 * var(--ratio, 1));
  height: calc(20 * var(--ratio, 1));
  background-color: #fff;
  border: calc(2 * var(--ratio, 1)) solid #ececec;
  border-radius: 50%;
  box-sizing: border-box;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .day__title::before {
    left: calc(-29 * var(--ratio, 1));
    width: calc(16 * var(--ratio, 1));
    height: calc(16 * var(--ratio, 1));
  }
}
.day__port {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: calc(8 * var(--ratio, 1));
  font-size: calc(16 * var(--ratio, 1));
  color: #8c8c8c;
  margin-bottom: calc(12 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .day__port {
    font-size: calc(14 * var(--ratio, 1));
  }
}
.day__port svg {
  width: calc(11 * var(--ratio, 1));
  height: calc(16 * var(--ratio, 1));
}
.day__port .icon-anchor {
  display: inline-block;
  margin-right: calc(6 * var(--ratio, 1));
  vertical-align: middle;
  font-style: normal;
}
.day__port .icon-anchor::before {
  content: "⚓";
  font-size: calc(14 * var(--ratio, 1));
  line-height: 1;
}
@media screen and (max-width: 640px) {
  .day__port .icon-anchor::before {
    font-size: calc(12 * var(--ratio, 1));
  }
}
.day__content {
  font-size: calc(16 * var(--ratio, 1));
  line-height: 1.7;
  color: var(--color-black);
}
@media screen and (max-width: 640px) {
  .day__content {
    font-size: calc(14 * var(--ratio, 1));
  }
}
.day__content p {
  margin-bottom: calc(16 * var(--ratio, 1));
}
.day__content p:last-child {
  margin-bottom: 0;
}
.day__content .article-image,
.day__content figure,
.day__content .media {
  margin: 0 0 calc(24 * var(--ratio, 1)) 0;
}
.day__content .article-image img,
.day__content figure img,
.day__content .media img {
  max-width: 100%;
  height: auto;
  display: block;
}
.day__content .article-image .caption,
.day__content .article-image figcaption,
.day__content figure .caption,
.day__content figure figcaption,
.day__content .media .caption,
.day__content .media figcaption {
  font-size: calc(14 * var(--ratio, 1));
  color: #8c8c8c;
  font-style: italic;
  margin-top: calc(8 * var(--ratio, 1));
  line-height: 1.5;
}
.day__content > img {
  max-width: 100%;
  height: auto;
  margin: calc(16 * var(--ratio, 1)) 0;
  display: block;
}

.destinations-page {
  max-width: calc(1200 * var(--ratio, 1));
  margin: 0 auto;
  padding: 0 calc(16 * var(--ratio, 1)) calc(48 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .destinations-page {
    padding: 0;
  }
}

.destinations-title {
  text-align: center;
  color: var(--color-primary);
  font-size: calc(40 * var(--ratio, 1));
  font-weight: 700;
  margin-bottom: calc(32 * var(--ratio, 1));
  font-family: var(--font-title);
}

.destinations-zones-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: calc(12 * var(--ratio, 1));
  gap: calc(12 * var(--ratio, 1));
  margin-bottom: calc(32 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .destinations-zones-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .destinations-zones-grid {
    grid-template-columns: 1fr;
    gap: calc(6 * var(--ratio, 1));
  }
}

.zone-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  cursor: pointer;
  width: 100%;
  height: calc(103 * var(--ratio, 1));
  padding: calc(20 * var(--ratio, 1));
  border-radius: calc(4 * var(--ratio, 1));
  background-color: var(--color-secondary);
  transition: all 0.3s ease;
  box-shadow: inset 0 0 0 calc(2 * var(--ratio, 1)) var(--color-secondary);
}
@media screen and (max-width: 640px) {
  .zone-card {
    height: calc(50 * var(--ratio, 1));
    align-items: center;
  }
}
.zone-card.active {
  background-color: var(--color-white);
}
.zone-card.active .zone-card__count,
.zone-card.active .zone-card__name {
  color: var(--color-secondary);
}
.zone-card.active .zone-card__image-container {
  background-color: var(--color-secondary);
}
.zone-card__image-container {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  clip-path: ellipse(73% 130% at 74% 105%);
  background-color: var(--color-white);
}
@media screen and (max-width: 640px) {
  .zone-card__image-container {
    display: none;
  }
}
.zone-card__image {
  width: auto;
  height: calc(103 * var(--ratio, 1));
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
  clip-path: ellipse(73% 120% at 77% 105%);
}
.zone-card__overlay {
  display: none;
}
.zone-card__content {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 640px) {
  .zone-card__content {
    text-align: center;
  }
}
.zone-card__name {
  font-size: calc(26 * var(--ratio, 1));
  font-weight: 700;
  margin: 0 0 calc(4 * var(--ratio, 1));
  color: var(--color-white);
  text-shadow: none;
  font-family: var(--font-title);
}
@media screen and (max-width: 640px) {
  .zone-card__name {
    margin: 0;
    line-height: 1;
  }
}
.zone-card__count {
  font-size: calc(16 * var(--ratio, 1));
  color: var(--color-white);
  font-weight: 300;
}
@media screen and (max-width: 640px) {
  .zone-card__count {
    line-height: 1;
    text-align: center;
  }
}
.zone-card--no-image {
  background-color: var(--color-secondary);
}

.zone-card-mobile-content {
  display: none;
}
@media screen and (max-width: 640px) {
  .zone-card-mobile-content {
    display: block;
    grid-column: 1/-1;
    padding: calc(10 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  }
}

.destinations-results {
  margin-top: calc(24 * var(--ratio, 1));
}

.destinations-results__header {
  display: none;
}

.destinations-results__content {
  position: relative;
  margin: 0 auto;
  max-width: calc(820 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .destinations-results__content {
    max-width: calc(540 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  .destinations-results__content {
    max-width: 100%;
  }
}

.destinations-pays-group {
  background: var(--color-white);
  border: calc(2 * var(--ratio, 1)) solid var(--color-grey-medium-2);
  border-radius: calc(6 * var(--ratio, 1));
  overflow: hidden;
  width: calc(250 * var(--ratio, 1));
  margin-bottom: calc(16 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .destinations-pays-group {
    width: 100% !important;
  }
  .destinations-pays-group {
    border: none;
  }
}

.destinations-pays-title {
  background: var(--color-grey-medium-2);
  border-bottom: none;
  padding: 0;
  margin: 0;
  font-size: calc(16 * var(--ratio, 1));
  font-weight: 700;
  color: var(--color-blue-dark);
  font-family: var(--font-title);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(5 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .destinations-pays-title {
    background: none;
    gap: calc(10 * var(--ratio, 1));
  }
}

.pays-flag {
  display: inline-block;
  flex-shrink: 0;
}
@media screen and (max-width: 640px) {
  .pays-flag {
    width: calc(30 * var(--ratio, 1));
    height: calc(20 * var(--ratio, 1));
  }
}

.destinations-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.destination-item {
  display: flex;
  align-items: center;
  gap: calc(16 * var(--ratio, 1));
  padding: calc(10 * var(--ratio, 1));
  border-bottom: none;
  text-decoration: none;
  color: var(--color-blue-dark);
  transition: background 0.2s ease;
}
@media screen and (max-width: 640px) {
  .destination-item {
    flex-direction: column-reverse;
    gap: calc(6 * var(--ratio, 1));
    padding: calc(6 * var(--ratio, 1)) 0;
    border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
    margin-bottom: calc(20 * var(--ratio, 1));
  }
}
.destination-item:last-child {
  border-bottom: none;
}
@media screen and (max-width: 640px) {
  .destination-item:last-child {
    border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
  }
}
.destination-item:hover {
  background: rgba(0, 0, 0, 0.02);
  text-decoration: none;
}
.destination-item__image {
  width: calc(43 * var(--ratio, 1));
  height: calc(43 * var(--ratio, 1));
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 0;
  flex-shrink: 0;
  background: var(--color-grey-light);
}
@media screen and (max-width: 640px) {
  .destination-item__image {
    width: 70%;
    height: auto;
    margin: 0 auto calc(10 * var(--ratio, 1));
  }
}
.destination-item__image--placeholder {
  -o-object-fit: cover;
     object-fit: cover;
  background: var(--color-grey-light);
}
.destination-item__title {
  font-size: calc(16 * var(--ratio, 1));
  color: var(--color-blue-dark);
  line-height: 1.3;
  margin: 0;
  font-weight: 300;
  transition: color 0.2s ease;
}
@media screen and (max-width: 640px) {
  .destination-item__title {
    align-self: flex-start;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: calc(8 * var(--ratio, 1));
  }
  .destination-item__title:before {
    content: "";
    display: block;
    width: calc(20 * var(--ratio, 1));
    height: calc(20 * var(--ratio, 1));
    background-color: var(--color-primary);
    -webkit-mask-image: url("../images/svg/font/anchor.svg");
            mask-image: url("../images/svg/font/anchor.svg");
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-position: center;
            mask-position: center;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
  }
}
.destination-item:hover .destination-item__title {
  color: var(--color-blue-dark);
  text-decoration: none;
}

.destinations-empty {
  text-align: center;
  padding: calc(48 * var(--ratio, 1));
  color: var(--color-grey-dark);
  font-size: calc(18 * var(--ratio, 1));
  grid-column: 1/-1;
}

/**
 * @file
 * Styles pour la liste des essais.
 */
.essais-list-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 1rem;
}

.essais-title {
  text-align: left;
  color: var(--color-primary);
  font-size: 2.5rem;
  font-weight: 400;
  margin-bottom: 0.5rem;
  font-family: var(--font-2);
}
@media screen and (max-width: 1024px) {
  .essais-title {
    text-align: center;
  }
}
@media screen and (max-width: 640px) {
  .essais-title {
    font-size: 1.75rem;
  }
}

.essais-count {
  text-align: left;
  color: var(--color-grey-dark);
  font-size: 0.9rem;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .essais-count {
    text-align: center;
  }
}

.essais-separator {
  border: none;
  border-top: 1px solid #ececec;
  margin: 24px 0;
  height: 0;
}

.essais-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  margin: 10px 0 0 0;
  padding: 0;
}
@media screen and (max-width: 640px) {
  .essais-filters {
    flex-direction: column;
    align-items: stretch;
  }
}
.essais-filters select {
  padding: 14px 16px;
  border: 1px solid var(--color-grey-medium-2);
  border-radius: 3px;
  font-size: 14px;
  min-width: 200px;
  background: #fff;
  color: #000;
  cursor: pointer;
  height: 48px;
}
.essais-filters select:focus {
  outline: none;
  border-color: var(--color-primary);
}
@media screen and (max-width: 1024px) {
  .essais-filters select {
    width: 100%;
    min-width: auto;
  }
}
.essais-filters input[type=number] {
  padding: 14px 18px;
  border: 1px solid var(--color-grey-medium-2);
  border-radius: 3px;
  font-size: 12px;
  width: 140px;
  min-width: 140px;
  background: #fff;
  color: #000;
  height: 48px;
}
.essais-filters input[type=number]::-moz-placeholder {
  color: #999;
}
.essais-filters input[type=number]::placeholder {
  color: #999;
}
.essais-filters input[type=number]:focus {
  outline: none;
  border-color: var(--color-primary);
}
@media screen and (max-width: 1024px) {
  .essais-filters input[type=number] {
    width: 100%;
    min-width: auto;
  }
}

.essais-filter-group {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.essais-filter-group label {
  font-weight: 500;
  color: var(--color-grey-dark);
}

.essais-filter-unit {
  color: var(--color-primary);
  font-size: 0.9rem;
  font-weight: 500;
}

.essais-toggle-buttons {
  display: flex;
  gap: 0;
}
@media screen and (max-width: 1024px) {
  .essais-toggle-buttons {
    width: 100%;
  }
}

.essais-btn-neuf,
.essais-btn-occasion {
  padding: 1rem 1.5rem;
  border: none;
  font-size: 0.75rem;
  font-weight: 700;
  cursor: pointer;
  text-transform: uppercase;
  transition: all 0.2s ease;
  border-radius: 0;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
  background: var(--color-primary);
  color: var(--color-white);
}
.essais-btn-neuf:hover,
.essais-btn-occasion:hover {
  opacity: 0.9;
}
@media screen and (max-width: 1024px) {
  .essais-btn-neuf,
  .essais-btn-occasion {
    flex: 1;
  }
}

.essais-loading {
  text-align: center;
  padding: 2rem;
  color: var(--color-grey-dark);
  font-size: 1.25rem;
}

.essais-grid {
  transition: opacity 0.3s ease;
}

.essais-columns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 2rem;
  gap: 2rem;
}
@media screen and (max-width: 1024px) {
  .essais-columns {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 640px) {
  .essais-columns {
    grid-template-columns: 1fr;
  }
}

.essais-column {
  list-style: none;
  padding: 0;
  margin: 0;
}

.essais-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.35rem 0;
  cursor: pointer;
}

.essais-cart-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.essais-cart-btn:hover:not(:disabled) {
  opacity: 0.7;
}
.essais-cart-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.essais-cart-btn img {
  width: 18px;
  height: 18px;
  filter: invert(15%) sepia(30%) saturate(1200%) hue-rotate(175deg) brightness(90%) contrast(95%);
}
.essais-cart-btn.in-cart img {
  filter: invert(45%) sepia(95%) saturate(1500%) hue-rotate(345deg) brightness(95%) contrast(95%);
}
.essais-cart-btn.owned {
  cursor: default;
  color: #28a745;
}
.essais-cart-btn.owned svg {
  stroke: #28a745;
}
.essais-cart-btn.owned:hover {
  opacity: 1;
}

.essais-link {
  color: var(--color-black);
  text-decoration: none;
  font-size: 0.9rem;
  transition: color 0.2s ease;
}
.essais-link:hover {
  color: var(--color-secondary);
  text-decoration: underline;
}

.essais-empty,
.essais-error {
  text-align: center;
  padding: 3rem;
  color: var(--color-grey-dark);
  font-size: 1.1rem;
}

.essais-error {
  color: var(--color-error);
}

.essais-integrale-block {
  background: #f2f2f2;
  border: none;
  padding: 12px 18px 12px;
  border-radius: 0;
  margin-top: 0;
  text-align: left;
}
.essais-integrale-block h3 {
  color: #03326c;
  margin: 1px 0 5px;
  font-size: 22px;
  font-family: var(--font-2);
}
.essais-integrale-block h3 mark {
  color: #03326c;
  background: transparent;
}
.essais-integrale-block p {
  color: #000;
  margin: 0 0 2px;
  font-size: 14px;
}

.essais-integrale-btn {
  display: inline-block;
  padding: 8px 12px;
  margin-top: 0.5rem;
  background: #2a3768;
  color: #fff;
  text-decoration: none;
  border-radius: 2px;
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
  transition: opacity 0.2s ease;
}
.essais-integrale-btn:hover {
  opacity: 0.9;
}

.essais-tooltip {
  position: absolute;
  z-index: 9999;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.15s ease, visibility 0.15s ease;
  width: 560px;
  max-width: 90vw;
}
.essais-tooltip.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
@media screen and (max-width: 1024px) {
  .essais-tooltip {
    display: none !important;
  }
}

.essais-tooltip-content {
  background: var(--color-white);
  border: 1px solid var(--color-grey-medium);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  padding: 15px;
}

.essais-tooltip-title {
  margin: 0 0 12px 0;
  font-size: 1.5rem;
  font-weight: 400;
  color: var(--color-primary);
  line-height: 1.2;
  font-family: var(--font-2);
}

.essais-tooltip-body {
  display: flex;
  gap: 15px;
  margin-bottom: 12px;
}

.essais-tooltip-image {
  flex-shrink: 0;
  width: 200px;
  height: 130px;
  overflow: hidden;
  background: var(--color-grey-light);
}
.essais-tooltip-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.essais-tooltip-specs {
  flex: 1;
}
.essais-tooltip-specs table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
}
.essais-tooltip-specs tr {
  border-bottom: 1px solid var(--color-grey-medium);
}
.essais-tooltip-specs tr:last-child {
  border-bottom: none;
}
.essais-tooltip-specs td {
  padding: 4px 0;
  vertical-align: top;
}
.essais-tooltip-specs .spec-label {
  color: var(--color-grey-dark);
  padding-right: 15px;
  white-space: nowrap;
}
.essais-tooltip-specs .spec-value {
  color: var(--color-black);
  text-align: right;
  font-weight: 500;
}

.essais-tooltip-source {
  margin: 0 0 8px 0;
  font-size: 0.8rem;
  color: var(--color-grey-dark);
  font-style: italic;
}

.essais-tooltip-chapeau {
  margin: 0;
  font-size: 0.85rem;
  color: var(--color-grey);
  line-height: 1.5;
}

.essais-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  grid-gap: 2rem;
  gap: 2rem;
  align-items: start;
  padding-top: 24px;
}
@media screen and (max-width: 1128px) {
  .essais-layout {
    grid-template-columns: 1fr 260px;
  }
}
@media screen and (max-width: 1024px) {
  .essais-layout {
    grid-template-columns: 1fr;
  }
}

.essais-main {
  min-width: 0;
}

.essais-cart-sidebar {
  position: sticky;
  top: 1rem;
  background: transparent;
  border: 1px solid var(--color-grey-medium-2);
  border-radius: 3px;
  padding: 20px;
  max-height: calc(100vh - 2rem);
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 1024px) {
  .essais-cart-sidebar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: auto;
    max-height: none;
    border-radius: 16px 16px 0 0;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
    z-index: 100;
    transform: translateY(calc(100% - 60px));
    transition: transform 0.3s ease;
    padding-top: 1.5rem;
    background: var(--color-white);
  }
  .essais-cart-sidebar.expanded {
    transform: translateY(0);
  }
}
.essais-cart-sidebar.has-items .essais-cart-empty {
  display: none;
}

.essais-cart-header {
  margin: 0 0 30px;
  padding: 0;
}
.essais-cart-header h3 {
  margin: 0;
  font-size: 20px;
  color: #000;
  font-weight: 700;
  font-family: var(--font-2);
  line-height: 26px;
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .essais-cart-header {
    cursor: pointer;
    position: relative;
  }
  .essais-cart-header::after {
    content: "";
    width: 40px;
    height: 4px;
    background: var(--color-grey-medium);
    border-radius: 2px;
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
  }
}

.essais-cart-list {
  list-style: none;
  padding: 0;
  margin: 0;
  flex: 1;
  overflow-y: auto;
  max-height: 400px;
}
@media screen and (max-width: 1024px) {
  .essais-cart-list {
    max-height: 250px;
  }
}

.essais-cart-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0;
  margin: 0;
  border-bottom: 1px solid var(--color-grey-medium-2);
  font-size: 16px;
  color: #000;
  line-height: 24px;
}
.essais-cart-item:last-child {
  border-bottom: none;
}

.essais-cart-item-left {
  display: flex;
  align-items: center;
}

.essais-cart-item-title {
  font-size: 16px;
  color: #000;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.essais-cart-item-price {
  font-size: 20px;
  color: #000;
  font-weight: 700;
  white-space: nowrap;
  display: flex;
  align-items: flex-start;
}
.essais-cart-item-price sub {
  font-size: 0.7em;
  line-height: 1;
}

.essais-cart-total-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 16px;
  padding-bottom: 0px;
}

.essais-cart-item-remove {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin-right: 10px;
  border: none;
  background: transparent;
  cursor: pointer;
  transition: opacity 0.2s ease;
  flex-shrink: 0;
}
.essais-cart-item-remove:hover {
  opacity: 0.7;
}
.essais-cart-item-remove img {
  width: auto;
  height: auto;
}

.essais-cart-empty {
  padding: 1.5rem 0.5rem;
  text-align: center;
}
.essais-cart-empty p {
  margin: 0;
  font-size: 0.85rem;
  color: var(--color-grey-dark);
  line-height: 1.5;
}

.essais-cart-actions {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding-top: 0;
  border-top: none;
}

.essais-cart-reduction-message {
  font-size: 16px;
  color: rgba(0, 0, 0, 0.55);
  text-align: left;
  margin: 0 0 10px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
  border-top: 1px solid var(--color-grey-medium-2);
  border-bottom: 1px solid var(--color-grey-medium-2);
  padding-top: 10px;
  padding-bottom: 10px;
}

.essais-cart-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.essais-cart-total-value {
  font-size: 30px;
  color: #000;
  font-weight: 700;
  display: flex;
  align-items: flex-start;
}
.essais-cart-total-value sub {
  font-size: 0.6em;
  line-height: 1;
}

.essais-cart-discount {
  font-size: 0.8rem;
  color: var(--color-success);
  background: rgba(0, 197, 84, 0.1);
  padding: 0.5rem 0.75rem;
  border-radius: 4px;
  text-align: center;
  font-weight: 500;
}

.essais-cart-checkout {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  padding: 8px 12px;
  border: 1px solid #f26531;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  border-radius: 2px;
  transition: all 0.2s ease;
  background: #f26531;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0;
  align-self: flex-start;
}
.essais-cart-checkout:hover:not(:disabled) {
  opacity: 0.9;
}
.essais-cart-checkout:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.essais-cart-sidebar-wrapper {
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.essais-integrale-wrapper {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  padding-top: 6px;
  padding-bottom: 12px;
}

.essais-integrale-total {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
.essais-integrale-total .essais-integrale-total-label {
  font-size: 12px;
}
.essais-integrale-total .essais-cart-total-value {
  color: var(--color-primary);
}

.essais-integrale-link {
  font-size: 10px;
  text-decoration: underline;
  text-transform: uppercase;
}

.mes-essais__grid {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.node--essai--teaser {
  padding-bottom: 20px;
  border-bottom: 1px solid var(--color-grey-medium-2);
}
.node--essai--teaser .image-container {
  flex: 0 0 230px;
}
.node--essai--teaser [onclick] {
  cursor: pointer;
}
.node--essai--teaser img {
  width: 230px;
  flex: 0 0 230px;
  height: 162px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: var(--bg-position, center);
     object-position: var(--bg-position, center);
}
.node--essai--teaser .mes-essais__infos {
  display: flex;
  flex-direction: row;
  gap: 5px;
  margin: 10px 0 16px 0;
  position: relative;
  overflow: hidden;
}
.node--essai--teaser .mes-essais__infos li {
  list-style: none;
  font-size: 12px;
  color: var(--color-grey-medium);
  line-height: 1.5;
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
.node--essai--teaser .mes-essais__infos li:before {
  content: "";
  width: 3px;
  height: 3px;
  background: var(--color-grey-medium);
  border-radius: 50%;
}
.node--essai--teaser .mes-essais__infos li:first-child:before {
  display: none;
}

.mes-magazines__empty,
.mes-essais__empty {
  margin-top: calc(12 * var(--ratio, 1));
}
.mes-magazines__empty .btn-primary,
.mes-essais__empty .btn-primary {
  margin-top: calc(12 * var(--ratio, 1));
}

.mes-magazines__item {
  padding: 20px 0;
  border-bottom: 1px solid var(--color-grey-medium-2);
}
.mes-magazines__item .journal-cover img {
  width: 114px;
  height: auto;
}
.mes-magazines__item [onclick] {
  cursor: pointer;
}

.mes-commandes__empty {
  padding: 24px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

/* ── Filtres boutique ── */
.boutique-category-filter__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: calc(18 * var(--ratio, 1));
}
.boutique-category-filter__link {
  display: flex;
  flex-direction: row;
  gap: calc(4 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
  font-family: var(--ff2);
  font-size: var(--fz-14);
  line-height: 1;
  font-weight: 600;
  text-decoration: none;
  text-transform: uppercase;
  color: var(--color-black);
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.boutique-category-filter__link:hover {
  color: var(--color-primary);
}
.boutique-category-filter__link.is-active {
  color: var(--color-primary);
}
.boutique-category-filter__link.is-active:before {
  content: "";
  display: inline-block;
  background-color: var(--color-primary);
  width: calc(8 * var(--ratio, 1));
  height: calc(8 * var(--ratio, 1));
  -webkit-mask-image: url("../images/svg/font/chevron-b.svg");
          mask-image: url("../images/svg/font/chevron-b.svg");
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  transform: rotate(270deg);
}

.boutique-clothing-filter {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--ratio, 1));
}
.boutique-clothing-filter__title {
  margin: 0 0 calc(8 * var(--ratio, 1));
  font-family: var(--ff2);
  font-size: var(--fz-12);
  text-transform: uppercase;
  color: var(--color-grey-dark);
}
.boutique-clothing-filter__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: calc(6 * var(--ratio, 1));
}
.boutique-clothing-filter__link {
  display: inline-block;
  padding: calc(4 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
  border: 1px solid var(--color-grey-medium);
  border-radius: calc(4 * var(--ratio, 1));
  font-family: var(--ff2);
  font-size: var(--fz-12);
  text-decoration: none;
  color: var(--color-black);
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.boutique-clothing-filter__link:hover {
  border-color: var(--color-secondary);
  color: var(--color-secondary);
}
.boutique-clothing-filter__link.is-active {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary);
  color: var(--color-white);
}
.boutique-clothing-filter__reset {
  display: inline-flex;
  align-items: center;
  align-self: center;
  gap: calc(4 * var(--ratio, 1));
  font-family: var(--ff2);
  font-size: var(--fz-12);
  font-weight: 600;
  text-decoration: none;
  text-transform: uppercase;
  color: var(--color-blue);
  transition: color 0.2s ease;
}
.boutique-clothing-filter__reset:hover {
  color: var(--color-primary);
}

.view-boutique__toolbar {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: flex-end;
  margin-bottom: calc(16 * var(--ratio, 1));
}
.view-boutique__toolbar .boutique-clothing-filter {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: calc(10 * var(--ratio, 1));
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: flex-end;
}

.boutique-sort {
  width: 100%;
}
.boutique-sort__select {
  width: 100%;
}

/* ── Liste boutique ── */
.boutique-liste {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: calc(36 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
  gap: calc(36 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
}
.boutique-liste > form {
  grid-column: span 3;
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: flex-start;
}
.boutique-liste > form .form-actions {
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
}
.boutique-liste .pager {
  grid-column: span 3;
}
.boutique-liste p:not(.boutique-item) {
  text-align: center;
  grid-column: span 3;
  font-family: var(--ff2);
  font-weight: 700;
}
.boutique-liste .boutique-item {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
}
.boutique-liste .boutique-item .product-teaser-content {
  padding-top: calc(6 * var(--ratio, 1));
}
.boutique-liste .boutique-item .field {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
}
.boutique-liste .boutique-item .field--name-title {
  padding-top: calc(6 * var(--ratio, 1));
  padding-bottom: calc(6 * var(--ratio, 1));
}
.boutique-liste .boutique-item .field--name-list_price {
  font-size: var(--fz-12);
  display: block;
  justify-self: center;
}
.boutique-liste .boutique-item img {
  aspect-ratio: 1/1;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: calc(180 * var(--ratio, 1));
  height: 100%;
}
.boutique-liste .boutique-item select {
  padding: calc(4 * var(--ratio, 1)) calc(6 * var(--ratio, 1));
}
.boutique-liste .boutique-item .attribute-widgets {
  padding-top: calc(12 * var(--ratio, 1));
  gap: calc(2 * var(--ratio, 1));
}
.boutique-liste .boutique-item .attribute-widgets select {
  width: 100%;
}

.attribute-widgets label {
  display: block;
  font-family: var(--ff1);
  font-size: var(--fz-12);
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.5;
  margin-bottom: calc(4 * var(--ratio, 1));
}

.catalog-product {
  display: grid;
  grid-template-columns: 1fr minmax(260px, 1fr) 260px;
  grid-gap: calc(10 * var(--ratio, 1));
  gap: calc(10 * var(--ratio, 1));
  align-items: flex-start;
  justify-content: flex-start;
  padding-top: calc(2 * var(--ratio, 1));
}
.catalog-product .medias {
  grid-column: span 1;
  max-width: calc(500 * var(--ratio, 1));
  aspect-ratio: 1/1;
  background-color: var(--color-grey-light);
}
.catalog-product .medias img {
  aspect-ratio: 1/1;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
  cursor: zoom-in;
}
.catalog-product .complements {
  grid-column: span 1;
}
.catalog-product .complements .field--name-field-medias {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(calc(44 * var(--ratio, 1)), 1fr));
  grid-gap: calc(10 * var(--ratio, 1));
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
}
.catalog-product .complements .field--name-field-medias > .field__item {
  max-width: calc(44 * var(--ratio, 1));
  background-color: var(--color-grey-light);
  aspect-ratio: 1/1;
  cursor: pointer;
  transition: box-shadow 0.2s ease;
}
.catalog-product .complements .field--name-field-medias > .field__item.is-active, .catalog-product .complements .field--name-field-medias > .field__item:hover {
  box-shadow: 0 0 0 2px #f26531;
}
.catalog-product .complements .field--name-field-medias > .field__item img {
  aspect-ratio: 1/1;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.catalog-product .variations {
  background-color: var(--color-grey-light);
  padding: calc(24 * var(--ratio, 1));
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--ratio, 1));
  align-items: flex-start;
  justify-content: center;
}
.catalog-product .variations hr {
  width: 100%;
}
.catalog-product .variations .button--add-to-cart {
  width: 100%;
}
.catalog-product .variations .stock-level {
  font-family: var(--ff2);
  font-size: var(--fz-12);
  font-weight: 600;
  padding: calc(4 * var(--ratio, 1)) 0;
}
.catalog-product .variations .stock-level--in {
  color: var(--color-success);
}
.catalog-product .variations .stock-level--out {
  color: var(--color-error);
}
.catalog-product .variations .field--name-price {
  flex-wrap: wrap;
  justify-content: flex-start;
}
.catalog-product .variations .price-discount {
  flex-basis: 100%;
  font-family: var(--ff1);
  font-size: var(--fz-12);
  font-weight: 500;
  margin: calc(4 * var(--ratio, 1)) 0 0;
}
.catalog-product .variations .field--name-variations {
  width: 100%;
}
.catalog-product .variations .attribute-widgets {
  width: 100%;
}
.catalog-product .variations .attribute-widgets select {
  width: 100%;
}

.variation-stock-table table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--ff2);
  font-size: var(--fz-12);
}
.variation-stock-table th {
  text-align: left;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-grey-dark);
  padding: calc(8 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
  border-bottom: 1px solid var(--color-grey-medium);
}
.variation-stock-table td {
  padding: calc(8 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
  border-bottom: 1px solid var(--color-grey-medium-2);
}
.variation-stock-table tr.out-of-stock td {
  opacity: 0.5;
}

.product-lightbox {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.9);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.product-lightbox.is-open {
  opacity: 1;
  visibility: visible;
}
.product-lightbox__image-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: calc(100vw - 160px);
  max-height: calc(100vh - 80px);
}
.product-lightbox__img {
  max-width: 100%;
  max-height: calc(100vh - 80px);
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
}
.product-lightbox__close, .product-lightbox__prev, .product-lightbox__next {
  position: absolute;
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  transition: opacity 0.2s ease;
  opacity: 0.7;
  padding: 12px;
}
.product-lightbox__close:hover, .product-lightbox__prev:hover, .product-lightbox__next:hover {
  opacity: 1;
}
.product-lightbox__close {
  top: 16px;
  right: 16px;
  font-size: 40px;
  line-height: 1;
  z-index: 1;
}
.product-lightbox__prev {
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
}
.product-lightbox__next {
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
}
.product-lightbox__counter {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 14px;
  font-family: var(--ff2);
  opacity: 0.8;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.order-item-image-cell {
  width: calc(125 * var(--ratio, 1));
}

.order-item-thumb {
  display: block;
  width: calc(125 * var(--ratio, 1));
  aspect-ratio: 1/1;
  -o-object-fit: contain;
     object-fit: contain;
  background-color: var(--color-grey-light);
}

.field--name-total_price {
  justify-self: flex-end;
  padding-top: calc(32 * var(--ratio, 1));
  padding-bottom: calc(32 * var(--ratio, 1));
}

.field--type-commerce-price {
  font-family: var(--ff2);
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
  font-size: var(--fz-24);
  color: var(--color-black);
}
.field--type-commerce-price .field__label {
  display: none;
}
.field--type-commerce-price.field--name-list_price {
  color: var(--color-grey);
  position: relative;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
}
.field--type-commerce-price.field--name-list_price::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 110%;
  height: 2px;
  background-color: var(--color-grey-medium);
  transform: translate(-50%, -50%) rotate(-15deg);
  pointer-events: none;
}

.orders-list {
  display: grid;
  grid-template-columns: auto 1fr minmax(calc(100 * var(--ratio, 1)), auto) minmax(calc(200 * var(--ratio, 1)), auto) auto;
  margin-bottom: calc(24 * var(--ratio, 1));
}
.orders-list .orders-list-header {
  display: grid;
  grid-column: span 5;
  grid-template-columns: subgrid;
  border-bottom: 1px solid var(--color-grey-medium);
  padding: calc(8 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  color: var(--color-grey-medium);
  text-transform: uppercase;
  font-size: var(--fz-10);
}
.orders-list .orders-list-header .align-center {
  align-self: center;
}
.orders-list .commande-item {
  display: grid;
  grid-column: span 5;
  grid-template-columns: subgrid;
  grid-gap: calc(10 * var(--ratio, 1));
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid var(--color-grey-medium);
}
.orders-list .commerce-order-user {
  display: grid;
  grid-column: span 5;
  grid-template-columns: subgrid;
  align-items: center;
}
.orders-list .commerce-order-user .order-header {
  padding: calc(18 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  display: grid;
  grid-column: span 5;
  grid-template-columns: subgrid;
  align-items: center;
  cursor: pointer;
  transition: background-color 0.2s ease;
  font-weight: 900;
  font-size: var(--fz-12);
}
.orders-list .commerce-order-user .order-header .field--name-state {
  justify-self: center;
  color: var(--color-warning);
}
.orders-list .commerce-order-user .order-header .field--name-order-number {
  justify-self: center;
}
.orders-list .commerce-order-user .order-header .field--name-total_price {
  justify-self: center;
  font-size: var(--fz-12);
  font-weight: 900;
  border: none;
  padding: 0;
}
.orders-list .commerce-order-user .order-header:hover {
  background-color: var(--color-grey-light);
}
.orders-list .commerce-order-user .product-item {
  grid-column: span 5;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  padding: 0 calc(20 * var(--ratio, 1));
}
.orders-list .commerce-order-user .product-item table {
  width: 100%;
}
.orders-list .commerce-order-user .product-item table td {
  vertical-align: top;
  padding-top: calc(10 * var(--ratio, 1));
  padding-bottom: calc(10 * var(--ratio, 1));
  padding-left: calc(4 * var(--ratio, 1));
  padding-right: calc(4 * var(--ratio, 1));
}
.orders-list .commerce-order-user .product-item table td.views-field-title {
  color: var(--color-primary);
  font-weight: bold;
  font-size: var(--fz-16);
  font-family: var(--ff2);
}
.orders-list .commerce-order-user .product-item table td.views-field-quantity {
  text-align: center;
}
.orders-list .commerce-order-user .product-item table td.views-field-unit-price__number, .orders-list .commerce-order-user .product-item table td.views-field-total-price__number {
  text-align: right;
}
.orders-list .commerce-order-user .product-item table th.views-field-title {
  text-align: left;
}
.orders-list .commerce-order-user .product-item table th.views-field-unit-price__number, .orders-list .commerce-order-user .product-item table th.views-field-total-price__number {
  text-align: right;
}
.orders-list .commerce-order-user.is-open .order-header {
  background-color: var(--color-grey-light);
}
.orders-list .commerce-order-user.is-open .product-item {
  max-height: 50000px;
  padding: calc(10 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
}
.orders-list .commerce-order-user.is-legacy .order-header {
  cursor: default;
}
.orders-list .commerce-order-user.is-legacy .order-header:hover {
  background-color: transparent;
}

.cart-form table {
  border-collapse: collapse;
}
.cart-form table thead tr th {
  font-size: var(--fz-10);
  font-weight: bold;
  text-transform: uppercase;
  color: var(--color-grey-medium);
  border-bottom: 1px solid var(--color-grey-medium);
  padding-bottom: calc(20 * var(--ratio, 1));
}
.cart-form table td {
  padding: calc(20 * var(--ratio, 1)) calc(5 * var(--ratio, 1));
  text-align: center;
}
.cart-form table td > * {
  margin-left: auto;
  margin-right: auto;
}
.cart-form table .views-field-edit-quantity {
  width: calc(100 * var(--ratio, 1));
}
.cart-form table .views-field-remove-button {
  width: calc(120 * var(--ratio, 1));
}
.cart-form table .views-field-purchased-entity {
  text-align: left;
  padding-left: calc(5 * var(--ratio, 1));
}
.cart-form table .views-field-unit-price__number,
.cart-form table .views-field-total-price__number {
  font-weight: bold;
}
.cart-form .views-field-edit-quantity .js-form-item input {
  width: calc(100 * var(--ratio, 1)) !important;
}
.cart-form .form-actions {
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
}
.cart-form .order-total-line {
  color: var(--color-primary) !important;
}
.cart-form .button {
  --_bg: var(--color-secondary);
}
.order-total-line {
  text-align: right;
}

.checkout-pane table {
  width: 100%;
}

.layout-checkout-form {
  display: grid;
  grid-gap: calc(16 * var(--ratio, 1));
  gap: calc(16 * var(--ratio, 1));
  grid-template-columns: 3fr 2fr;
  grid-template-rows: auto 1fr;
}
.layout-checkout-form > .checkout-pane {
  grid-column: 1/span 2;
  width: 100%;
}
.layout-checkout-form > .checkout-pane .check-success {
  width: calc(72 * var(--ratio, 1));
  height: calc(72 * var(--ratio, 1));
  border-radius: 50%;
  display: flex;
  padding: calc(20 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
  background-color: var(--color-success);
  margin: calc(12 * var(--ratio, 1)) auto;
}
.layout-checkout-form .layout-region-checkout-main {
  grid-column: span 1;
  width: 100%;
  padding: 0;
}
.layout-checkout-form .layout-region-checkout-main #shipping-information-wrapper {
  width: 100%;
}
.layout-checkout-form .layout-region-checkout-main .checkout-pane-stripe-review {
  display: contents;
}
.layout-checkout-form .layout-region-checkout-main .checkout-pane-coupon-redemption {
  width: 100%;
}
.layout-checkout-form .layout-region-checkout-main .checkout-pane-coupon-redemption .button {
  height: calc(48 * var(--ratio, 1));
}
.layout-checkout-form .layout-region-checkout-main .field--label-above {
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--ratio, 1));
}
.layout-checkout-form .layout-region-checkout-main .field--label-above .field__label {
  color: var(--color-primary);
  font-weight: 600;
}
.layout-checkout-form .layout-region-checkout-main fieldset {
  width: 100%;
}
.layout-checkout-form .layout-region-checkout-main fieldset legend {
  color: var(--color-primary);
  float: left;
  width: 100%;
  border-bottom: 1px solid var(--color-grey-medium-2);
  padding-bottom: calc(12 * var(--ratio, 1));
}
.layout-checkout-form .layout-region-checkout-secondary {
  grid-column: span 1;
  width: 100%;
}
.layout-checkout-form .layout-region-checkout-secondary h3 {
  text-transform: uppercase;
  border-bottom: 2px solid var(--color-grey-medium-2);
  padding-bottom: 16px;
}
.layout-checkout-form .layout-region-checkout-footer {
  grid-column: span 2;
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
  padding: calc(20 * var(--ratio, 1)) 0 0;
  width: 100%;
}
.layout-checkout-form .layout-region-checkout-footer .form-actions {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
  width: 100%;
}
.layout-checkout-form .layout-region-checkout-footer .form-actions .button {
  width: 100%;
  height: calc(48 * var(--ratio, 1));
}
.layout-checkout-form .layout-region-checkout-footer .form-actions .button::after {
  content: ">";
}
.layout-checkout-form .layout-region-checkout-footer .link--previous {
  color: var(--color-grey);
  display: flex;
  gap: calc(4 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
}
.layout-checkout-form .layout-region-checkout-footer .info-ssl {
  color: var(--color-grey);
  display: flex;
  gap: calc(4 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
}
.layout-checkout-form fieldset[data-drupal-selector=edit-payment-information-payment-method] legend {
  border-bottom: none;
}

.layout-region-checkout-footer {
  display: flex;
  float: none;
}

.view-boutique-container {
  display: grid;
  grid-template-columns: 225px 1fr;
  grid-gap: calc(24 * var(--ratio, 1));
  gap: calc(24 * var(--ratio, 1));
  align-items: flex-start;
  justify-content: flex-start;
}
.view-boutique-container .view-boutique-container-left {
  grid-column: span 1;
}
.view-boutique-container .view-boutique-container-right {
  grid-column: span 1;
}
.view-boutique-container .view-boutique-container-header {
  grid-column: span 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(16 * var(--ratio, 1));
  border-bottom: 1px solid var(--color-grey-medium);
  padding-bottom: calc(24 * var(--ratio, 1));
  margin-bottom: calc(24 * var(--ratio, 1));
}

[data-drupal-selector=edit-sidebar-order-summary-summary] .cols-0 {
  padding-top: calc(16 * var(--ratio, 1));
  padding-bottom: calc(16 * var(--ratio, 1));
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .cols-0 td {
  padding-top: calc(4 * var(--ratio, 1));
  padding-bottom: calc(4 * var(--ratio, 1));
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .views-field-total-price__number {
  text-align: right;
  font-weight: 700;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .field--type-commerce-price {
  padding-top: calc(0 * var(--ratio, 1));
  padding-bottom: calc(0 * var(--ratio, 1));
  width: 100%;
  font-weight: bold;
  border-top: 1px solid var(--color-grey-medium-2);
  margin-top: calc(12 * var(--ratio, 1));
  margin-bottom: calc(12 * var(--ratio, 1));
  padding: 0;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .field--type-commerce-price > div {
  width: 100%;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul {
  margin-top: calc(16 * var(--ratio, 1));
  display: flex;
  flex-direction: column;
  gap: calc(12 * var(--ratio, 1));
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li {
  display: grid;
  grid-template-columns: 50px 1fr 50px;
  grid-row: 1fr 1fr;
  grid-gap: calc(8 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
  gap: calc(8 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
  color: var(--color-primary);
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li .checkout-item-cover {
  grid-row: 1/span 2;
  grid-column: 1;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li .checkout-item-cover img {
  width: 100%;
  height: auto;
  min-height: calc(56 * var(--ratio, 1));
  -o-object-fit: contain;
     object-fit: contain;
  align-self: center;
  background-color: var(--color-grey-light);
  aspect-ratio: 1/1;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li .views-field-purchased-entity {
  grid-row: 1;
  grid-column: 2;
  font-size: var(--fz-16);
  display: contents;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li .views-field-purchased-entity .field-content,
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li .views-field-purchased-entity .checkout-item-with-cover {
  display: contents;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li .views-field-purchased-entity .checkout-item-info {
  align-self: flex-end;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li .views-field-quantity {
  grid-row: 2;
  grid-column: 2;
  color: var(--color-grey);
  font-size: var(--fz-14);
  font-weight: normal;
  align-self: flex-start;
}
[data-drupal-selector=edit-sidebar-order-summary-summary] .item-list ul li .views-field-total-price__number {
  grid-row: 1/span 2;
  grid-column: 3;
  align-self: center;
}

.order-total-line {
  display: flex;
  justify-content: space-between;
  width: 100%;
  color: var(--color-primary);
  text-transform: uppercase;
  border-top: 1px solid var(--color-grey-medium-2);
  padding-top: 12px;
}

.order-total-line__adjustment {
  font-size: var(--fz-16);
  font-weight: normal;
  text-transform: none;
  border: none;
  margin-top: calc(16 * var(--ratio, 1));
  margin-bottom: calc(16 * var(--ratio, 1));
  padding-top: 0;
  padding-bottom: 0;
}

.order-total-line__subtotal {
  display: none;
}

fieldset[data-drupal-selector=edit-payment-information-payment-method] > .fieldset-wrapper > div {
  flex-direction: column;
  align-items: flex-start;
}

.button--add-to-cart:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.view-unit-price-number-table-column,
.view-total-price-number-table-column {
  text-align: right;
}

.views-field-purchased-entity {
  vertical-align: top;
}
.views-field-purchased-entity .field__item {
  font-size: var(--fz-14);
  font-weight: 600;
  color: var(--color-primary);
}

.layout-region-checkout-main {
  display: flex;
  flex-direction: column;
  gap: calc(16 * var(--ratio, 1));
  align-items: flex-start;
  justify-content: flex-start;
}

.checkout-pane-coupon-redemption .js-form-wrapper {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-gap: calc(10 * var(--ratio, 1));
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  justify-content: flex-start;
}
.checkout-pane-coupon-redemption .js-form-wrapper div[data-drupal-messages] {
  grid-column: span 2;
}
.checkout-pane-coupon-redemption .js-form-wrapper div[data-drupal-messages] > div {
  margin: 0;
}
.checkout-pane-coupon-redemption .js-form-wrapper .coupon-redemption-form__coupons {
  grid-column: span 2;
}

.path--checkout h1 {
  border-top: 1px solid var(--color-grey-medium-2);
  padding: 16px 0 0;
  text-align: center;
  margin-top: 16px;
}

.checkout-progress {
  margin: 0 64px;
  padding: 0;
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  position: relative;
  counter-reset: item;
}
.checkout-progress::after {
  display: none;
}
.checkout-progress::before {
  content: "";
  width: 100%;
  height: 2px;
  background-color: var(--color-grey-medium-2);
  position: absolute;
  top: 18px;
  left: 0;
  right: 0;
  z-index: -1;
}
.checkout-progress li {
  counter-increment: item;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 2px;
  font-weight: bold;
  text-transform: uppercase;
  font-family: var(--ff2);
  background-color: var(--color-white);
}
.checkout-progress li::before {
  content: counter(item);
  width: 32px;
  height: 32px;
  background-color: #f26531;
  border: 3px solid #ff956e;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: var(--color-white);
  font-family: var(--ff2);
}
.checkout-progress li.checkout-progress--step__previous::before {
  content: "";
  color: red;
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  background-image: url("../images/svg/font/check-w.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 14px 14px;
}

.path--cart .field--type-commerce-price {
  width: 100%;
}
.path--cart .field--type-commerce-price > * {
  width: 100%;
}
.path--cart .field--type-commerce-price > * > * {
  width: 100%;
}
.path--cart .cart-item-with-cover {
  display: flex;
  gap: calc(12 * var(--ratio, 1));
  justify-content: flex-start;
  align-items: flex-start;
  color: var(--color-primary);
}
.path--cart .cart-item-with-cover .cart-item-cover img {
  width: 100px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 1/1;
  background-color: var(--color-grey-light);
}
.path--cart table tbody tr td {
  border-bottom: 1px solid var(--color-grey-medium-2);
}
.path--cart table tbody tr:last-child td {
  border-bottom: none;
}

#multicoques-subscription-change-form .subscription-change__groups {
  margin-top: calc(12 * var(--ratio, 1));
  margin-bottom: calc(12 * var(--ratio, 1));
  display: flex;
  flex-direction: column;
  gap: calc(24 * var(--ratio, 1));
}
#multicoques-subscription-change-form .subscription-change__tier {
  display: flex;
  flex-direction: column;
  gap: calc(8 * var(--ratio, 1));
}
#multicoques-subscription-change-form .subscription-change__tier-title {
  margin: 0;
}
#multicoques-subscription-change-form .subscription-change__tier-desc {
  margin: 0 0 calc(8 * var(--ratio, 1));
  color: var(--color-grey-dark);
}
#multicoques-subscription-change-form .option {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}
#multicoques-subscription-change-form .option .change-option__title {
  font-weight: 600;
}
#multicoques-subscription-change-form .option .change-option__price {
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
}
#multicoques-subscription-change-form .option .change-option__period {
  color: var(--color-grey-dark);
}
#multicoques-subscription-change-form .option .change-option__preview {
  flex-basis: 100%;
  color: var(--color-grey-dark);
}

.mon-abonnement__orders .mon-abonnement__orders-row .mon-abonnement__orders-title {
  width: calc(250 * var(--ratio, 1));
  font-weight: bold;
  color: var(--color-primary);
}
.mon-abonnement__orders .mon-abonnement__orders-row .mon-abonnement__orders-date {
  color: var(--color-grey-medium-2);
}

.subscription-change .card-info {
  margin-bottom: calc(32 * var(--ratio, 1));
}
.subscription-change h1 {
  font-size: var(--fz-32);
}
.subscription-change .subscription-change__tier-title {
  font-size: var(--fz-18);
  text-transform: uppercase;
}
.subscription-change .subscription-change__tier-desc {
  font-size: var(--fz-12);
  border-bottom: calc(2 * var(--ratio, 1)) solid var(--color-grey-medium-2);
  padding-bottom: calc(12 * var(--ratio, 1));
}
.subscription-change .multicoques-subscription-change-form {
  max-width: calc(680 * var(--ratio, 1));
}
.subscription-change .js-form-type-radio {
  border-radius: calc(6 * var(--ratio, 1));
  border: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
  padding: calc(16 * var(--ratio, 1)) calc(18 * var(--ratio, 1));
  margin-left: calc(2 * var(--ratio, 1));
  height: calc(90 * var(--ratio, 1));
}
.subscription-change .js-form-type-radio[\:has\(input\:checked\)] {
  border-color: transparent;
  outline: calc(2 * var(--ratio, 1)) solid var(--color-primary);
  background-color: #f9fafb;
}
.subscription-change .js-form-type-radio:has(input:checked) {
  border-color: transparent;
  outline: calc(2 * var(--ratio, 1)) solid var(--color-primary);
  background-color: #f9fafb;
}
.subscription-change .option {
  display: grid !important;
}
.subscription-change .option {
  grid-template-columns: 1fr auto;
  width: 100%;
  grid-gap: calc(6 * var(--ratio, 1)) calc(8 * var(--ratio, 1));
  gap: calc(6 * var(--ratio, 1)) calc(8 * var(--ratio, 1));
}
.subscription-change .option .change-option__title {
  font-size: var(--fz-16);
  color: var(--color-primary);
  font-weight: bold;
  font-family: var(--ff2);
}
.subscription-change .option .change-option__price {
  font-size: var(--fz-20);
  font-weight: bold;
  font-family: var(--ff2);
  color: var(--color-primary);
}
.subscription-change .option .change-option__period,
.subscription-change .option .change-option__preview {
  font-size: var(--fz-12);
  color: var(--color-grey);
}
.subscription-change .option .change-option__period {
  justify-self: flex-end;
}
.subscription-change .subscription-change__delivery {
  display: grid;
  grid-gap: calc(12 * var(--ratio, 1));
  gap: calc(12 * var(--ratio, 1));
  margin-top: calc(16 * var(--ratio, 1));
  margin-bottom: calc(16 * var(--ratio, 1));
}
.subscription-change .subscription-change__delivery select {
  max-width: calc(360 * var(--ratio, 1));
}
.subscription-change .subscription-change__delivery-note {
  font-size: var(--fz-12);
  color: var(--color-grey);
}
.subscription-change .change-option__hint--upgrade {
  font-weight: 600;
  color: var(--color-secondary);
}
.subscription-change .subscription-change__form p > strong {
  font-weight: bold;
}

.price-zone-select {
  display: inline-flex;
  align-items: center;
  gap: calc(10 * var(--ratio, 1));
  max-width: 100%;
}
.price-zone-select .price-zone-select__input {
  width: auto;
  min-width: calc(150 * var(--ratio, 1));
  padding: calc(10 * var(--ratio, 1)) calc(14 * var(--ratio, 1));
  cursor: pointer;
}

.path--mon-compte--changer-formule .sidebar-grid {
  margin-top: 0 !important;
}

.paywalled-excerpt {
  display: flow-root;
  position: relative;
}
.paywalled-excerpt::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 225px;
  background: linear-gradient(0deg, #ffffff, rgba(0, 0, 0, 0));
  pointer-events: none;
}

.paywall-block {
  --paywall-border: #d3dbe2;
  --paywall-bg: #f5f7f9;
  --paywall-text: #3a4a57;
  position: relative;
  clear: both;
  margin-top: calc(8 * var(--ratio, 1));
  border: 1px solid var(--paywall-border);
  border-top: 4px solid var(--color-secondary);
  border-radius: 8px;
  background: var(--color-white);
  overflow: hidden;
  color: #1e2b36;
}
.paywall-block .paywall-block__cols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media screen and (max-width: 640px) {
  .paywall-block .paywall-block__cols {
    grid-template-columns: minmax(0, 1fr);
  }
}
.paywall-block .paywall-block__login {
  padding: calc(36 * var(--ratio, 1)) calc(40 * var(--ratio, 1));
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: calc(14 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .paywall-block .paywall-block__login {
    padding: calc(28 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  .paywall-block .paywall-block__login {
    padding: calc(28 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  }
}
.paywall-block .paywall-block__login-title {
  margin: 0 0 calc(6 * var(--ratio, 1));
  font-family: var(--ff2);
  font-weight: 400;
  font-size: var(--fz-24);
  line-height: 1.2;
  color: var(--color-primary);
  text-align: center;
}
.paywall-block .paywall-block__login-title b {
  font-weight: 700;
}
.paywall-block .paywall-login {
  display: flex;
  flex-direction: column;
  gap: calc(14 * var(--ratio, 1));
  margin: 0;
}
.paywall-block .paywall-login .form-item,
.paywall-block .paywall-login .form-actions {
  margin: 0;
}
.paywall-block .paywall-login input[type=text],
.paywall-block .paywall-login input[type=email],
.paywall-block .paywall-login input[type=password] {
  width: 100%;
  min-height: 44px;
  padding: 0 calc(14 * var(--ratio, 1));
  border: 1px solid var(--paywall-border);
  border-radius: 2px;
  font-size: var(--fz-14);
  font-weight: 300;
  color: inherit;
  box-sizing: border-box;
}
.paywall-block .paywall-login input[type=text]::-moz-placeholder, .paywall-block .paywall-login input[type=email]::-moz-placeholder, .paywall-block .paywall-login input[type=password]::-moz-placeholder {
  color: #6b7a86;
}
.paywall-block .paywall-login input[type=text]::placeholder,
.paywall-block .paywall-login input[type=email]::placeholder,
.paywall-block .paywall-login input[type=password]::placeholder {
  color: #6b7a86;
}
.paywall-block .paywall-login input[type=text]:focus,
.paywall-block .paywall-login input[type=email]:focus,
.paywall-block .paywall-login input[type=password]:focus {
  border-color: var(--color-primary);
  outline: none;
}
.paywall-block .paywall-login input[type=text].focus-visible,
.paywall-block .paywall-login input[type=email].focus-visible,
.paywall-block .paywall-login input[type=password].focus-visible {
  outline: 3px solid var(--color-secondary);
  outline-offset: 2px;
}
.paywall-block .paywall-login input[type=text]:focus-visible,
.paywall-block .paywall-login input[type=email]:focus-visible,
.paywall-block .paywall-login input[type=password]:focus-visible {
  outline: 3px solid var(--color-secondary);
  outline-offset: 2px;
}
.paywall-block .paywall-login .form-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(4 * var(--ratio, 1));
}
.paywall-block .paywall-login .form-submit {
  margin: 0;
}
.paywall-block .paywall-login .link {
  margin-top: calc(4 * var(--ratio, 1)) !important;
}
.paywall-block .paywall-login .link {
  align-self: center;
  padding: calc(4 * var(--ratio, 1));
  font-size: var(--fz-14);
  font-weight: 300;
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.paywall-block .paywall-login .form-submit.focus-visible,
.paywall-block .paywall-login .link.focus-visible {
  outline: 3px solid var(--color-secondary);
  outline-offset: 2px;
}
.paywall-block .paywall-login .form-submit:focus-visible,
.paywall-block .paywall-login .link:focus-visible {
  outline: 3px solid var(--color-secondary);
  outline-offset: 2px;
}
.paywall-block .paywall-block__subscribe {
  padding: calc(36 * var(--ratio, 1)) calc(40 * var(--ratio, 1));
  background: var(--paywall-bg);
  display: flex;
  flex-direction: column;
  gap: calc(14 * var(--ratio, 1));
}
@media screen and (max-width: 1024px) {
  .paywall-block .paywall-block__subscribe {
    padding: calc(28 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
  }
}
@media screen and (max-width: 640px) {
  .paywall-block .paywall-block__subscribe {
    padding: calc(28 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  }
}
.paywall-block .paywall-block__login + .paywall-block__subscribe {
  border-left: 1px solid var(--paywall-border);
}
@media screen and (max-width: 640px) {
  .paywall-block .paywall-block__login + .paywall-block__subscribe {
    border-left: 0;
    border-top: 1px solid var(--paywall-border);
  }
}
.paywall-block .paywall-block__badge {
  margin: 0;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: calc(8 * var(--ratio, 1));
  padding: calc(4 * var(--ratio, 1)) calc(10 * var(--ratio, 1));
  border-radius: 999px;
  background: #fde6dc;
  color: var(--color-primary);
  font-size: var(--fz-12);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.paywall-block .paywall-block__title {
  margin: 0;
  font-family: var(--ff2);
  font-weight: 700;
  font-size: var(--fz-32);
  line-height: 1.1;
  color: var(--color-primary);
}
@media screen and (max-width: 640px) {
  .paywall-block .paywall-block__title {
    font-size: var(--fz-26);
  }
}
.paywall-block .paywall-block__text {
  margin: 0;
  font-size: var(--fz-15);
  line-height: 1.55;
  color: var(--paywall-text);
}
.paywall-block .paywall-block__cta {
  margin-top: calc(8 * var(--ratio, 1));
}
.paywall-block .paywall-block__cta.focus-visible {
  outline: 3px solid var(--color-secondary);
  outline-offset: 2px;
}
.paywall-block .paywall-block__cta:focus-visible {
  outline: 3px solid var(--color-secondary);
  outline-offset: 2px;
}
.paywall-block.paywall-block--member .paywall-block__cols {
  grid-template-columns: minmax(0, 1fr);
}
.paywall-block.paywall-block--member .paywall-block__subscribe {
  align-items: center;
  text-align: center;
  padding: calc(48 * var(--ratio, 1)) calc(40 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .paywall-block.paywall-block--member .paywall-block__subscribe {
    padding: calc(32 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  }
}
.paywall-block.paywall-block--member .paywall-block__badge {
  align-self: center;
}
.paywall-block.paywall-block--member .paywall-block__text {
  max-width: 520px;
}
.paywall-block.paywall-block--member .paywall-block__cta {
  width: 100%;
  max-width: 360px;
  margin-top: calc(10 * var(--ratio, 1));
}

.subscription-plans {
  --plans-radius: calc(10 * var(--ratio, 1));
  --plans-border: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(32 * var(--ratio, 1));
}
.subscription-plans [data-state],
.subscription-plans [data-period] {
  display: none;
}
.subscription-plans [data-state=yearly],
.subscription-plans [data-period=yearly] {
  display: var(--state-display, block);
}
.subscription-plans[\:has\(.subscription-plans__vip\%20input\:checked\)] [data-state=yearly] {
  display: none;
}
.subscription-plans:has(.subscription-plans__vip input:checked) [data-state=yearly] {
  display: none;
}
.subscription-plans[\:has\(.subscription-plans__vip\%20input\:checked\)] [data-state=yearly_vip] {
  display: var(--state-display, block);
}
.subscription-plans:has(.subscription-plans__vip input:checked) [data-state=yearly_vip] {
  display: var(--state-display, block);
}
.subscription-plans[\:has\(.subscription-plans__period\%20input\[value\%3Dmonthly\]\:checked\)] [data-state=yearly],
.subscription-plans[\:has\(.subscription-plans__period\%20input\[value\%3Dmonthly\]\:checked\)] [data-state=yearly_vip],
.subscription-plans[\:has\(.subscription-plans__period\%20input\[value\%3Dmonthly\]\:checked\)] [data-period=yearly] {
  display: none;
}
.subscription-plans:has(.subscription-plans__period input[value=monthly]:checked) [data-state=yearly],
.subscription-plans:has(.subscription-plans__period input[value=monthly]:checked) [data-state=yearly_vip],
.subscription-plans:has(.subscription-plans__period input[value=monthly]:checked) [data-period=yearly] {
  display: none;
}
.subscription-plans[\:has\(.subscription-plans__period\%20input\[value\%3Dmonthly\]\:checked\)] [data-state=monthly] {
  display: var(--state-display, block);
}
.subscription-plans:has(.subscription-plans__period input[value=monthly]:checked) [data-state=monthly] {
  display: var(--state-display, block);
}
.subscription-plans .subscription-plans__period {
  display: flex;
  align-items: center;
  gap: calc(4 * var(--ratio, 1));
  margin: 0;
  padding: calc(4 * var(--ratio, 1));
  border: 0;
  border-radius: calc(999 * var(--ratio, 1));
  background-color: var(--color-grey-light-2);
}
.subscription-plans .subscription-plans__period label {
  display: block;
  padding: calc(11 * var(--ratio, 1)) calc(38 * var(--ratio, 1));
  border-radius: calc(999 * var(--ratio, 1));
  cursor: pointer;
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 600;
  color: var(--color-primary);
  white-space: nowrap;
  transition: background-color 0.2s ease, color 0.2s ease;
}
@media screen and (max-width: 640px) {
  .subscription-plans .subscription-plans__period label {
    flex: 1 1 0;
    padding: calc(10 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
    text-align: center;
  }
}
.subscription-plans .subscription-plans__period input:checked + label {
  background-color: var(--color-primary);
  color: var(--color-white);
}
.subscription-plans .subscription-plans__period input.focus-visible + label {
  outline: calc(2 * var(--ratio, 1)) solid var(--color-tertiary);
  outline-offset: calc(2 * var(--ratio, 1));
}
.subscription-plans .subscription-plans__period input:focus-visible + label {
  outline: calc(2 * var(--ratio, 1)) solid var(--color-tertiary);
  outline-offset: calc(2 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .subscription-plans .subscription-plans__period {
    width: 100%;
  }
}
.subscription-plans .subscription-plans__vip {
  width: 100%;
  border-radius: var(--plans-radius);
  background-color: color-mix(in oklab, var(--color-blue-light) 70%, var(--color-white));
}
.subscription-plans .subscription-plans__vip-label {
  display: flex;
  align-items: center;
  gap: calc(14 * var(--ratio, 1));
  padding: calc(18 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
  margin: 0;
  cursor: pointer;
}
.subscription-plans .subscription-plans__vip-label input {
  flex: 0 0 auto;
  width: calc(20 * var(--ratio, 1));
  height: calc(20 * var(--ratio, 1));
  margin: 0;
  accent-color: var(--color-primary);
  cursor: pointer;
}
.subscription-plans .subscription-plans__vip-text {
  display: flex;
  flex-direction: column;
  gap: calc(2 * var(--ratio, 1));
}
.subscription-plans .subscription-plans__vip-title {
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 600;
  color: var(--color-primary);
}
.subscription-plans .subscription-plans__vip-title strong {
  font-weight: 700;
}
.subscription-plans .subscription-plans__vip-desc {
  font-size: var(--fz-14);
  color: var(--color-grey-dark-2);
}
.subscription-plans .subscription-plans__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: stretch;
  grid-gap: calc(24 * var(--ratio, 1));
  gap: calc(24 * var(--ratio, 1));
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .subscription-plans .subscription-plans__grid {
    grid-template-columns: 1fr;
    gap: calc(20 * var(--ratio, 1));
  }
}
.subscription-plans .plan-card {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: calc(32 * var(--ratio, 1)) calc(28 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
  border: var(--plans-border);
  border-radius: var(--plans-radius);
  background-color: var(--color-white);
}
.subscription-plans .plan-card .plan-card__actions {
  margin-top: auto;
  padding-top: calc(28 * var(--ratio, 1));
}
.subscription-plans .plan-card__title {
  margin: 0;
  font-family: var(--ff2);
  font-size: var(--fz-32);
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
  color: var(--color-primary);
}
.subscription-plans .plan-card__price {
  margin: calc(4 * var(--ratio, 1)) 0 0;
  font-family: var(--ff2);
  font-size: var(--fz-32);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-primary);
}
.subscription-plans .plan-card__from {
  display: block;
  font-family: var(--ff1);
  font-size: var(--fz-14);
  font-weight: 400;
  color: var(--color-grey-dark-2);
}
.subscription-plans .plan-card__unit {
  font-weight: 400;
}
.subscription-plans .plan-card__mark {
  color: var(--color-secondary);
}
.subscription-plans .plan-card__price--unavailable {
  font-size: var(--fz-24);
  line-height: 1.15;
}
.subscription-plans .plan-card__price--empty {
  font-size: var(--fz-20);
  color: var(--color-grey-dark-2);
}
.subscription-plans .plan-card__tagline {
  margin: calc(8 * var(--ratio, 1)) 0 0;
  padding-bottom: calc(20 * var(--ratio, 1));
  border-bottom: var(--plans-border);
  font-size: var(--fz-18);
  color: var(--color-primary);
}
.subscription-plans .plan-card__badge {
  position: absolute;
  top: 0;
  left: calc(20 * var(--ratio, 1));
  transform: translateY(-50%);
  margin: 0;
  padding: calc(5 * var(--ratio, 1)) calc(14 * var(--ratio, 1));
  border-radius: calc(4 * var(--ratio, 1));
  background-color: var(--color-secondary);
  font-size: var(--fz-14);
  color: var(--color-white);
  white-space: nowrap;
}
@media screen and (max-width: 640px) {
  .subscription-plans .plan-card__badge {
    font-size: var(--fz-12);
  }
}
.subscription-plans .plan-card__features {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
  margin: calc(20 * var(--ratio, 1)) 0 0;
  padding: 0;
  list-style: none;
}
.subscription-plans .plan-card__features li {
  display: flex;
  align-items: flex-start;
  gap: calc(10 * var(--ratio, 1));
  font-size: var(--fz-16);
  line-height: 1.4;
  color: var(--color-primary);
}
.subscription-plans .plan-card__features li::before {
  content: "";
  flex: 0 0 calc(16 * var(--ratio, 1));
  width: calc(16 * var(--ratio, 1));
  height: calc(16 * var(--ratio, 1));
  margin-top: calc(3 * var(--ratio, 1));
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
}
.subscription-plans .plan-card__features .is-included::before {
  background-color: var(--color-primary);
  -webkit-mask-image: url("../images/svg/font/check-1.svg");
          mask-image: url("../images/svg/font/check-1.svg");
}
.subscription-plans .plan-card__features .is-added::before {
  background-color: var(--color-success);
  -webkit-mask-image: url("../images/svg/font/plus.svg");
          mask-image: url("../images/svg/font/plus.svg");
  -webkit-mask-size: calc(12 * var(--ratio, 1));
          mask-size: calc(12 * var(--ratio, 1));
  -webkit-mask-position: left center;
          mask-position: left center;
}
.subscription-plans .plan-card__features .is-excluded::before {
  background-color: var(--color-grey-medium);
  -webkit-mask-image: url("../images/svg/font/close.svg");
          mask-image: url("../images/svg/font/close.svg");
  -webkit-mask-size: calc(12 * var(--ratio, 1));
          mask-size: calc(12 * var(--ratio, 1));
  -webkit-mask-position: left center;
          mask-position: left center;
}
.subscription-plans .plan-card__features .is-excluded {
  color: var(--color-grey-dark-2);
}
.subscription-plans .plan-card__fineprint {
  margin: calc(16 * var(--ratio, 1)) 0 0;
  font-size: var(--fz-14);
  line-height: 1.4;
  color: var(--color-grey-dark-2);
}
.subscription-plans .plan-card__footnote {
  margin: calc(16 * var(--ratio, 1)) 0 0;
  font-size: var(--fz-12);
  line-height: 1.5;
  color: var(--color-grey-dark);
}
.subscription-plans .plan-card__action {
  --state-display: flex;
  flex-direction: column;
  gap: calc(18 * var(--ratio, 1));
}
.subscription-plans .plan-card__button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(14 * var(--ratio, 1)) calc(18 * var(--ratio, 1));
  border: calc(1 * var(--ratio, 1)) solid var(--color-primary);
  border-radius: calc(4 * var(--ratio, 1));
  background-color: var(--color-primary);
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  color: var(--color-white);
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.subscription-plans .plan-card__button:hover {
  background-color: color-mix(in oklab, var(--color-primary) 85%, var(--color-white));
  border-color: color-mix(in oklab, var(--color-primary) 85%, var(--color-white));
  color: var(--color-white);
}
.subscription-plans .plan-card__button--switch {
  background-color: transparent;
  color: var(--color-primary);
}
.subscription-plans .plan-card__button--switch:hover {
  background-color: color-mix(in oklab, var(--color-primary) 8%, var(--color-white));
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.subscription-plans .plan-card__button--disabled {
  border-color: var(--color-grey-medium-2);
  background-color: var(--color-grey-medium-2);
  color: var(--color-grey-dark-2);
  cursor: not-allowed;
}
.subscription-plans .plan-card__switch-note {
  display: flex;
  align-items: center;
  gap: calc(12 * var(--ratio, 1));
  margin: 0;
  font-size: var(--fz-14);
  text-align: center;
  color: var(--color-grey-dark-2);
}
.subscription-plans .plan-card__switch-note::before, .subscription-plans .plan-card__switch-note::after {
  content: "";
  flex: 1 1 0;
  height: calc(1 * var(--ratio, 1));
  background-color: var(--color-grey-medium-2);
}
.subscription-plans .plan-card--standard {
  border-color: var(--color-secondary);
}
.subscription-plans .plan-card--standard .plan-card__features .is-included::before {
  background-color: var(--color-secondary);
}
.subscription-plans .plan-card--standard .plan-card__button:not(.plan-card__button--disabled) {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary);
}
.subscription-plans .plan-card--standard .plan-card__button:not(.plan-card__button--disabled):hover {
  background-color: color-mix(in oklab, var(--color-secondary) 85%, var(--color-white));
  border-color: color-mix(in oklab, var(--color-secondary) 85%, var(--color-white));
}
.subscription-plans .plan-card--print .plan-card__features .is-included::before {
  background-color: var(--color-secondary);
}
.subscription-plans[\:has\(.subscription-plans__period\%20input\[value\%3Dmonthly\]\:checked\)] .plan-card--print {
  border-color: transparent;
  background-color: color-mix(in oklab, var(--color-blue-light) 70%, var(--color-white));
}
.subscription-plans:has(.subscription-plans__period input[value=monthly]:checked) .plan-card--print {
  border-color: transparent;
  background-color: color-mix(in oklab, var(--color-blue-light) 70%, var(--color-white));
}
.subscription-plans[\:has\(.subscription-plans__period\%20input\[value\%3Dmonthly\]\:checked\)] .plan-card--print .plan-card__tagline,
.subscription-plans[\:has\(.subscription-plans__period\%20input\[value\%3Dmonthly\]\:checked\)] .plan-card--print .plan-card__features,
.subscription-plans[\:has\(.subscription-plans__period\%20input\[value\%3Dmonthly\]\:checked\)] .plan-card--print .plan-card__fineprint {
  opacity: 0.65;
}
.subscription-plans:has(.subscription-plans__period input[value=monthly]:checked) .plan-card--print .plan-card__tagline,
.subscription-plans:has(.subscription-plans__period input[value=monthly]:checked) .plan-card--print .plan-card__features,
.subscription-plans:has(.subscription-plans__period input[value=monthly]:checked) .plan-card--print .plan-card__fineprint {
  opacity: 0.65;
}
.subscription-plans .subscription-plans__keep {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  grid-column-gap: calc(20 * var(--ratio, 1));
  -moz-column-gap: calc(20 * var(--ratio, 1));
       column-gap: calc(20 * var(--ratio, 1));
  grid-row-gap: calc(2 * var(--ratio, 1));
  row-gap: calc(2 * var(--ratio, 1));
  width: 100%;
  padding: calc(24 * var(--ratio, 1)) 0;
  border-top: var(--plans-border);
  border-bottom: var(--plans-border);
}
.subscription-plans .subscription-plans__keep::before {
  content: "";
  grid-row: span 2;
  width: calc(40 * var(--ratio, 1));
  height: calc(40 * var(--ratio, 1));
  background-color: var(--color-primary);
  -webkit-mask-image: url("../images/svg/font/book-open.svg");
          mask-image: url("../images/svg/font/book-open.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
}
@media screen and (max-width: 640px) {
  .subscription-plans .subscription-plans__keep::before {
    width: calc(28 * var(--ratio, 1));
    height: calc(28 * var(--ratio, 1));
  }
}
.subscription-plans .subscription-plans__keep-title {
  margin: 0;
  font-family: var(--ff2);
  font-size: var(--fz-24);
  font-weight: 700;
  color: var(--color-primary);
}
@media screen and (max-width: 640px) {
  .subscription-plans .subscription-plans__keep-title {
    font-size: var(--fz-18);
  }
}
.subscription-plans .subscription-plans__keep-text {
  margin: 0;
  font-size: var(--fz-16);
  color: var(--color-grey-dark-2);
}
@media screen and (max-width: 640px) {
  .subscription-plans .subscription-plans__keep-text {
    font-size: var(--fz-14);
  }
}
.subscription-plans .subscription-faq {
  display: grid;
  grid-template-columns: calc(280 * var(--ratio, 1)) 1fr;
  align-items: start;
  grid-gap: calc(24 * var(--ratio, 1));
  gap: calc(24 * var(--ratio, 1));
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .subscription-plans .subscription-faq {
    grid-template-columns: 1fr;
    gap: calc(16 * var(--ratio, 1));
  }
}
.subscription-plans .subscription-faq__title {
  margin: 0;
  font-family: var(--ff2);
  font-size: var(--fz-24);
  font-weight: 700;
  color: var(--color-primary);
}
.subscription-plans .subscription-faq__list {
  display: flex;
  flex-direction: column;
  gap: calc(12 * var(--ratio, 1));
}
.subscription-plans .subscription-faq__item {
  border: var(--plans-border);
  border-radius: calc(6 * var(--ratio, 1));
  background-color: var(--color-grey-light);
}
.subscription-plans .subscription-faq__item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(16 * var(--ratio, 1));
  padding: calc(16 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  cursor: pointer;
  list-style: none;
  font-size: var(--fz-16);
  font-weight: 600;
  color: var(--color-primary);
}
.subscription-plans .subscription-faq__item summary::-webkit-details-marker {
  display: none;
}
.subscription-plans .subscription-faq__item summary::after {
  content: "";
  flex: 0 0 calc(14 * var(--ratio, 1));
  width: calc(14 * var(--ratio, 1));
  height: calc(14 * var(--ratio, 1));
  background-color: var(--color-primary);
  -webkit-mask-image: url("../images/svg/font/chevron-down.svg");
          mask-image: url("../images/svg/font/chevron-down.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  transition: transform 0.2s ease;
}
.subscription-plans .subscription-faq__item[open] summary::after {
  transform: rotate(180deg);
}
.subscription-plans .subscription-faq__answer {
  padding: 0 calc(20 * var(--ratio, 1)) calc(18 * var(--ratio, 1));
  font-size: var(--fz-16);
  line-height: 1.6;
  color: var(--color-grey-dark-2);
}
.subscription-plans .subscription-faq__answer p {
  margin: 0;
}
.subscription-plans .subscription-faq__more {
  align-self: flex-end;
  margin-top: calc(4 * var(--ratio, 1));
  font-size: var(--fz-16);
  font-weight: 600;
  color: var(--color-primary);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.subscription-plans .subscription-faq__more:hover, .subscription-plans .subscription-faq__more.focus-visible {
  text-decoration: none;
}
.subscription-plans .subscription-faq__more:hover, .subscription-plans .subscription-faq__more:focus-visible {
  text-decoration: none;
}

.subscription-print-form {
  display: flex;
  flex-direction: column;
  gap: calc(20 * var(--ratio, 1));
}
.subscription-print-form .subscription-print__intro {
  margin: 0;
  font-size: var(--fz-15);
  line-height: 1.5;
  color: var(--color-grey-dark-2);
}
.subscription-print-form fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}
.subscription-print-form legend {
  padding: 0;
}
.subscription-print-form .form-item {
  margin: 0;
}
.subscription-print-form label,
.subscription-print-form .fieldset-legend {
  display: block;
  margin-bottom: calc(8 * var(--ratio, 1));
  font-family: var(--ff1);
  font-size: var(--fz-14);
  font-weight: 600;
  color: var(--color-primary);
}
.subscription-print-form .subscription-print__languages.form-composite .fieldset-wrapper > div {
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  width: 100%;
}
.subscription-print-form .subscription-print__languages.form-composite .fieldset-wrapper > div > * {
  flex: 1 1 0;
}
.subscription-print-form .js-form-type-radio {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  gap: calc(10 * var(--ratio, 1));
  padding: calc(12 * var(--ratio, 1)) calc(14 * var(--ratio, 1));
  border: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
  border-radius: calc(6 * var(--ratio, 1));
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.subscription-print-form .js-form-type-radio[\:has\(input\:checked\)] {
  border-color: var(--color-primary);
  background-color: color-mix(in oklab, var(--color-primary) 5%, var(--color-white));
}
.subscription-print-form .js-form-type-radio:has(input:checked) {
  border-color: var(--color-primary);
  background-color: color-mix(in oklab, var(--color-primary) 5%, var(--color-white));
}
.subscription-print-form .js-form-type-radio label {
  margin: 0;
  font-size: var(--fz-16);
  font-weight: 400;
  cursor: pointer;
}
.subscription-print-form .form-select {
  width: 100%;
}
.subscription-print-form .subscription-print__tarif {
  padding: calc(16 * var(--ratio, 1)) calc(18 * var(--ratio, 1));
  border-radius: calc(8 * var(--ratio, 1));
  background-color: color-mix(in oklab, var(--color-blue-light) 70%, var(--color-white));
}
.subscription-print-form .subscription-print__tarif label {
  margin-bottom: calc(2 * var(--ratio, 1));
}
.subscription-print-form .subscription-print__tarif .description {
  margin-top: calc(8 * var(--ratio, 1));
  font-size: var(--fz-12);
  line-height: 1.5;
  color: var(--color-grey-dark-2);
}
.subscription-print-form .subscription-print__price {
  font-family: var(--ff2);
  font-size: var(--fz-32);
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-primary);
}
.subscription-print-form .subscription-print__account-note {
  margin: calc(-8 * var(--ratio, 1)) 0 0;
  font-size: var(--fz-13);
  line-height: 1.5;
  text-align: center;
  color: var(--color-grey-dark-2);
}
.subscription-print-form .subscription-print__submit {
  width: 100%;
  padding: calc(14 * var(--ratio, 1)) calc(18 * var(--ratio, 1));
  border: calc(1 * var(--ratio, 1)) solid var(--color-secondary);
  border-radius: calc(4 * var(--ratio, 1));
  background-color: var(--color-secondary);
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 600;
  color: var(--color-white);
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.subscription-print-form .subscription-print__submit:hover {
  background-color: color-mix(in oklab, var(--color-secondary) 85%, var(--color-white));
  border-color: color-mix(in oklab, var(--color-secondary) 85%, var(--color-white));
}

.checkout-pane.checkout-login {
  --login-gap: calc(18 * var(--ratio, 1));
  --login-inset: calc(20 * var(--ratio, 1));
  display: flex;
  flex-direction: column;
  gap: var(--login-gap);
  width: 100%;
  max-width: calc(560 * var(--ratio, 1));
  margin-left: auto;
  margin-right: auto;
  padding: calc(32 * var(--ratio, 1)) calc(28 * var(--ratio, 1));
}
.checkout-pane.checkout-login .form-wrapper__login-option {
  float: none;
  width: 100%;
  padding: 0;
}
.checkout-pane.checkout-login input:not([type=submit]),
.checkout-pane.checkout-login select {
  width: 100%;
}
.checkout-pane.checkout-login .fieldset-wrapper,
.checkout-pane.checkout-login .fieldset-wrapper > :not(.js-form-item) {
  align-items: stretch;
}
.checkout-pane.checkout-login .fieldset-legend {
  font-family: var(--ff2);
  font-size: var(--fz-20);
  font-weight: 700;
  color: var(--color-primary);
}
.checkout-pane.checkout-login legend {
  margin: 0 0 calc(16 * var(--ratio, 1));
  padding: 0;
}
.checkout-pane.checkout-login .description {
  margin-top: calc(6 * var(--ratio, 1));
  font-size: var(--fz-12);
  line-height: 1.5;
  color: var(--color-grey-dark-2);
}
.checkout-pane.checkout-login .checkout-login__submit {
  width: 100%;
  padding: calc(15 * var(--ratio, 1)) calc(18 * var(--ratio, 1));
  font-size: var(--fz-14);
}
.checkout-pane.checkout-login fieldset.checkout-login__panel {
  display: flex;
  flex-direction: column;
  gap: calc(14 * var(--ratio, 1));
  margin: 0;
}
.checkout-pane.checkout-login fieldset.checkout-login__panel > .fieldset-wrapper {
  gap: var(--login-gap) !important;
  align-items: stretch !important;
}
.checkout-pane.checkout-login fieldset.checkout-login__panel > .fieldset-wrapper {
  display: flex;
  flex-direction: column;
}
.checkout-pane.checkout-login fieldset.checkout-login__panel .form-item {
  margin: 0;
}
.checkout-pane.checkout-login .checkout-login__forgot {
  align-self: flex-end;
  margin-top: calc(-8 * var(--ratio, 1));
  font-size: var(--fz-14);
  color: var(--color-grey-dark-2);
  text-decoration: underline;
}
.checkout-pane.checkout-login .checkout-login__forgot:hover {
  color: var(--color-secondary);
}
.checkout-pane.checkout-login .checkout-login__or {
  display: flex;
  align-items: center;
  gap: calc(14 * var(--ratio, 1));
  margin: 0;
  font-size: var(--fz-12);
  text-transform: uppercase;
  letter-spacing: calc(1 * var(--ratio, 1));
  color: var(--color-grey-medium);
}
.checkout-pane.checkout-login .checkout-login__or::before, .checkout-pane.checkout-login .checkout-login__or::after {
  content: "";
  flex: 1 1 0;
  height: calc(1 * var(--ratio, 1));
  background-color: var(--color-grey-medium-2);
}
.checkout-pane.checkout-login .checkout-login__register {
  display: block;
  border: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
  border-radius: calc(8 * var(--ratio, 1));
  padding-left: var(--login-inset);
  padding-right: var(--login-inset);
  overflow: hidden;
}
.checkout-pane.checkout-login .checkout-login__register > summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(10 * var(--ratio, 1));
  margin-left: calc(-1 * var(--login-inset));
  margin-right: calc(-1 * var(--login-inset));
  padding: calc(16 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  cursor: pointer;
  font-family: var(--ff1);
  font-size: var(--fz-14);
  font-weight: 600;
  letter-spacing: calc(1 * var(--ratio, 1));
  text-transform: uppercase;
  color: var(--color-secondary);
  transition: background-color 0.2s ease;
  list-style: none;
}
.checkout-pane.checkout-login .checkout-login__register > summary::-webkit-details-marker {
  display: none;
}
.checkout-pane.checkout-login .checkout-login__register > summary::after {
  content: "";
  width: calc(8 * var(--ratio, 1));
  height: calc(8 * var(--ratio, 1));
  border-right: calc(2 * var(--ratio, 1)) solid currentColor;
  border-bottom: calc(2 * var(--ratio, 1)) solid currentColor;
  transform: translateY(calc(-2 * var(--ratio, 1))) rotate(45deg);
  transition: transform 0.2s ease;
}
.checkout-pane.checkout-login .checkout-login__register > summary:hover {
  background-color: color-mix(in oklab, var(--color-secondary) 8%, var(--color-white));
}
.checkout-pane.checkout-login .checkout-login__register[open] {
  padding-bottom: var(--login-inset);
}
.checkout-pane.checkout-login .checkout-login__register[open] > summary {
  border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
}
.checkout-pane.checkout-login .checkout-login__register[open] > summary::after {
  transform: translateY(calc(2 * var(--ratio, 1))) rotate(-135deg);
}
.checkout-pane.checkout-login .checkout-login__register > :not(summary) {
  margin: var(--login-gap) 0 0;
}
.checkout-pane.checkout-login .checkout-login__intro {
  font-size: var(--fz-14);
  line-height: 1.5;
  color: var(--color-grey-dark-2);
}
.checkout-pane.checkout-login .js-form-type-password-confirm {
  display: flex;
  flex-direction: column;
  gap: var(--login-gap);
}
.checkout-pane.checkout-login .field--name-field-adresse legend,
.checkout-pane.checkout-login .field--name-field-adresse .fieldset-legend,
.checkout-pane.checkout-login .field--name-field-adresse-livraison legend,
.checkout-pane.checkout-login .field--name-field-adresse-livraison .fieldset-legend {
  font-family: var(--ff1);
  font-size: var(--fz-14);
  font-weight: 600;
  color: var(--color-primary);
}
.checkout-pane.checkout-login .field--name-field-adresse .form-item + .form-item,
.checkout-pane.checkout-login .field--name-field-adresse .address-container-inline + .form-item,
.checkout-pane.checkout-login .field--name-field-adresse .form-item + .address-container-inline,
.checkout-pane.checkout-login .field--name-field-adresse-livraison .form-item + .form-item,
.checkout-pane.checkout-login .field--name-field-adresse-livraison .address-container-inline + .form-item,
.checkout-pane.checkout-login .field--name-field-adresse-livraison .form-item + .address-container-inline {
  margin-top: var(--login-gap);
}
.checkout-pane.checkout-login .field--name-field-adresse .address-container-inline .form-item + .form-item,
.checkout-pane.checkout-login .field--name-field-adresse-livraison .address-container-inline .form-item + .form-item {
  margin-top: 0;
}
.checkout-pane.checkout-login .js-form-item-livraison-identique {
  margin-top: var(--login-gap) !important;
}
.checkout-pane.checkout-login .js-form-item-livraison-identique {
  align-items: flex-start;
  padding-top: var(--login-gap);
  border-top: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
}
.checkout-pane.checkout-login .js-form-item-livraison-identique input {
  margin-top: calc(1 * var(--ratio, 1));
}
.checkout-pane.checkout-login .js-form-item-livraison-identique label {
  margin: 0;
  font-family: var(--ff1);
  font-size: var(--fz-14);
  font-weight: 400;
  line-height: 1.4;
  color: var(--color-primary);
  cursor: pointer;
}
.checkout-pane.checkout-login .password-strength,
.checkout-pane.checkout-login .password-confirm-message,
.checkout-pane.checkout-login .password-suggestions {
  margin-top: calc(6 * var(--ratio, 1));
  font-size: var(--fz-12);
  line-height: 1.5;
  color: var(--color-grey-dark-2);
}
.checkout-pane.checkout-login .password-strength__meter {
  height: calc(4 * var(--ratio, 1));
  margin-bottom: calc(4 * var(--ratio, 1));
  border-radius: calc(2 * var(--ratio, 1));
  background-color: var(--color-grey-medium-2);
  overflow: hidden;
}

@media screen and (max-width: 640px) {
  .checkout-pane.checkout-login {
    padding: calc(24 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  }
}
.maintenance {
  --ratio: 1px;
  --maintenance-gutter: max(16px, min(5vw, 40px));
  --maintenance-sea-height: clamp(120px, 8vw + 8vh + 30px, 240px);
  --maintenance-boat: clamp(96px, 7vw + 70px, 180px);
  --maintenance-swell: calc(var(--maintenance-sea-height) * 0.04);
  --maintenance-ink: var(--color-blue-dark-light);
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100svh;
  overflow: hidden;
  background: linear-gradient(180deg, var(--color-white) 0%, var(--color-white) 30%, var(--color-blue-light) 100%);
  color: var(--maintenance-ink);
  text-align: center;
}
.maintenance .maintenance__header {
  display: flex;
  justify-content: center;
  padding: max(24px, min(5vh, 56px)) var(--maintenance-gutter) 0;
}
.maintenance .maintenance__logo {
  display: block;
  width: clamp(190px, 14vw + 140px, 300px);
}
.maintenance .maintenance__logo img {
  display: block;
  width: 100%;
  height: auto;
}
.maintenance .maintenance__main {
  position: relative;
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  padding: max(28px, min(6vh, 64px)) var(--maintenance-gutter) calc(var(--maintenance-boat) * 0.45 + 12px);
}
.maintenance .maintenance__content {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.maintenance .maintenance__status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: 100%;
  margin: 0 0 max(16px, min(2.5vh, 24px));
  padding: 7px 16px;
  border-radius: 100px;
  background: rgba(242, 101, 49, 0.1);
  color: var(--color-secondary);
  font-family: var(--ff2);
  font-size: clamp(12px, 0.3vw + 11px, 14px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.maintenance .maintenance__pulse {
  position: relative;
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--color-secondary);
}
.maintenance .maintenance__pulse::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  background: inherit;
  animation: maintenance-pulse 2s ease-out infinite;
}
.maintenance .maintenance__title {
  margin: 0 0 max(14px, min(2vh, 20px));
  font-family: var(--ff2);
  font-size: clamp(34px, 3.6vw + 20px, 64px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: var(--color-primary);
  text-wrap: balance;
}
.maintenance .maintenance__message {
  max-width: 34em;
  margin: 0 0 max(24px, min(4vh, 36px));
  font-family: var(--ff1);
  font-size: clamp(16px, 0.25vw + 15px, 18px);
  font-weight: 300;
  line-height: 1.6;
  color: var(--maintenance-ink);
  text-wrap: pretty;
}
.maintenance .maintenance__message p {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
}
.maintenance .maintenance__retry {
  padding: 14px 28px;
  font-size: 14px;
}
.maintenance .maintenance__gulls {
  position: absolute;
  bottom: calc(100% + 12px);
  right: 0;
  width: max(56px, min(7vw, 120px));
  fill: none;
  stroke: var(--color-primary);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0.35;
  animation: maintenance-gulls 9s ease-in-out infinite alternate;
}
.maintenance .maintenance__sea {
  position: relative;
  flex: none;
  height: var(--maintenance-sea-height);
  margin-bottom: -1px;
}
.maintenance .maintenance__waves {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.maintenance .maintenance__waves use {
  animation: maintenance-wave 18s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite;
}
.maintenance .maintenance__waves--back use:nth-of-type(1) {
  fill: var(--color-blue);
  opacity: 0.3;
  animation-duration: 11s;
  animation-delay: -2s;
}
.maintenance .maintenance__waves--back use:nth-of-type(2) {
  fill: var(--color-tertiary);
  opacity: 0.55;
  animation-duration: 15s;
  animation-delay: -4s;
}
.maintenance .maintenance__waves--front {
  z-index: 2;
  animation: maintenance-swell 4.5s ease-in-out infinite;
}
.maintenance .maintenance__waves--front use {
  fill: var(--color-primary);
  animation: none;
}
.maintenance .maintenance__boat {
  position: absolute;
  z-index: 1;
  left: 68%;
  bottom: 67.8571428571%;
  width: var(--maintenance-boat);
  translate: -50% 11.8%;
  animation: maintenance-drift 26s ease-in-out infinite alternate;
}
.maintenance .maintenance__boat svg {
  display: block;
  width: 100%;
  height: auto;
  transform-origin: 50% 85%;
  animation: maintenance-bob 4.5s ease-in-out infinite;
}
.maintenance .maintenance__hull,
.maintenance .maintenance__mast {
  fill: var(--color-primary);
}
.maintenance .maintenance__hull--far {
  fill: var(--color-blue-dark-light);
}
.maintenance .maintenance__cabin {
  fill: var(--color-white);
  stroke: var(--color-primary);
  stroke-width: 2;
  stroke-linejoin: round;
}
.maintenance .maintenance__sail--main {
  fill: var(--color-white);
  stroke: var(--color-primary);
  stroke-width: 2.5;
  stroke-linejoin: round;
}
.maintenance .maintenance__sail--jib {
  fill: var(--color-secondary);
}
.maintenance .maintenance__sheer {
  fill: none;
  stroke: var(--color-white);
  stroke-width: 2;
  stroke-linecap: round;
}
.maintenance .maintenance__window {
  fill: var(--color-primary);
}
.maintenance .maintenance__footer {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  padding: 8px var(--maintenance-gutter) max(24px, min(4vh, 32px));
  background: var(--color-primary);
  color: var(--color-white);
}
.maintenance .maintenance__follow {
  margin: 0;
  font-family: var(--ff2);
  font-size: clamp(12px, 0.3vw + 11px, 14px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-white);
  opacity: 0.8;
}
.maintenance .block-reseaux {
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(8px, 1vw + 4px, 12px);
}
.maintenance .block-reseaux a {
  width: clamp(36px, 1.5vw + 30px, 42px);
  height: clamp(36px, 1.5vw + 30px, 42px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: var(--color-white);
}
.maintenance .block-reseaux a:hover, .maintenance .block-reseaux a.focus-visible {
  border-color: var(--color-secondary);
  background: var(--color-secondary);
  color: var(--color-white);
}
.maintenance .block-reseaux a:hover, .maintenance .block-reseaux a:focus-visible {
  border-color: var(--color-secondary);
  background: var(--color-secondary);
  color: var(--color-white);
}
.maintenance .block-reseaux a svg {
  width: 18px;
  height: 18px;
}
.maintenance .maintenance__copyright {
  margin: 4px 0 0;
  font-family: var(--ff1);
  font-size: 12px;
  font-weight: 300;
  line-height: 1.4;
  color: var(--color-white);
  opacity: 0.6;
}
@media (prefers-reduced-motion: reduce) {
  .maintenance *,
  .maintenance *::after {
    animation: none !important;
  }
}

@keyframes maintenance-wave {
  from {
    transform: translate3d(-90px, 0, 0);
  }
  to {
    transform: translate3d(85px, 0, 0);
  }
}
@keyframes maintenance-swell {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(var(--maintenance-swell));
  }
}
@keyframes maintenance-bob {
  0%, 100% {
    transform: translateY(0) rotate(-2.5deg);
  }
  50% {
    transform: translateY(var(--maintenance-swell)) rotate(2deg);
  }
}
@keyframes maintenance-drift {
  from {
    transform: translateX(-20%);
  }
  to {
    transform: translateX(20%);
  }
}
@keyframes maintenance-pulse {
  from {
    transform: scale(1);
    opacity: 0.6;
  }
  to {
    transform: scale(3);
    opacity: 0;
  }
}
@keyframes maintenance-gulls {
  from {
    transform: translate(0, 0);
  }
  to {
    transform: translate(-24px, 8px);
  }
}
.info-tooltip {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.info-tooltip .info-tooltip__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(18 * var(--ratio, 1));
  height: calc(18 * var(--ratio, 1));
  padding: 0;
  border: 1px solid var(--color-primary);
  border-radius: 50%;
  background: transparent;
  color: var(--color-primary);
  font-family: Georgia, "Times New Roman", serif;
  font-size: var(--fz-12);
  font-style: italic;
  font-weight: 700;
  line-height: 1;
  cursor: help;
}
.info-tooltip .info-tooltip__content {
  position: absolute;
  bottom: calc(100% + (10 * var(--ratio, 1)));
  bottom: calc(100% + calc(10 * var(--ratio, 1)));
  left: 50%;
  z-index: 20;
  width: -moz-max-content;
  width: max-content;
  max-width: min(calc(400 * var(--ratio, 1)), 100vw - 32px);
  padding: calc(8 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
  border-radius: calc(4 * var(--ratio, 1));
  background-color: var(--color-primary);
  color: var(--color-white);
  font-size: var(--fz-12);
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  text-transform: none;
  white-space: normal;
  transform: translateX(calc(-50% + var(--info-tooltip-shift, 0px)));
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.15s, visibility 0.15s;
}
.info-tooltip .info-tooltip__content::after {
  content: "";
  position: absolute;
  top: 100%;
  left: calc(50% - var(--info-tooltip-shift, 0px));
  border: calc(6 * var(--ratio, 1)) solid transparent;
  border-top-color: var(--color-primary);
  transform: translateX(-50%);
}
.info-tooltip .info-tooltip__line {
  display: block;
}
.info-tooltip.is-open .info-tooltip__content, .info-tooltip:not(.is-dismissed) .info-tooltip__button.focus-visible + .info-tooltip__content {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.info-tooltip.is-open .info-tooltip__content, .info-tooltip:not(.is-dismissed) .info-tooltip__button:focus-visible + .info-tooltip__content {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
@media (hover: hover) {
  .info-tooltip:not(.is-dismissed):hover .info-tooltip__content {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
}

.path--multihull-of-the-year #block-multicoques-custom-titredelapage {
  display: none;
}
.path--multihull-of-the-year .mhoty-logo {
  display: flex;
  justify-content: center;
}
.path--multihull-of-the-year .mhoty-logo img {
  width: calc(400 * var(--ratio, 1));
}
.path--multihull-of-the-year .mhoty-nav__list {
  display: flex;
  justify-content: center;
  margin: calc(10 * var(--ratio, 1)) 0 calc(20 * var(--ratio, 1));
  border-top: 1px solid var(--color-grey-medium-2);
  border-bottom: 1px solid var(--color-grey-medium-2);
  padding: calc(4 * var(--ratio, 1)) 0;
}
.path--multihull-of-the-year .mhoty-nav__list a {
  font-size: 14px;
  color: #000;
  text-decoration: none;
  display: block;
  padding: 8px 16px;
  text-transform: uppercase;
}
.path--multihull-of-the-year .mhoty-nav__list a:hover {
  background-color: var(--color-grey-medium-2);
}
.path--multihull-of-the-year .mhoty-nav__list a.mhoty-nav__link--active {
  font-weight: bold;
}
.path--multihull-of-the-year .mhoty-category legend {
  display: flex;
  justify-content: center;
  width: 100%;
  color: var(--color-primary);
  font-size: var(--fz-26);
  text-transform: uppercase;
}
.path--multihull-of-the-year .mhoty-category .fieldset-wrapper {
  display: flex;
  justify-content: center;
}
.path--multihull-of-the-year .mhoty-category .fieldset-wrapper .mhoty-category-subtitle {
  margin-left: auto;
  margin-right: auto;
  color: var(--color-black);
  font-size: var(--fz-14);
}
.path--multihull-of-the-year .mhoty-category {
  text-align: center;
}
.path--multihull-of-the-year .mhoty-category__boats {
  flex-direction: row !important;
  justify-content: center !important;
  gap: 20px 2% !important;
}
.path--multihull-of-the-year .mhoty-category__boats {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  width: 100%;
  text-align: left;
  margin-top: calc(20 * var(--ratio, 1));
  margin-bottom: calc(100 * var(--ratio, 1));
}
.path--multihull-of-the-year .mhoty-boats-details {
  flex-direction: row !important;
  justify-content: center !important;
  gap: 20px 2% !important;
}
.path--multihull-of-the-year .mhoty-boats-details {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  width: 100%;
  text-align: left;
  margin-top: calc(20 * var(--ratio, 1));
  margin-bottom: calc(100 * var(--ratio, 1));
}
.path--multihull-of-the-year .mhoty-boat-card {
  flex-direction: column !important;
}
.path--multihull-of-the-year .mhoty-boat-card {
  display: flex;
  gap: calc(6 * var(--ratio, 1));
  width: 22%;
  text-align: left;
}
.path--multihull-of-the-year .mhoty-boat-card .mhoty-boat-card__photo {
  position: relative;
  border: 3px solid var(--color-white);
}
.path--multihull-of-the-year .mhoty-boat-card .mhoty-boat-card__photo::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("../images/svg/font/check-w.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 30%;
  opacity: 0.4;
}
.path--multihull-of-the-year .mhoty-boat-card .mhoty-boat-card__photo img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 320/200;
}
.path--multihull-of-the-year .mhoty-boat-card .mhoty-boat-card__name {
  margin-top: calc(4 * var(--ratio, 1));
  margin-bottom: calc(12 * var(--ratio, 1));
}
.path--multihull-of-the-year .mhoty-boat-card .mhoty-boat-card__links {
  display: flex;
  flex-direction: column;
  gap: calc(6 * var(--ratio, 1));
}
.path--multihull-of-the-year .mhoty-boat-card .mhoty-boat-card__links a {
  color: var(--mc-color-blue);
  font-size: var(--fz-14);
}
.path--multihull-of-the-year .mhoty-boat-card:hover .mhoty-boat-card__photo {
  border-color: var(--color-secondary);
}
.path--multihull-of-the-year .mhoty-boat-card:hover .mhoty-boat-card__photo::before {
  opacity: 0.8;
}
.path--multihull-of-the-year .mhoty-boat-card.selected .mhoty-boat-card__photo {
  border-color: var(--color-secondary);
}
.path--multihull-of-the-year .mhoty-boat-card.selected .mhoty-boat-card__photo::before {
  opacity: 1;
}
.path--multihull-of-the-year .mhoty-phase-text .text-align-center img,
.path--multihull-of-the-year .mhoty-phase-text [data-align=center],
.path--multihull-of-the-year .mhoty-content-page__body .text-align-center img,
.path--multihull-of-the-year .mhoty-content-page__body [data-align=center] {
  margin: 0 auto;
}
.path--multihull-of-the-year .mhoty-boat-radios {
  display: none;
}
.path--multihull-of-the-year .mhoty-boats-details > .mhoty-boat-card {
  cursor: pointer;
}
.path--multihull-of-the-year .mhoty-voter-info legend {
  margin-left: auto;
  margin-right: auto;
  font-size: var(--fz-26);
  color: var(--color-primary);
}
.path--multihull-of-the-year .mhoty-submit-btn {
  --_bg: var(--color-secondary);
}
.path--multihull-of-the-year .mhoty-phase--resultats .mhoty-boat-card__result {
  font-style: italic;
}
.path--multihull-of-the-year .mhoty-phase--resultats .mhoty-boat-card__result > strong {
  font-style: normal;
  font-size: var(--fz-32);
}
.path--multihull-of-the-year .mhoty-phase--resultats .mhoty-boat-card--winner .mhoty-boat-card__photo {
  border-color: var(--color-secondary);
}
.path--multihull-of-the-year .mhoty-phase--resultats .mhoty-boat-card:hover .mhoty-boat-card__photo {
  border-color: var(--color-white);
}
.path--multihull-of-the-year .mhoty-phase--resultats .mhoty-boat-card:hover.mhoty-boat-card--winner .mhoty-boat-card__photo {
  border-color: var(--color-secondary);
}
.path--multihull-of-the-year .mhoty-phase--resultats .mhoty-boat-card__photo::before {
  display: none;
}

/**
 * Habillage du bandeau de consentement (tarteaucitron / module TacJS).
 *
 * La bibliothèque n'expose aucun réglage de couleur : son CSS
 * (/libraries/tarteaucitronjs/css/tarteaucitron.css) est chargé par le module,
 * et tout se personnalise ici. Ses règles portent des sélecteurs très
 * spécifiques et beaucoup de !important, d'où les !important ci-dessous.
 *
 * Deux couleurs seulement :
 * - les fonds sombres (#333) passent à l'orange de la charte ;
 * - le vert d'acceptation passe au bleu de la charte.
 * Le refus reste rouge : il doit rester aussi lisible que l'acceptation.
 */
#tarteaucitronRoot #tarteaucitronAlertBig::before {
  content: none !important;
}
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 10px 0 0;
  font-size: var(--fz-18);
  text-align: center;
}
#tarteaucitronRoot #tarteaucitronAlertBig,
#tarteaucitronRoot #tarteaucitronClosePanel,
#tarteaucitronRoot #tarteaucitronInfo,
#tarteaucitronRoot #tarteaucitronSave,
#tarteaucitronRoot #tarteaucitron .tarteaucitronTitle button,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine:hover {
  background: var(--color-secondary) !important;
  color: var(--color-white) !important;
}
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
  border-color: var(--color-secondary) !important;
}
#tarteaucitronRoot #tarteaucitron .tarteaucitronBorder {
  border-color: var(--color-secondary) !important;
}
#tarteaucitronRoot #tarteaucitronPersonalize2,
#tarteaucitronRoot #tarteaucitronSaveButton,
#tarteaucitronRoot .tarteaucitronCTAButton.tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow {
  background: var(--color-primary) !important;
  background-color: var(--color-primary) !important;
}
#tarteaucitronRoot #tarteaucitronDotGreen {
  background-color: var(--color-primary) !important;
}

/**
 * Emplacements en attente de consentement : vidéo bloquée, bloc publicité.
 * Ils sont rendus hors de #tarteaucitronRoot, d'où le sélecteur séparé.
 */
.tac_activate {
  background: var(--color-secondary) !important;
}
.tac_activate {
  color: var(--color-white);
}
.tac_activate .tac_float .tarteaucitronAllow {
  background: var(--color-primary) !important;
  background-color: var(--color-primary) !important;
}

/**
 * Bloc publicité refusé : un encart neutre à la place de la pub, pas une
 * bannière orange de 24 px qui a l'air d'une erreur. Il occupe la place d'un
 * format courant (728 × 90 au-dessus du contenu) pour que la mise en page ne
 * saute pas à l'acceptation. Libellé fourni par js/tacjs-ads.js.
 */
.tac_activate.tac_activate_multicoquesads {
  background: var(--color-grey-light-2) !important;
}
.tac_activate.tac_activate_multicoquesads {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(8 * var(--ratio, 1));
  box-sizing: border-box;
  min-height: calc(90 * var(--ratio, 1));
  padding: calc(16 * var(--ratio, 1)) calc(24 * var(--ratio, 1));
  border: calc(1 * var(--ratio, 1)) dashed var(--color-grey-medium);
  color: var(--color-primary);
  font-size: var(--fz-14);
  line-height: 1.4;
}
.tac_activate.tac_activate_multicoquesads .tac_float {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(8 * var(--ratio, 1));
}
.tac_activate.tac_activate_multicoquesads .tac_activate__label {
  color: var(--color-grey);
  font-size: var(--fz-12);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.tac_activate.tac_activate_multicoquesads .tac_float .tarteaucitronAllow {
  margin: calc(4 * var(--ratio, 1)) 0 0;
  padding: calc(8 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
}

.region-content-above .ad-block__consent {
  width: calc(728 * var(--ratio, 1));
  max-width: 100%;
}

form {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
}
form .form-wrapper,
form .field-group-fieldset {
  border: none;
  padding: 0;
  margin-left: 0;
  margin-right: 0;
}
form .form-wrapper legend,
form .field-group-fieldset legend {
  font-size: var(--fz-18);
  font-weight: 700;
  margin-bottom: calc(16 * var(--ratio, 1));
}
form .form-wrapper > .fieldset-wrapper,
form .form-wrapper > .fieldset-wrapper > :not(.js-form-item),
form .field-group-fieldset > .fieldset-wrapper,
form .field-group-fieldset > .fieldset-wrapper > :not(.js-form-item) {
  gap: calc(10 * var(--ratio, 1)) !important;
}
form .form-wrapper > .fieldset-wrapper,
form .form-wrapper > .fieldset-wrapper > :not(.js-form-item),
form .field-group-fieldset > .fieldset-wrapper,
form .field-group-fieldset > .fieldset-wrapper > :not(.js-form-item) {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
form .js-form-item .description {
  margin-top: calc(10 * var(--ratio, 1));
}
form .form-composite .fieldset-wrapper > div {
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
}
form .js-form-type-checkbox,
form .js-form-type-radio {
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
}
form .js-form-type-checkbox input,
form .js-form-type-radio input {
  width: calc(22 * var(--ratio, 1));
  height: calc(22 * var(--ratio, 1));
  flex: 0 0 calc(22 * var(--ratio, 1));
}

select,
textarea,
input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]) {
  padding: calc(15 * var(--ratio, 1)) calc(18 * var(--ratio, 1));
  border-radius: calc(3 * var(--ratio, 1));
  border: 1px solid var(--color-grey-medium-2);
  background-color: var(--color-white);
  color: var(--color-black);
  font-size: var(--fz-14);
  line-height: 1;
  width: 100%;
}
select::-moz-placeholder, textarea::-moz-placeholder, input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button])::-moz-placeholder {
  color: var(--color-grey-medium);
}
select::placeholder,
textarea::placeholder,
input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button])::placeholder {
  color: var(--color-grey-medium);
}
select:focus,
textarea:focus,
input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus {
  outline: none;
}
select:disabled,
textarea:disabled,
input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):disabled {
  background-color: var(--color-grey-medium-2);
  color: var(--color-grey-dark);
}
select option,
textarea option,
input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]) option {
  background-color: var(--color-white);
  color: var(--color-black);
  font-size: var(--fz-14);
  line-height: 1;
}
select option[disabled][hidden],
textarea option[disabled][hidden],
input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]) option[disabled][hidden] {
  color: yellow;
}

select.has-value {
  background-color: red;
}
select:invalid {
  color: var(--color-grey-medium);
}

input[type=radio] {
  margin: 0;
  width: calc(22 * var(--ratio, 1));
  height: calc(22 * var(--ratio, 1));
  border-radius: 50%;
  border: 1px solid var(--color-grey-medium-2);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
input[type=radio]:checked {
  background-color: var(--color-primary);
}
input[type=radio]:hover {
  border-color: var(--color-grey-medium-2);
}
input[type=radio]:focus {
  outline: none;
}
input[type=radio]:disabled {
  background-color: var(--color-grey-medium-2);
}
input[type=radio].style-2:checked {
  background-color: var(--color-secondary);
}

@media screen and (max-width: 640px) {
  .user-login-bloc {
    margin-bottom: calc(12 * var(--ratio, 1)) !important;
  }
}
@media screen and (max-width: 640px) {
  .user-login-bloc .grid-2 {
    grid-template-columns: 1fr;
    gap: calc(24 * var(--ratio, 1));
  }
  .user-login-bloc .grid-2 > div {
    padding-bottom: calc(24 * var(--ratio, 1)) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    border-bottom: 1px solid var(--color-grey-medium-2) !important;
  }
  .user-login-bloc .grid-2 > div:last-child {
    padding-bottom: 0 !important;
    border-bottom: none !important;
  }
}
.user-login-bloc form {
  max-width: calc(400 * var(--ratio, 1));
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 640px) {
  .user-login-bloc form {
    max-width: 100%;
  }
}
.user-login-bloc form input {
  width: 100%;
}
.user-login-bloc form input :invalid {
  border-color: var(--color-secondary);
}
@media screen and (max-width: 640px) {
  .user-login-bloc form .link {
    text-align: center;
  }
}

.user-pass {
  max-width: calc(400 * var(--ratio, 1));
  margin-left: auto;
  margin-right: auto;
}

.user-pass-bloc form input {
  width: 100%;
}
.user-pass-bloc form input:invalid {
  border-color: currentColor;
  border-color: initial;
}

.user-register-bloc form {
  max-width: calc(400 * var(--ratio, 1));
  margin-left: auto;
  margin-right: auto;
}
.user-register-bloc form .layout__region {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
}
.user-register-bloc form input {
  width: 100%;
}
.user-register-bloc form input:invalid {
  border-color: currentColor;
  border-color: initial;
}
.user-register-bloc form .user-register__livraison-title {
  margin: calc(24 * var(--ratio, 1)) 0 calc(6 * var(--ratio, 1));
  font-family: inherit;
  font-size: var(--fz-18);
  font-weight: 700;
  line-height: normal;
  color: inherit;
  text-transform: none;
  letter-spacing: normal;
}
.user-register-bloc form [data-drupal-selector=edit-field-adresse-livraison-wrapper] legend {
  display: none;
}
.user-register-bloc form .js-form-item-livraison-identique,
.user-register-bloc form .js-form-item-newsletter-optin {
  align-items: flex-start;
}
.user-register-bloc form .js-form-item-livraison-identique label,
.user-register-bloc form .js-form-item-newsletter-optin label {
  margin: 0;
  font-size: calc(13 * var(--ratio, 1));
  font-weight: 600;
  line-height: 1.3;
  color: var(--color-primary);
  cursor: pointer;
}
.user-register-bloc form .newsletter-optin__separator {
  width: 100%;
  margin: calc(6 * var(--ratio, 1)) 0;
}

.checkbox-wrapper {
  position: relative;
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
}
.checkbox-wrapper input {
  width: calc(22 * var(--ratio, 1));
  height: calc(22 * var(--ratio, 1));
  opacity: 0;
}
.checkbox-wrapper .checkbox-render {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(22 * var(--ratio, 1));
  height: calc(22 * var(--ratio, 1));
  background-color: var(--color-white);
  border-radius: calc(2 * var(--ratio, 1));
  border: 1px solid var(--color-grey-medium-2);
}
.checkbox-wrapper .checkbox-render::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  transition: width 0.1s ease-in-out, height 0.1s ease-in-out;
  background-color: var(--color-primary);
  -webkit-mask-image: url("../images/svg/font/check.svg");
          mask-image: url("../images/svg/font/check.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.checkbox-wrapper input:checked + .checkbox-render::after {
  width: calc(12 * var(--ratio, 1));
  height: calc(12 * var(--ratio, 1));
}

.radio-wrapper {
  --radio-bg-color: var(--color-primary);
  --radio-border-color: var(--color-grey-medium-2);
  --radio-border-color-active: var(--color-grey-medium-2);
  --radio-size: calc(22 * var(--ratio, 1));
  --radio-after-size: calc(14 * var(--ratio, 1));
  --radio-border-size: calc(1 * var(--ratio, 1));
  position: relative;
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
}
.radio-wrapper input {
  width: var(--radio-size);
  height: var(--radio-size);
  opacity: 0;
}
.radio-wrapper .radio-render {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: var(--radio-size);
  height: var(--radio-size);
  background-color: var(--color-white);
  border-radius: 50%;
  border: var(--radio-border-size) solid var(--radio-border-color);
}
.radio-wrapper .radio-render::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background-color: var(--radio-bg-color);
  width: 0;
  height: 0;
  transition: width 0.1s ease-in-out, height 0.1s ease-in-out;
}
.radio-wrapper input:checked + .radio-render {
  border-color: var(--radio-border-color-active);
}
.radio-wrapper input:checked + .radio-render::after {
  width: var(--radio-after-size);
  height: var(--radio-after-size);
}
.radio-wrapper.style-2 {
  --radio-bg-color: var(--color-secondary);
  --radio-border-color-active: var(--color-secondary);
  --radio-size: calc(20 * var(--ratio, 1));
  --radio-after-size: calc(10 * var(--ratio, 1));
  --radio-border-size: calc(2 * var(--ratio, 1));
}

.user-mon-compte-form {
  max-width: calc(450 * var(--ratio, 1));
}
.user-mon-compte-form input {
  width: 100%;
}

form .account-delete-link {
  margin-top: calc(30 * var(--ratio, 1));
  padding-top: calc(15 * var(--ratio, 1));
  border-top: 1px solid var(--color-grey-medium-2);
}
@media screen and (min-width: 1025px) {
  form .account-delete-link {
    align-items: center;
  }
}
form .account-delete-link a {
  color: var(--color-error);
  font-size: var(--fz-12);
}

body[\:has\(form.account-delete\)] .main-title {
  text-align: center;
}

body:has(form.account-delete) .main-title {
  text-align: center;
}

.account-delete {
  width: 100%;
  max-width: calc(560 * var(--ratio, 1));
  margin-left: auto;
  margin-right: auto;
  padding: calc(32 * var(--ratio, 1)) calc(28 * var(--ratio, 1));
}
@media screen and (max-width: 640px) {
  .account-delete {
    padding: calc(20 * var(--ratio, 1)) calc(16 * var(--ratio, 1));
  }
}
.account-delete p {
  margin: 0;
}
.account-delete > h3 {
  margin: calc(8 * var(--ratio, 1)) 0 0;
  font-size: var(--fz-18);
}
.account-delete > ul {
  margin: 0;
  padding-left: calc(20 * var(--ratio, 1));
  list-style: disc;
  display: flex;
  flex-direction: column;
  gap: calc(6 * var(--ratio, 1));
}
.account-delete > ul li::first-letter {
  text-transform: uppercase;
}
.account-delete .account-delete__note {
  color: var(--color-grey-dark);
  font-size: var(--fz-12);
}
.account-delete .form-actions {
  display: flex;
  flex-flow: row wrap;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
}
.account-delete .button--danger {
  --bg: var(--color-error);
}
.form-wrapper {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
}

.address-container-inline {
  display: flex;
  flex-direction: row;
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
}
.address-container-inline .js-form-item {
  margin: 0;
  width: 100%;
}
.address-container-inline select,
.address-container-inline input {
  width: 100%;
}

.js-password-confirm:-moz-placeholder + .password-confirm-message {
  display: none;
}

.js-password-confirm:placeholder-shown + .password-confirm-message {
  display: none;
}

.password-confirm-message {
  margin-top: calc(10 * var(--ratio, 1));
}
.password-confirm-message > span {
  color: var(--color-success);
}
.password-confirm-message > span.error {
  color: var(--color-error);
}

.password-suggestions {
  margin-top: calc(10 * var(--ratio, 1));
  color: var(--color-grey-dark);
  font-size: var(--fz-12);
  line-height: 1;
  padding: calc(10 * var(--ratio, 1));
  border: 1px solid var(--color-grey-medium-2);
  border-radius: calc(3 * var(--ratio, 1));
  background-color: var(--color-grey-light);
}
.password-suggestions ul {
  margin: calc(10 * var(--ratio, 1)) 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
}
.password-suggestions ul li::before {
  content: "•";
  margin-right: calc(10 * var(--ratio, 1));
}

.password-strength {
  display: grid;
  flex-direction: row;
  grid-gap: calc(10 * var(--ratio, 1));
  gap: calc(10 * var(--ratio, 1));
  align-items: center;
  margin-bottom: calc(10 * var(--ratio, 1));
}
.password-strength .password-strength__meter {
  marrgin: 0;
}
.password-strength .password-strength__indicator {
  background-color: var(--color-primary);
}
.password-strength .password-strength__indicator.is-weak {
  background-color: var(--color-error);
}
.password-strength .password-strength__indicator.is-fair {
  background-color: var(--color-warning);
}
.password-strength .password-strength__indicator.is-good {
  background-color: var(--color-success);
}
.password-strength .password-strength__indicator.is-strong {
  background-color: var(--color-success);
}

.multicoques-newsletter-form {
  max-width: calc(532 * var(--ratio, 1));
  margin-left: auto;
  margin-right: auto;
}
.multicoques-newsletter-form input {
  width: 100%;
}
.multicoques-newsletter-form .form-actions {
  text-align: center;
}
.multicoques-newsletter-form .form-item-email {
  margin-bottom: 0;
}
.multicoques-newsletter-form .newsletter-form__account {
  margin: calc(12 * var(--ratio, 1)) 0 calc(16 * var(--ratio, 1));
  font-size: var(--fz-14);
}
.multicoques-newsletter-form .newsletter-form__account a {
  text-decoration: underline;
}

/**
 * Erreurs de validation en ligne.
 *
 * La validation navigateur est désactivée (`novalidate`, voir
 * multicoques_custom_form_alter()) : le formulaire part au serveur, Drupal
 * valide *tous* les champs en une passe et le module core Inline Form Errors
 * accroche chaque message à son champ. Le rendu se fait dans
 * templates/form/form-element.html.twig (.form-item--error-message) et, pour
 * les champs composites, dans le fieldset core.
 *
 * Volontairement pas de `:invalid` ici : un champ ne doit devenir rouge
 * qu'après une soumission, jamais pendant la saisie.
 */
.form-item--error-message {
  display: flex;
  align-items: flex-start;
  gap: calc(6 * var(--ratio, 1));
  margin-top: calc(6 * var(--ratio, 1));
  color: var(--color-error);
  font-size: var(--fz-12);
  line-height: 1.3;
}
.form-item--error-message::before {
  content: "!";
  flex: 0 0 calc(14 * var(--ratio, 1));
  width: calc(14 * var(--ratio, 1));
  height: calc(14 * var(--ratio, 1));
  border-radius: 50%;
  background-color: var(--color-error);
  color: var(--color-white);
  font-size: var(--fz-10);
  font-weight: 700;
  line-height: calc(14 * var(--ratio, 1));
  text-align: center;
}

select.error, select[aria-invalid=true],
textarea.error,
textarea[aria-invalid=true],
input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]).error,
input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button])[aria-invalid=true] {
  border-color: var(--color-error);
}

.form-item--error > label {
  color: var(--color-error);
}

.text-headline, h1, .text-headline-sm, h2, .text-headline-md, .text-headline-lg {
  font-family: var(--ff2);
  font-size: var(--fz-40);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-headline, var(--color-primary));
}

.text-headline-lg {
  font-size: var(--fz-48);
}

.text-headline-md {
  font-size: var(--fz-44);
}

.text-headline-sm, h2 {
  font-size: var(--fz-26);
}

.text-title, h4, .text-title-xs, .text-title-sm, h5, .text-title-md, h3, .text-title-lg {
  font-family: var(--ff2);
  font-size: var(--fz-20);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-title, var(--color-primary));
}

.with-bold {
  font-weight: normal;
}
.with-bold b {
  font-weight: 700;
}

.text-title-lg {
  font-size: var(--fz-24);
}

.text-title-md, h3 {
  font-size: var(--fz-22);
}

.text-title-sm, h5 {
  font-size: var(--fz-18);
}

.text-title-xs {
  font-size: var(--fz-15);
}

.text-body, article,
p, .text-body-xs, .text-body-sm, .text-body-md, .text-body-lg {
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 300;
  line-height: 1.5;
  color: var(--color-body, var(--color-black));
}

.text-body-lg {
  font-size: var(--fz-20);
}

.text-body-md {
  font-size: var(--fz-18);
}

.text-body-sm {
  font-size: var(--fz-14);
}

.text-body-xs {
  font-size: var(--fz-12);
}

.text-caption, h6, .text-caption-xs, .text-caption-sm, .text-caption-md, .text-caption-lg {
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 500;
  line-height: 1.25;
  color: var(--color-caption, var(--color-grey-dark-2));
}

.text-caption-lg {
  font-size: var(--fz-24);
}

.text-caption-md {
  font-size: var(--fz-18);
}

.text-caption-sm {
  font-size: var(--fz-14);
}

.text-caption-xs {
  font-size: var(--fz-12);
}

.clr-black {
  color: var(--color-black);
}

.clr-white {
  color: var(--color-white);
}

.clr-grey {
  color: var(--color-grey);
}

.clr-grey-light {
  color: var(--color-grey-medium);
}

.clr-primary {
  color: var(--color-primary);
}

.clr-secondary {
  color: var(--color-secondary);
}

.clr-warning {
  color: var(--color-warning);
}

.clr-success {
  color: var(--color-success);
}

.clr-error {
  color: var(--color-error);
}

.text-bold {
  font-weight: 700;
}

.text-medium {
  font-weight: 500;
}

.text-regular {
  font-weight: 400;
}

.text-light {
  font-weight: 300;
}

.text-up {
  text-transform: uppercase;
}

.letter-spacing-sm {
  letter-spacing: 0.075em;
}

.letter-spacing-md {
  letter-spacing: 0.15em;
}

.letter-spacing-lg {
  letter-spacing: 0.25em;
}

.link {
  text-decoration: underline;
}

img.align-left {
  padding-right: var(--inline-padding);
}
img.align-right {
  padding-left: var(--inline-padding);
}

hr {
  border: none;
  border-top: 1px solid var(--color-grey-medium-2);
  margin: calc(24 * var(--ratio, 1)) 0;
}

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

.border-top {
  border-top: 1px solid var(--color-grey-medium-2);
}

.border-bottom {
  border-bottom: 1px solid var(--color-grey-medium-2);
}

.wysiwyg,
.paragraph__content,
.ck-content {
  /**
   * Breakpoints
   * @sass-export-section="breakpoints"
   */
  /**
   * Couleurs
   * @sass-export-section="colors"
   */
  /**
   * Fonts
   * @sass-export-section="fonts"
   */
  /**
   * Textes couleurs
   * @sass-export-section="text-colors"
   */
  /**
   * Gaps
   * @sass-export-section="gaps"
   */
  /**
   * Breakpoints
   * @sass-export-section="breakpoints"
   */
  /**
   * Couleurs
   * @sass-export-section="colors"
   */
  /**
   * Fonts
   * @sass-export-section="fonts"
   */
  /**
   * Textes couleurs
   * @sass-export-section="text-colors"
   */
  /**
   * Gaps
   * @sass-export-section="gaps"
   */
  /* Taille */
}
@media screen and (max-width: 640px) {
  .wysiwyg .hide-mobile,
  .paragraph__content .hide-mobile,
  .ck-content .hide-mobile {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  .wysiwyg .hide-tablette,
  .paragraph__content .hide-tablette,
  .ck-content .hide-tablette {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) {
  .wysiwyg .hide-desktop,
  .paragraph__content .hide-desktop,
  .ck-content .hide-desktop {
    display: none !important;
  }
}
@media screen and (max-width: 1128px) {
  .wysiwyg .hide-reduit,
  .paragraph__content .hide-reduit,
  .ck-content .hide-reduit {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1128px) {
  .wysiwyg .hide-only-reduit,
  .paragraph__content .hide-only-reduit,
  .ck-content .hide-only-reduit {
    display: none !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 1024px) {
  .wysiwyg .hide-only-tablette,
  .paragraph__content .hide-only-tablette,
  .ck-content .hide-only-tablette {
    display: none !important;
  }
}
@media screen and (max-width: 640px) {
  .wysiwyg .hide-only-mobile,
  .paragraph__content .hide-only-mobile,
  .ck-content .hide-only-mobile {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) {
  .wysiwyg .hide-only-desktop,
  .paragraph__content .hide-only-desktop,
  .ck-content .hide-only-desktop {
    display: none !important;
  }
}
.wysiwyg .card,
.paragraph__content .card,
.ck-content .card {
  border-radius: 8px;
  padding: 16px;
  border: 1px solid var(--color-blue-light);
  box-shadow: 0 2px 8px rgba(20, 49, 72, 0.12);
}
.wysiwyg .card-info,
.paragraph__content .card-info,
.ck-content .card-info {
  background-color: color-mix(in srgb, var(--color-tertiary) 6%, transparent);
  border-radius: calc(6 * var(--ratio, 1));
  border-left: 3px solid var(--color-tertiary);
  padding: calc(16 * var(--ratio, 1));
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: calc(16 * var(--ratio, 1));
}
.wysiwyg .card-info::before,
.paragraph__content .card-info::before,
.ck-content .card-info::before {
  content: "";
  background-color: var(--color-tertiary);
  -webkit-mask-image: url("../images/svg/font/info.svg");
          mask-image: url("../images/svg/font/info.svg");
  -webkit-mask-size: calc(20 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
          mask-size: calc(20 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  width: calc(20 * var(--ratio, 1));
  height: calc(20 * var(--ratio, 1));
}
.wysiwyg .lock,
.paragraph__content .lock,
.ck-content .lock {
  content: "";
  width: calc(36 * var(--ratio, 1));
  height: calc(36 * var(--ratio, 1));
  background-color: var(--color-secondary);
  position: absolute;
  border-radius: calc(18 * var(--ratio, 1));
  left: calc(50% - 18 * var(--ratio, 1));
  top: calc(-18 * var(--ratio, 1));
  background-image: url("../images/svg/lock_w.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: calc(24 * var(--ratio, 1));
}
.wysiwyg .text-headline, .wysiwyg h1,
.wysiwyg .paragraph__content h1,
.paragraph__content .wysiwyg h1,
.wysiwyg .ck-content h1,
.ck-content .wysiwyg h1, .wysiwyg .text-headline-sm, .wysiwyg h2,
.wysiwyg .paragraph__content h2,
.paragraph__content .wysiwyg h2,
.wysiwyg .ck-content h2,
.ck-content .wysiwyg h2, .wysiwyg .text-headline-md, .wysiwyg .text-headline-lg,
.paragraph__content .text-headline,
.paragraph__content h1,
.paragraph__content .ck-content h1,
.ck-content .paragraph__content h1,
.paragraph__content .text-headline-sm,
.paragraph__content h2,
.paragraph__content .ck-content h2,
.ck-content .paragraph__content h2,
.paragraph__content .text-headline-md,
.paragraph__content .text-headline-lg,
.ck-content .text-headline,
.ck-content h1,
.ck-content .text-headline-sm,
.ck-content h2,
.ck-content .text-headline-md,
.ck-content .text-headline-lg {
  font-family: var(--ff2);
  font-size: var(--fz-40);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-headline, var(--color-primary));
}
.wysiwyg .text-headline-lg,
.paragraph__content .text-headline-lg,
.ck-content .text-headline-lg {
  font-size: var(--fz-48);
}
.wysiwyg .text-headline-md,
.paragraph__content .text-headline-md,
.ck-content .text-headline-md {
  font-size: var(--fz-44);
}
.wysiwyg .text-headline-sm, .wysiwyg h2,
.wysiwyg .paragraph__content h2,
.paragraph__content .wysiwyg h2,
.wysiwyg .ck-content h2,
.ck-content .wysiwyg h2,
.paragraph__content .text-headline-sm,
.paragraph__content h2,
.paragraph__content .ck-content h2,
.ck-content .paragraph__content h2,
.ck-content .text-headline-sm,
.ck-content h2 {
  font-size: var(--fz-26);
}
.wysiwyg .text-title, .wysiwyg h4,
.wysiwyg .paragraph__content h4,
.paragraph__content .wysiwyg h4,
.wysiwyg .ck-content h4,
.ck-content .wysiwyg h4, .wysiwyg .text-title-xs, .wysiwyg .text-title-sm, .wysiwyg h5,
.wysiwyg .paragraph__content h5,
.paragraph__content .wysiwyg h5,
.wysiwyg .ck-content h5,
.ck-content .wysiwyg h5, .wysiwyg .text-title-md, .wysiwyg h3,
.wysiwyg .paragraph__content h3,
.paragraph__content .wysiwyg h3,
.wysiwyg .ck-content h3,
.ck-content .wysiwyg h3, .wysiwyg .text-title-lg,
.paragraph__content .text-title,
.paragraph__content h4,
.paragraph__content .ck-content h4,
.ck-content .paragraph__content h4,
.paragraph__content .text-title-xs,
.paragraph__content .text-title-sm,
.paragraph__content h5,
.paragraph__content .ck-content h5,
.ck-content .paragraph__content h5,
.paragraph__content .text-title-md,
.paragraph__content h3,
.paragraph__content .ck-content h3,
.ck-content .paragraph__content h3,
.paragraph__content .text-title-lg,
.ck-content .text-title,
.ck-content h4,
.ck-content .text-title-xs,
.ck-content .text-title-sm,
.ck-content h5,
.ck-content .text-title-md,
.ck-content h3,
.ck-content .text-title-lg {
  font-family: var(--ff2);
  font-size: var(--fz-20);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-title, var(--color-primary));
}
.wysiwyg .with-bold,
.paragraph__content .with-bold,
.ck-content .with-bold {
  font-weight: normal;
}
.wysiwyg .with-bold b,
.paragraph__content .with-bold b,
.ck-content .with-bold b {
  font-weight: 700;
}
.wysiwyg .text-title-lg,
.paragraph__content .text-title-lg,
.ck-content .text-title-lg {
  font-size: var(--fz-24);
}
.wysiwyg .text-title-md, .wysiwyg h3,
.wysiwyg .paragraph__content h3,
.paragraph__content .wysiwyg h3,
.wysiwyg .ck-content h3,
.ck-content .wysiwyg h3,
.paragraph__content .text-title-md,
.paragraph__content h3,
.paragraph__content .ck-content h3,
.ck-content .paragraph__content h3,
.ck-content .text-title-md,
.ck-content h3 {
  font-size: var(--fz-22);
}
.wysiwyg .text-title-sm, .wysiwyg h5,
.wysiwyg .paragraph__content h5,
.paragraph__content .wysiwyg h5,
.wysiwyg .ck-content h5,
.ck-content .wysiwyg h5,
.paragraph__content .text-title-sm,
.paragraph__content h5,
.paragraph__content .ck-content h5,
.ck-content .paragraph__content h5,
.ck-content .text-title-sm,
.ck-content h5 {
  font-size: var(--fz-18);
}
.wysiwyg .text-title-xs,
.paragraph__content .text-title-xs,
.ck-content .text-title-xs {
  font-size: var(--fz-15);
}
.wysiwyg .text-body, .wysiwyg article,
.wysiwyg p,
.wysiwyg .paragraph__content article,
.paragraph__content .wysiwyg article,
.wysiwyg .paragraph__content p,
.paragraph__content .wysiwyg p,
.wysiwyg .ck-content article,
.ck-content .wysiwyg article,
.wysiwyg .ck-content p,
.ck-content .wysiwyg p, .wysiwyg .text-body-xs, .wysiwyg .text-body-sm, .wysiwyg .text-body-md, .wysiwyg .text-body-lg,
.paragraph__content .text-body,
.paragraph__content article,
.paragraph__content p,
.paragraph__content .ck-content article,
.ck-content .paragraph__content article,
.paragraph__content .ck-content p,
.ck-content .paragraph__content p,
.paragraph__content .text-body-xs,
.paragraph__content .text-body-sm,
.paragraph__content .text-body-md,
.paragraph__content .text-body-lg,
.ck-content .text-body,
.ck-content article,
.ck-content p,
.ck-content .text-body-xs,
.ck-content .text-body-sm,
.ck-content .text-body-md,
.ck-content .text-body-lg {
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 300;
  line-height: 1.5;
  color: var(--color-body, var(--color-black));
}
.wysiwyg .text-body-lg,
.paragraph__content .text-body-lg,
.ck-content .text-body-lg {
  font-size: var(--fz-20);
}
.wysiwyg .text-body-md,
.paragraph__content .text-body-md,
.ck-content .text-body-md {
  font-size: var(--fz-18);
}
.wysiwyg .text-body-sm,
.paragraph__content .text-body-sm,
.ck-content .text-body-sm {
  font-size: var(--fz-14);
}
.wysiwyg .text-body-xs,
.paragraph__content .text-body-xs,
.ck-content .text-body-xs {
  font-size: var(--fz-12);
}
.wysiwyg .text-caption, .wysiwyg h6,
.wysiwyg .paragraph__content h6,
.paragraph__content .wysiwyg h6,
.wysiwyg .ck-content h6,
.ck-content .wysiwyg h6, .wysiwyg .text-caption-xs, .wysiwyg .text-caption-sm, .wysiwyg .text-caption-md, .wysiwyg .text-caption-lg,
.paragraph__content .text-caption,
.paragraph__content h6,
.paragraph__content .ck-content h6,
.ck-content .paragraph__content h6,
.paragraph__content .text-caption-xs,
.paragraph__content .text-caption-sm,
.paragraph__content .text-caption-md,
.paragraph__content .text-caption-lg,
.ck-content .text-caption,
.ck-content h6,
.ck-content .text-caption-xs,
.ck-content .text-caption-sm,
.ck-content .text-caption-md,
.ck-content .text-caption-lg {
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 500;
  line-height: 1.25;
  color: var(--color-caption, var(--color-grey-dark-2));
}
.wysiwyg .text-caption-lg,
.paragraph__content .text-caption-lg,
.ck-content .text-caption-lg {
  font-size: var(--fz-24);
}
.wysiwyg .text-caption-md,
.paragraph__content .text-caption-md,
.ck-content .text-caption-md {
  font-size: var(--fz-18);
}
.wysiwyg .text-caption-sm,
.paragraph__content .text-caption-sm,
.ck-content .text-caption-sm {
  font-size: var(--fz-14);
}
.wysiwyg .text-caption-xs,
.paragraph__content .text-caption-xs,
.ck-content .text-caption-xs {
  font-size: var(--fz-12);
}
.wysiwyg .clr-black,
.paragraph__content .clr-black,
.ck-content .clr-black {
  color: var(--color-black);
}
.wysiwyg .clr-white,
.paragraph__content .clr-white,
.ck-content .clr-white {
  color: var(--color-white);
}
.wysiwyg .clr-grey,
.paragraph__content .clr-grey,
.ck-content .clr-grey {
  color: var(--color-grey);
}
.wysiwyg .clr-grey-light,
.paragraph__content .clr-grey-light,
.ck-content .clr-grey-light {
  color: var(--color-grey-medium);
}
.wysiwyg .clr-primary,
.paragraph__content .clr-primary,
.ck-content .clr-primary {
  color: var(--color-primary);
}
.wysiwyg .clr-secondary,
.paragraph__content .clr-secondary,
.ck-content .clr-secondary {
  color: var(--color-secondary);
}
.wysiwyg .clr-warning,
.paragraph__content .clr-warning,
.ck-content .clr-warning {
  color: var(--color-warning);
}
.wysiwyg .clr-success,
.paragraph__content .clr-success,
.ck-content .clr-success {
  color: var(--color-success);
}
.wysiwyg .clr-error,
.paragraph__content .clr-error,
.ck-content .clr-error {
  color: var(--color-error);
}
.wysiwyg .text-bold,
.paragraph__content .text-bold,
.ck-content .text-bold {
  font-weight: 700;
}
.wysiwyg .text-medium,
.paragraph__content .text-medium,
.ck-content .text-medium {
  font-weight: 500;
}
.wysiwyg .text-regular,
.paragraph__content .text-regular,
.ck-content .text-regular {
  font-weight: 400;
}
.wysiwyg .text-light,
.paragraph__content .text-light,
.ck-content .text-light {
  font-weight: 300;
}
.wysiwyg .text-up,
.paragraph__content .text-up,
.ck-content .text-up {
  text-transform: uppercase;
}
.wysiwyg .letter-spacing-sm,
.paragraph__content .letter-spacing-sm,
.ck-content .letter-spacing-sm {
  letter-spacing: 0.075em;
}
.wysiwyg .letter-spacing-md,
.paragraph__content .letter-spacing-md,
.ck-content .letter-spacing-md {
  letter-spacing: 0.15em;
}
.wysiwyg .letter-spacing-lg,
.paragraph__content .letter-spacing-lg,
.ck-content .letter-spacing-lg {
  letter-spacing: 0.25em;
}
.wysiwyg .link,
.paragraph__content .link,
.ck-content .link {
  text-decoration: underline;
}
.wysiwyg img.align-left,
.paragraph__content img.align-left,
.ck-content img.align-left {
  padding-right: var(--inline-padding);
}
.wysiwyg img.align-right,
.paragraph__content img.align-right,
.ck-content img.align-right {
  padding-left: var(--inline-padding);
}
.wysiwyg hr,
.paragraph__content hr,
.ck-content hr {
  border: none;
  border-top: 1px solid var(--color-grey-medium-2);
  margin: calc(24 * var(--ratio, 1)) 0;
}
.wysiwyg .text-center,
.paragraph__content .text-center,
.ck-content .text-center {
  text-align: center;
}
.wysiwyg .border-top,
.paragraph__content .border-top,
.ck-content .border-top {
  border-top: 1px solid var(--color-grey-medium-2);
}
.wysiwyg .border-bottom,
.paragraph__content .border-bottom,
.ck-content .border-bottom {
  border-bottom: 1px solid var(--color-grey-medium-2);
}
@media screen and (max-width: 640px) {
  .wysiwyg .hide-mobile,
  .paragraph__content .hide-mobile,
  .ck-content .hide-mobile {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  .wysiwyg .hide-tablette,
  .paragraph__content .hide-tablette,
  .ck-content .hide-tablette {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) {
  .wysiwyg .hide-desktop,
  .paragraph__content .hide-desktop,
  .ck-content .hide-desktop {
    display: none !important;
  }
}
@media screen and (max-width: 1128px) {
  .wysiwyg .hide-reduit,
  .paragraph__content .hide-reduit,
  .ck-content .hide-reduit {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1128px) {
  .wysiwyg .hide-only-reduit,
  .paragraph__content .hide-only-reduit,
  .ck-content .hide-only-reduit {
    display: none !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 1024px) {
  .wysiwyg .hide-only-tablette,
  .paragraph__content .hide-only-tablette,
  .ck-content .hide-only-tablette {
    display: none !important;
  }
}
@media screen and (max-width: 640px) {
  .wysiwyg .hide-only-mobile,
  .paragraph__content .hide-only-mobile,
  .ck-content .hide-only-mobile {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) {
  .wysiwyg .hide-only-desktop,
  .paragraph__content .hide-only-desktop,
  .ck-content .hide-only-desktop {
    display: none !important;
  }
}
.wysiwyg .card,
.paragraph__content .card,
.ck-content .card {
  border-radius: 8px;
  padding: 16px;
  border: 1px solid var(--color-blue-light);
  box-shadow: 0 2px 8px rgba(20, 49, 72, 0.12);
}
.wysiwyg .card-info,
.paragraph__content .card-info,
.ck-content .card-info {
  background-color: color-mix(in srgb, var(--color-tertiary) 6%, transparent);
  border-radius: calc(6 * var(--ratio, 1));
  border-left: 3px solid var(--color-tertiary);
  padding: calc(16 * var(--ratio, 1));
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: calc(16 * var(--ratio, 1));
}
.wysiwyg .card-info::before,
.paragraph__content .card-info::before,
.ck-content .card-info::before {
  content: "";
  background-color: var(--color-tertiary);
  -webkit-mask-image: url("../images/svg/font/info.svg");
          mask-image: url("../images/svg/font/info.svg");
  -webkit-mask-size: calc(20 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
          mask-size: calc(20 * var(--ratio, 1)) calc(20 * var(--ratio, 1));
  width: calc(20 * var(--ratio, 1));
  height: calc(20 * var(--ratio, 1));
}
.wysiwyg .lock,
.paragraph__content .lock,
.ck-content .lock {
  content: "";
  width: calc(36 * var(--ratio, 1));
  height: calc(36 * var(--ratio, 1));
  background-color: var(--color-secondary);
  position: absolute;
  border-radius: calc(18 * var(--ratio, 1));
  left: calc(50% - 18 * var(--ratio, 1));
  top: calc(-18 * var(--ratio, 1));
  background-image: url("../images/svg/lock_w.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: calc(24 * var(--ratio, 1));
}
.wysiwyg .btn, .wysiwyg .btn-container-white-grey-outline a,
.wysiwyg .btn-white-grey-outline, .wysiwyg .btn-container-white-grey a,
.wysiwyg .btn-white-grey, .wysiwyg .btn-container-grey-outline a,
.wysiwyg .btn-grey-outline, .wysiwyg .btn-container-grey a,
.wysiwyg .btn-grey, .wysiwyg .btn-container-white-secondary-outline a,
.wysiwyg .btn-white-secondary-outline, .wysiwyg .btn-container-white-secondary a,
.wysiwyg .btn-white-secondary, .wysiwyg .btn-container-secondary-outline a,
.wysiwyg .btn-secondary-outline, .wysiwyg .btn-container-secondary a,
.wysiwyg .btn-secondary, .wysiwyg .btn-container-white-primary-outline a,
.wysiwyg .btn-white-primary-outline, .wysiwyg .btn-container-white-primary a,
.wysiwyg .btn-white-primary, .wysiwyg .btn-container-primary-outline a,
.wysiwyg .btn-primary-outline, .wysiwyg .btn-container-primary a,
.wysiwyg .btn-primary,
.paragraph__content .btn,
.paragraph__content .btn-container-white-grey-outline a,
.paragraph__content .btn-white-grey-outline,
.paragraph__content .btn-container-white-grey a,
.paragraph__content .btn-white-grey,
.paragraph__content .btn-container-grey-outline a,
.paragraph__content .btn-grey-outline,
.paragraph__content .btn-container-grey a,
.paragraph__content .btn-grey,
.paragraph__content .btn-container-white-secondary-outline a,
.paragraph__content .btn-white-secondary-outline,
.paragraph__content .btn-container-white-secondary a,
.paragraph__content .btn-white-secondary,
.paragraph__content .btn-container-secondary-outline a,
.paragraph__content .btn-secondary-outline,
.paragraph__content .btn-container-secondary a,
.paragraph__content .btn-secondary,
.paragraph__content .btn-container-white-primary-outline a,
.paragraph__content .btn-white-primary-outline,
.paragraph__content .btn-container-white-primary a,
.paragraph__content .btn-white-primary,
.paragraph__content .btn-container-primary-outline a,
.paragraph__content .btn-primary-outline,
.paragraph__content .btn-container-primary a,
.paragraph__content .btn-primary,
.ck-content .btn,
.ck-content .btn-container-white-grey-outline a,
.ck-content .btn-white-grey-outline,
.ck-content .btn-container-white-grey a,
.ck-content .btn-white-grey,
.ck-content .btn-container-grey-outline a,
.ck-content .btn-grey-outline,
.ck-content .btn-container-grey a,
.ck-content .btn-grey,
.ck-content .btn-container-white-secondary-outline a,
.ck-content .btn-white-secondary-outline,
.ck-content .btn-container-white-secondary a,
.ck-content .btn-white-secondary,
.ck-content .btn-container-secondary-outline a,
.ck-content .btn-secondary-outline,
.ck-content .btn-container-secondary a,
.ck-content .btn-secondary,
.ck-content .btn-container-white-primary-outline a,
.ck-content .btn-white-primary-outline,
.ck-content .btn-container-white-primary a,
.ck-content .btn-white-primary,
.ck-content .btn-container-primary-outline a,
.ck-content .btn-primary-outline,
.ck-content .btn-container-primary a,
.ck-content .btn-primary {
  --_color: var(--color, var(--color-white));
  --_bg: var(--bg, var(--color-primary));
  --_hover-bg: var(--hover-bg, color-mix(in oklab, var(--_bg) 80%, var(--color-white)));
  --_hover-color: var(--hover-color, var(--color-white));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: var(--fz-12);
  line-height: 1;
  font-weight: 600;
  font-family: var(--ff1);
  letter-spacing: calc(1 * var(--ratio, 1));
  text-transform: uppercase;
  text-decoration: none;
  color: var(--_color);
  background-color: var(--_bg);
  border-radius: calc(2 * var(--ratio, 1));
  padding: calc(8 * var(--ratio, 1)) calc(12 * var(--ratio, 1));
  gap: calc(3 * var(--ratio, 1));
  border: calc(1 * var(--ratio, 1)) solid var(--_bg);
  transition: all 0.3s ease;
  height: -moz-fit-content;
  height: fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.text-align-center .wysiwyg .btn, .text-align-center .wysiwyg .btn-container-white-grey-outline a,
.text-align-center .wysiwyg .btn-white-grey-outline,
.text-align-center .wysiwyg .paragraph__content .btn-container-white-grey-outline a,
.paragraph__content .btn-container-white-grey-outline .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .paragraph__content .btn-white-grey-outline,
.paragraph__content .text-align-center .wysiwyg .btn-white-grey-outline,
.text-align-center .wysiwyg .ck-content .btn-container-white-grey-outline a,
.ck-content .btn-container-white-grey-outline .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .ck-content .btn-white-grey-outline,
.ck-content .text-align-center .wysiwyg .btn-white-grey-outline, .text-align-center .wysiwyg .btn-container-white-grey a,
.text-align-center .wysiwyg .btn-white-grey,
.text-align-center .wysiwyg .paragraph__content .btn-container-white-grey a,
.paragraph__content .btn-container-white-grey .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .paragraph__content .btn-white-grey,
.paragraph__content .text-align-center .wysiwyg .btn-white-grey,
.text-align-center .wysiwyg .ck-content .btn-container-white-grey a,
.ck-content .btn-container-white-grey .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .ck-content .btn-white-grey,
.ck-content .text-align-center .wysiwyg .btn-white-grey, .text-align-center .wysiwyg .btn-container-grey-outline a,
.text-align-center .wysiwyg .btn-grey-outline,
.text-align-center .wysiwyg .paragraph__content .btn-container-grey-outline a,
.paragraph__content .btn-container-grey-outline .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .paragraph__content .btn-grey-outline,
.paragraph__content .text-align-center .wysiwyg .btn-grey-outline,
.text-align-center .wysiwyg .ck-content .btn-container-grey-outline a,
.ck-content .btn-container-grey-outline .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .ck-content .btn-grey-outline,
.ck-content .text-align-center .wysiwyg .btn-grey-outline, .text-align-center .wysiwyg .btn-container-grey a,
.text-align-center .wysiwyg .btn-grey,
.text-align-center .wysiwyg .paragraph__content .btn-container-grey a,
.paragraph__content .btn-container-grey .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .paragraph__content .btn-grey,
.paragraph__content .text-align-center .wysiwyg .btn-grey,
.text-align-center .wysiwyg .ck-content .btn-container-grey a,
.ck-content .btn-container-grey .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .ck-content .btn-grey,
.ck-content .text-align-center .wysiwyg .btn-grey, .text-align-center .wysiwyg .btn-container-white-secondary-outline a,
.text-align-center .wysiwyg .btn-white-secondary-outline,
.text-align-center .wysiwyg .paragraph__content .btn-container-white-secondary-outline a,
.paragraph__content .btn-container-white-secondary-outline .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .paragraph__content .btn-white-secondary-outline,
.paragraph__content .text-align-center .wysiwyg .btn-white-secondary-outline,
.text-align-center .wysiwyg .ck-content .btn-container-white-secondary-outline a,
.ck-content .btn-container-white-secondary-outline .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .ck-content .btn-white-secondary-outline,
.ck-content .text-align-center .wysiwyg .btn-white-secondary-outline, .text-align-center .wysiwyg .btn-container-white-secondary a,
.text-align-center .wysiwyg .btn-white-secondary,
.text-align-center .wysiwyg .paragraph__content .btn-container-white-secondary a,
.paragraph__content .btn-container-white-secondary .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .paragraph__content .btn-white-secondary,
.paragraph__content .text-align-center .wysiwyg .btn-white-secondary,
.text-align-center .wysiwyg .ck-content .btn-container-white-secondary a,
.ck-content .btn-container-white-secondary .text-align-center .wysiwyg a,
.text-align-center .wysiwyg .ck-content .btn-white-secondary,
.ck-content .text-align-center .wysiwyg .btn-white-secondary, .text-align-center .wysiwyg .btn-container-secondary-outline a,
.text-align-center .wysiwyg .btn-secondary-outline,
.paragraph__content .btn-container-secondary-outline .text-align-center .wysiwyg a,
.ck-content .btn-container-secondary-outline .text-align-center .wysiwyg a, .text-align-center .wysiwyg .btn-container-secondary a,
.text-align-center .wysiwyg .btn-secondary,
.paragraph__content .btn-container-secondary .text-align-center .wysiwyg a,
.ck-content .btn-container-secondary .text-align-center .wysiwyg a, .text-align-center .wysiwyg .btn-container-white-primary-outline a,
.text-align-center .wysiwyg .btn-white-primary-outline,
.paragraph__content .btn-container-white-primary-outline .text-align-center .wysiwyg a,
.ck-content .btn-container-white-primary-outline .text-align-center .wysiwyg a, .text-align-center .wysiwyg .btn-container-white-primary a,
.text-align-center .wysiwyg .btn-white-primary,
.paragraph__content .btn-container-white-primary .text-align-center .wysiwyg a,
.ck-content .btn-container-white-primary .text-align-center .wysiwyg a, .text-align-center .wysiwyg .btn-container-primary-outline a,
.text-align-center .wysiwyg .btn-primary-outline,
.paragraph__content .btn-container-primary-outline .text-align-center .wysiwyg a,
.ck-content .btn-container-primary-outline .text-align-center .wysiwyg a, .text-align-center .wysiwyg .btn-container-primary a,
.text-align-center .wysiwyg .btn-primary,
.paragraph__content .btn-container-primary .text-align-center .wysiwyg a,
.ck-content .btn-container-primary .text-align-center .wysiwyg a,
.text-align-center .paragraph__content .btn,
.text-align-center .paragraph__content .wysiwyg .btn-container-white-grey-outline a,
.wysiwyg .btn-container-white-grey-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .wysiwyg .btn-white-grey-outline,
.wysiwyg .text-align-center .paragraph__content .btn-white-grey-outline,
.text-align-center .paragraph__content .btn-container-white-grey-outline a,
.text-align-center .paragraph__content .btn-white-grey-outline,
.text-align-center .paragraph__content .ck-content .btn-container-white-grey-outline a,
.ck-content .btn-container-white-grey-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .ck-content .btn-white-grey-outline,
.ck-content .text-align-center .paragraph__content .btn-white-grey-outline,
.text-align-center .paragraph__content .wysiwyg .btn-container-white-grey a,
.wysiwyg .btn-container-white-grey .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .wysiwyg .btn-white-grey,
.wysiwyg .text-align-center .paragraph__content .btn-white-grey,
.text-align-center .paragraph__content .btn-container-white-grey a,
.text-align-center .paragraph__content .btn-white-grey,
.text-align-center .paragraph__content .ck-content .btn-container-white-grey a,
.ck-content .btn-container-white-grey .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .ck-content .btn-white-grey,
.ck-content .text-align-center .paragraph__content .btn-white-grey,
.text-align-center .paragraph__content .wysiwyg .btn-container-grey-outline a,
.wysiwyg .btn-container-grey-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .wysiwyg .btn-grey-outline,
.wysiwyg .text-align-center .paragraph__content .btn-grey-outline,
.text-align-center .paragraph__content .btn-container-grey-outline a,
.text-align-center .paragraph__content .btn-grey-outline,
.text-align-center .paragraph__content .ck-content .btn-container-grey-outline a,
.ck-content .btn-container-grey-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .ck-content .btn-grey-outline,
.ck-content .text-align-center .paragraph__content .btn-grey-outline,
.text-align-center .paragraph__content .wysiwyg .btn-container-grey a,
.wysiwyg .btn-container-grey .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .wysiwyg .btn-grey,
.wysiwyg .text-align-center .paragraph__content .btn-grey,
.text-align-center .paragraph__content .btn-container-grey a,
.text-align-center .paragraph__content .btn-grey,
.text-align-center .paragraph__content .ck-content .btn-container-grey a,
.ck-content .btn-container-grey .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .ck-content .btn-grey,
.ck-content .text-align-center .paragraph__content .btn-grey,
.text-align-center .paragraph__content .wysiwyg .btn-container-white-secondary-outline a,
.wysiwyg .btn-container-white-secondary-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .wysiwyg .btn-white-secondary-outline,
.wysiwyg .text-align-center .paragraph__content .btn-white-secondary-outline,
.text-align-center .paragraph__content .btn-container-white-secondary-outline a,
.text-align-center .paragraph__content .btn-white-secondary-outline,
.text-align-center .paragraph__content .ck-content .btn-container-white-secondary-outline a,
.ck-content .btn-container-white-secondary-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .ck-content .btn-white-secondary-outline,
.ck-content .text-align-center .paragraph__content .btn-white-secondary-outline,
.text-align-center .paragraph__content .wysiwyg .btn-container-white-secondary a,
.wysiwyg .btn-container-white-secondary .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .wysiwyg .btn-white-secondary,
.wysiwyg .text-align-center .paragraph__content .btn-white-secondary,
.text-align-center .paragraph__content .btn-container-white-secondary a,
.text-align-center .paragraph__content .btn-white-secondary,
.text-align-center .paragraph__content .ck-content .btn-container-white-secondary a,
.ck-content .btn-container-white-secondary .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .ck-content .btn-white-secondary,
.ck-content .text-align-center .paragraph__content .btn-white-secondary,
.wysiwyg .btn-container-secondary-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .btn-container-secondary-outline a,
.text-align-center .paragraph__content .btn-secondary-outline,
.ck-content .btn-container-secondary-outline .text-align-center .paragraph__content a,
.wysiwyg .btn-container-secondary .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .btn-container-secondary a,
.text-align-center .paragraph__content .btn-secondary,
.ck-content .btn-container-secondary .text-align-center .paragraph__content a,
.wysiwyg .btn-container-white-primary-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .btn-container-white-primary-outline a,
.text-align-center .paragraph__content .btn-white-primary-outline,
.ck-content .btn-container-white-primary-outline .text-align-center .paragraph__content a,
.wysiwyg .btn-container-white-primary .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .btn-container-white-primary a,
.text-align-center .paragraph__content .btn-white-primary,
.ck-content .btn-container-white-primary .text-align-center .paragraph__content a,
.wysiwyg .btn-container-primary-outline .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .btn-container-primary-outline a,
.text-align-center .paragraph__content .btn-primary-outline,
.ck-content .btn-container-primary-outline .text-align-center .paragraph__content a,
.wysiwyg .btn-container-primary .text-align-center .paragraph__content a,
.text-align-center .paragraph__content .btn-container-primary a,
.text-align-center .paragraph__content .btn-primary,
.ck-content .btn-container-primary .text-align-center .paragraph__content a,
.text-align-center .ck-content .btn,
.text-align-center .ck-content .wysiwyg .btn-container-white-grey-outline a,
.wysiwyg .btn-container-white-grey-outline .text-align-center .ck-content a,
.text-align-center .ck-content .wysiwyg .btn-white-grey-outline,
.wysiwyg .text-align-center .ck-content .btn-white-grey-outline,
.text-align-center .ck-content .paragraph__content .btn-container-white-grey-outline a,
.paragraph__content .btn-container-white-grey-outline .text-align-center .ck-content a,
.text-align-center .ck-content .paragraph__content .btn-white-grey-outline,
.paragraph__content .text-align-center .ck-content .btn-white-grey-outline,
.text-align-center .ck-content .btn-container-white-grey-outline a,
.text-align-center .ck-content .btn-white-grey-outline,
.text-align-center .ck-content .wysiwyg .btn-container-white-grey a,
.wysiwyg .btn-container-white-grey .text-align-center .ck-content a,
.text-align-center .ck-content .wysiwyg .btn-white-grey,
.wysiwyg .text-align-center .ck-content .btn-white-grey,
.text-align-center .ck-content .paragraph__content .btn-container-white-grey a,
.paragraph__content .btn-container-white-grey .text-align-center .ck-content a,
.text-align-center .ck-content .paragraph__content .btn-white-grey,
.paragraph__content .text-align-center .ck-content .btn-white-grey,
.text-align-center .ck-content .btn-container-white-grey a,
.text-align-center .ck-content .btn-white-grey,
.text-align-center .ck-content .wysiwyg .btn-container-grey-outline a,
.wysiwyg .btn-container-grey-outline .text-align-center .ck-content a,
.text-align-center .ck-content .wysiwyg .btn-grey-outline,
.wysiwyg .text-align-center .ck-content .btn-grey-outline,
.text-align-center .ck-content .paragraph__content .btn-container-grey-outline a,
.paragraph__content .btn-container-grey-outline .text-align-center .ck-content a,
.text-align-center .ck-content .paragraph__content .btn-grey-outline,
.paragraph__content .text-align-center .ck-content .btn-grey-outline,
.text-align-center .ck-content .btn-container-grey-outline a,
.text-align-center .ck-content .btn-grey-outline,
.text-align-center .ck-content .wysiwyg .btn-container-grey a,
.wysiwyg .btn-container-grey .text-align-center .ck-content a,
.text-align-center .ck-content .wysiwyg .btn-grey,
.wysiwyg .text-align-center .ck-content .btn-grey,
.text-align-center .ck-content .paragraph__content .btn-container-grey a,
.paragraph__content .btn-container-grey .text-align-center .ck-content a,
.text-align-center .ck-content .paragraph__content .btn-grey,
.paragraph__content .text-align-center .ck-content .btn-grey,
.text-align-center .ck-content .btn-container-grey a,
.text-align-center .ck-content .btn-grey,
.text-align-center .ck-content .wysiwyg .btn-container-white-secondary-outline a,
.wysiwyg .btn-container-white-secondary-outline .text-align-center .ck-content a,
.text-align-center .ck-content .wysiwyg .btn-white-secondary-outline,
.wysiwyg .text-align-center .ck-content .btn-white-secondary-outline,
.text-align-center .ck-content .paragraph__content .btn-container-white-secondary-outline a,
.paragraph__content .btn-container-white-secondary-outline .text-align-center .ck-content a,
.text-align-center .ck-content .paragraph__content .btn-white-secondary-outline,
.paragraph__content .text-align-center .ck-content .btn-white-secondary-outline,
.text-align-center .ck-content .btn-container-white-secondary-outline a,
.text-align-center .ck-content .btn-white-secondary-outline,
.text-align-center .ck-content .wysiwyg .btn-container-white-secondary a,
.wysiwyg .btn-container-white-secondary .text-align-center .ck-content a,
.text-align-center .ck-content .wysiwyg .btn-white-secondary,
.wysiwyg .text-align-center .ck-content .btn-white-secondary,
.text-align-center .ck-content .paragraph__content .btn-container-white-secondary a,
.paragraph__content .btn-container-white-secondary .text-align-center .ck-content a,
.text-align-center .ck-content .paragraph__content .btn-white-secondary,
.paragraph__content .text-align-center .ck-content .btn-white-secondary,
.text-align-center .ck-content .btn-container-white-secondary a,
.text-align-center .ck-content .btn-white-secondary,
.wysiwyg .btn-container-secondary-outline .text-align-center .ck-content a,
.paragraph__content .btn-container-secondary-outline .text-align-center .ck-content a,
.text-align-center .ck-content .btn-container-secondary-outline a,
.text-align-center .ck-content .btn-secondary-outline,
.wysiwyg .btn-container-secondary .text-align-center .ck-content a,
.paragraph__content .btn-container-secondary .text-align-center .ck-content a,
.text-align-center .ck-content .btn-container-secondary a,
.text-align-center .ck-content .btn-secondary,
.wysiwyg .btn-container-white-primary-outline .text-align-center .ck-content a,
.paragraph__content .btn-container-white-primary-outline .text-align-center .ck-content a,
.text-align-center .ck-content .btn-container-white-primary-outline a,
.text-align-center .ck-content .btn-white-primary-outline,
.wysiwyg .btn-container-white-primary .text-align-center .ck-content a,
.paragraph__content .btn-container-white-primary .text-align-center .ck-content a,
.text-align-center .ck-content .btn-container-white-primary a,
.text-align-center .ck-content .btn-white-primary,
.wysiwyg .btn-container-primary-outline .text-align-center .ck-content a,
.paragraph__content .btn-container-primary-outline .text-align-center .ck-content a,
.text-align-center .ck-content .btn-container-primary-outline a,
.text-align-center .ck-content .btn-primary-outline,
.wysiwyg .btn-container-primary .text-align-center .ck-content a,
.paragraph__content .btn-container-primary .text-align-center .ck-content a,
.text-align-center .ck-content .btn-container-primary a,
.text-align-center .ck-content .btn-primary {
  justify-content: center;
}
.wysiwyg .btn:hover, .wysiwyg .btn-container-white-grey-outline a:hover,
.wysiwyg .btn-white-grey-outline:hover, .wysiwyg .btn-container-white-grey a:hover,
.wysiwyg .btn-white-grey:hover, .wysiwyg .btn-container-grey-outline a:hover,
.wysiwyg .btn-grey-outline:hover, .wysiwyg .btn-container-grey a:hover,
.wysiwyg .btn-grey:hover, .wysiwyg .btn-container-white-secondary-outline a:hover,
.wysiwyg .btn-white-secondary-outline:hover, .wysiwyg .btn-container-white-secondary a:hover,
.wysiwyg .btn-white-secondary:hover, .wysiwyg .btn-container-secondary-outline a:hover,
.wysiwyg .btn-secondary-outline:hover, .wysiwyg .btn-container-secondary a:hover,
.wysiwyg .btn-secondary:hover, .wysiwyg .btn-container-white-primary-outline a:hover,
.wysiwyg .btn-white-primary-outline:hover, .wysiwyg .btn-container-white-primary a:hover,
.wysiwyg .btn-white-primary:hover, .wysiwyg .btn-container-primary-outline a:hover,
.wysiwyg .btn-primary-outline:hover, .wysiwyg .btn-container-primary a:hover,
.wysiwyg .btn-primary:hover,
.paragraph__content .btn:hover,
.paragraph__content .btn-container-white-grey-outline a:hover,
.paragraph__content .btn-white-grey-outline:hover,
.paragraph__content .btn-container-white-grey a:hover,
.paragraph__content .btn-white-grey:hover,
.paragraph__content .btn-container-grey-outline a:hover,
.paragraph__content .btn-grey-outline:hover,
.paragraph__content .btn-container-grey a:hover,
.paragraph__content .btn-grey:hover,
.paragraph__content .btn-container-white-secondary-outline a:hover,
.paragraph__content .btn-white-secondary-outline:hover,
.paragraph__content .btn-container-white-secondary a:hover,
.paragraph__content .btn-white-secondary:hover,
.paragraph__content .btn-container-secondary-outline a:hover,
.paragraph__content .btn-secondary-outline:hover,
.paragraph__content .btn-container-secondary a:hover,
.paragraph__content .btn-secondary:hover,
.paragraph__content .btn-container-white-primary-outline a:hover,
.paragraph__content .btn-white-primary-outline:hover,
.paragraph__content .btn-container-white-primary a:hover,
.paragraph__content .btn-white-primary:hover,
.paragraph__content .btn-container-primary-outline a:hover,
.paragraph__content .btn-primary-outline:hover,
.paragraph__content .btn-container-primary a:hover,
.paragraph__content .btn-primary:hover,
.ck-content .btn:hover,
.ck-content .btn-container-white-grey-outline a:hover,
.ck-content .btn-white-grey-outline:hover,
.ck-content .btn-container-white-grey a:hover,
.ck-content .btn-white-grey:hover,
.ck-content .btn-container-grey-outline a:hover,
.ck-content .btn-grey-outline:hover,
.ck-content .btn-container-grey a:hover,
.ck-content .btn-grey:hover,
.ck-content .btn-container-white-secondary-outline a:hover,
.ck-content .btn-white-secondary-outline:hover,
.ck-content .btn-container-white-secondary a:hover,
.ck-content .btn-white-secondary:hover,
.ck-content .btn-container-secondary-outline a:hover,
.ck-content .btn-secondary-outline:hover,
.ck-content .btn-container-secondary a:hover,
.ck-content .btn-secondary:hover,
.ck-content .btn-container-white-primary-outline a:hover,
.ck-content .btn-white-primary-outline:hover,
.ck-content .btn-container-white-primary a:hover,
.ck-content .btn-white-primary:hover,
.ck-content .btn-container-primary-outline a:hover,
.ck-content .btn-primary-outline:hover,
.ck-content .btn-container-primary a:hover,
.ck-content .btn-primary:hover {
  background-color: var(--_hover-bg);
  border-color: var(--_hover-bg);
  color: var(--_hover-color);
}
.wysiwyg .bg-color-primary,
.paragraph__content .bg-color-primary,
.ck-content .bg-color-primary {
  background-color: var(--color-primary);
}
.wysiwyg .btn-container-primary a,
.wysiwyg .btn-primary,
.paragraph__content .btn-container-primary a,
.paragraph__content .btn-primary,
.ck-content .btn-container-primary a,
.ck-content .btn-primary {
  --_bg: var(--color-primary);
}
.wysiwyg .btn-container-primary-outline a,
.wysiwyg .btn-primary-outline,
.paragraph__content .btn-container-primary-outline a,
.paragraph__content .btn-primary-outline,
.ck-content .btn-container-primary-outline a,
.ck-content .btn-primary-outline {
  --_bg: transparent;
  --_color: var(--color-primary);
  --_hover-color: var(--color-white);
  --_hover-bg: color-mix(in oklab, var(--color-primary) 80%, var(--color-white));
  border-color: var(--color-primary);
}
.wysiwyg .btn-container-white-primary a,
.wysiwyg .btn-white-primary,
.paragraph__content .btn-container-white-primary a,
.paragraph__content .btn-white-primary,
.ck-content .btn-container-white-primary a,
.ck-content .btn-white-primary {
  --_bg: var(--color-white);
  --_color: var(--color-primary);
  --_hover-color: var(--color-primary);
  --_hover-bg: color-mix(in oklab, var(--color-primary) 15%, var(--color-white));
}
.wysiwyg .btn-container-white-primary-outline a,
.wysiwyg .btn-white-primary-outline,
.paragraph__content .btn-container-white-primary-outline a,
.paragraph__content .btn-white-primary-outline,
.ck-content .btn-container-white-primary-outline a,
.ck-content .btn-white-primary-outline {
  --_bg: transparent;
  --_color: var(--color-white);
  --_hover-color: var(--color-white);
  --_hover-bg: var(--color-primary);
  border-color: var(--color-white);
}
.wysiwyg .bg-color-secondary,
.paragraph__content .bg-color-secondary,
.ck-content .bg-color-secondary {
  background-color: var(--color-secondary);
}
.wysiwyg .btn-container-secondary a,
.wysiwyg .btn-secondary,
.paragraph__content .btn-container-secondary a,
.paragraph__content .btn-secondary,
.ck-content .btn-container-secondary a,
.ck-content .btn-secondary {
  --_bg: var(--color-secondary);
}
.wysiwyg .btn-container-secondary-outline a,
.wysiwyg .btn-secondary-outline,
.paragraph__content .btn-container-secondary-outline a,
.paragraph__content .btn-secondary-outline,
.ck-content .btn-container-secondary-outline a,
.ck-content .btn-secondary-outline {
  --_bg: transparent;
  --_color: var(--color-secondary);
  --_hover-color: var(--color-white);
  --_hover-bg: color-mix(in oklab, var(--color-secondary) 80%, var(--color-white));
  border-color: var(--color-secondary);
}
.wysiwyg .btn-container-white-secondary a,
.wysiwyg .btn-white-secondary,
.paragraph__content .btn-container-white-secondary a,
.paragraph__content .btn-white-secondary,
.ck-content .btn-container-white-secondary a,
.ck-content .btn-white-secondary {
  --_bg: var(--color-white);
  --_color: var(--color-secondary);
  --_hover-color: var(--color-secondary);
  --_hover-bg: color-mix(in oklab, var(--color-secondary) 15%, var(--color-white));
}
.wysiwyg .btn-container-white-secondary-outline a,
.wysiwyg .btn-white-secondary-outline,
.paragraph__content .btn-container-white-secondary-outline a,
.paragraph__content .btn-white-secondary-outline,
.ck-content .btn-container-white-secondary-outline a,
.ck-content .btn-white-secondary-outline {
  --_bg: transparent;
  --_color: var(--color-white);
  --_hover-color: var(--color-white);
  --_hover-bg: var(--color-secondary);
  border-color: var(--color-white);
}
.wysiwyg .bg-color-grey,
.paragraph__content .bg-color-grey,
.ck-content .bg-color-grey {
  background-color: var(--color-grey);
}
.wysiwyg .btn-container-grey a,
.wysiwyg .btn-grey,
.paragraph__content .btn-container-grey a,
.paragraph__content .btn-grey,
.ck-content .btn-container-grey a,
.ck-content .btn-grey {
  --_bg: var(--color-grey);
}
.wysiwyg .btn-container-grey-outline a,
.wysiwyg .btn-grey-outline,
.paragraph__content .btn-container-grey-outline a,
.paragraph__content .btn-grey-outline,
.ck-content .btn-container-grey-outline a,
.ck-content .btn-grey-outline {
  --_bg: transparent;
  --_color: var(--color-grey);
  --_hover-color: var(--color-white);
  --_hover-bg: color-mix(in oklab, var(--color-grey) 80%, var(--color-white));
  border-color: var(--color-grey);
}
.wysiwyg .btn-container-white-grey a,
.wysiwyg .btn-white-grey,
.paragraph__content .btn-container-white-grey a,
.paragraph__content .btn-white-grey,
.ck-content .btn-container-white-grey a,
.ck-content .btn-white-grey {
  --_bg: var(--color-white);
  --_color: var(--color-grey);
  --_hover-color: var(--color-grey);
  --_hover-bg: color-mix(in oklab, var(--color-grey) 15%, var(--color-white));
}
.wysiwyg .btn-container-white-grey-outline a,
.wysiwyg .btn-white-grey-outline,
.paragraph__content .btn-container-white-grey-outline a,
.paragraph__content .btn-white-grey-outline,
.ck-content .btn-container-white-grey-outline a,
.ck-content .btn-white-grey-outline {
  --_bg: transparent;
  --_color: var(--color-white);
  --_hover-color: var(--color-white);
  --_hover-bg: var(--color-grey);
  border-color: var(--color-white);
}
.wysiwyg .bg-color-warning,
.paragraph__content .bg-color-warning,
.ck-content .bg-color-warning {
  background-color: var(--color-warning);
}
.wysiwyg .btn-full,
.paragraph__content .btn-full,
.ck-content .btn-full {
  flex: 1;
}
.wysiwyg .btn-100,
.paragraph__content .btn-100,
.ck-content .btn-100 {
  width: 100%;
}
.wysiwyg .btn-sm,
.paragraph__content .btn-sm,
.ck-content .btn-sm {
  padding-top: calc(6 * var(--ratio, 1));
  padding-bottom: calc(6 * var(--ratio, 1));
}
.wysiwyg .btn-md,
.paragraph__content .btn-md,
.ck-content .btn-md {
  padding-top: calc(8 * var(--ratio, 1));
  padding-bottom: calc(8 * var(--ratio, 1));
}
.wysiwyg .btn-lg,
.paragraph__content .btn-lg,
.ck-content .btn-lg {
  padding-top: calc(10 * var(--ratio, 1));
  padding-bottom: calc(10 * var(--ratio, 1));
}
.wysiwyg .btn-xl,
.paragraph__content .btn-xl,
.ck-content .btn-xl {
  padding-top: calc(17 * var(--ratio, 1));
  padding-bottom: calc(17 * var(--ratio, 1));
}
.wysiwyg .btn-size-sm,
.paragraph__content .btn-size-sm,
.ck-content .btn-size-sm {
  padding-left: calc(10 * var(--ratio, 1));
  padding-right: calc(10 * var(--ratio, 1));
}
.wysiwyg .btn-size-md,
.paragraph__content .btn-size-md,
.ck-content .btn-size-md {
  padding-left: calc(12 * var(--ratio, 1));
  padding-right: calc(12 * var(--ratio, 1));
}
.wysiwyg .btn-size-lg,
.paragraph__content .btn-size-lg,
.ck-content .btn-size-lg {
  padding-left: calc(28 * var(--ratio, 1));
  padding-right: calc(28 * var(--ratio, 1));
}
.wysiwyg .btn-size-xl,
.paragraph__content .btn-size-xl,
.ck-content .btn-size-xl {
  padding-left: calc(36 * var(--ratio, 1));
  padding-right: calc(36 * var(--ratio, 1));
}
.wysiwyg .nav-link, .wysiwyg .nav-link-back,
.paragraph__content .nav-link,
.paragraph__content .nav-link-back,
.ck-content .nav-link,
.ck-content .nav-link-back {
  font-size: var(--fz-14);
  color: var(--color-grey);
  text-transform: uppercase;
  font-weight: 600;
  font-family: var(--ff2);
  text-decoration: none;
}
.wysiwyg .nav-link:hover, .wysiwyg .nav-link-back:hover,
.paragraph__content .nav-link:hover,
.paragraph__content .nav-link-back:hover,
.ck-content .nav-link:hover,
.ck-content .nav-link-back:hover {
  color: var(--var--black);
}
.wysiwyg .nav-link-back,
.paragraph__content .nav-link-back,
.ck-content .nav-link-back {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: calc(2 * var(--ratio, 1));
}
.wysiwyg .nav-link-back::before,
.paragraph__content .nav-link-back::before,
.ck-content .nav-link-back::before {
  content: "←";
}
.wysiwyg h1,
.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg h5,
.wysiwyg h6,
.wysiwyg p,
.paragraph__content h1,
.paragraph__content h2,
.paragraph__content h3,
.paragraph__content h4,
.paragraph__content h5,
.paragraph__content h6,
.paragraph__content p,
.ck-content h1,
.ck-content h2,
.ck-content h3,
.ck-content h4,
.ck-content h5,
.ck-content h6,
.ck-content p {
  margin-bottom: calc(24 * var(--ratio, 1));
}
.wysiwyg ul li::before,
.paragraph__content ul li::before,
.ck-content ul li::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #000;
  display: inline-block;
  vertical-align: middle;
  margin: -1px 5px 0 1px;
}
.wysiwyg ul.list-check,
.paragraph__content ul.list-check,
.ck-content ul.list-check {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--ratio, 1));
}
.wysiwyg ul.list-check li,
.paragraph__content ul.list-check li,
.ck-content ul.list-check li {
  display: flex;
  flex-direction: row;
  gap: calc(8 * var(--ratio, 1));
  align-items: flex-start;
  line-height: 1.5;
  font-weight: 300;
}
.wysiwyg ul.list-check li::before,
.paragraph__content ul.list-check li::before,
.ck-content ul.list-check li::before {
  content: "";
  width: calc(16 * var(--ratio, 1));
  height: calc(16 * var(--ratio, 1));
  flex: 0 0 calc(16 * var(--ratio, 1));
  margin: calc(4 * var(--ratio, 1));
  background-color: var(--color-primary);
  -webkit-mask-image: url("../images/svg/font/check-1.svg");
          mask-image: url("../images/svg/font/check-1.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
}
.wysiwyg strong,
.paragraph__content strong,
.ck-content strong {
  font-weight: 700;
}
.wysiwyg a,
.paragraph__content a,
.ck-content a {
  color: var(--color-primary);
  text-decoration: underline;
  transition: color 0.3s ease;
}
.wysiwyg a:hover,
.paragraph__content a:hover,
.ck-content a:hover {
  color: var(--color-secondary);
}
.wysiwyg a.external-link,
.paragraph__content a.external-link,
.ck-content a.external-link {
  display: inline-flex;
  align-items: center;
}
.wysiwyg a.external-link::after,
.paragraph__content a.external-link::after,
.ck-content a.external-link::after {
  content: "";
  margin-left: 4px;
  width: 14px;
  height: 14px;
  background-color: var(--color-grey);
  -webkit-mask-image: url("../images/svg/external-link.svg");
          mask-image: url("../images/svg/external-link.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  display: inline-block;
}
.wysiwyg a.external-link:hover,
.paragraph__content a.external-link:hover,
.ck-content a.external-link:hover {
  text-decoration: underline;
}
.wysiwyg .encadre,
.paragraph__content .encadre,
.ck-content .encadre {
  padding: calc(30 * var(--ratio, 1)) calc(24 * var(--ratio, 1)) calc(30 * var(--ratio, 1));
  margin-top: calc(24 * var(--ratio, 1));
  margin-bottom: calc(24 * var(--ratio, 1));
  color: var(--color-white);
  background-color: var(--color-secondary);
  --color-body: var(--color-white);
  display: flow-root;
}
.wysiwyg .encadre .titre,
.paragraph__content .encadre .titre,
.ck-content .encadre .titre {
  margin: 0;
}
.wysiwyg .encadre .content :last-child,
.paragraph__content .encadre .content :last-child,
.ck-content .encadre .content :last-child {
  margin-bottom: 0;
}
.wysiwyg .encadre .article-image,
.paragraph__content .encadre .article-image,
.ck-content .encadre .article-image {
  width: calc(350 * var(--ratio, 1));
  max-width: 100%;
  float: left;
  border: calc(2 * var(--ratio, 1)) solid var(--color-white);
  margin: 0 calc(20 * var(--ratio, 1)) calc(20 * var(--ratio, 1)) 0;
}
@media screen and (max-width: 640px) {
  .wysiwyg .encadre .article-image,
  .paragraph__content .encadre .article-image,
  .ck-content .encadre .article-image {
    float: none;
    width: 100%;
    margin-right: 0;
  }
}
.wysiwyg .encadre .article-image img,
.paragraph__content .encadre .article-image img,
.ck-content .encadre .article-image img {
  max-width: 100%;
  height: auto;
}
.wysiwyg img,
.paragraph__content img,
.ck-content img {
  margin: calc(20 * var(--ratio, 1)) auto 0;
}
.wysiwyg .article-image,
.paragraph__content .article-image,
.ck-content .article-image {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: calc(24 * var(--ratio, 1));
}
.wysiwyg .article-image img,
.paragraph__content .article-image img,
.ck-content .article-image img {
  display: block;
  width: 100%;
  height: auto;
  margin-top: 0;
}
.wysiwyg .article-image .caption,
.paragraph__content .article-image .caption,
.ck-content .article-image .caption {
  padding: calc(14 * var(--ratio, 1)) calc(20 * var(--ratio, 1)) calc(19 * var(--ratio, 1));
  font-size: var(--fz-14);
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.4);
  color: var(--color-white);
  font-weight: 500;
}
.wysiwyg .article-image .caption p,
.paragraph__content .article-image .caption p,
.ck-content .article-image .caption p {
  margin: 0;
  color: var(--color-white);
}
.wysiwyg table,
.paragraph__content table,
.ck-content table {
  border-collapse: collapse;
}
.wysiwyg table tr:nth-child(2n+1),
.paragraph__content table tr:nth-child(2n+1),
.ck-content table tr:nth-child(2n+1) {
  background-color: rgba(42, 55, 104, 0.1294117647);
}
.wysiwyg table tr:nth-child(2n+1) td,
.paragraph__content table tr:nth-child(2n+1) td,
.ck-content table tr:nth-child(2n+1) td {
  padding: calc(5 * var(--ratio, 1)) calc(4 * var(--ratio, 1));
}
.wysiwyg table tr:nth-child(2n+1) td img,
.paragraph__content table tr:nth-child(2n+1) td img,
.ck-content table tr:nth-child(2n+1) td img {
  margin: 0;
}
.wysiwyg .sommaire,
.paragraph__content .sommaire,
.ck-content .sommaire {
  list-style: none;
  padding: 0;
  margin: 0;
}
.wysiwyg .sommaire li,
.paragraph__content .sommaire li,
.ck-content .sommaire li {
  margin-bottom: calc(24 * var(--ratio, 1));
}
.wysiwyg .sommaire li::before,
.paragraph__content .sommaire li::before,
.ck-content .sommaire li::before {
  display: none;
}
.wysiwyg .sommaire li h3,
.paragraph__content .sommaire li h3,
.ck-content .sommaire li h3 {
  margin-bottom: calc(6 * var(--ratio, 1));
}
.wysiwyg .sommaire li ul,
.paragraph__content .sommaire li ul,
.ck-content .sommaire li ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.wysiwyg .sommaire li ul li,
.paragraph__content .sommaire li ul li,
.ck-content .sommaire li ul li {
  margin-bottom: 6px;
}
.wysiwyg .sommaire li ul li::before,
.paragraph__content .sommaire li ul li::before,
.ck-content .sommaire li ul li::before {
  display: none;
}
.wysiwyg .sommaire li ul li a,
.paragraph__content .sommaire li ul li a,
.ck-content .sommaire li ul li a {
  text-decoration: none;
}
.wysiwyg .bloc-bateau,
.paragraph__content .bloc-bateau,
.ck-content .bloc-bateau {
  padding-bottom: calc(16 * var(--ratio, 1));
  border-bottom: calc(1 * var(--ratio, 1)) solid #e9e9e9;
  margin-bottom: calc(16 * var(--ratio, 1));
}
.wysiwyg .bloc-bateau .titre,
.paragraph__content .bloc-bateau .titre,
.ck-content .bloc-bateau .titre {
  color: var(--color-primary);
}
.wysiwyg .bloc-bateau .sous-titre,
.paragraph__content .bloc-bateau .sous-titre,
.ck-content .bloc-bateau .sous-titre {
  color: color-mix(in oklab, var(--color-primary) 70%, var(--color-white));
  font-weight: normal;
  margin-top: calc(-12 * var(--ratio, 1));
}
.wysiwyg .bloc-bateau .content article,
.paragraph__content .bloc-bateau .content article,
.ck-content .bloc-bateau .content article {
  margin-bottom: calc(12 * var(--ratio, 1));
}
.wysiwyg .bloc-bateau .bloc-bateau-medias,
.paragraph__content .bloc-bateau .bloc-bateau-medias,
.ck-content .bloc-bateau .bloc-bateau-medias {
  position: relative;
  align-items: center;
  display: flex;
  overflow: hidden;
  margin-bottom: calc(12 * var(--ratio, 1));
}
.wysiwyg .bloc-bateau .bloc-bateau-medias img,
.paragraph__content .bloc-bateau .bloc-bateau-medias img,
.ck-content .bloc-bateau .bloc-bateau-medias img {
  background-color: #e9e9e9;
  border: 2px solid #e9e9e9;
  height: calc(300 * var(--ratio, 1));
  width: auto;
}
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-prev,
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-next,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-prev,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-next,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-prev,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-next {
  text-align: center;
  width: calc(44 * var(--ratio, 1));
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.3);
  transition: background 0.2s;
  left: calc(20 * var(--ratio, 1));
  display: flex;
  display: none;
  margin-top: calc(-22 * var(--ratio, 1));
  align-items: center;
  justify-content: center;
  color: white;
}
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-prev i,
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-next i,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-prev i,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-next i,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-prev i,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-next i {
  font-size: 0;
}
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-prev:hover,
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-next:hover,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-prev:hover,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-next:hover,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-prev:hover,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-next:hover {
  background: rgba(0, 0, 0, 0.5);
}
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-prev.swiper-button-next,
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-next.swiper-button-next,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-prev.swiper-button-next,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-next.swiper-button-next,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-prev.swiper-button-next,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-next.swiper-button-next {
  right: calc(20 * var(--ratio, 1));
  left: auto;
  left: initial;
}
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-prev.swiper-button-disabled,
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-button-next.swiper-button-disabled,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-prev.swiper-button-disabled,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-button-next.swiper-button-disabled,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-prev.swiper-button-disabled,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-button-next.swiper-button-disabled {
  opacity: 0 !important;
}
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media {
  width: auto !important;
}
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media {
  container-type: normal;
}
.wysiwyg .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media img,
.paragraph__content .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media img,
.ck-content .bloc-bateau .bloc-bateau-medias .swiper-wrapper .bloc-bateau-media img {
  margin: 0;
}

.path--sitemap h1 {
  padding-bottom: calc(6 * var(--ratio, 1));
  border-bottom: calc(1 * var(--ratio, 1)) solid var(--color-grey-medium-2);
}

.sitemap {
  margin-top: calc(40 * var(--ratio, 1));
}
@media screen and (min-width: 1025px) {
  .sitemap {
    -moz-column-count: 3;
         column-count: 3;
    -moz-column-gap: calc(32 * var(--ratio, 1));
         column-gap: calc(32 * var(--ratio, 1));
  }
}
.sitemap a,
.sitemap span {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  padding-bottom: calc(16 * var(--ratio, 1));
  font-family: var(--ff1);
  font-size: var(--fz-16);
  font-weight: 300;
  line-height: 1.5;
}

/*# sourceMappingURL=front.css.map*/