.elementor-359 .elementor-element.elementor-element-5010d8c5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-fae-breadcrumb .fae-breadcrumb-item a, .elementor-widget-fae-breadcrumb .fae-breadcrumb-item span{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb{justify-content:flex-start;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-wrapper{padding:12px 20px 12px 20px;border-radius:12px 12px 12px 12px;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-item a, .elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-item span{font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:300;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-item a, .elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-item span, .elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-current{text-transform:none;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-item a{color:#A1805E;transition:all 0.3s ease;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-item a:hover{color:#6D776C;text-decoration:underline;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-current{color:#1d1d1f;font-weight:600;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-separator{color:#86868b;font-size:12px;margin:0 12px;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-breadcrumb-separator svg{width:12px;height:12px;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-home-icon{font-size:16px;margin-right:6px;}.elementor-359 .elementor-element.elementor-element-15ab654e .fae-home-icon svg{width:16px;height:16px;}.elementor-359 .elementor-element.elementor-element-540a496f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-359 .elementor-element.elementor-element-540a496f:not(.elementor-motion-effects-element-type-background), .elementor-359 .elementor-element.elementor-element-540a496f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#6D776C;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-359 .elementor-element.elementor-element-7c64e9eb{font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:400;color:#000000;}:root{--page-title-display:none;}/* Start custom CSS for text-editor, class: .elementor-element-7c64e9eb */.elementor-359 .elementor-element.elementor-element-7c64e9eb {
  --rlb-dark: #172033;
  --rlb-gold: #a1805e;
  --rlb-green: #6d776c;
  --rlb-rose: #d6a89f;
  --rlb-soft: #f7f3ef;
  --rlb-line: rgba(161, 128, 94, 0.28);

  max-width: 880px;
  margin: 0 auto;
  color: var(--rlb-dark);
  font-size: 18px;
  line-height: 1.82;
  letter-spacing: 0.01em;
  text-align: justify;
  text-justify: inter-word;
}

/* Titres */
.elementor-359 .elementor-element.elementor-element-7c64e9eb h2 {
  position: relative;
  margin: 76px 0 22px;
  padding-left: 30px;
  color: var(--rlb-dark);
  font-family: inherit;
  font-size: clamp(26px, 2.4vw, 38px);
  line-height: 1.14;
  font-weight: 600;
  letter-spacing: -0.025em;
  text-wrap: balance;
  text-align: left;
}

/* Ligne verticale élégante — pousse de haut en bas quand le H2 entre dans le champ
   (la classe .rl-revealed est ajoutée par le plugin RLB Motion via ScrollTrigger) */
.elementor-359 .elementor-element.elementor-element-7c64e9eb h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.12em;
  width: 3px;
  height: 1.05em;
  background: var(--rlb-gold);
  transform-origin: top;
}

@media (prefers-reduced-motion: no-preference) {
  .elementor-359 .elementor-element.elementor-element-7c64e9eb h2::before {
    transform: scaleY(0);
    opacity: 0;
    transition:
      transform 1.1s cubic-bezier(.16, 1, .3, 1) 0.15s,
      opacity 0.6s cubic-bezier(.16, 1, .3, 1) 0.15s;
  }
  .elementor-359 .elementor-element.elementor-element-7c64e9eb h2.rl-revealed::before {
    transform: scaleY(1);
    opacity: 1;
  }
}

/* Petit point de guidage */
.elementor-359 .elementor-element.elementor-element-7c64e9eb h2::after {
  content: "";
  position: absolute;
  left: -5px;
  top: calc(0.12em + 1.05em + 12px);
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 1px solid var(--rlb-gold);
  background: #fff;
  transform: scale(0.7);
  transition:
    transform .55s cubic-bezier(.16, 1, .3, 1),
    background .55s cubic-bezier(.16, 1, .3, 1);
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb h2:hover::after {
  transform: scale(1);
  background: var(--rlb-gold);
}

/* Bloc d'introduction — paragraphe ne contenant qu'un <strong> (WordPress wrappe
   toujours dans <p>, on cible donc la vraie structure via :has()) */
.elementor-359 .elementor-element.elementor-element-7c64e9eb h2 + p:has(> strong:only-child) {
  position: relative;
  margin: 0 0 30px;
  padding: 26px 34px;
  color: var(--rlb-dark);
  background: linear-gradient(
    135deg,
    rgba(214, 168, 159, 0.14),
    rgba(161, 128, 94, 0.06)
  );
  border-left: 4px solid var(--rlb-gold);
  border-radius: 0 26px 26px 0;
  font-size: clamp(18px, 1.35vw, 21px);
  line-height: 1.58;
  font-weight: 600;
  box-shadow: 0 18px 45px rgba(23, 32, 51, 0.045);
  overflow: hidden;
  text-align: justify;
  text-justify: inter-word;
}

/* À l'intérieur du bloc d'intro, le <strong> hérite — pas de surlignage rose */
.elementor-359 .elementor-element.elementor-element-7c64e9eb h2 + p:has(> strong:only-child) strong {
  background: none;
  color: inherit;
  font-weight: inherit;
}

/* Effet lumineux discret au survol */
.elementor-359 .elementor-element.elementor-element-7c64e9eb h2 + p:has(> strong:only-child)::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    100deg,
    transparent 0%,
    rgba(255, 255, 255, 0.42) 45%,
    transparent 70%
  );
  transform: translateX(-120%);
  transition: transform 1.25s cubic-bezier(.16, 1, .3, 1);
  pointer-events: none;
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb h2 + p:has(> strong:only-child):hover::before {
  transform: translateX(120%);
}

/* Paragraphes */
.elementor-359 .elementor-element.elementor-element-7c64e9eb p {
  margin: 0 0 26px;
  font-weight: 400;
  text-align: justify;
  text-justify: inter-word;
}

/* Strong dans le corps du texte — on exclut le bloc d'intro */
.elementor-359 .elementor-element.elementor-element-7c64e9eb p:not(:has(> strong:only-child)) strong,
.elementor-359 .elementor-element.elementor-element-7c64e9eb li strong {
  color: var(--rlb-dark);
  font-weight: 700;
  background: linear-gradient(
    to top,
    rgba(214, 168, 159, 0.32) 38%,
    transparent 38%
  );
}

/* Listes */
.elementor-359 .elementor-element.elementor-element-7c64e9eb ul,
.elementor-359 .elementor-element.elementor-element-7c64e9eb ol {
  margin: 30px 0 42px;
  padding: 0;
  list-style: none;
  counter-reset: rlb-counter;
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb li {
  position: relative;
  margin: 0 0 16px;
  padding: 22px 26px 22px 66px;
  background: #fff;
  border: 1px solid rgba(161, 128, 94, 0.18);
  border-radius: 24px;
  box-shadow: 0 18px 45px rgba(23, 32, 51, 0.045);
  transition:
    transform .6s cubic-bezier(.16, 1, .3, 1),
    box-shadow .6s cubic-bezier(.16, 1, .3, 1),
    border-color .6s cubic-bezier(.16, 1, .3, 1);
  text-align: justify;
  text-justify: inter-word;
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb li:hover {
  transform: translateY(-4px);
  border-color: rgba(161, 128, 94, 0.42);
  box-shadow: 0 26px 70px rgba(23, 32, 51, 0.085);
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb ul li::before {
  content: "";
  position: absolute;
  left: 28px;
  top: 31px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--rlb-gold);
  box-shadow: 0 0 0 8px rgba(161, 128, 94, 0.12);
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb ol li {
  counter-increment: rlb-counter;
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb ol li::before {
  content: counter(rlb-counter);
  position: absolute;
  left: 22px;
  top: 19px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--rlb-green);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}

/* Citations — <em> wrappé dans <p> par WordPress, on cible la vraie structure */
.elementor-359 .elementor-element.elementor-element-7c64e9eb p:has(> em:only-child) {
  margin: 0;
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb em {
  display: block;
  position: relative;
  margin: 34px 0 52px;
  padding: 34px 40px 34px 78px;
  color: var(--rlb-dark);
  background: var(--rlb-soft);
  border-radius: 34px;
  font-style: normal;
  line-height: 1.75;
  box-shadow: inset 0 0 0 1px rgba(161, 128, 94, 0.16);
  text-align: justify;
  text-justify: inter-word;
}

.elementor-359 .elementor-element.elementor-element-7c64e9eb em::before {
  content: "“";
  position: absolute;
  left: 30px;
  top: 18px;
  color: var(--rlb-gold);
  font-family: Georgia, serif;
  font-size: 64px;
  line-height: 1;
}

/* Séparation douce entre grandes parties */
.elementor-359 .elementor-element.elementor-element-7c64e9eb h2:not(:first-child) {
  border-top: 1px solid var(--rlb-line);
  padding-top: 54px;
}

/* Mobile */
@media (max-width: 767px) {
  .elementor-359 .elementor-element.elementor-element-7c64e9eb { font-size: 16.5px; line-height: 1.72; }
  .elementor-359 .elementor-element.elementor-element-7c64e9eb h2 { margin: 58px 0 18px; padding-left: 22px; font-size: 26px; line-height: 1.16; text-align: left; }
  .elementor-359 .elementor-element.elementor-element-7c64e9eb h2 + p:has(> strong:only-child) { padding: 22px; border-radius: 0 22px 22px 0; font-size: 17px; line-height: 1.55; }
  .elementor-359 .elementor-element.elementor-element-7c64e9eb li { padding: 20px 20px 20px 56px; border-radius: 20px; }
  .elementor-359 .elementor-element.elementor-element-7c64e9eb ul li::before { left: 24px; }
  .elementor-359 .elementor-element.elementor-element-7c64e9eb ol li::before { left: 18px; }
  .elementor-359 .elementor-element.elementor-element-7c64e9eb em { padding: 30px 26px 30px 58px; border-radius: 26px; }
  .elementor-359 .elementor-element.elementor-element-7c64e9eb em::before { left: 22px; font-size: 48px; }
}/* End custom CSS */