:root {
  --button-023-color: #121212;
  --button-023-color-background: #fff;
  --button-023-hover-color: #fff;
  --button-023-between-color-background: #ff5100;
  --button-023-hover-color-background: #121212;
  --button-023-color-focus: #121212;
  --button-023-focus-inset: -0.125em;
  --button-023-padding: 0.75em 1em;
  --button-023-border-radius: 2.5em;
  --button-023-click-scale: 0.955 0.925;
  --button-023-hover-scale: 1.065 1.095;
  --button-023-ease-click: cubic-bezier(0.4, 0, 0.2, 1);
  --button-023-ease-hover: linear(
    0,
    0.5737 7.6%,
    0.8382 11.87%,
    0.9463 14.19%,
    1.0292 16.54%,
    1.0886 18.97%,
    1.1258 21.53%,
    1.137 22.97%,
    1.1424 24.48%,
    1.1423 26.1%,
    1.1366 27.86%,
    1.1165 31.01%,
    1.0507 38.62%,
    1.0219 42.57%,
    0.9995 46.99%,
    0.9872 51.63%,
    0.9842 58.77%,
    1.0011 81.26%,
    1
  );
  --button-023-ease-smooth: cubic-bezier(0.32, 0.72, 0, 1);
  --button-023-ease-focus: cubic-bezier(0.32, 0.72, 0, 1);
}

.button-023 {
  color: var(--button-023-color);
  -webkit-user-select: none;
  user-select: none;
  background-color: transparent;
  border: none;
  outline-style: none;
  padding: 0;
  line-height: 1;
  text-decoration: none;
  display: inline-grid;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  transition: scale 0.15s var(--button-023-ease-click);
}

.button-023:visited {
  color: var(--button-023-color);
}

.button-023::after {
  content: "";
  display: block;
  position: absolute;
  inset: var(--button-023-focus-inset);
  border-radius: var(--button-023-border-radius);
  transition:
    box-shadow 0.3s var(--button-023-ease-focus),
    scale 0.45s var(--button-023-ease-smooth);
  pointer-events: none;
  z-index: 1;
}

.button-023:active {
  scale: var(--button-023-click-scale);
}

.button-023:is(:focus-visible)::after {
  box-shadow: 0 0 0 0.125em var(--button-023-color-focus);
  scale: var(--button-023-hover-scale);
}

.button-023__bg {
  pointer-events: none;
  background-color: var(--button-023-color-background);
  border-radius: var(--button-023-border-radius);
  grid-area: 1 / 1;
  place-items: center;
  width: 100%;
  height: 100%;
  display: grid;
  overflow: hidden;
  transition: scale 0.45s var(--button-023-ease-smooth);
}

.button-023__bg-inner {
  grid-area: 1 / 1;
  width: 120%;
  height: 100%;
  transform-origin: 100% 0;
  translate: 0 100% 0;
  rotate: -12deg;
  transition:
    translate 0.6s var(--button-023-ease-smooth),
    rotate 0.5s var(--button-023-ease-smooth);
  transition-delay: calc(var(--index) * -1 * 0.042s);
}

.button-023__bg-inner.is--first {
  background-color: var(--button-023-between-color-background);
}

.button-023__bg-inner.is--second {
  background-color: var(--button-023-hover-color-background);
  z-index: 1;
}

.button-023__inner {
  pointer-events: none;
  z-index: 1;
  border-radius: var(--button-023-border-radius);
  grid-area: 1 / 1;
  width: 100%;
  height: 100%;
  display: grid;
  overflow: clip;
}

.button-023__text {
  width: 100%;
  height: 100%;
  padding: var(--button-023-padding);
  grid-area: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.button-023__text.is--first {
  transform-origin: 0 0;
  transition:
    translate 0.75s var(--button-023-ease-hover),
    rotate 0.5s var(--button-023-ease-smooth);
}

.button-023__text.is--second {
  color: var(--button-023-hover-color);
  translate: 5% 100% 0;
  rotate: 1 1 0.75 -45deg;
  transform-origin: top right;
  transition:
    translate 0.75s var(--button-023-ease-hover),
    rotate 0.5s var(--button-023-ease-smooth);
}

.button-023--header-link {
  --button-023-color: #fff;
  --button-023-hover-color: #fff;
  --button-023-color-background: transparent;
  --button-023-between-color-background: rgba(255, 255, 255, 0.16);
  --button-023-hover-color-background: rgba(255, 255, 255, 0.28);
  --button-023-color-focus: #fff;
  --button-023-padding: 0.65em 0.95em;
  font-weight: 700;
  margin: 0 -0.95em;
}

.button-023--header-contact {
  --button-023-color: #121212;
  --button-023-hover-color: #121212;
  --button-023-color-background: #fff;
  --button-023-between-color-background: #f8dede;
  --button-023-hover-color-background: #ef8f8f;
  --button-023-padding: 0;
  font-weight: 700;
}

.button-023--events-view-all {
  --button-023-color: #121212;
  --button-023-hover-color: #121212;
  --button-023-color-background: #fff;
  --button-023-between-color-background: #f8dede;
  --button-023-hover-color-background: #ef8f8f;
  --button-023-padding: 0.95em 1.45em;
  font-size: 21px;
  font-weight: 700;
  color: #121212;
}

.button-023--icon {
  --button-023-color: #121212;
  --button-023-hover-color: #121212;
  --button-023-color-background: #fff;
  --button-023-between-color-background: #f8dede;
  --button-023-hover-color-background: #ef8f8f;
  --button-023-padding: 0;
  --button-023-hover-scale: 1.08 1.08;
  --button-023-click-scale: 0.97 0.97;
  width: 4.25rem;
  height: 4.25rem;
  color: #121212;
}

.button-023--icon .button-023__text {
  padding: 0;
}

.button-023--icon .button-023__text svg {
  width: 1.4rem;
  height: 1.4rem;
}

.button-023--square {
  --button-023-color: #121212;
  --button-023-hover-color: #121212;
  --button-023-color-background: #fff;
  --button-023-between-color-background: #f8dede;
  --button-023-hover-color-background: #ef8f8f;
  --button-023-border-radius: 0.25em;
  --button-023-padding: 0.75em 1.5em;
  --button-023-hover-scale: 1.04 1.04;
  --button-023-click-scale: 0.97 0.97;
  min-width: 6.25em;
  font-size: 1em;
  font-weight: 700;
}

.button-023--footer-submit {
  --button-023-color: #fff;
  --button-023-hover-color: #fff;
  --button-023-color-background: #b13232;
  --button-023-between-color-background: #cf4c4c;
  --button-023-hover-color-background: #121212;
  --button-023-border-radius: 20px;
  --button-023-padding: 0;
  width: 420px;
  height: 100px;
  margin-right: 20px;
  font-size: 33px;
  font-family: var(--newsreader);
  font-style: italic;
  font-weight: 500;
}

header ul a.button-023--header-link::before {
  display: none;
}

header ul {
  gap: 40px;
  align-items: center;
}

header ul li {
  display: flex;
  align-items: center;
}

.button-023--header-link .button-023__text {
  padding: 0.65em 0.95em;
  line-height: 1;
  transform: translateY(1px);
}

.button-023--header-link .button-023__text.is--first,
.button-023--header-link .button-023__text.is--second {
  transition: none;
}

.button-023--header-link .button-023__text.is--second {
  display: none;
}

.button-023--header-link[aria-current="page"] .button-023__bg {
  scale: var(--button-023-hover-scale);
  opacity: 0.5;
}

.button-023--header-link[aria-current="page"] .button-023__bg-inner {
  translate: 0 0 0;
  rotate: 0deg;
}

header button.button-023--header-contact {
  background: transparent;
  height: 80%;
  width: 150px;
  min-width: 150px;
  border-radius: 0;
}

.section5 .voir_tout_news {
  padding-right: 10px;
}

.section5 .gsap-slider__control.button-023--square {
  background: transparent;
  border: none;
  padding: 0;
}

.footer .bas_footer .box_inscription button.button-023--footer-submit {
  background: transparent;
  border: none;
  border-radius: 0;
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .button-023:is(:hover, :focus-visible) .button-023__bg {
    scale: var(--button-023-hover-scale);
  }

  .button-023:is(:hover, :focus-visible) .button-023__bg-inner {
    translate: 0 0 0;
    rotate: 0deg;
    transition-delay: calc(var(--index) * 0.068s + 0.05s);
  }

  .button-023:is(:hover, :focus-visible) .button-023__text.is--first {
    rotate: 1 1 0.45 -60deg;
    translate: -5% -100% 0;
    transition-delay: 0.075s;
  }

  .button-023:is(:hover, :focus-visible) .button-023__text.is--second {
    rotate: 1 1 0.45 0deg;
    translate: 0 0 0;
    transition-delay: 0.165s;
  }

  .button-023--header-link:is(:hover, :focus-visible) .button-023__text.is--first {
    rotate: none;
    translate: 0 0 0;
    transition-delay: 0s;
  }
}

@media screen and (max-width: 500px) {
  header button.button-023--header-contact {
    min-width: 124px;
    height: 63px;
    border-radius: 500px;
  }
}

@media screen and (max-width: 500px) {
  header button.button-023--header-contact {
    width: 124px;
    min-width: 124px;
    font-size: 12px;
  }

  .footer .bas_footer .box_inscription button.button-023--footer-submit {
    width: 150px;
    height: 35px;
    margin-right: 8px;
    border-radius: 4px;
    font-size: 11px;
  }

  .page-shell[data-barba-namespace="news"]
    .footer
    .bas_footer
    .box_inscription
    button.button-023--footer-submit {
    width: 160px;
    flex: 0 0 160px;
    height: 36px;
    margin-right: 8px;
    border-radius: 7px;
    font-size: 13px;
  }

  .cards-stack--wide
    > .footer
    .bas_footer
    .box_inscription
    button.button-023--footer-submit {
    width: 100%;
    height: 42px;
    margin-right: 0;
    border-radius: 7px;
    font-size: 15px;
  }

  .federation-mobile-canvas
    .footer
    .bas_footer
    .box_inscription
    button.button-023--footer-submit {
    width: 150px;
    flex: 0 0 150px;
    height: 35px;
    margin-right: 8px;
    border-radius: 7px;
    font-size: 15px;
  }
}
