* {
  box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
}

img {
  max-width: 100%;
  height: auto;
}

:root {
  --body-font: 'Chromatica', sans-serif;
  --font-italic: 'Chromatica Italic', sans-serif;
  --fw-normal: 400;
  --fw-regular: var(--fw-normal);
  --fw-medium: 500;
  --fw-bold: 700;
  --fw-black: 900;
  --max-width: 1920px;
  --input-shadow: 4px;
  --avatar-shadow: 6px;
  --topbar-padding: 30px;
  --topbar-min-height: 32px;
  --space-s: 20px;
  --space-m: 40px;
  --space-l: 50px;
  --space-xl: var(--space-l);
  --color-000: #05bf8e;
  --border-color-000: #04a67c;
  --color-900: #11473b;
  --border-color-900: #0c322a;
  --color-800: #0c6b52;
  --border-color-800: #095440;
  --color-700: #07815c;
  --border-color-700: #06694b;
  --color-600: #019667;
  --border-color-600: #017d56;
  --color-500: #00b37a;
  --border-color-500: #009a69;
  --color-400: #04b181;
  --border-color-400: #03986f;
  --color-300: #a2f4d6;
  --border-color-300: #8bf1cc;
  --color-200: #c0f6e0;
  --border-color-200: #aaf3d5;
  --color-100: #dbf8ef;
  --border-color-100: #c6f4e6;
  --color-50: #f1fcf8;
  --border-color-50: #dcf8ee;
  /*--color-b: #ff9ede;*/
  --border-color-b: #fca28f;
  /*--color-a: #e6ef70;*/
  --border-color-a: #e2ec59;
  /*--color-c: #a2f4d6;*/
  --border-color-c: #8bf1cc;
  --color-b: #ff55c3;
  --color-a: #efc807;
  --color-c: #51b6c2;
}

@media (min-width: 600px) {
  :root {
    --range-width: 160px;
  }
}

@media (max-width: 599px) {
  :root {
    --range-width: 120px;
  }
}

@media (min-width: 1920px) {
  :root {
    --gap: 50px;
  }
}

@media (min-width: 1600px) and (max-width: 1919px) {
  :root {
    --gap: 40px;
  }
}

@media (min-width: 1440px) and (max-width: 1599px) {
  :root {
    --gap: 36px;
  }
}

@media (min-width: 940px) and (max-width: 1439px) {
  :root {
    --gap: 24px;
  }
}

@media (min-width: 600px) and (max-width: 939px) {
  :root {
    --gap: 22px;
  }
}

@media (max-width: 599px) {
  :root {
    --gap: 20px;
  }
}

@media (min-width: 481px) {
  :root {
    --content-section-padding: 100px;
  }
}

@media (max-width: 480px) {
  :root {
    --content-section-padding: 70px;
  }
}

@media (min-width: 1024px) and (max-width: 1439px) {
  :root {
    --space-xl: 80px;
  }
}

@media (min-width: 1440px) and (max-width: 1599px) {
  :root {
    --space-m: 55px;
    --space-l: 65px;
    --space-xl: 90px;
  }
}

@media (min-width: 1600px) {
  :root {
    --space-s: 25px;
    --space-m: 70px;
    --space-l: 75px;
    --space-xl: 100px;
  }
}

.ck-editor .ck-editor__editable {
  font-family: sans-serif;
  font-size: 16px;
}

.ck-editor .ck-editor__editable h4,
.ck-editor .ck-editor__editable h5,
.ck-editor .ck-editor__editable p {
  margin-top: var(--space-s);
  margin-bottom: var(--space-s);
}

.ck-editor .ck-editor__editable h4 {
  font-weight: var(--fw-bold);
}

.ck-editor .ck-editor__editable h4 .link__text {
  font-weight: inherit;
}

@media (min-width: 1600px) {
  .ck-editor .ck-editor__editable h4 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 28px;
    line-height: 1.75rem;
    letter-spacing: -.42px;
    letter-spacing: -.02625rem;
  }
}

@media (min-width: 1024px) and (max-width: 1599px) {
  .ck-editor .ck-editor__editable h4 {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 24px;
    line-height: 1.5rem;
    letter-spacing: -.2px;
    letter-spacing: -.0125rem;
  }
}

@media (min-width: 600px) and (max-width: 1023px) {
  .ck-editor .ck-editor__editable h4 {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 21px;
    line-height: 1.3125rem;
    letter-spacing: -.2px;
    letter-spacing: -.0125rem;
  }
}

@media (max-width: 599px) {
  .ck-editor .ck-editor__editable h4 {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 22px;
    line-height: 1.375rem;
    letter-spacing: -.2px;
    letter-spacing: -.0125rem;
  }
}

.ck-editor .ck-editor__editable h5 {
  font-weight: var(--fw-bold);
}

.ck-editor .ck-editor__editable h5 .link__text {
  font-weight: inherit;
}

@media (min-width: 1600px) {
  .ck-editor .ck-editor__editable h5 {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 28px;
    line-height: 1.75rem;
    letter-spacing: -.1px;
    letter-spacing: -.00625rem;
  }
}

@media (max-width: 1599px) {
  .ck-editor .ck-editor__editable h5 {
    font-size: 16px;
    font-size: 1rem;
    line-height: 20px;
    line-height: 1.25rem;
    letter-spacing: -.08px;
    letter-spacing: -.005rem;
  }
}

.ck-editor .ck-editor__editable a {
  display: inline-block;
  cursor: pointer;
  color: inherit;
  text-decoration: underline;
}

.ck-editor .ck-editor__editable a:not(.cms-content__link--level-2) {
  position: relative;
  z-index: 0;
  font-weight: var(--fw-bold);
}

.ck-editor .ck-editor__editable a:not(.cms-content__link--level-2):empty {
  display: none;
}

.ck-editor .ck-editor__editable a:not(.cms-content__link--level-2):not([href]):empty {
  display: none;
}

.ck-editor .ck-editor__editable table {
  width: 100%;
  border-collapse: collapse;
  text-align: center;
}

.ck-editor .ck-editor__editable table caption {
  font-weight: var(--fw-bold);
  background-color: var(--color-000);
  text-align: left;
  padding: 25px 30px 20px 30px;
}

.ck-editor .ck-editor__editable table caption .link__text {
  font-weight: inherit;
}

@media (min-width: 1600px) {
  .ck-editor .ck-editor__editable table caption {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 28px;
    line-height: 1.75rem;
    letter-spacing: -.42px;
    letter-spacing: -.02625rem;
  }
}

@media (min-width: 1024px) and (max-width: 1599px) {
  .ck-editor .ck-editor__editable table caption {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 24px;
    line-height: 1.5rem;
    letter-spacing: -.2px;
    letter-spacing: -.0125rem;
  }
}

@media (min-width: 600px) and (max-width: 1023px) {
  .ck-editor .ck-editor__editable table caption {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 21px;
    line-height: 1.3125rem;
    letter-spacing: -.2px;
    letter-spacing: -.0125rem;
  }
}

@media (max-width: 599px) {
  .ck-editor .ck-editor__editable table caption {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 22px;
    line-height: 1.375rem;
    letter-spacing: -.2px;
    letter-spacing: -.0125rem;
  }
}

.ck-editor .ck-editor__editable th {
  background-color: var(--color-100);
  font-weight: var(--fw-bold);
}

.ck-editor .ck-editor__editable th .link__text {
  font-weight: inherit;
}

@media (min-width: 1600px) {
  .ck-editor .ck-editor__editable th {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 28px;
    line-height: 1.75rem;
    letter-spacing: -.1px;
    letter-spacing: -.00625rem;
  }
}

@media (max-width: 1599px) {
  .ck-editor .ck-editor__editable th {
    font-size: 16px;
    font-size: 1rem;
    line-height: 20px;
    line-height: 1.25rem;
    letter-spacing: -.08px;
    letter-spacing: -.005rem;
  }
}

.ck-editor .ck-editor__editable th,
.ck-editor .ck-editor__editable td {
  border: 1px solid var(--border-color-200);
  padding: 25px 30px 20px 30px;
}

.ck-editor .ck-editor__editable td .image-wrapper {
  margin: -25px -30px -20px -30px;
}

.ck-editor .ck-editor__editable table {
  margin-top: var(--space-m);
  margin-bottom: var(--space-m);
}

a.cms-content__link--level-2 {
  text-decoration: underline;
  font-size: 13px;
  font-size: .8125rem;
  line-height: 15px;
  line-height: .9375rem;
  letter-spacing: 0px;
  letter-spacing: 0rem;
}

span.text--colored {
  color: var(--color-600);
}

span.text--colored--gris {
  color: #A8A39E;
}

span.text--colored--bleu_pale {
  color: #51B6C2;
}

span.text--colored--jaune {
  color: #EFC807;
}

span.text--colored--vert_fonce {
  color: #3A9A38;
}

span.text--colored--vert_pale {
  color: #7CCA51;
}

span.text--colored--orange {
  color: #FA7921;
}

span.text--colored--rouge {
  color: #EC0000;
}

span.text--colored--mauve {
  color: #C58AE1;
}

span.text--colored--violet {
  color: #560FA5;
}

span.text--colored--alloProf {
  color: #05BF8E;
}

span.text--colored--rose {
  color: #FF55C3;
}

span.text--colored--bleu_fonce {
  color: #333FB1;
}

span.text--underlined {
  display: inline-block;
  position: relative;
  z-index: 0;
}

span.text--underlined::before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 0;
  bottom: 4px;
  width: 100%;
  height: 1px;
  background-color: var(--color-600);
}

span.text--underlined::before {
  bottom: 0;
}

span.text-highlight--green,
span.text-highlight--secondary {
  background-color: var(--color-a);
}

span.text-highlight--red,
span.text-highlight--primary {
  background-color: var(--color-b);
}

span.text-highlight--blue,
span.text-highlight--tertiary {
  background-color: var(--color-c);
}
