.elementor-74 .elementor-element.elementor-element-67dabbe9{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:050px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.elementor-74 .elementor-element.elementor-element-67dabbe9:not(.elementor-motion-effects-element-type-background), .elementor-74 .elementor-element.elementor-element-67dabbe9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCEDE3;}.elementor-74 .elementor-element.elementor-element-67dabbe9 > .elementor-shape-bottom .elementor-shape-fill, .elementor-74 .elementor-element.elementor-element-67dabbe9 > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#FFFFFF;}.elementor-74 .elementor-element.elementor-element-67dabbe9 > .elementor-shape-bottom svg, .elementor-74 .elementor-element.elementor-element-67dabbe9 > .e-con-inner > .elementor-shape-bottom svg{width:calc(100% + 1.3px);height:90px;}.elementor-74 .elementor-element.elementor-element-8f219e8 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;color:var( --e-global-color-secondary );}.elementor-74 .elementor-element.elementor-element-75af5606{--display:flex;}.elementor-74 .elementor-element.elementor-element-5357387{text-align:center;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;}.elementor-74 .elementor-element.elementor-element-7fcbbc9b{--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-74 .elementor-element.elementor-element-4ad913e3{--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:0px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-74 .elementor-element.elementor-element-2496de1d{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-74 .elementor-element.elementor-element-7ef1885e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-74 .elementor-element.elementor-element-534c68e0{margin:0px 10px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-74 .elementor-element.elementor-element-2d7b7139{--display:flex;}.elementor-74 .elementor-element.elementor-element-65c3a036{--display:flex;--border-radius:25px 25px 25px 25px;--padding-top:20px;--padding-bottom:20px;--padding-left:30px;--padding-right:30px;}.elementor-74 .elementor-element.elementor-element-41e45a7 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;}.elementor-74 .elementor-element.elementor-element-2af506e{--display:flex;--border-radius:25px 25px 25px 25px;--padding-top:20px;--padding-bottom:20px;--padding-left:30px;--padding-right:30px;}.elementor-74 .elementor-element.elementor-element-76de32f6 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;}.elementor-74 .elementor-element.elementor-element-7a0ab8ca{--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:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-74 .elementor-element.elementor-element-350169b{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-74 .elementor-element.elementor-element-57b9626a{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-74 .elementor-element.elementor-element-79fecd6b{margin:0px 10px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-74 .elementor-element.elementor-element-669cde9c{--display:flex;}.elementor-74 .elementor-element.elementor-element-7b502582{--display:flex;--border-radius:25px 25px 25px 25px;--padding-top:20px;--padding-bottom:20px;--padding-left:30px;--padding-right:30px;}.elementor-74 .elementor-element.elementor-element-dc60873 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;}.elementor-74 .elementor-element.elementor-element-4e218b49{--display:flex;}.elementor-74 .elementor-element.elementor-element-19308952{--display:flex;}.elementor-74 .elementor-element.elementor-element-20f4ace4{--n-accordion-title-justify-content:space-between;--n-accordion-title-flex-grow:1;--n-accordion-title-icon-order:initial;--n-accordion-title-font-size:16px;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-title-normal-color:var( --e-global-color-primary );--n-accordion-icon-size:25px;}:where( .elementor-74 .elementor-element.elementor-element-20f4ace4 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:"Montserrat", Sans-serif;font-weight:600;text-transform:uppercase;}.elementor-74 .elementor-element.elementor-element-4a370102{--display:flex;--border-radius:25px 25px 25px 25px;--padding-top:20px;--padding-bottom:20px;--padding-left:30px;--padding-right:30px;}.elementor-74 .elementor-element.elementor-element-534d6a31{--display:flex;}.elementor-74 .elementor-element.elementor-element-58eb42b3 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;}.elementor-74 .elementor-element.elementor-element-6d599fcd{--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:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-74 .elementor-element.elementor-element-32244b6e{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-74 .elementor-element.elementor-element-4b8dbc1{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-74 .elementor-element.elementor-element-13bbf137{margin:0px 10px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-74 .elementor-element.elementor-element-c589e49{--display:flex;}.elementor-74 .elementor-element.elementor-element-661cca44{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:25px 25px 25px 25px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-74 .elementor-element.elementor-element-3be895c3{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-74 .elementor-element.elementor-element-4cac5e38{--display:flex;}.elementor-74 .elementor-element.elementor-element-2e8f1b7e img{width:100%;}.elementor-74 .elementor-element.elementor-element-37ab30de{--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;}@media(min-width:768px){.elementor-74 .elementor-element.elementor-element-75af5606{--width:50%;}.elementor-74 .elementor-element.elementor-element-2496de1d{--width:100%;}.elementor-74 .elementor-element.elementor-element-7ef1885e{--width:100%;}.elementor-74 .elementor-element.elementor-element-2d7b7139{--width:100%;}.elementor-74 .elementor-element.elementor-element-350169b{--width:100%;}.elementor-74 .elementor-element.elementor-element-57b9626a{--width:100%;}.elementor-74 .elementor-element.elementor-element-669cde9c{--width:100%;}.elementor-74 .elementor-element.elementor-element-32244b6e{--width:100%;}.elementor-74 .elementor-element.elementor-element-4b8dbc1{--width:100%;}.elementor-74 .elementor-element.elementor-element-c589e49{--width:100%;}.elementor-74 .elementor-element.elementor-element-3be895c3{--width:45%;}.elementor-74 .elementor-element.elementor-element-4cac5e38{--width:67%;}.elementor-74 .elementor-element.elementor-element-37ab30de{--width:50%;}}/* Start custom CSS for container, class: .elementor-element-67dabbe9 */.hero-bg {
  position: relative;
  overflow: hidden;
  background: #ffffff;
}

.wave-layer {
  position: absolute;
  width: 200%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
}

.w1 { animation: waveMove 9s linear infinite; opacity: 0.15; }
.w2 { animation: waveMove 13s linear infinite reverse; opacity: 0.10; }
.w3 { animation: waveMove 7s linear infinite; opacity: 0.18; animation-delay: -3s; }
.w4 { animation: waveMove 11s linear infinite reverse; opacity: 0.08; animation-delay: -5s; }

@keyframes waveMove {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(70px);
  pointer-events: none;
}

.orb1 {
  width: 340px; height: 340px;
  background: #ffae86;
  top: -100px; right: -80px;
  opacity: 0.30;
  animation: orbFloat 8s ease-in-out infinite;
}

.orb2 {
  width: 220px; height: 220px;
  background: #1f2147;
  bottom: -80px; left: 3%;
  opacity: 0.08;
  animation: orbFloat 11s ease-in-out infinite reverse;
}

.orb3 {
  width: 180px; height: 180px;
  background: #ffae86;
  top: 30px; left: 15%;
  opacity: 0.15;
  animation: orbFloat 14s ease-in-out infinite;
  animation-delay: -4s;
}

@keyframes orbFloat {
  0%, 100% { transform: translateY(0) scale(1); }
  50%       { transform: translateY(-20px) scale(1.05); }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7fcbbc9b */.nav-ancres-wrapper { position: sticky; top: 0; z-index: 999; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-534c68e0 */.anim-icon {
  position: relative;
  width: 90px;
  height: 90px;
  flex-shrink: 0;
}

.anim-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid #f0956c;
  opacity: .25;
  animation: ring-pulse 2.8s ease-in-out infinite;
}

.anim-ring.r2 {
  inset: -13px;
  opacity: .12;
  animation-delay: -1.4s;
}

.anim-icon.navy .anim-ring {
  border-color: #1e2d5a;
}

.anim-inner {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #fde8db;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  color: #f0956c;
  animation: float 3.5s ease-in-out infinite;
}

.anim-icon.navy .anim-inner {
  background: rgba(30, 45, 90, .06);
  color: #1e2d5a;
}

@keyframes ring-pulse {
  0%, 100% { transform: scale(1);     opacity: .25; }
  50%       { transform: scale(1.12); opacity: .10; }
}

@keyframes float {
  0%, 100% { transform: translateY(0);     }
  50%       { transform: translateY(-10px); }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-65c3a036 */.profil-card {
  box-shadow: rgba(0, 0, 0, 0.15) 0px 2px 8px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2af506e */.profil-card {
  box-shadow: rgba(0, 0, 0, 0.15) 0px 2px 8px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-79fecd6b */.anim-icon {
  position: relative;
  width: 90px;
  height: 90px;
  flex-shrink: 0;
}

.anim-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid #f0956c;
  opacity: .25;
  animation: ring-pulse 2.8s ease-in-out infinite;
}

.anim-ring.r2 {
  inset: -13px;
  opacity: .12;
  animation-delay: -1.4s;
}

.anim-icon.navy .anim-ring {
  border-color: #1e2d5a;
}

.anim-inner {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #fde8db;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  color: #f0956c;
  animation: float 3.5s ease-in-out infinite;
}

.anim-icon.navy .anim-inner {
  background: rgba(30, 45, 90, .06);
  color: #1e2d5a;
}

@keyframes ring-pulse {
  0%, 100% { transform: scale(1);     opacity: .25; }
  50%       { transform: scale(1.12); opacity: .10; }
}

@keyframes float {
  0%, 100% { transform: translateY(0);     }
  50%       { transform: translateY(-10px); }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-49e34952 */.liste-presse {
  padding: 0 !important;
  margin: 0 !important;
}

.liste-presse li {
  list-style: none !important;
  border-bottom: 1px solid #f0f4f8 !important;
  padding: 13px 16px !important;
  transition: background 0.2s ease !important;
  cursor: pointer !important;
}

.liste-presse li:last-child {
  border-bottom: none !important;
}

.liste-presse li:hover {
  background: #f2f7fd !important;
}

.liste-presse li:hover a {
  color: #4a90d9 !important;
}

.liste-presse li a {
  color: #444 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-49e34952 */.liste-presse {
  padding: 0 !important;
  margin: 0 !important;
}

.liste-presse li {
  list-style: none !important;
  border-bottom: 1px solid #f0f4f8 !important;
  padding: 13px 16px !important;
  transition: background 0.2s ease !important;
  cursor: pointer !important;
}

.liste-presse li:last-child {
  border-bottom: none !important;
}

.liste-presse li:hover {
  background: #f2f7fd !important;
}

.liste-presse li:hover a {
  color: #4a90d9 !important;
}

.liste-presse li a {
  color: #444 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7b502582 */.profil-card {
  box-shadow: rgba(0, 0, 0, 0.15) 0px 2px 8px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4a370102 */.profil-card {
  box-shadow: rgba(0, 0, 0, 0.15) 0px 2px 8px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-13bbf137 */.anim-icon {
  position: relative;
  width: 90px;
  height: 90px;
  flex-shrink: 0;
}

.anim-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid #f0956c;
  opacity: .25;
  animation: ring-pulse 2.8s ease-in-out infinite;
}

.anim-ring.r2 {
  inset: -13px;
  opacity: .12;
  animation-delay: -1.4s;
}

.anim-icon.navy .anim-ring {
  border-color: #1e2d5a;
}

.anim-inner {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #fde8db;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  color: #f0956c;
  animation: float 3.5s ease-in-out infinite;
}

.anim-icon.navy .anim-inner {
  background: rgba(30, 45, 90, .06);
  color: #1e2d5a;
}

@keyframes ring-pulse {
  0%, 100% { transform: scale(1);     opacity: .25; }
  50%       { transform: scale(1.12); opacity: .10; }
}

@keyframes float {
  0%, 100% { transform: translateY(0);     }
  50%       { transform: translateY(-10px); }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-2e8f1b7e *//* ════════════════════════════════════════════
   Effet 3D livre — classe .book-hover
   À coller dans : Apparence → Personnaliser
   → CSS additionnel (fonctionne sans Elementor Pro)
   ════════════════════════════════════════════ */

.book-hover {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  display: inline-block;

  /* Double ombre : charbon foncé + halo rose framboise */
  box-shadow:
    8px 12px 30px rgba(60, 35, 45, .35),
    2px  4px 10px rgba(185, 55, 85, .18);

  transition: transform .35s ease, box-shadow .35s ease;
  transform-style: preserve-3d;
}

/* Reflet lumineux (position initiale hors cadre, à gauche) */
.book-hover::after {
  content: '';
  position: absolute;
  top: -60%;
  left: -60%;
  width: 80%;
  height: 200%;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(255, 255, 255, .18),
    transparent
  );
  transform: rotate(25deg);
  transition: left .45s ease, top .45s ease;
  pointer-events: none;
  z-index: 2;
}

/* ── Survol ── */
.book-hover:hover {
  transform: perspective(800px) rotateY(-8deg) rotateX(4deg) scale(1.04);
  box-shadow:
    18px 22px 50px rgba(60, 35, 45, .50),
    4px  8px  20px rgba(185, 55, 85, .30);
}

/* Le reflet balaye de gauche à droite */
.book-hover:hover::after {
  left: 120%;
}

/* L'image suit le conteneur */
.book-hover img {
  display: block;
  width: 100%;
  border-radius: 10px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-661cca44 */.profil-card {
  box-shadow: rgba(0, 0, 0, 0.15) 0px 2px 8px;
}/* End custom CSS */