.btn.r-arr::after {
  content: '';
  z-index: 2;
  position: absolute;
  top: 25%;
  right: 0.6em;
  width: calc(var(--s) / 2);
  height: 50%;
  background-image: url(../../img/arrow-white.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center right;
  transform: translateX(-50%) scale(0.65);
  transition: 0.3s cubic-bezier(.81,.05,.57,.96);
}
.btn.r-arr:hover {
  background-color: transparent;
  transition: 0s 0.3s;
}
.btn.r-arr:hover .ill {
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  transform: translateY(0);
}
.btn.r-arr:hover::after {
  transform: translateX(-50%) scale(0.65) rotate(45deg);
}
.btn.hover-orange:hover {
  background-color: var(--color1); /* fond orange au survol */
  color: #fff;                     /* texte blanc */
  border-color: var(--color1);     /* bordure orange si 'bordered' */
  transition: all 0.25s ease;      /* effet fluide */
}


.btn.big {
  font-size: 1.25em;
  letter-spacing: 0.03em;
}

.btn.bordered {
  border: currentColor 1px solid;
}
.btn.wide {
  padding: 1em 2.25em 0.95em 2.25em;
}
.text-link {
  text-decoration: underline;
  color: currentColor;
}


.text-link:hover {
  color: var(--color1);
}
.text-link + .btn-arrow {
  vertical-align: middle;
}
.buttons {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: calc(100% + 1em);
    margin: -0.5em;
}

.buttons.right {
	flex-direction: row-reverse;
}
.buttons.center {
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.buttons > div {
	padding: 0.5em;
}
/*******************
  BUTTONS
*******************/


.btn {
  display: inline-block;
  font-size: 1em;
  font-family: var(--titleFont);
  font-variation-settings: 'wght' 300, 'wdth' 100;
  padding: 1.45em 1.9em 1.2em 1.9em;
  border-radius: 9999px;
  background-color: #fff;
  color: var(--textColor);
  border: none;
  font-weight: 700;
}
.btn:hover {
  background-color: var(--textColor);
  color: #fff;
}

.btn.small {
  font-size: 0.85em;
}

.btn.r-arr {
  --s: 2.4em;
  position: relative;
  padding-right: calc(var(--s) * 1.5);
  min-width: 16em;
  text-align: left;
  transition: 0s;
}
.btn.r-arr.short { min-width: 10em; padding-left: 1.5em; }
.btn.r-arr .label {
  z-index: 4;
  position: relative;
}
.btn.r-arr .ill {
  z-index: 1;
  position: absolute;
  top: 50%;
  right: 0.6em;
  width: var(--s);
  height: var(--s);
  background-color: var(--color1);
  border-radius: 9999px;
  transform: translateY(-50%);
  transition: 0.3s cubic-bezier(.81,.05,.57,.96);
}

/* ===== Bouton CF7 identique au bouton Audacia ===== */

input.wpcf7-submit.btn {
  font-family: var(--titleFont);
  font-size: 0.85em;
  font-weight: 700;

  padding: 1.45em 1.9em 1.2em 1.9em;
  border-radius: 9999px;

  background-color: #fff;
  color: var(--color1);
  border: 1px solid var(--color1);
  cursor: pointer;

  transition: 0.3s ease-in-out;
  -webkit-appearance: none;
}

/* Hover Audacia */
input.wpcf7-submit.btn:hover {
  background-color: var(--color1);
  color: #fff;
  border-color: var(--color1);
}

/* Effet de clic (comme tes boutons Audacia) */
input.wpcf7-submit.btn:active {
  transform: scale(0.96);
  transition: 0.1s;
}

/* Taille small */
input.wpcf7-submit.btn.small {
  font-size: 0.85em;
}

/* =============================== */
/*   SECTION SCROLLABLE UNIVERSELLE  */
/*      Réutilisable partout       */
/* =============================== */

.conditions-scroll {
  max-height: 300px;               /* hauteur par défaut */
  overflow-y: auto;                /* scroll interne */
  padding: 1rem;                   /* marge interne */
  background: var(--color1);       /* fond orange Audacia */
  color: #fff;                     /* texte blanc */
  border: 1px solid var(--color1); /* bordure orange */
  line-height: 1.4;
}

/* version desktop large (évite un scroll trop petit) */
@media (min-width: 1024px) {
  .conditions-scroll {
    max-height: 500px;
    padding: 1.5rem;
  }
}








