/*
Theme Name: richers
*/
@import url("https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

body {
  line-height: 1; }

a {
  text-decoration-skip-ink: auto; }

a[href^="tel"] {
  color: inherit;
  text-decoration: none; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

q {
  display: inline;
  font-style: italic; }

q:before {
  content: '"';
  font-style: normal; }

q:after {
  content: '"';
  font-style: normal; }

textarea, input[type="text"], input[type="button"], input[type="submit"], input[type="reset"], input[type="search"], input[type="password"] {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0; }

input[type="search"] {
  -webkit-appearance: textfield; }

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

th, td {
  padding: 2px; }

big {
  font-size: 120%; }

small, sup, sub {
  font-size: 80%; }

sup {
  vertical-align: super; }

sub {
  vertical-align: sub; }

dd {
  margin-left: 20px; }

kbd, tt {
  font-family: courier;
  font-size: 12px; }

ins {
  text-decoration: underline; }

del, strike, s {
  text-decoration: line-through; }

dt {
  font-weight: bold; }

address, cite, var {
  font-style: italic; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent; }

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  word-break: normal; }

.screen-reader-text:focus {
  background-color: #f7f7f7;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  -webkit-clip-path: none;
  clip-path: none;
  color: #007acc;
  display: block;
  font-size: 14px;
  font-size: .875rem;
  font-weight: 700;
  height: auto;
  right: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; }

.skip-link {
  left: -9999rem;
  top: 2.5rem;
  z-index: 999999999;
  text-decoration: underline; }

.skip-link:focus {
  display: block;
  left: 6px;
  top: 7px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  line-height: normal;
  padding: 15px 23px 14px;
  z-index: 100000;
  right: auto; }

.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active) {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap; }

/* IMPORTS */
/* CSS Document */
/* IMPORTS */
/* VARIABLES */
body, .editor-styles-wrapper {
  --color--dark: #323232;
  --color--light: #FFFFFF;
  --color--accent: #BC985C;
  --color--accent2: #fbf7f0;
  --color--grey: #DDDDDD;
  --font--xxl: 52px;
  --font--xl: 40px;
  --font--l: 21px;
  --font--m: 18px;
  --font--s: 15px;
  --font--xs: 13px;
  --wp--preset--font-size--x-large: var(--font--xl) !important;
  --wp--preset--font-size--large: var(--font--l) !important;
  --wp--preset--font-size--medium: var(--font--m) !important;
  --wp--preset--font-size--small: var(--font--s) !important;
  --font--main: "Figtree", sans-serif;
  --container--width: 1250px; }

@media screen and (max-width: 1200px) {
  body, .editor-styles-wrapper {
    --font--xxl: 48px;
    --font--xl: 36px;
    --font--l: 21px;
    --font--m: 18px;
    --font--s: 15px;
    --font--xs: 13px; } }
@media screen and (max-width: 991px) {
  body, .editor-styles-wrapper {
    --font--xxl: 45px;
    --font--xl: 32px;
    --font--l: 21px;
    --font--m: 18px;
    --font--s: 15px;
    --font--xs: 13px; } }
@media screen and (max-width: 768px) {
  body, .editor-styles-wrapper {
    --font--xxl: 30px;
    --font--xl: 26px;
    --font--l: 18px;
    --font--m: 16px;
    --font--s: 14px;
    --font--xs: 12px; } }
body:not(.wp-admin) {
  color: var(--color--dark);
  background: var(--color--light);
  font-family: var(--font--main);
  font-size: var(--font--m);
  font-weight: 400;
  letter-spacing: -0.3px;
  line-height: 1.1;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: subpixel-antialiased;
  font-smoothing: subpixel-antialiased;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.site-main h1.wp-block-post-title, .editor-styles-wrapper h1.wp-block-post-title {
  font-size: var(--font--l) !important;
  border-bottom: 1px solid var(--color--grey);
  padding-bottom: 1em;
  margin-bottom: 2em; }
.site-main h1, .site-main .h1, .editor-styles-wrapper h1, .editor-styles-wrapper .h1 {
  font-size: var(--font--xxl);
  display: block;
  margin: .5em 0;
  font-weight: 300; }
.site-main h2, .site-main .h2, .editor-styles-wrapper h2, .editor-styles-wrapper .h2 {
  font-size: var(--font--xl);
  margin: .5em 0;
  font-weight: 400; }
.site-main h3, .site-main .h3, .editor-styles-wrapper h3, .editor-styles-wrapper .h3 {
  font-size: var(--font--l);
  font-weight: bold;
  letter-spacing: 0.02em;
  color: var(--color--accent);
  margin: 1.5em 0 .6em; }
.site-main h4, .editor-styles-wrapper h4 {
  font-size: var(--font--m);
  font-weight: bold;
  margin: 1.5em 0 1em;
  text-transform: uppercase; }
.site-main h5, .editor-styles-wrapper h5 {
  font-size: var(--font--m);
  margin: 1.5em 0 1em; }
.site-main h6, .editor-styles-wrapper h6 {
  font-size: var(--font--m);
  letter-spacing: -0.3px;
  margin: 1.5em 0 .8em; }
.site-main h1 span, .site-main h2 span, .editor-styles-wrapper h1 span, .editor-styles-wrapper h2 span {
  color: var(--color--accent); }
.site-main .has-x-large-font-size, .editor-styles-wrapper .has-x-large-font-size {
  font-size: var(--font--xl); }
.site-main .has-large-font-size, .editor-styles-wrapper .has-large-font-size {
  font-size: var(--font--l); }
.site-main .has-medium-font-size, .editor-styles-wrapper .has-medium-font-size {
  font-size: var(--font--m); }
.site-main .has-small-font-size, .editor-styles-wrapper .has-small-font-size {
  font-size: var(--font--s); }
.site-main em, .editor-styles-wrapper em {
  font-style: italic; }
.site-main strong, .editor-styles-wrapper strong {
  font-weight: bold; }
.site-main a, .editor-styles-wrapper a {
  color: var(--color--dark);
  text-decoration: underline 1px dotted var(--color--accent);
  text-underline-offset: .4em; }
.site-main p, .editor-styles-wrapper p {
  font-size: var(--font--m);
  margin: .5em 0 .5em;
  line-height: 1.4; }
.site-main ul, .site-main ol, .editor-styles-wrapper ul, .editor-styles-wrapper ol {
  list-style: disc;
  line-height: 1.3;
  padding-left: 30px;
  margin: 1.2em 0; }
  .site-main ul li, .site-main ol li, .editor-styles-wrapper ul li, .editor-styles-wrapper ol li {
    margin: 1em 0; }
.site-main .wp-block-cover__inner-container, .editor-styles-wrapper .wp-block-cover__inner-container {
  max-width: var(--container--width);
  margin: 0 auto;
  padding: 0 15px; }
.site-main .wp-block-buttons, .editor-styles-wrapper .wp-block-buttons {
  margin: 3em auto 2em; }
.site-main .wp-block-buttons .wp-block-button__link, .site-main .btn, .editor-styles-wrapper .wp-block-buttons .wp-block-button__link, .editor-styles-wrapper .btn {
  display: inline-block;
  background: var(--color--accent);
  color: var(--color--light);
  text-decoration: none;
  font-size: var(--font--s);
  padding: 13px 25px 11px;
  border-radius: 10px;
  font-weight: bold;
  letter-spacing: 0.06em;
  cursor: pointer;
  border: 1px solid var(--color--accent);
  text-transform: uppercase;
  transition: all 200ms ease; }
  .site-main .wp-block-buttons .wp-block-button__link:hover, .site-main .btn:hover, .editor-styles-wrapper .wp-block-buttons .wp-block-button__link:hover, .editor-styles-wrapper .btn:hover {
    background: transparent;
    color: var(--color--accent); }
.site-main .wp-block-buttons .is-style-outline .wp-block-button__link, .site-main .btn-outline, .editor-styles-wrapper .wp-block-buttons .is-style-outline .wp-block-button__link, .editor-styles-wrapper .btn-outline {
  background: transparent;
  color: var(--color--accent);
  border: solid 1px var(--color--accent); }
  .site-main .wp-block-buttons .is-style-outline .wp-block-button__link:hover, .site-main .btn-outline:hover, .editor-styles-wrapper .wp-block-buttons .is-style-outline .wp-block-button__link:hover, .editor-styles-wrapper .btn-outline:hover {
    background: var(--color--accent);
    color: var(--color--light); }
.site-main figure, .editor-styles-wrapper figure {
  margin: 2em 0; }
  .site-main figure figcaption, .editor-styles-wrapper figure figcaption {
    color: var(--color--grey);
    font-size: 13px; }
.site-main figure.wp-block-image.is-style-rounded img, .editor-styles-wrapper figure.wp-block-image.is-style-rounded img {
  border-radius: 20px; }
.site-main figure.wp-block-embed, .editor-styles-wrapper figure.wp-block-embed {
  border-radius: 16px;
  overflow: hidden; }
.site-main .wp-block-separator, .editor-styles-wrapper .wp-block-separator {
  border-top: solid 1px var(--color--grey);
  margin: 80px 0 55px; }
.site-main .wp-block-columns, .editor-styles-wrapper .wp-block-columns {
  margin: 2em auto;
  gap: 70px; }
.site-main .wp-block-group.stat, .editor-styles-wrapper .wp-block-group.stat {
  background: var(--color--accent2);
  border-radius: 24px;
  padding: 50px 35px 50px 25px;
  font-size: var(--font--sl);
  margin-top: 2em;
  margin-bottom: 2em; }
  .site-main .wp-block-group.stat .wp-block-group__inner-container h3, .editor-styles-wrapper .wp-block-group.stat .wp-block-group__inner-container h3 {
    font-size: 32px; }
  .site-main .wp-block-group.stat .wp-block-group__inner-container p:first-of-type, .editor-styles-wrapper .wp-block-group.stat .wp-block-group__inner-container p:first-of-type {
    margin-top: 5px; }
  .site-main .wp-block-group.stat .wp-block-group__inner-container > :first-child, .editor-styles-wrapper .wp-block-group.stat .wp-block-group__inner-container > :first-child {
    margin-top: 0; }
  .site-main .wp-block-group.stat .wp-block-group__inner-container > :last-child, .editor-styles-wrapper .wp-block-group.stat .wp-block-group__inner-container > :last-child {
    margin-bottom: 0; }
.site-main .wp-block-columns.stats-col, .editor-styles-wrapper .wp-block-columns.stats-col {
  align-items: stretch !important;
  gap: 50px; }
  .site-main .wp-block-columns.stats-col .wp-block-group.stat, .editor-styles-wrapper .wp-block-columns.stats-col .wp-block-group.stat {
    margin-top: 0;
    margin-bottom: 0;
    height: 100%; }
.site-main .is-style-caps, .editor-styles-wrapper .is-style-caps {
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 800; }
.site-main .block-diapo, .editor-styles-wrapper .block-diapo {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
  width: 100%; }
  .site-main .block-diapo ul.diapo-slider, .site-main .block-diapo ul.diapo-selec, .editor-styles-wrapper .block-diapo ul.diapo-slider, .editor-styles-wrapper .block-diapo ul.diapo-selec {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
    position: relative; }
    .site-main .block-diapo ul.diapo-slider .slick-list, .site-main .block-diapo ul.diapo-selec .slick-list, .editor-styles-wrapper .block-diapo ul.diapo-slider .slick-list, .editor-styles-wrapper .block-diapo ul.diapo-selec .slick-list {
      border-radius: 32px;
      position: relative; }
    .site-main .block-diapo ul.diapo-slider li, .site-main .block-diapo ul.diapo-selec li, .editor-styles-wrapper .block-diapo ul.diapo-slider li, .editor-styles-wrapper .block-diapo ul.diapo-selec li {
      width: 100%;
      margin: 0;
      padding: 0;
      position: relative; }
      .site-main .block-diapo ul.diapo-slider li img, .site-main .block-diapo ul.diapo-selec li img, .editor-styles-wrapper .block-diapo ul.diapo-slider li img, .editor-styles-wrapper .block-diapo ul.diapo-selec li img {
        width: 100%;
        object-fit: cover;
        object-position: center; }
    .site-main .block-diapo ul.diapo-slider .slick-arrow, .site-main .block-diapo ul.diapo-selec .slick-arrow, .editor-styles-wrapper .block-diapo ul.diapo-slider .slick-arrow, .editor-styles-wrapper .block-diapo ul.diapo-selec .slick-arrow {
      position: absolute;
      z-index: 10;
      right: 30px;
      bottom: 25px;
      width: 48px;
      height: 48px;
      border-radius: 100px;
      display: block;
      background: var(--color--accent) url("img/icon-arrow2-white.svg") no-repeat center/20px;
      cursor: pointer;
      transition: none;
      border: 0;
      transition: all 200ms ease; }
      .site-main .block-diapo ul.diapo-slider .slick-arrow.slick-disabled, .site-main .block-diapo ul.diapo-selec .slick-arrow.slick-disabled, .editor-styles-wrapper .block-diapo ul.diapo-slider .slick-arrow.slick-disabled, .editor-styles-wrapper .block-diapo ul.diapo-selec .slick-arrow.slick-disabled {
        opacity: .25;
        pointer-events: none; }
      .site-main .block-diapo ul.diapo-slider .slick-arrow.slick-prev, .site-main .block-diapo ul.diapo-selec .slick-arrow.slick-prev, .editor-styles-wrapper .block-diapo ul.diapo-slider .slick-arrow.slick-prev, .editor-styles-wrapper .block-diapo ul.diapo-selec .slick-arrow.slick-prev {
        right: 85px;
        rotate: 180deg; }
      .site-main .block-diapo ul.diapo-slider .slick-arrow:hover, .site-main .block-diapo ul.diapo-selec .slick-arrow:hover, .editor-styles-wrapper .block-diapo ul.diapo-slider .slick-arrow:hover, .editor-styles-wrapper .block-diapo ul.diapo-selec .slick-arrow:hover {
        background: var(--color--dark) url("img/icon-arrow2-gold.svg") no-repeat center/20px; }
    .site-main .block-diapo ul.diapo-slider.paysage li img, .site-main .block-diapo ul.diapo-selec.paysage li img, .editor-styles-wrapper .block-diapo ul.diapo-slider.paysage li img, .editor-styles-wrapper .block-diapo ul.diapo-selec.paysage li img {
      aspect-ratio: 16 / 9; }
    .site-main .block-diapo ul.diapo-slider.carre li img, .site-main .block-diapo ul.diapo-selec.carre li img, .editor-styles-wrapper .block-diapo ul.diapo-slider.carre li img, .editor-styles-wrapper .block-diapo ul.diapo-selec.carre li img {
      aspect-ratio: 1 / 1; }
    .site-main .block-diapo ul.diapo-slider.portrait li img, .site-main .block-diapo ul.diapo-selec.portrait li img, .editor-styles-wrapper .block-diapo ul.diapo-slider.portrait li img, .editor-styles-wrapper .block-diapo ul.diapo-selec.portrait li img {
      aspect-ratio: 12 / 16; }
    .site-main .block-diapo ul.diapo-slider .caption, .site-main .block-diapo ul.diapo-selec .caption, .editor-styles-wrapper .block-diapo ul.diapo-slider .caption, .editor-styles-wrapper .block-diapo ul.diapo-selec .caption {
      margin: 0;
      position: absolute;
      z-index: 8;
      bottom: 0px;
      left: 0px;
      right: 0;
      padding: 60px 180px 30px 40px;
      background: #000;
      background: linear-gradient(0deg, black 0%, rgba(0, 0, 0, 0) 100%);
      color: var(--color--light);
      font-weight: 600; }
.site-main .block-carousel, .editor-styles-wrapper .block-carousel {
  padding: 2em 0; }
  .site-main .block-carousel ul, .editor-styles-wrapper .block-carousel ul {
    display: flex;
    flex-wrap: nowrap;
    margin: 0;
    padding: 0;
    position: relative;
    gap: 3em;
    align-items: center; }
    .site-main .block-carousel ul li, .editor-styles-wrapper .block-carousel ul li {
      flex: 0 0 200px;
      list-style: none; }
      .site-main .block-carousel ul li img, .editor-styles-wrapper .block-carousel ul li img {
        width: 100%;
        object-fit: contain;
        object-position: center;
        height: auto;
        display: block;
        filter: grayscale(1);
        opacity: .5; }
        .site-main .block-carousel ul li img:hover, .editor-styles-wrapper .block-carousel ul li img:hover {
          filter: grayscale(0);
          opacity: 1; }
    .site-main .block-carousel ul.paysage li img, .editor-styles-wrapper .block-carousel ul.paysage li img {
      aspect-ratio: 16 / 9; }
    .site-main .block-carousel ul.carre li img, .editor-styles-wrapper .block-carousel ul.carre li img {
      aspect-ratio: 1 / 1; }
    .site-main .block-carousel ul.portrait li img, .editor-styles-wrapper .block-carousel ul.portrait li img {
      aspect-ratio: 12 / 16; }

.footer2 {
  margin-top: 6em !important;
  margin-bottom: 0 !important; }
  .footer2 .wp-block-group {
    border-radius: 20px 20px 0 0;
    padding: 1em 1.5em 0.1em; }
  .footer2 .widget_nav_menu {
    margin: 20px 0;
    align-items: center;
    font-size: var(--font--xs); }
  .footer2 ul.menu {
    display: flex;
    flex-wrap: wrap;
    gap: 2em;
    justify-content: end;
    margin-bottom: 1em;
    font-size: var(--font--xs); }
    .footer2 ul.menu a {
      opacity: .5; }
      .footer2 ul.menu a:hover {
        opacity: 1; }
  .footer2 .portail {
    margin-bottom: 8px !important; }
  .footer2 .portail a {
    color: var(--color--accent) !important;
    padding: 5px 8px;
    border-radius: 3px;
    border: solid 1px var(--color--accent);
    opacity: 1 !important; }
    .footer2 .portail a:hover {
      color: var(--color--light) !important;
      border-color: var(--color--light); }

.wp-block-gallery.logos img {
  aspect-ratio: 16 / 9;
  object-fit: contain;
  object-position: center; }

@media screen and (max-width: 781px) {
  .site-main .wp-block-spacer.is-style-respsonsive, .editor-styles-wrapper .wp-block-spacer.is-style-respsonsive {
    height: 40px !important; }
  .site-main .wp-block-columns, .editor-styles-wrapper .wp-block-columns {
    gap: 20px; }
  .site-main .block-carousel, .editor-styles-wrapper .block-carousel {
    padding: 2em 0; }
    .site-main .block-carousel ul li, .editor-styles-wrapper .block-carousel ul li {
      flex: 0 0 100px; }

  .footer2 {
    margin-top: 6em !important;
    margin-bottom: 0 !important; }
    .footer2 .wp-block-group {
      border-radius: 10px 10px 0 0;
      padding: 1em 1.5em 0.1em; }
    .footer2 ul.menu {
      display: grid;
      text-align: center;
      gap: 10px;
      justify-content: center; } }
@media screen and (max-width: 481px) {
  .site-main .wp-block-spacer.is-style-respsonsive, .editor-styles-wrapper .wp-block-spacer.is-style-respsonsive {
    height: 20px !important; } }
/* BLOCK COLORS */
.has-dark-color {
  color: var(--color--dark); }

.has-dark-background-color {
  background-color: var(--color--dark); }

.has-dark-border-color {
  border-color: var(--color--dark); }

.has-light-color {
  color: var(--color--light); }

.has-light-background-color {
  background-color: var(--color--light); }

.has-light-border-color {
  border-color: var(--color--light); }

.has-accent-color {
  color: var(--color--accent); }

.has-accent-background-color {
  background-color: var(--color--accent); }

.has-accent-border-color {
  border-color: var(--color--accent); }

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

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

.has-grey-border-color {
  border-color: var(--color--grey); }

/* GENERAL */
body {
  overflow-x: hidden; }

body.noscroll {
  overflow: hidden; }

.container {
  max-width: var(--container--width);
  margin: 0 auto;
  padding: 0 15px;
  width: 100%; }

a {
  transition: all 200ms ease;
  color: var(--color--dark);
  text-decoration: none; }
  a:hover {
    color: var(--color--accent); }

img {
  transition: all 200ms ease;
  max-width: 100%;
  height: auto; }

.alignfull {
  width: 100vw;
  margin-left: 50%;
  transform: translateX(-50%); }

strong {
  font-weight: bold; }

body.noscroll {
  overflow: hidden; }

#wrapper {
  overflow-x: hidden; }

/* HEADER */
#header {
  position: fixed;
  top: 0;
  z-index: 999;
  width: 100%;
  padding: 40px 0;
  border-top: solid 4px var(--color--accent);
  border-bottom: solid 1px var(--color--grey);
  transition: all 500ms ease;
  background: var(--color--light); }
  #header .cols {
    position: relative;
    display: grid;
    grid-template-columns: auto auto;
    gap: 50px;
    align-items: center;
    justify-content: space-between; }
  #header .logo, #header .home-logo {
    width: 100%;
    max-width: 180px;
    display: block;
    transition: all 500ms ease; }
  #header .home-logo {
    opacity: 0;
    position: absolute;
    left: 15px;
    top: 0; }
  #header .logo {
    opacity: 1; }

#header.header-home:not(.sticky) {
  border-bottom-color: transparent;
  background: transparent; }
  #header.header-home:not(.sticky) .home-logo {
    opacity: 1; }
  #header.header-home:not(.sticky) .logo {
    opacity: 0; }
  #header.header-home:not(.sticky) #menu a {
    color: var(--color--light); }
    #header.header-home:not(.sticky) #menu a:hover {
      color: var(--color--accent); }

#header.sticky {
  padding: 6px 0; }
  #header.sticky .logo, #header.sticky .home-logo {
    max-width: 120px; }

.admin-bar #header {
  top: 32px; }

#menu ul {
  display: flex;
  align-items: center;
  gap: 35px;
  text-transform: uppercase;
  font-size: var(--font--xs);
  font-weight: bold;
  letter-spacing: 0.02em; }
  #menu ul li a {
    padding: 10px 0; }
  #menu ul li.btn a {
    background: var(--color--accent);
    color: var(--color--light);
    padding: 10px 20px;
    border: 1px solid var(--color--accent);
    border-radius: 10px; }
    #menu ul li.btn a:hover {
      background: transparent;
      color: var(--color--accent); }
  #menu ul li.current-menu-item:not(.btn) {
    text-decoration: underline 1px dotted var(--color--accent);
    text-underline-offset: 5px; }

#mobile-menu {
  display: none; }

#burger {
  display: none; }

/* MAIN CONTENT */
.entry-content {
  max-width: var(--container--width);
  margin: 0 auto;
  padding: 0 15px; }

body:not(.home) #main {
  padding-top: 140px;
  padding-bottom: 40px; }

.breadcrumbs-wrapper {
  height: 60px;
  display: flex;
  align-items: center;
  background: var(--color--light);
  font-size: var(--font--s); }
  .breadcrumbs-wrapper .breadcrumbs a, .breadcrumbs-wrapper .breadcrumbs span {
    margin-right: 10px;
    font-weight: 500; }
  .breadcrumbs-wrapper .breadcrumbs a {
    font-weight: 700; }
  .breadcrumbs-wrapper .breadcrumbs .sep {
    display: inline-block;
    background: url("img/icon-arrow-gold.svg") no-repeat right center;
    width: 10px;
    height: 10px; }
  .breadcrumbs-wrapper .breadcrumbs .active {
    opacity: .5; }

/* CATALOGUE FORMATIONS */
.archive-formations {
  margin-top: 4.5em;
  margin-bottom: 4.5em; }
  .archive-formations .listing {
    margin-top: 2em; }
  .archive-formations .title-banner.image {
    aspect-ratio: 16 / 6;
    border-radius: 20px;
    margin-bottom: 2em;
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: end;
    padding: 1.5em 2em; }
    .archive-formations .title-banner.image img {
      position: absolute;
      inset: 0;
      object-fit: cover;
      object-position: center;
      height: 100%;
      width: 100%; }
    .archive-formations .title-banner.image .overlay {
      display: block;
      position: absolute;
      inset: 0;
      background: rgba(31, 31, 31, 0.37);
      background: linear-gradient(0deg, rgba(30, 30, 30, 0.8) 10%, rgba(31, 31, 31, 0) 80%); }
    .archive-formations .title-banner.image h1 {
      position: relative;
      color: var(--color--light);
      margin: 0; }
  .archive-formations .nothing {
    margin-top: 3em;
    padding: 0 8px; }
  .archive-formations .after-listing {
    margin: 5em auto 0;
    max-width: 400px;
    text-align: center;
    padding: 30px;
    background: #f5f5f5;
    border-radius: 20px; }
    .archive-formations .after-listing h3 {
      margin-top: 0;
      color: var(--color-dark); }
    .archive-formations .after-listing .btn {
      margin-top: 1.5em; }

.archive-formations-cols {
  display: grid;
  grid-template-columns: 3fr 8fr;
  gap: 70px; }
  .archive-formations-cols h1 {
    margin-top: 0; }

.preview-formation {
  border-bottom: 1px solid var(--color--grey); }
  .preview-formation:first-child {
    border-top: 1px solid var(--color--grey); }
  .preview-formation a {
    display: block;
    padding: 1.5em 70px 1.4em .5em;
    text-decoration: none;
    background: url("img/icon-arrow2-gold.svg") no-repeat right 40px center/20px; }
    .preview-formation a h2 {
      margin: 0;
      font-size: var(--font--m);
      font-weight: 500; }
    .preview-formation a .code {
      font-size: var(--font--xs); }
    .preview-formation a .tags {
      display: flex;
      gap: 5px; }
      .preview-formation a .tags .pill {
        font-size: var(--font--xs);
        background: var(--color--accent);
        color: var(--color--light);
        display: block;
        padding: 6px 8px 4px 6px;
        border-radius: 4px;
        font-weight: 600; }
  .preview-formation a:hover {
    background-position: right 32px center;
    padding-left: .7em; }

.preview-formation_bak {
  color: var(--color--dark);
  background: var(--color--dark) url("img/icon-arrow2-gold.svg") no-repeat right 40px bottom 30px;
  border-radius: 20px;
  overflow: hidden;
  font-weight: normal;
  position: relative;
  transition: all 300ms ease;
  background-size: 25px; }
  .preview-formation_bak a {
    text-decoration: none; }
  .preview-formation_bak .image {
    overflow: hidden; }
    .preview-formation_bak .image img {
      aspect-ratio: 14 / 10;
      object-fit: cover;
      object-position: center;
      display: block;
      backface-visibility: hidden;
      will-change: transform;
      transition: all 600ms ease; }
  .preview-formation_bak .content {
    padding: 30px 25px 80px;
    display: grid;
    align-content: space-between; }
  .preview-formation_bak h2 {
    margin: 0 0 10px;
    font-size: var(--font--l);
    color: var(--color--light);
    font-weight: 600;
    padding-right: 20px;
    line-height: 1.3; }
    .preview-formation_bak h2 a {
      color: var(--color--light); }
  .preview-formation_bak h3 {
    margin: 0 0 10px;
    font-size: var(--font--s); }
  .preview-formation_bak .code {
    position: absolute;
    bottom: 30px;
    color: var(--color--light);
    font-size: var(--font--xs);
    opacity: .6; }
  .preview-formation_bak:hover {
    background-position: right 30px bottom 30px; }
    .preview-formation_bak:hover .image img {
      transform: scale(1.08); }

.filtres-formations {
  background: var(--color--dark);
  border-radius: 20px;
  padding: 35px 25px; }

.filtres-close {
  display: none; }

.filtres-toggle {
  display: none; }

.filtres-overlay {
  display: none; }

ul.formation-categories {
  list-style: none;
  margin: 0;
  padding: 0 0 0 15px; }
  ul.formation-categories li {
    margin: 0 0 20px; }
  ul.formation-categories a {
    color: var(--color--light);
    text-decoration: underline 1px dotted var(--color--accent);
    text-underline-offset: .4em;
    line-height: 1.4em;
    font-size: var(--font--m); }
  ul.formation-categories li.current-cat a {
    color: var(--color--accent);
    font-weight: 500; }

.formation-search {
  position: relative;
  margin: 2em 0 0;
  padding: 0;
  width: 100%;
  max-width: 280px; }
  .formation-search input {
    border: 1px solid var(--color--accent);
    background: transparent;
    color: var(--color--light);
    font-family: var(--font--main);
    padding: 15px 60px 15px 25px;
    border-radius: 20px;
    width: 100%;
    font-size: var(--font--m); }
    .formation-search input::placeholder {
      color: var(--color--accent); }
    .formation-search input:focus, .formation-search input:focus-visible {
      outline: 0;
      border-color: var(--color--light); }
  .formation-search button {
    position: absolute;
    inset: 0 15px 0 auto;
    background: url("img/icon-search-gold.svg") no-repeat center center;
    background-size: 15px;
    width: 25px;
    border: 0;
    cursor: pointer; }
    .formation-search button:hover {
      opacity: .5; }

/* PLANNING SESSIONS CATEC */
#catec-modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7); }

.modal-content {
  position: relative;
  background-color: var(--color--light);
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
  padding: 30px 30px 60px;
  width: 90%;
  max-width: 800px;
  border-radius: 32px;
  height: 85vh;
  overflow-y: scroll;
  overscroll-behavior: contain;
  scrollbar-width: none; }
  .modal-content::-webkit-scrollbar {
    display: none; }

.close-modal {
  position: absolute;
  right: 20px;
  top: 10px;
  font-size: 28px;
  cursor: pointer;
  color: var(--color--dark); }

#modal-results h3 {
  margin-bottom: 30px; }
#modal-results .session-card {
  padding: 10px 10px 10px 0;
  border-bottom: 1px solid #e5e5e5; }
#modal-results .session-details {
  font-size: var(--font--s);
  display: grid;
  grid-template-columns: 120px 180px 180px auto;
  align-items: center;
  justify-content: space-between;
  gap: 10px; }
  #modal-results .session-details .cta a {
    font-size: var(--font--xs);
    padding: 10px 15px; }

/* BLOG */
.single-post article.post {
  max-width: 910px;
  margin: 0 auto;
  padding: 2em 0; }
.single-post .entry-title {
  margin-bottom: .2em; }
.single-post .entry-image {
  padding: 1em 0; }
  .single-post .entry-image img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
    border-radius: 20px; }
.single-post .entry-content {
  padding: 0; }

/* SINGLE FORMATION */
.single-formation header {
  background: var(--color--dark);
  color: var(--color--light);
  padding: 80px 0 80px; }
  .single-formation header .entry-title {
    padding-right: 25%; }
.single-formation .breadcrumbs-wrapper {
  border-bottom: solid 1px var(--color--grey); }
.single-formation .thumbnail {
  margin-bottom: 1.5em; }
  .single-formation .thumbnail img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    border-radius: 20px; }
.single-formation .thumbnail-mob {
  display: none; }
.single-formation .goback {
  padding-top: 3em;
  padding-bottom: 1em;
  border-top: 1px solid var(--color--grey);
  font-size: var(--font--s); }
  .single-formation .goback a {
    padding-left: 30px;
    position: relative; }
    .single-formation .goback a::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%) rotate(180deg);
      width: 30px;
      height: 20px;
      background: url("img/icon-arrow-gold.svg") no-repeat right 10px center/15px;
      transition: all 200ms ease; }
    .single-formation .goback a:hover::before {
      background-position: right 0 center; }

.formation-cols {
  display: grid;
  grid-template-columns: auto 330px;
  gap: 80px;
  padding-top: 100px;
  padding-bottom: 50px; }
  .formation-cols .entry-content {
    padding: 0; }
    .formation-cols .entry-content h2:first-child {
      margin-top: 0; }
    .formation-cols .entry-content h2 {
      font-weight: bold;
      margin: 1.5em 0 1em; }
    .formation-cols .entry-content h3 {
      color: var(--color--dark);
      text-decoration: underline 1px dotted var(--color--accent);
      text-underline-offset: .4em;
      line-height: 1.4em; }
    .formation-cols .entry-content .cta {
      text-align: center;
      margin: 4em 0; }
      .formation-cols .entry-content .cta .btn {
        width: 100%;
        margin: 1em auto;
        max-width: 350px;
        display: block; }
      .formation-cols .entry-content .cta .btn.fiche {
        background: transparent url("img/icon-file-gold.svg") no-repeat left center;
        background-size: 18px;
        color: var(--color--accent);
        border: 0;
        padding: 5px 5px 5px 25px;
        margin-bottom: 1em;
        text-transform: none;
        letter-spacing: 0.02em;
        width: auto;
        font-weight: 400;
        font-size: var(--font--s); }
        .formation-cols .entry-content .cta .btn.fiche:hover {
          opacity: .6; }
  .formation-cols .entry-sidebar .attributs {
    background: var(--color--dark);
    border-radius: 20px;
    color: var(--color--light);
    margin-bottom: 1.5em;
    padding: 40px; }
    .formation-cols .entry-sidebar .attributs h4 {
      font-size: var(--font--s);
      color: var(--color--accent);
      letter-spacing: 0.04em; }
    .formation-cols .entry-sidebar .attributs p {
      font-size: var(--font--s);
      margin-bottom: 2em; }
  .formation-cols .entry-sidebar .cta {
    display: none;
    text-align: center;
    margin: 2em 0; }
    .formation-cols .entry-sidebar .cta .btn {
      width: 100%;
      margin: 1em 0; }
    .formation-cols .entry-sidebar .cta .btn.fiche {
      background: transparent url("img/icon-file-gold.svg") no-repeat left center;
      background-size: 18px;
      color: var(--color--accent);
      border: 0;
      padding: 5px 5px 5px 25px;
      margin-bottom: 1em;
      text-transform: none;
      letter-spacing: 0.02em;
      width: auto;
      font-weight: 400;
      font-size: var(--font--s); }
      .formation-cols .entry-sidebar .cta .btn.fiche:hover {
        opacity: .6; }

/* FOOTER */
#footer {
  background: var(--color--dark);
  color: var(--color--light);
  font-size: var(--font--s);
  letter-spacing: 0.03em;
  line-height: 1.8; }
  #footer li, #footer ul {
    list-style: none;
    padding: 0;
    margin: 0; }
  #footer a {
    color: var(--color--light);
    text-decoration: none; }
    #footer a:hover {
      color: var(--color--accent); }
  #footer figure, #footer .wp-block-columns, #footer p {
    margin-bottom: 1.5em; }
  #footer .wp-block-buttons .wp-block-button__link, #footer .btn {
    display: inline-block;
    background: var(--color--accent);
    color: var(--color--light);
    text-decoration: none;
    font-size: var(--font--s);
    padding: 13px 25px 11px;
    border-radius: 10px;
    font-weight: bold;
    letter-spacing: 0.06em;
    cursor: pointer;
    border: 1px solid var(--color--accent);
    text-transform: uppercase;
    transition: all 200ms ease; }
    #footer .wp-block-buttons .wp-block-button__link:hover, #footer .btn:hover {
      background: transparent;
      color: var(--color--accent); }

#menu-footer-2 ul {
  display: flex;
  gap: 30px;
  justify-content: end;
  padding: 20px 0 50px; }
  #menu-footer-2 ul a {
    opacity: 0.5; }
    #menu-footer-2 ul a:hover {
      opacity: 1; }

@media screen and (max-width: 991px) {
  body:not(.home) #main {
    padding-top: 70px; }

  #header {
    padding: 20px 0; }
    #header .logo, #header .home-logo {
      max-width: 140px; }

  #header.sticky {
    padding: 6px 0; }
    #header.sticky .logo, #header.sticky .home-logo {
      max-width: 90px; }

  #menu {
    display: none; }

  #mobile-menu {
    display: block;
    opacity: 0;
    pointer-events: none;
    transition: all 300ms ease;
    position: fixed;
    z-index: 9999999999;
    inset: 0; }
    #mobile-menu .wrapper {
      scale: 1.2;
      transition: all 300ms ease;
      position: absolute;
      inset: 0;
      overflow: scroll;
      overscroll-behavior: contain;
      scrollbar-width: none;
      background: var(--color--dark);
      display: grid;
      gap: 40px;
      align-items: center;
      justify-content: center;
      padding: 60px 15px; }
      #mobile-menu .wrapper::-webkit-scrollbar {
        display: none; }
    #mobile-menu ul {
      list-style: none;
      padding: 0;
      margin: 0;
      text-align: center;
      display: grid;
      grid-template-columns: 1fr;
      gap: 2em; }
      #mobile-menu ul li a {
        color: var(--color--light);
        font-size: var(--font--xl); }
        #mobile-menu ul li a:hover {
          color: var(--color--accent); }
      #mobile-menu ul li.current-menu-item a {
        text-decoration: underline;
        text-underline-offset: 6px;
        text-decoration-thickness: 1px;
        text-decoration-style: dotted;
        text-decoration-color: var(--color--accent); }
    #mobile-menu #close-menu {
      position: absolute;
      top: 0px;
      right: 8px;
      font-size: 50px;
      font-weight: 300;
      padding: 10px;
      color: var(--color--accent);
      cursor: pointer;
      transition: all 300ms ease;
      rotate: 135deg;
      translate: 50px 0; }
      #mobile-menu #close-menu:hover {
        color: var(--color--accent2); }
    #mobile-menu li.btn a {
      display: inline-block;
      margin-top: 3em;
      background: var(--color--accent);
      color: var(--color--light);
      padding: 10px 30px;
      border: 1px solid var(--color--accent);
      border-radius: 10px;
      text-transform: uppercase;
      font-weight: bold;
      letter-spacing: .08em;
      font-size: var(--font--l); }
      #mobile-menu li.btn a:hover {
        background: transparent;
        color: var(--color--accent); }

  #mobile-menu.active {
    opacity: 1;
    pointer-events: auto; }
    #mobile-menu.active .wrapper {
      scale: 1; }
    #mobile-menu.active #close-menu {
      rotate: 45deg;
      translate: 0 0; }

  #burger {
    display: block;
    position: relative;
    height: 24px;
    width: 30px;
    cursor: pointer; }
    #burger span {
      width: 100%;
      height: 2px;
      background: var(--color--dark);
      display: block;
      position: absolute;
      transition: all 300ms ease-in-out;
      transform-origin: center; }
      #burger span.one {
        top: 15%; }
      #burger span.two {
        top: 50%; }
      #burger span.three {
        top: 85%; }

  #header.header-home:not(.sticky) #burger span {
    background: var(--color--light); }

  #burger.active span.one {
    top: 50%;
    rotate: 45deg; }
  #burger.active span.two {
    opacity: 0; }
  #burger.active span.three {
    top: 50%;
    rotate: -45deg; }

  .archive-formations-cols {
    grid-template-columns: 1fr;
    gap: 40px; }

  .archive-formations {
    margin-top: 3em; }
    .archive-formations .listing {
      grid-template-columns: repeat(2, 1fr); }

  .single-formation header {
    padding: 40px 0; }
    .single-formation header .entry-title {
      padding-right: 0; }
    .single-formation header h3 {
      font-weight: 500;
      font-size: var(--font--s); }
  .single-formation .thumbnail {
    display: none; }
  .single-formation .thumbnail-mob {
    display: block; }
    .single-formation .thumbnail-mob img {
      aspect-ratio: 16 / 8;
      margin: 0 0 1em;
      object-fit: cover;
      object-position: center; }
  .single-formation .goback {
    text-align: center; }

  .formation-cols {
    padding-top: 30px;
    grid-template-columns: 1fr;
    gap: 30px;
    padding-bottom: 0; }
    .formation-cols .entry-content .cta {
      display: none; }
    .formation-cols .entry-sidebar .cta {
      display: block; } }
@media screen and (max-width: 781px) {
  .is-style-reverse-mob {
    flex-direction: column-reverse; }

  .filtres-formations {
    position: fixed;
    z-index: 9999;
    width: 100%;
    left: 0;
    bottom: 0;
    max-height: 85vh;
    border-radius: 0;
    padding: 60px 25px 50px;
    transform: translateY(100%);
    transition: all 300ms ease-in-out;
    overflow-y: scroll;
    overscroll-behavior: contain;
    scrollbar-width: none; }
    .filtres-formations::-webkit-scrollbar {
      display: none; }

  .filtres-formations.active {
    transform: translateY(0%); }

  .filtres-overlay {
    background: var(--color--dark);
    opacity: 0;
    display: block;
    position: fixed;
    inset: 0;
    z-index: 9991;
    pointer-events: none;
    transition: all 300ms ease-in-out; }

  .filtres-overlay.active {
    opacity: .5;
    pointer-events: auto; }

  .filtres-close {
    display: block;
    position: absolute;
    top: 30px;
    right: 30px;
    width: 20px;
    height: 20px;
    background: url("img/icon-close-light.svg") no-repeat center/20px;
    cursor: pointer; }
    .filtres-close:hover, .filtres-close:active {
      opacity: .5; }

  .filtres-toggle {
    display: block;
    border: 1px solid #dddddd;
    border-radius: 100px;
    background: #f5f5f5;
    padding: 20px 25px;
    margin: 0 auto;
    width: 100%;
    cursor: pointer;
    font-size: var(--font--m);
    color: var(--color--dark); }
    .filtres-toggle span {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 5px; }
      .filtres-toggle span::before {
        content: '';
        display: block;
        width: 21px;
        height: 21px;
        background: url(img/icon-filtrer-dark.svg) no-repeat center;
        background-size: 21px; }
    .filtres-toggle:hover, .filtres-toggle:active {
      background: #dddddd; }

  ul.formation-categories {
    gap: 8px 15px;
    padding-left: 0; }
    ul.formation-categories a {
      font-size: var(--font--m); }

  .archive-formations .title-banner.image {
    aspect-ratio: 16 / 9; }
  .archive-formations .listing {
    grid-template-columns: 1fr; }

  .single-formation .breadcrumbs-wrapper .breadcrumbs span, .single-formation .breadcrumbs-wrapper .breadcrumbs a:not(:last-of-type) {
    display: none; }
  .single-formation .breadcrumbs-wrapper .breadcrumbs a:last-of-type::before {
    content: '';
    display: inline-block;
    background: url("img/icon-arrow-gold.svg") no-repeat right center;
    width: 10px;
    height: 10px;
    rotate: 180deg;
    margin-right: 6px; }

  .modal-content {
    padding: 30px 15px 50px;
    border-radius: 14px; }

  #modal-results {
    /* Force the first 3 spans to stay in the first column */
    /* Force the CTA (button) to span all rows in the second column */ }
    #modal-results h3 {
      margin-bottom: 20px;
      font-size: var(--font--s); }
    #modal-results .session-card {
      padding: 18px 0;
      border-bottom: 1px solid #e5e5e5; }
    #modal-results .session-details {
      /* Define 2 columns: left grows, right fits the button */
      grid-template-columns: 1fr auto;
      grid-template-rows: auto auto auto;
      /* 3 rows for the text elements */
      gap: 5px 20px; }
    #modal-results .session-details .location,
    #modal-results .session-details .date,
    #modal-results .session-details .places {
      grid-column: 1; }
    #modal-results .session-details .cta {
      grid-column: 2;
      grid-row: 1 / span 3;
      /* Spans from row 1 to row 3 */
      display: flex;
      align-items: center;
      justify-content: flex-end; }
    #modal-results .session-details .btn {
      white-space: nowrap;
      /* Prevents button text from wrapping */ }
    #modal-results .session-details {
      grid-template-columns: 1fr;
      gap: 5px;
      align-items: center;
      justify-content: start; }
      #modal-results .session-details .cta a {
        font-size: var(--font--xs);
        padding: 8px 10px;
        margin: 10px; } }
