/* Bio-Harmonisation V3 — direction éditoriale & photographique */

body > header a { color: rgba(255,255,255,.9) !important; }
body > header a:hover { color: #ffd86a !important; }
body > header .rounded-full.bg-primary { background: #f0b429 !important; color: #17324f !important; }
body > header button { border-color: rgba(255,255,255,.2) !important; background: rgba(255,255,255,.08) !important; color: #fff !important; }

.bh-home-content > .bh-v3-home { width:100% !important; max-width:none !important; margin:0 !important; }
.bh-v3-home { background: #fcfbf8; }
.bh-v3-home h1,
.bh-v3-home h2,
.bh-v3-home h3 { font-family: Georgia, "Times New Roman", serif; color: #17324f; letter-spacing: -.02em; }

.bh-v3-hero {
  position: relative;
  min-height: clamp(520px, 70vh, 760px);
  display: flex;
  align-items: center;
  background-size: cover;
  background-position: center 48%;
  isolation: isolate;
  overflow: hidden;
}
.bh-v3-hero::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background: linear-gradient(90deg, rgba(12,35,57,.86) 0%, rgba(18,46,70,.68) 42%, rgba(18,46,70,.22) 72%, rgba(18,46,70,.06) 100%);
}
.bh-v3-hero-inner { width:min(1180px, calc(100% - 2rem)); margin:auto; padding:5rem 0 7.5rem; }
.bh-v3-hero-copy { max-width:760px; color:#fff; }
.bh-v3-eyebrow { margin:0 0 1rem !important; font-size:.8rem !important; font-weight:800 !important; letter-spacing:.18em !important; text-transform:uppercase; color:#ffd86a !important; }
.bh-v3-hero h1 { margin:0 !important; color:#fff !important; font-size:clamp(3rem,6vw,5.6rem) !important; line-height:1.02 !important; font-weight:500 !important; }
.bh-v3-hero .bh-v3-lead { max-width:690px; margin:1.45rem 0 0 !important; font-size:clamp(1.1rem,1.7vw,1.35rem) !important; line-height:1.65 !important; color:rgba(255,255,255,.9) !important; }
.bh-v3-actions { margin-top:2rem; display:flex; gap:.8rem; flex-wrap:wrap; }
.bh-v3-btn { display:inline-flex; align-items:center; justify-content:center; padding:.9rem 1.35rem; border-radius:999px; text-decoration:none !important; font-weight:800; background:#f0b429; color:#17324f !important; box-shadow:0 12px 28px rgba(0,0,0,.16); }
.bh-v3-btn-ghost { background:rgba(255,255,255,.10); color:#fff !important; border:1px solid rgba(255,255,255,.42); box-shadow:none; }

.bh-v3-pillars-wrap { position:relative; z-index:3; width:min(1180px, calc(100% - 2rem)); margin:-72px auto 0; }
.bh-v3-pillars { display:grid; grid-template-columns:repeat(4,1fr); background:#fff; box-shadow:0 18px 55px rgba(27,49,70,.12); overflow:hidden; }
.bh-v3-pillar { padding:2.2rem 1.7rem 2rem; text-align:center; border-right:1px solid #edf0f2; }
.bh-v3-pillar:last-child { border-right:0; }
.bh-v3-pillar-icon { width:48px; height:48px; margin:0 auto 1rem; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#f2f7df; color:#7a9e1d; font-size:1.45rem; box-shadow:inset 0 0 0 1px rgba(122,158,29,.16); }
.bh-v3-pillar h3 { margin:.15rem 0 .65rem !important; font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; font-size:1.08rem !important; font-weight:800 !important; }
.bh-v3-pillar p { margin:0 !important; font-size:.94rem !important; line-height:1.55 !important; color:#5f6670 !important; }

.bh-v3-section { width:min(1180px, calc(100% - 2rem)); margin:0 auto; padding:6.5rem 0; }
.bh-v3-section-label { display:flex; align-items:center; gap:.75rem; margin:0 0 .7rem !important; color:#6c8e18 !important; font-size:.78rem !important; font-weight:850 !important; letter-spacing:.15em !important; text-transform:uppercase; }
.bh-v3-section-label::before { content:""; width:36px; height:3px; background:#f0b429; }
.bh-v3-section h2 { margin:.25rem 0 1rem !important; font-size:clamp(2.25rem,4vw,3.5rem) !important; line-height:1.08 !important; font-weight:500 !important; }
.bh-v3-section-intro { max-width:760px; color:#5f6670 !important; font-size:1.1rem !important; line-height:1.72 !important; }

.bh-v3-intro-grid { display:grid; grid-template-columns:1.04fr .96fr; gap:clamp(2.5rem,6vw,6rem); align-items:center; }
.bh-v3-photo { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:0 0 48px 0; box-shadow:0 18px 50px rgba(27,49,70,.10); }
.bh-v3-quote { margin:1.3rem 0 0; padding:1.1rem 1.25rem; background:#f4ead0; border-left:5px solid #f0b429; font-family:Georgia,"Times New Roman",serif; font-size:1.1rem; color:#17324f; }
.bh-v3-checks { margin:1.4rem 0 0; padding:0 !important; list-style:none; display:grid; gap:.65rem; background:transparent !important; border:0 !important; box-shadow:none !important; }
.bh-v3-checks li { position:relative; padding-left:1.65rem; color:#253242 !important; }
.bh-v3-checks li::before { content:"•"; position:absolute; left:.2rem; color:#7a9e1d; font-size:1.4rem; line-height:1; }

.bh-v3-wide-band { background:#f4f7e7; }
.bh-v3-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; margin-top:2.4rem; }
.bh-v3-card { overflow:hidden; background:#fff; box-shadow:0 14px 36px rgba(27,49,70,.08); }
.bh-v3-card img { width:100%; aspect-ratio:16/9; object-fit:cover; display:block; }
.bh-v3-card-body { padding:1.8rem 1.9rem 2rem; }
.bh-v3-card-kicker { margin:0 !important; color:#6c8e18 !important; text-transform:uppercase; letter-spacing:.12em !important; font-size:.72rem !important; font-weight:850 !important; }
.bh-v3-card h3 { margin:.35rem 0 .8rem !important; font-size:1.7rem !important; font-weight:500 !important; }
.bh-v3-card p { color:#5f6670 !important; line-height:1.65 !important; }
.bh-v3-card a { color:#213f63 !important; font-weight:800; text-decoration:none; }

.bh-v3-services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.3rem; margin-top:2.5rem; }
.bh-v3-service { background:#fff; border:1px solid #e7e5df; overflow:hidden; box-shadow:0 10px 26px rgba(27,49,70,.05); }
.bh-v3-service img { width:100%; aspect-ratio:5/3; object-fit:cover; display:block; }
.bh-v3-service-body { padding:1.35rem 1.4rem 1.6rem; }
.bh-v3-service h3 { margin:0 0 .55rem !important; font-size:1.42rem !important; font-weight:500 !important; }
.bh-v3-service p { margin:0 !important; color:#5f6670 !important; font-size:.98rem !important; line-height:1.58 !important; }

.bh-v3-cta { position:relative; overflow:hidden; background:#17324f; color:#fff; padding:5rem clamp(1.5rem,6vw,6rem); }
.bh-v3-cta::after { content:""; position:absolute; width:320px; height:320px; border:1px solid rgba(255,255,255,.12); border-radius:50%; right:-90px; top:-120px; box-shadow:0 0 0 48px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.018); }
.bh-v3-cta-inner { position:relative; z-index:2; width:min(1040px,100%); margin:auto; text-align:center; }
.bh-v3-cta h2 { color:#fff !important; font-size:clamp(2.3rem,4vw,3.7rem) !important; font-weight:500 !important; margin:0 0 1rem !important; }
.bh-v3-cta p { max-width:740px; margin:0 auto 1.7rem !important; color:rgba(255,255,255,.84) !important; font-size:1.08rem !important; line-height:1.7 !important; }
.bh-v3-credit { width:min(1180px,calc(100% - 2rem)); margin:1rem auto 2.5rem !important; font-size:.72rem !important; color:#9299a2 !important; text-align:center; }

/* ElementsKit — finitions légères, sans effet gadget */
.bh-v3-pillar .elementskit-infobox {
  background:#fff !important;
  border:0 !important;
  border-radius:18px !important;
  padding:1.9rem 1.35rem !important;
  transition:transform .22s ease, box-shadow .22s ease, background-color .22s ease;
}
.bh-v3-pillar .elementskit-infobox:hover {
  transform:translateY(-4px);
  background:#fbfff3 !important;
  box-shadow:0 16px 34px rgba(33,63,99,.11);
}
.bh-v3-pillar .elementskit-info-box-icon {
  width:54px;
  height:54px;
  margin:0 auto 1rem !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#f0f7dc;
  color:#7A9E1D !important;
}
.bh-v3-pillar .elementskit-info-box-icon i,
.bh-v3-pillar .elementskit-info-box-icon svg { color:#7A9E1D !important; fill:#7A9E1D !important; }
.bh-v3-pillar .elementskit-info-box-title { font-weight:800 !important; }

.bh-v3-card .elementskit-info-image-box,
.bh-v3-service .elementskit-info-image-box {
  overflow:hidden;
  background:#fff;
  border-radius:18px;
  box-shadow:0 12px 30px rgba(33,63,99,.08);
  transition:transform .22s ease, box-shadow .22s ease;
}
.bh-v3-card .elementskit-info-image-box:hover,
.bh-v3-service .elementskit-info-image-box:hover {
  transform:translateY(-5px);
  box-shadow:0 20px 44px rgba(33,63,99,.14);
}
.bh-v3-card .elementskit-info-image-box img,
.bh-v3-service .elementskit-info-image-box img {
  width:100%;
  object-fit:cover;
}
.bh-v3-card .elementskit-info-image-box img { aspect-ratio:16/9; }
.bh-v3-service .elementskit-info-image-box img { aspect-ratio:5/3; }
.bh-v3-card .elementskit-info-box-title,
.bh-v3-service .elementskit-info-box-title { color:#17324f !important; font-family:Georgia,"Times New Roman",serif; font-weight:500 !important; }
.bh-v3-card .elementskit-box-style-content,
.bh-v3-service .elementskit-box-style-content { color:#5f6670 !important; line-height:1.65; }
.bh-v3-card .elementskit-btn,
.bh-v3-service .elementskit-btn {
  display:inline-flex;
  align-items:center;
  margin-top:.4rem;
  padding:.7rem 1rem !important;
  border-radius:999px !important;
  background:#F0B429 !important;
  color:#17324f !important;
  font-weight:800 !important;
  text-decoration:none !important;
}
.bh-v3-card .elementskit-btn:hover,
.bh-v3-service .elementskit-btn:hover { background:#ffc841 !important; }

/* Corrections visuelles Elementor / ElementsKit */
.bh-v3-hero::before {
  background:linear-gradient(90deg,rgba(10,30,49,.92) 0%,rgba(13,38,61,.82) 45%,rgba(13,38,61,.48) 76%,rgba(13,38,61,.28) 100%) !important;
}
.bh-v3-hero-copy {
  width:min(760px,100%) !important;
  max-width:760px !important;
  margin-right:auto !important;
}
.bh-v3-hero .elementor-heading-title,
.bh-v3-hero .elementor-widget-text-editor,
.bh-v3-hero .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-v3-hero .elementor-widget-text-editor {
  max-width:760px;
}
.bh-v3-hero .elementor-widget-text-editor p {
  font-size:clamp(1.12rem,1.7vw,1.38rem) !important;
  line-height:1.65 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.18);
}

/* Les vrais enfants des Containers Elementor sont dans .e-con-inner */
.bh-v3-pillars > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  width:100%;
  gap:0;
}
.bh-v3-intro-grid > .e-con-inner {
  display:grid !important;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:clamp(2.5rem,5vw,5rem);
  align-items:center;
}
.bh-v3-card-grid > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.5rem;
  align-items:start;
}
.bh-v3-services > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.3rem;
  align-items:start;
}
.bh-v3-pillars > .e-con-inner > .e-con,
.bh-v3-intro-grid > .e-con-inner > .e-con,
.bh-v3-card-grid > .e-con-inner > .e-con,
.bh-v3-services > .e-con-inner > .e-con {
  width:auto !important;
  min-width:0;
}

.bh-v3-section h2 {
  font-size:clamp(2rem,3.25vw,3rem) !important;
  line-height:1.1 !important;
}
.bh-v3-intro-grid h2 {
  max-width:620px;
}
.bh-v3-quote,
.bh-v3-quote p,
.bh-v3-quote strong {
  font-family:Georgia,"Times New Roman",serif !important;
}

/* Une seule carte visuelle : ElementsKit gère fond, arrondi et ombre */
.bh-v3-card,
.bh-v3-service {
  align-self:start;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.bh-v3-card .elementor-widget-elementskit-image-box,
.bh-v3-service .elementor-widget-elementskit-image-box,
.bh-v3-card .elementskit-info-image-box,
.bh-v3-service .elementskit-info-image-box {
  height:auto !important;
  min-height:0 !important;
}
.bh-v3-card .elementskit-info-image-box img {
  height:230px !important;
  aspect-ratio:auto !important;
}
.bh-v3-service .elementskit-info-image-box img {
  height:190px !important;
  aspect-ratio:auto !important;
}
.bh-v3-card .elementskit-box-body {
  padding:1.55rem 1.65rem 1.7rem !important;
}
.bh-v3-service .elementskit-box-body {
  padding:1.35rem 1.4rem 1.5rem !important;
}
.bh-v3-card .elementskit-info-box-title {
  margin:0 0 .7rem !important;
  font-size:1.65rem !important;
  line-height:1.2 !important;
}
.bh-v3-service .elementskit-info-box-title {
  margin:0 0 .55rem !important;
  font-size:1.4rem !important;
  line-height:1.22 !important;
}
.bh-v3-card .elementskit-box-style-content,
.bh-v3-service .elementskit-box-style-content {
  margin-bottom:.9rem !important;
}
.bh-v3-card .elementskit-btn,
.bh-v3-service .elementskit-btn {
  margin-top:.15rem !important;
}

/* Cartes Accompagnements : même hauteur + boutons alignés */
.bh-v3-services > .e-con-inner {
  align-items:stretch !important;
}
.bh-v3-service {
  align-self:stretch !important;
  height:100%;
}
.bh-v3-service > .e-con-inner,
.bh-v3-service .elementor-widget-elementskit-image-box,
.bh-v3-service .elementor-widget-container,
.bh-v3-service .ekit-wid-con,
.bh-v3-service .elementskit-info-image-box {
  height:100% !important;
}
.bh-v3-service .elementskit-info-image-box {
  display:flex !important;
  flex-direction:column !important;
}
.bh-v3-service .elementskit-box-body {
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
}
.bh-v3-service .elementskit-box-content {
  flex:1 1 auto !important;
}
.bh-v3-service .elementskit-box-footer {
  margin-top:auto !important;
}

/* Cartes Bilans : même hauteur + boutons alignés */
.bh-v3-card-grid > .e-con-inner {
  align-items:stretch !important;
}
.bh-v3-card {
  align-self:stretch !important;
  height:100%;
}
.bh-v3-card > .e-con-inner,
.bh-v3-card .elementor-widget-elementskit-image-box,
.bh-v3-card .elementor-widget-container,
.bh-v3-card .ekit-wid-con,
.bh-v3-card .elementskit-info-image-box {
  height:100% !important;
}
.bh-v3-card .elementskit-info-image-box {
  display:flex !important;
  flex-direction:column !important;
}
.bh-v3-card .elementskit-box-body {
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
}
.bh-v3-card .elementskit-box-content {
  flex:1 1 auto !important;
}
.bh-v3-card .elementskit-box-footer {
  margin-top:auto !important;
}

/* Équipe : bandeau éditorial plus affirmé */
.elementor-element-b150000 {
  position:relative;
  overflow:hidden;
  background:linear-gradient(120deg,#f7fbe9 0%,#fff8e7 58%,#fffdf8 100%) !important;
  border-top:1px solid rgba(122,158,29,.16);
  border-bottom:1px solid rgba(240,180,41,.22);
}
.elementor-element-b150000::before {
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  right:-90px;
  top:-105px;
  background:rgba(122,158,29,.08);
  box-shadow:0 0 0 42px rgba(240,180,41,.045);
  pointer-events:none;
}
.elementor-element-b150001 > .e-con-inner {
  position:relative;
  z-index:1;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:1.4rem 3rem;
}
.elementor-element-b150011 {
  grid-column:1 / -1;
}
.elementor-element-b150011 .elementor-heading-title {
  display:flex;
  align-items:center;
  gap:.75rem;
  color:#6c8e18 !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.15em !important;
  text-transform:uppercase;
}
.elementor-element-b150011 .elementor-heading-title::before {
  content:"";
  width:36px;
  height:3px;
  flex:0 0 36px;
  background:#f0b429;
}
.elementor-element-b150012 .elementor-heading-title {
  max-width:820px;
  margin:0 !important;
  font-size:clamp(2.1rem,3.5vw,3.15rem) !important;
  line-height:1.1 !important;
}
.elementor-element-b150013 {
  justify-self:end;
  align-self:end;
}
.elementor-element-b150013 .elementor-button {
  border-radius:999px !important;
  padding:.9rem 1.35rem !important;
  background:#f0b429 !important;
  color:#17324f !important;
  font-weight:800 !important;
  box-shadow:0 10px 24px rgba(33,63,99,.10);
}
.elementor-element-b150013 .elementor-button:hover {
  background:#ffc841 !important;
  transform:translateY(-2px);
}

/* CTA final : plus net, plus compact, plus lisible */
.bh-v3-cta {
  border-top:5px solid #f0b429;
  background:
    radial-gradient(circle at 12% 20%,rgba(122,158,29,.17),transparent 28%),
    radial-gradient(circle at 88% 82%,rgba(240,180,41,.13),transparent 26%),
    #17324f !important;
  padding:4.6rem clamp(1.5rem,6vw,6rem) !important;
}
.bh-v3-cta > .e-con-inner,
.bh-v3-cta-inner > .e-con-inner {
  width:100%;
}
.bh-v3-cta-inner > .e-con-inner {
  max-width:850px;
  margin-inline:auto;
  align-items:center !important;
  text-align:center;
}
.bh-v3-cta h6 .elementor-heading-title,
.bh-v3-cta h6 {
  color:#ffd86a !important;
}
.bh-v3-cta .elementor-element-b160011 .elementor-heading-title {
  color:#ffd86a !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase;
}
.bh-v3-cta .elementor-element-b160012 .elementor-heading-title {
  max-width:760px;
  margin-inline:auto !important;
  font-size:clamp(2.2rem,4vw,3.4rem) !important;
  line-height:1.08 !important;
}
.bh-v3-cta .elementor-element-b160013,
.bh-v3-cta .elementor-element-b160013 p {
  color:rgba(255,255,255,.88) !important;
}
.bh-v3-cta .elementor-element-b160014 .elementor-button {
  border-radius:999px !important;
  padding:.95rem 1.45rem !important;
  background:#f0b429 !important;
  color:#17324f !important;
  font-weight:850 !important;
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}
.bh-v3-cta .elementor-element-b160014 .elementor-button:hover {
  background:#ffc841 !important;
  transform:translateY(-2px);
}

@media (max-width: 900px) {
  .bh-v3-pillars > .e-con-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bh-v3-pillar:nth-child(2) { border-right:0; }
  .bh-v3-pillar:nth-child(-n+2) { border-bottom:1px solid #edf0f2; }
  .bh-v3-intro-grid > .e-con-inner { grid-template-columns:1fr; gap:2.5rem; }
  .bh-v3-card-grid > .e-con-inner { grid-template-columns:1fr; }
  .bh-v3-services > .e-con-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bh-v3-section h2 { font-size:clamp(2rem,5vw,2.7rem) !important; }
  .elementor-element-b150001 > .e-con-inner {
    grid-template-columns:1fr;
    align-items:start;
  }
  .elementor-element-b150013 {
    justify-self:start;
  }
  .bh-v3-cta {
    padding:4rem 1.5rem !important;
  }
}
@media (max-width: 640px) {
  .bh-v3-hero { min-height:560px; background-position:58% center; }
  .bh-v3-hero-inner { padding:3.5rem 0 6.5rem; }
  .bh-v3-hero h1 { font-size:clamp(2.55rem,12vw,3.75rem) !important; }
  .bh-v3-hero .elementor-widget-text-editor p { font-size:1.05rem !important; line-height:1.6 !important; }
  .bh-v3-pillars-wrap { margin-top:-42px; }
  .bh-v3-pillars > .e-con-inner { grid-template-columns:1fr; }
  .bh-v3-pillar { border-right:0; border-bottom:1px solid #edf0f2; }
  .bh-v3-card-grid > .e-con-inner,
  .bh-v3-services > .e-con-inner { grid-template-columns:1fr; }
  .bh-v3-section { padding:4rem 0; }
  .bh-v3-section h2 { font-size:clamp(1.9rem,9vw,2.45rem) !important; }
  .bh-v3-card .elementskit-info-image-box img { height:210px !important; }
  .bh-v3-service .elementskit-info-image-box img { height:190px !important; }
  .elementor-element-b150012 .elementor-heading-title {
    font-size:clamp(1.9rem,9vw,2.45rem) !important;
  }
  .elementor-element-b150013,
  .elementor-element-b150013 .elementor-button-wrapper,
  .elementor-element-b150013 .elementor-button {
    width:100%;
  }
  .bh-v3-cta {
    padding:3.7rem 1rem !important;
  }
  .bh-v3-cta .elementor-element-b160012 .elementor-heading-title {
    font-size:clamp(2rem,10vw,2.7rem) !important;
  }
  .bh-v3-cta .elementor-element-b160014,
  .bh-v3-cta .elementor-element-b160014 .elementor-button-wrapper,
  .bh-v3-cta .elementor-element-b160014 .elementor-button {
    width:100%;
  }
}

/* Pages personnelles Elementor */
.bh-elementor-page,
.bh-elementor-page > .elementor,
.bh-personal-page {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
.bh-personal-page {
  background:#fcfbf8;
}
.bh-personal-page h1,
.bh-personal-page h2,
.bh-personal-page h3 {
  font-family:Georgia,"Times New Roman",serif;
  color:#17324f;
  letter-spacing:-.02em;
}
.bh-personal-hero {
  background:#fbf8f1;
  border-bottom:1px solid rgba(33,63,99,.08);
}
.bh-personal-hero > .e-con-inner {
  width:min(1180px,calc(100% - 2rem));
  margin-inline:auto;
  padding:clamp(4.5rem,8vw,7rem) 0;
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:center;
}
.bh-personal-hero-copy > .e-con-inner {
  align-items:flex-start !important;
}
.bh-personal-hero h1 {
  max-width:780px;
  margin:.25rem 0 1.4rem !important;
  font-size:clamp(3rem,5.4vw,5rem) !important;
  line-height:1.02 !important;
  font-weight:500 !important;
}
.bh-personal-hero .elementor-widget-text-editor {
  max-width:760px;
}
.bh-personal-hero .elementor-widget-text-editor p,
.bh-personal-section .elementor-widget-text-editor p {
  color:#5f6670;
  font-size:1.08rem;
  line-height:1.75;
}
.bh-personal-portrait img {
  width:100%;
  max-width:430px;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:28px 28px 90px 28px;
  box-shadow:0 24px 60px rgba(23,50,79,.16);
}
.bh-personal-section > .e-con-inner {
  width:min(1180px,calc(100% - 2rem));
  margin-inline:auto;
  padding:clamp(4.5rem,7vw,6.5rem) 0;
}
.bh-personal-section h2 {
  max-width:840px;
  margin:.2rem 0 1.3rem !important;
  font-size:clamp(2.2rem,3.6vw,3.25rem) !important;
  line-height:1.08 !important;
  font-weight:500 !important;
}
.bh-about-steps > .e-con-inner,
.bh-about-axes > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.35rem;
  margin-top:2.2rem;
  align-items:stretch;
}
.bh-about-values > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  margin-top:2rem;
  align-items:stretch;
}
.bh-about-step,
.bh-about-value,
.bh-about-axis {
  height:100%;
  border:1px solid rgba(33,63,99,.10);
  background:#fff;
  box-shadow:0 12px 32px rgba(33,63,99,.06);
}
.bh-about-step > .e-con-inner,
.bh-about-value > .e-con-inner,
.bh-about-axis > .e-con-inner {
  height:100%;
  padding:1.55rem !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}
.bh-about-step {
  border-top:4px solid #f0b429;
}
.bh-about-value {
  border-radius:18px;
  background:rgba(255,255,255,.82);
}
.bh-about-axis {
  border-radius:20px;
  overflow:hidden;
}
.bh-about-step h3,
.bh-about-axis h3 {
  margin:0 0 .75rem !important;
  font-size:1.5rem !important;
  line-height:1.2 !important;
  font-weight:500 !important;
}
.bh-about-value h3 {
  margin:0 0 .55rem !important;
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:1.05rem !important;
  font-weight:850 !important;
  color:#6c8e18 !important;
}
.bh-about-axis .elementor-widget-button {
  margin-top:auto;
}
.bh-about-axis .elementor-button,
.bh-personal-hero .elementor-button,
.bh-personal-cta .elementor-button {
  border-radius:999px !important;
  padding:.82rem 1.2rem !important;
  background:#f0b429 !important;
  color:#17324f !important;
  font-weight:850 !important;
}
.bh-personal-band {
  background:#f4f7e7;
  border-block:1px solid rgba(122,158,29,.12);
}
.bh-personal-cta .elementor-element-c145011 .elementor-heading-title {
  color:#ffd86a !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
}
.bh-personal-cta .elementor-element-c145012 .elementor-heading-title {
  max-width:850px;
  margin-inline:auto !important;
  color:#fff !important;
  font-size:clamp(2.2rem,4vw,3.4rem) !important;
  line-height:1.08 !important;
}
.bh-personal-cta .elementor-element-c145013,
.bh-personal-cta .elementor-element-c145013 p {
  color:rgba(255,255,255,.88) !important;
}

@media (max-width:900px) {
  .bh-personal-hero > .e-con-inner {
    grid-template-columns:1fr;
    gap:2.5rem;
  }
  .bh-personal-portrait-wrap > .e-con-inner {
    align-items:flex-start !important;
  }
  .bh-personal-portrait img {
    max-width:380px;
  }
  .bh-about-steps > .e-con-inner,
  .bh-about-axes > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-about-values > .e-con-inner {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:640px) {
  .bh-personal-hero > .e-con-inner,
  .bh-personal-section > .e-con-inner {
    width:min(100% - 1.25rem,1180px);
  }
  .bh-personal-hero h1 {
    font-size:clamp(2.55rem,12vw,3.7rem) !important;
  }
  .bh-personal-section h2 {
    font-size:clamp(1.95rem,9vw,2.5rem) !important;
  }
  .bh-about-values > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-personal-portrait img {
    max-width:100%;
    border-radius:22px 22px 60px 22px;
  }
}

/* Numérologie — identité visuelle */
.bh-num-hero {
  background:linear-gradient(135deg,#fbf8f1 0%,#f7f6eb 55%,#eef4d7 100%) !important;
}
.bh-num-visual > .e-con-inner {
  position:relative;
  min-height:390px;
  padding:2.5rem !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center;
  overflow:hidden;
  border:1px solid rgba(33,63,99,.10);
  border-radius:34px 34px 96px 34px;
  background:
    radial-gradient(circle at 50% 45%,rgba(255,255,255,.96) 0 24%,transparent 25%),
    radial-gradient(circle at 50% 45%,transparent 0 42%,rgba(240,180,41,.20) 43% 43.7%,transparent 44%),
    radial-gradient(circle at 50% 45%,transparent 0 63%,rgba(122,158,29,.18) 64% 64.6%,transparent 65%),
    linear-gradient(145deg,#fff,#f4f7e7);
  box-shadow:0 24px 60px rgba(23,50,79,.10);
}
.bh-num-visual h2 {
  margin:0 !important;
  font-size:clamp(2.6rem,5vw,4.4rem) !important;
  line-height:1 !important;
  color:#17324f !important;
}
.bh-num-visual .elementor-widget-text-editor {
  max-width:430px;
}
.bh-num-visual .elementor-widget-text-editor p {
  margin:.65rem 0 0 !important;
  color:#5f6670 !important;
  line-height:1.6 !important;
}
.bh-num-chips > .e-con-inner {
  display:flex !important;
  flex-wrap:wrap;
  justify-content:center !important;
  gap:.55rem;
  margin-top:1rem;
}
.bh-num-chips .elementor-widget-heading {
  width:auto !important;
}
.bh-num-chips .elementor-heading-title {
  padding:.45rem .7rem;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  color:#6c8e18 !important;
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
  font-size:.7rem !important;
  font-weight:850 !important;
  letter-spacing:.12em !important;
}
.bh-num-grid > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  margin-top:2.2rem;
  align-items:stretch;
}
.bh-num-card,
.bh-num-cycle,
.bh-num-offer {
  height:100%;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  box-shadow:0 12px 30px rgba(33,63,99,.06);
}
.bh-num-card {
  border-top:4px solid #f0b429;
}
.bh-num-card > .e-con-inner,
.bh-num-cycle > .e-con-inner,
.bh-num-offer > .e-con-inner {
  height:100%;
  padding:1.5rem !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}
.bh-num-card h3,
.bh-num-cycle h3,
.bh-num-offer h3 {
  margin:0 0 .7rem !important;
  font-size:1.45rem !important;
  line-height:1.2 !important;
  font-weight:500 !important;
}
.bh-num-cycles > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin-top:2rem;
  align-items:stretch;
}
.bh-num-cycle {
  border-radius:18px;
  background:rgba(255,255,255,.78);
}
.bh-num-cycle h3 {
  color:#648116 !important;
}
.bh-num-offers > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.35rem;
  margin-top:1.7rem;
  align-items:stretch;
}
.bh-num-offer {
  border-radius:22px;
  overflow:hidden;
}
.bh-num-offer:first-child {
  border-top:4px solid #f0b429;
}
.bh-num-offer:last-child {
  border-top:4px solid #7a9e1d;
}
.bh-num-offer .elementor-widget-button {
  margin-top:auto;
}
.bh-num-offer .elementor-button {
  border-radius:999px !important;
  padding:.78rem 1.1rem !important;
  background:#17324f !important;
  color:#fff !important;
  font-weight:800 !important;
}
.bh-num-band {
  background:linear-gradient(135deg,#f3f7e6,#fbf8f1) !important;
}
.bh-num-method > .e-con-inner {
  margin-top:2rem;
}
.bh-numerology-page .bh-personal-cta .elementor-heading-title {
  color:#fff;
}
@media (max-width:900px) {
  .bh-num-grid > .e-con-inner {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .bh-num-cycles > .e-con-inner {
    grid-template-columns:1fr;
  }
}
@media (max-width:640px) {
  .bh-num-visual > .e-con-inner {
    min-height:330px;
    padding:1.5rem !important;
    border-radius:24px 24px 64px 24px;
  }
  .bh-num-grid > .e-con-inner,
  .bh-num-offers > .e-con-inner {
    grid-template-columns:1fr;
  }
}

/* Voix & pratiques sonores — ambiance sensorielle */
.bh-voice-hero {
  position:relative;
  min-height:680px;
  display:flex;
  align-items:center;
  background-size:cover !important;
  background-position:center !important;
  overflow:hidden;
}
.bh-voice-hero::before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(13,38,61,.90) 0%,rgba(13,38,61,.73) 48%,rgba(13,38,61,.30) 100%);
  pointer-events:none;
}
.bh-voice-hero > .e-con-inner {
  position:relative;
  z-index:2;
  width:min(1180px,calc(100% - 2rem));
  margin-inline:auto;
  padding:clamp(5rem,9vw,7.5rem) 0;
}
.bh-voice-hero-inner > .e-con-inner {
  max-width:760px;
  align-items:flex-start !important;
}
.bh-voice-hero h1 {
  margin:.2rem 0 1.4rem !important;
  color:#fff !important;
  font-size:clamp(3.2rem,6vw,5.5rem) !important;
  line-height:1.01 !important;
  font-weight:500 !important;
}
.bh-voice-hero .bh-v3-section-label .elementor-heading-title {
  color:#ffd86a !important;
}
.bh-voice-hero .elementor-widget-text-editor,
.bh-voice-hero .elementor-widget-text-editor p {
  color:rgba(255,255,255,.92) !important;
  font-size:clamp(1.08rem,1.7vw,1.3rem) !important;
  line-height:1.72 !important;
}
.bh-voice-hero .elementor-button {
  margin-top:.6rem;
  border-radius:999px !important;
  padding:.92rem 1.3rem !important;
  background:#f0b429 !important;
  color:#17324f !important;
  font-weight:850 !important;
}
.bh-voice-doors > .e-con-inner,
.bh-voice-principles > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.25rem;
  margin-top:2rem;
  align-items:stretch;
}
.bh-voice-door,
.bh-voice-principle {
  height:100%;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  border-radius:22px;
  box-shadow:0 12px 32px rgba(33,63,99,.06);
}
.bh-voice-door > .e-con-inner,
.bh-voice-principle > .e-con-inner {
  height:100%;
  padding:1.65rem !important;
  align-items:flex-start !important;
}
.bh-voice-door {
  border-top:4px solid #f0b429;
}
.bh-voice-principle {
  border-top:4px solid #7a9e1d;
}
.bh-voice-door h3,
.bh-voice-principle h3 {
  margin:0 0 .7rem !important;
  font-size:1.55rem !important;
  font-weight:500 !important;
}
.bh-voice-band {
  background:linear-gradient(135deg,#f7f0df,#fbf8f1);
  border-block:1px solid rgba(240,180,41,.14);
}
.bh-voice-explore > .e-con-inner {
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(2.5rem,5vw,5rem);
  align-items:center;
}
.bh-voice-photo img {
  width:100%;
  height:100%;
  max-height:520px;
  object-fit:cover;
  border-radius:26px 26px 90px 26px;
  box-shadow:0 22px 55px rgba(23,50,79,.14);
}
.bh-voice-explore-copy ul {
  margin:1.3rem 0 1.4rem;
  padding:0;
  list-style:none;
}
.bh-voice-explore-copy li {
  position:relative;
  margin:.7rem 0;
  padding-left:1.55rem;
  color:#253242;
}
.bh-voice-explore-copy li::before {
  content:"•";
  position:absolute;
  left:.15rem;
  color:#7a9e1d;
  font-size:1.35rem;
  line-height:1;
}
.bh-voice-soft-band {
  background:#f4f7e7;
  border-block:1px solid rgba(122,158,29,.12);
}
.bh-voice-cta .elementor-element-v156011 .elementor-heading-title {
  color:#ffd86a !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
}
.bh-voice-cta .elementor-element-v156012 .elementor-heading-title {
  color:#fff !important;
  font-size:clamp(2.2rem,4vw,3.4rem) !important;
  line-height:1.08 !important;
}
.bh-voice-cta .elementor-element-v156013,
.bh-voice-cta .elementor-element-v156013 p {
  color:rgba(255,255,255,.88) !important;
}
@media (max-width:900px) {
  .bh-voice-hero { min-height:600px; }
  .bh-voice-explore > .e-con-inner,
  .bh-voice-doors > .e-con-inner,
  .bh-voice-principles > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-voice-photo img { max-height:420px; }
}
@media (max-width:640px) {
  .bh-voice-hero { min-height:560px; background-position:62% center !important; }
  .bh-voice-hero > .e-con-inner { width:min(100% - 1.25rem,1180px); }
  .bh-voice-hero h1 { font-size:clamp(2.65rem,13vw,3.9rem) !important; }
  .bh-voice-photo img { max-height:340px; border-radius:22px 22px 60px 22px; }
}

/* Bio-Harmonisation — page centrale */
.bh-bio-page {
  background:#fcfbf8;
}
.bh-bio-hero {
  position:relative;
  overflow:hidden;
  background:linear-gradient(118deg,#102b45 0%,#17324f 55%,#244d74 100%) !important;
}
.bh-bio-hero::after {
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-180px;
  top:-170px;
  border:1px solid rgba(240,180,41,.20);
  border-radius:50%;
  box-shadow:0 0 0 75px rgba(122,158,29,.05),0 0 0 150px rgba(255,255,255,.025);
  pointer-events:none;
}
.bh-bio-hero > .e-con-inner {
  position:relative;
  z-index:1;
  width:min(1180px,calc(100% - 2rem));
  margin-inline:auto;
  padding:clamp(4.8rem,8vw,7.2rem) 0;
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);
  gap:clamp(2.5rem,6vw,5.5rem);
  align-items:center;
}
.bh-bio-hero-copy > .e-con-inner {
  align-items:flex-start !important;
}
.bh-bio-hero .elementor-heading-title,
.bh-bio-hero .elementor-widget-text-editor,
.bh-bio-hero .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-bio-hero .elementor-element-d111011 .elementor-heading-title {
  color:#dceba4 !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
}
.bh-bio-hero h1 {
  max-width:780px;
  margin:.35rem 0 1.35rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3rem,5.4vw,5rem) !important;
  line-height:1.02 !important;
  font-weight:500 !important;
  letter-spacing:-.025em;
}
.bh-bio-hero .elementor-widget-text-editor {
  max-width:730px;
}
.bh-bio-hero .elementor-widget-text-editor p {
  font-size:1.08rem !important;
  line-height:1.72 !important;
  color:rgba(255,255,255,.86) !important;
}
.bh-bio-hero-image img {
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:28px 28px 92px 28px;
  box-shadow:0 28px 70px rgba(0,0,0,.28);
}
.bh-bio-steps > .e-con-inner,
.bh-bio-after > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  margin-top:2rem;
  align-items:stretch;
}
.bh-bio-step,
.bh-bio-after-card {
  height:100%;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  box-shadow:0 12px 32px rgba(33,63,99,.055);
}
.bh-bio-step {
  border-top:4px solid #f0b429;
}
.bh-bio-step > .e-con-inner,
.bh-bio-after-card > .e-con-inner {
  height:100%;
  padding:1.45rem !important;
  align-items:flex-start !important;
}
.bh-bio-step h3,
.bh-bio-after-card h3 {
  margin:0 0 .65rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.35rem !important;
  line-height:1.18 !important;
  color:#17324f !important;
}
.bh-bio-step p,
.bh-bio-after-card p {
  font-size:.98rem !important;
  line-height:1.68 !important;
}
.bh-bio-tools-band {
  background:linear-gradient(135deg,#f3f7e5 0%,#f8faef 55%,#fbf8f1 100%) !important;
  border-block:1px solid rgba(122,158,29,.12);
}
.bh-bio-tools > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
  margin-top:2.2rem;
  align-items:stretch;
}
.bh-bio-tool {
  height:100%;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  box-shadow:0 16px 42px rgba(33,63,99,.06);
}
.bh-bio-tool > .e-con-inner {
  height:100%;
  padding:1.75rem !important;
  align-items:flex-start !important;
}
.bh-bio-tool h3 {
  margin:0 0 .8rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.6rem !important;
  font-weight:500 !important;
  color:#17324f !important;
}
.bh-bio-tool p {
  font-size:1rem !important;
  line-height:1.72 !important;
}
.bh-bio-tool-blue { border-top:5px solid #31577f; }
.bh-bio-tool-gold { border-top:5px solid #f0b429; }
.bh-bio-tool-green { border-top:5px solid #7a9e1d; }
.bh-bio-tool-ivory { border-top:5px solid #c7a663; }
.bh-bio-bilan > .e-con-inner {
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);
  gap:clamp(2rem,5vw,4.5rem);
  margin-top:2rem;
  align-items:center;
}
.bh-bio-bilan-copy .elementor-widget-text-editor {
  padding:1.75rem 1.9rem;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  border-radius:22px;
  box-shadow:0 14px 40px rgba(33,63,99,.055);
}
.bh-bio-bilan-copy ol {
  margin:1.2rem 0 0;
  padding-left:1.3rem;
}
.bh-bio-bilan-copy li {
  margin:.7rem 0;
  color:#5f6670;
  line-height:1.65;
}
.bh-bio-bilan-image img {
  width:100%;
  max-height:430px;
  object-fit:cover;
  border-radius:24px 24px 70px 24px;
  box-shadow:0 20px 55px rgba(33,63,99,.13);
}
.bh-bio-bilan-image .elementor-widget-text-editor {
  margin-top:-1rem;
  margin-left:1.2rem;
  margin-right:1.2rem;
  padding:1rem 1.15rem;
  background:#17324f;
  border-radius:14px;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
}
.bh-bio-bilan-image .elementor-widget-text-editor p {
  margin:0 !important;
  color:#fff !important;
  font-size:.95rem !important;
}
.bh-bio-after-band {
  background:linear-gradient(135deg,#fbf8f1,#fffdf9) !important;
  border-block:1px solid rgba(240,180,41,.10);
}
.bh-bio-after-card {
  border-radius:18px;
}
.bh-bio-after-card:nth-child(1) { border-top:4px solid #7a9e1d; }
.bh-bio-after-card:nth-child(2) { border-top:4px solid #31577f; }
.bh-bio-after-card:nth-child(3) { border-top:4px solid #f0b429; }
.bh-bio-after-card:nth-child(4) { border-top:4px solid #c7a663; }
.bh-bio-limits > .e-con-inner {
  padding:clamp(3rem,5vw,4.5rem) clamp(1.5rem,4vw,3.5rem) !important;
  background:#17324f;
  border-radius:28px;
  box-shadow:0 22px 60px rgba(33,63,99,.16);
}
.bh-bio-limits .elementor-heading-title,
.bh-bio-limits .elementor-widget-text-editor,
.bh-bio-limits .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-bio-limits .bh-v3-section-label .elementor-heading-title {
  color:#dceba4 !important;
}
.bh-bio-limits h2 {
  max-width:880px;
  color:#fff !important;
}
.bh-bio-limits .elementor-widget-text-editor {
  max-width:900px;
}
.bh-bio-limits .elementor-widget-text-editor p {
  color:rgba(255,255,255,.86) !important;
}
.bh-bio-sources-band {
  border-top:1px solid rgba(33,63,99,.08);
}
.bh-bio-sources-band a {
  color:#31577f;
  font-weight:750;
  text-decoration-thickness:1px;
}
.bh-bio-source-note {
  margin-top:1.4rem !important;
  padding:1rem 1.1rem;
  background:#fff;
  border-left:3px solid #f0b429;
  border-radius:10px;
  font-size:.9rem !important;
}
.bh-bio-cta .elementor-element-d118011 .elementor-heading-title {
  color:#ffd86a !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
}
.bh-bio-cta .elementor-element-d118012 .elementor-heading-title {
  max-width:880px;
  margin-inline:auto !important;
  color:#fff !important;
  font-size:clamp(2.2rem,4vw,3.4rem) !important;
  line-height:1.08 !important;
}
.bh-bio-cta .elementor-element-d118013,
.bh-bio-cta .elementor-element-d118013 p {
  color:rgba(255,255,255,.88) !important;
}
/* Bio-Harmonisation — passe de relief */
.bh-bio-page .bh-personal-section > .e-con-inner {
  position:relative;
}
.bh-bio-page .bh-personal-section .elementor-widget-heading:first-child {
  position:relative;
  z-index:1;
}

/* Hero : photo encadrée et légèrement décollée */
.bh-bio-hero-image > .e-con-inner {
  position:relative;
  padding:18px !important;
}
.bh-bio-hero-image > .e-con-inner::before {
  content:"";
  position:absolute;
  inset:0 22px 22px 0;
  border:1px solid rgba(240,180,41,.42);
  border-radius:32px 32px 98px 32px;
  transform:translate(18px,18px);
  pointer-events:none;
}
.bh-bio-hero-image > .e-con-inner::after {
  content:"";
  position:absolute;
  width:110px;
  height:110px;
  right:-10px;
  bottom:-12px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(122,158,29,.24),rgba(122,158,29,0) 70%);
  filter:blur(2px);
  pointer-events:none;
}
.bh-bio-hero-image img {
  position:relative;
  z-index:2;
  box-shadow:0 34px 82px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.08);
}
.bh-bio-hero .elementor-button {
  box-shadow:0 14px 32px rgba(0,0,0,.22);
}

/* Démarche : rythme vertical et cartes plus incarnées */
.bh-bio-step,
.bh-bio-tool,
.bh-bio-after-card {
  position:relative;
  isolation:isolate;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.bh-bio-step::after,
.bh-bio-after-card::after {
  content:"";
  position:absolute;
  inset:auto 14px 10px 14px;
  height:18px;
  border-radius:50%;
  background:rgba(23,50,79,.12);
  filter:blur(16px);
  z-index:-1;
}
.bh-bio-step:nth-child(2),
.bh-bio-step:nth-child(4) {
  transform:translateY(14px);
}
.bh-bio-step {
  border-radius:18px 18px 26px 18px;
  background:linear-gradient(160deg,#fff 0%,#fff 72%,#f8faf1 100%);
  box-shadow:0 18px 42px rgba(33,63,99,.09),0 2px 8px rgba(33,63,99,.05);
}
.bh-bio-step > .e-con-inner {
  position:relative;
  overflow:hidden;
}
.bh-bio-step > .e-con-inner::before {
  content:"";
  position:absolute;
  width:78px;
  height:78px;
  right:-24px;
  top:-28px;
  border-radius:50%;
  background:rgba(240,180,41,.11);
}

/* Outils : cartes différenciées, profondeur et léger chevauchement */
.bh-bio-tools-band {
  position:relative;
  overflow:hidden;
}
.bh-bio-tools-band::before {
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  left:-190px;
  top:60px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(122,158,29,.13),rgba(122,158,29,0) 70%);
  pointer-events:none;
}
.bh-bio-tool {
  border-color:rgba(33,63,99,.12);
  box-shadow:0 22px 54px rgba(33,63,99,.10),0 3px 10px rgba(33,63,99,.05);
}
.bh-bio-tool:nth-child(2),
.bh-bio-tool:nth-child(3) {
  transform:translateY(12px);
}
.bh-bio-tool > .e-con-inner {
  position:relative;
  overflow:hidden;
}
.bh-bio-tool > .e-con-inner::after {
  content:"";
  position:absolute;
  width:120px;
  height:120px;
  right:-38px;
  bottom:-42px;
  border-radius:50%;
  pointer-events:none;
}
.bh-bio-tool-blue > .e-con-inner::after { background:rgba(49,87,127,.10); }
.bh-bio-tool-gold > .e-con-inner::after { background:rgba(240,180,41,.12); }
.bh-bio-tool-green > .e-con-inner::after { background:rgba(122,158,29,.11); }
.bh-bio-tool-ivory > .e-con-inner::after { background:rgba(199,166,99,.12); }
.bh-bio-tool-blue { background:linear-gradient(155deg,#fff,#f4f7fa); }
.bh-bio-tool-gold { background:linear-gradient(155deg,#fff,#fff9e9); }
.bh-bio-tool-green { background:linear-gradient(155deg,#fff,#f5f8ea); }
.bh-bio-tool-ivory { background:linear-gradient(155deg,#fff,#fbf7ed); }

/* Bilan : panneau central surélevé */
.bh-bio-bilan {
  position:relative;
  margin-top:1.2rem;
}
.bh-bio-bilan > .e-con-inner {
  position:relative;
  padding:clamp(1.4rem,3vw,2.4rem) !important;
  background:linear-gradient(145deg,#f7f9fb 0%,#fff 50%,#fbf8f1 100%);
  border:1px solid rgba(33,63,99,.10);
  border-radius:30px 30px 78px 30px;
  box-shadow:0 28px 70px rgba(33,63,99,.11),inset 0 1px 0 rgba(255,255,255,.9);
}
.bh-bio-bilan > .e-con-inner::before {
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-34px;
  top:-38px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(240,180,41,.14),rgba(240,180,41,0) 70%);
  pointer-events:none;
}
.bh-bio-bilan-copy .elementor-widget-text-editor {
  box-shadow:0 18px 46px rgba(33,63,99,.09);
  border-left:4px solid #7a9e1d;
}
.bh-bio-bilan-image img {
  transform:rotate(.7deg);
  box-shadow:0 24px 62px rgba(33,63,99,.19);
}
.bh-bio-bilan-image .elementor-widget-text-editor {
  position:relative;
  z-index:2;
  transform:translateY(-6px);
  border:1px solid rgba(255,255,255,.12);
}

/* Après le bilan : 4 cartes avec profondeur alternée */
.bh-bio-after-band {
  position:relative;
  background:linear-gradient(135deg,#f7f4ec 0%,#fffdf9 50%,#f4f7e9 100%) !important;
}
.bh-bio-after-card {
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 38px rgba(33,63,99,.08);
}
.bh-bio-after-card:nth-child(1),
.bh-bio-after-card:nth-child(3) {
  transform:translateY(-8px);
}

/* Limites et sources : mieux séparées du reste */
.bh-bio-limits > .e-con-inner {
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 28px 78px rgba(23,50,79,.22),0 0 0 8px rgba(23,50,79,.035);
}
.bh-bio-limits > .e-con-inner::after {
  content:"";
  position:absolute;
  width:300px;
  height:300px;
  right:-130px;
  bottom:-150px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(240,180,41,.13),rgba(240,180,41,0) 68%);
  pointer-events:none;
}
.bh-bio-sources-band {
  background:linear-gradient(180deg,#fff 0%,#f7f8f6 100%);
}
.bh-bio-sources-band .elementor-widget-text-editor {
  padding:1.45rem 1.55rem;
  background:#fff;
  border:1px solid rgba(33,63,99,.09);
  border-radius:18px;
  box-shadow:0 12px 34px rgba(33,63,99,.055);
}
.bh-bio-source-note {
  box-shadow:0 8px 22px rgba(33,63,99,.045);
}

@media (hover:hover) and (min-width:901px) {
  .bh-bio-step:hover,
  .bh-bio-tool:hover,
  .bh-bio-after-card:hover {
    transform:translateY(-5px);
    box-shadow:0 26px 60px rgba(33,63,99,.14);
  }
  .bh-bio-step:nth-child(2):hover,
  .bh-bio-step:nth-child(4):hover,
  .bh-bio-tool:nth-child(2):hover,
  .bh-bio-tool:nth-child(3):hover {
    transform:translateY(6px);
  }
}

@media (max-width:900px) {
  .bh-bio-step:nth-child(2),
  .bh-bio-step:nth-child(4),
  .bh-bio-tool:nth-child(2),
  .bh-bio-tool:nth-child(3),
  .bh-bio-after-card:nth-child(1),
  .bh-bio-after-card:nth-child(3) {
    transform:none;
  }
  .bh-bio-bilan-image img {
    transform:none;
  }
  .bh-bio-hero > .e-con-inner,
  .bh-bio-bilan > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-bio-hero-image img {
    max-width:520px;
    aspect-ratio:16/10;
  }
  .bh-bio-steps > .e-con-inner,
  .bh-bio-after > .e-con-inner,
  .bh-bio-tools > .e-con-inner {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:640px) {
  .bh-bio-hero > .e-con-inner {
    width:min(100% - 1.25rem,1180px);
  }
  .bh-bio-hero h1 {
    font-size:clamp(2.55rem,12vw,3.75rem) !important;
  }
  .bh-bio-hero-image img {
    max-width:100%;
    border-radius:22px 22px 60px 22px;
  }
  .bh-bio-steps > .e-con-inner,
  .bh-bio-after > .e-con-inner,
  .bh-bio-tools > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-bio-limits > .e-con-inner {
    border-radius:20px;
  }
}

/* Bilans & mesures — lecture claire et structurée */
.bh-measures-page {
  background:#fcfbf8;
}
.bh-measures-hero {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 86% 18%,rgba(122,158,29,.16),transparent 26%),
    radial-gradient(circle at 12% 82%,rgba(240,180,41,.10),transparent 24%),
    linear-gradient(120deg,#102b45 0%,#17324f 58%,#244d74 100%) !important;
}
.bh-measures-hero > .e-con-inner {
  width:min(1180px,calc(100% - 2rem));
  margin-inline:auto;
  padding:clamp(4.8rem,8vw,7rem) 0;
  display:grid !important;
  grid-template-columns:minmax(0,1.04fr) minmax(320px,.76fr);
  gap:clamp(2.5rem,6vw,5.5rem);
  align-items:center;
}
.bh-measures-hero-copy > .e-con-inner {
  align-items:flex-start !important;
}
.bh-measures-hero .elementor-heading-title,
.bh-measures-hero .elementor-widget-text-editor,
.bh-measures-hero .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-measures-hero .elementor-element-m121011 .elementor-heading-title {
  color:#dceba4 !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
}
.bh-measures-hero h1 {
  max-width:790px;
  margin:.35rem 0 1.35rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3rem,5.3vw,4.9rem) !important;
  line-height:1.02 !important;
  font-weight:500 !important;
  letter-spacing:-.025em;
}
.bh-measures-hero .elementor-widget-text-editor {
  max-width:730px;
}
.bh-measures-hero .elementor-widget-text-editor p {
  font-size:1.07rem !important;
  line-height:1.72 !important;
  color:rgba(255,255,255,.87) !important;
}
.bh-measures-hero .elementor-button {
  border-radius:999px !important;
  padding:.9rem 1.3rem !important;
  background:#f0b429 !important;
  color:#17324f !important;
  font-weight:850 !important;
  box-shadow:0 14px 32px rgba(0,0,0,.22);
}
.bh-measures-hero-visual > .e-con-inner {
  position:relative;
  padding:16px !important;
}
.bh-measures-hero-visual img {
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:28px 28px 82px 28px;
  box-shadow:0 30px 72px rgba(0,0,0,.30);
}
.bh-measures-hero-visual .elementor-widget-text-editor {
  position:relative;
  z-index:2;
  margin:-3.2rem 1rem 0 !important;
  padding:1.2rem 1.25rem;
  background:rgba(252,251,248,.97);
  border:1px solid rgba(240,180,41,.24);
  border-radius:18px;
  box-shadow:0 18px 42px rgba(0,0,0,.18);
}
.bh-measures-hero-visual .elementor-widget-text-editor p {
  margin:0 !important;
  color:#253242 !important;
  font-size:.93rem !important;
  line-height:1.62 !important;
}
.bh-measures-principles > .e-con-inner,
.bh-measures-reading > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.2rem;
  margin-top:2.1rem;
  align-items:stretch;
}
.bh-measures-principle,
.bh-measures-reading-card {
  height:100%;
  border-radius:20px;
  border:1px solid rgba(33,63,99,.10);
  background:#fff;
  box-shadow:0 14px 36px rgba(33,63,99,.07);
}
.bh-measures-principle > .e-con-inner,
.bh-measures-reading-card > .e-con-inner {
  height:100%;
  padding:1.5rem !important;
  align-items:flex-start !important;
}
.bh-measures-principle {
  border-top:4px solid #7a9e1d;
}
.bh-measures-principle:nth-child(2) {
  border-top-color:#31577f;
}
.bh-measures-principle:nth-child(3) {
  border-top-color:#f0b429;
}
.bh-measures-principle h3,
.bh-measures-reading-card h3 {
  margin:0 0 .6rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.35rem !important;
  line-height:1.2 !important;
  color:#17324f !important;
}
.bh-measures-principle p,
.bh-measures-reading-card p {
  font-size:.98rem !important;
  line-height:1.68 !important;
}
.bh-measures-tools-band {
  background:linear-gradient(135deg,#eef4dc 0%,#f8faef 48%,#fbf8f1 100%) !important;
  border-block:1px solid rgba(122,158,29,.14);
}
.bh-measures-tools > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.5rem;
  margin-top:2.2rem;
  align-items:stretch;
}
.bh-measures-tool {
  height:100%;
  border-radius:24px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  box-shadow:0 20px 48px rgba(33,63,99,.09);
}
.bh-measures-tool > .e-con-inner {
  height:100%;
  padding:2rem !important;
  align-items:flex-start !important;
}
.bh-measures-tool-nls {
  border-top:6px solid #31577f;
  background:linear-gradient(165deg,#fff 0%,#fff 76%,#edf3f8 100%);
}
.bh-measures-tool-emano {
  border-top:6px solid #f0b429;
  background:linear-gradient(165deg,#fff 0%,#fff 76%,#fff7df 100%);
}
.bh-measures-tool h3 {
  margin:0 0 1rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.8rem !important;
  font-weight:500 !important;
  color:#17324f !important;
}
.bh-measures-tool p {
  font-size:1rem !important;
  line-height:1.74 !important;
}
.bh-measures-source {
  margin-top:auto !important;
  padding-top:1rem;
  border-top:1px solid rgba(33,63,99,.10);
  font-size:.86rem !important;
  color:#6b7280 !important;
}
.bh-measures-reading-card:nth-child(1) {
  background:linear-gradient(160deg,#fff,#f7faef);
}
.bh-measures-reading-card:nth-child(2) {
  background:linear-gradient(160deg,#fff,#f3f6fa);
}
.bh-measures-reading-card:nth-child(3) {
  background:linear-gradient(160deg,#fff,#fff8e8);
}
.bh-measures-process-band {
  background:linear-gradient(135deg,#fbf8f1 0%,#fffdf9 100%) !important;
  border-block:1px solid rgba(240,180,41,.12);
}
.bh-measures-process > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  margin-top:2.2rem;
  align-items:stretch;
}
.bh-measures-process-step {
  height:100%;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  box-shadow:0 14px 36px rgba(33,63,99,.065);
}
.bh-measures-process-step > .e-con-inner {
  height:100%;
  padding:1.45rem !important;
  align-items:flex-start !important;
}
.bh-measures-process-step h4 {
  margin:0 0 .6rem !important;
  width:2.8rem;
  height:2.8rem;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#17324f;
  color:#fff !important;
  font-size:.8rem !important;
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
  letter-spacing:.08em;
}
.bh-measures-process-step:nth-child(2) h4 { background:#31577f; }
.bh-measures-process-step:nth-child(3) h4 { background:#7a9e1d; }
.bh-measures-process-step:nth-child(4) h4 { background:#f0b429; color:#17324f !important; }
.bh-measures-process-step h3 {
  margin:.2rem 0 .6rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.35rem !important;
  color:#17324f !important;
}
.bh-measures-process-step p {
  font-size:.96rem !important;
  line-height:1.66 !important;
}
.bh-measures-limits > .e-con-inner {
  padding:clamp(3.2rem,5vw,4.6rem) clamp(1.5rem,4vw,3.5rem) !important;
  background:linear-gradient(125deg,#102b45,#17324f 62%,#244d74);
  border-radius:28px;
  box-shadow:0 22px 60px rgba(33,63,99,.17);
}
.bh-measures-limits .elementor-heading-title,
.bh-measures-limits .elementor-widget-text-editor,
.bh-measures-limits .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-measures-limits .elementor-element-m126011 .elementor-heading-title {
  color:#dceba4 !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
}
.bh-measures-limits h2 {
  max-width:900px;
  color:#fff !important;
}
.bh-measures-limits .elementor-widget-text-editor {
  max-width:920px;
}
.bh-measures-limits .elementor-widget-text-editor p {
  color:rgba(255,255,255,.87) !important;
}
.bh-measures-sources-band {
  background:#f6f7f4 !important;
  border-top:1px solid rgba(33,63,99,.08);
}
.bh-measures-sources-band a {
  color:#31577f;
  font-weight:750;
}
.bh-measures-source-note {
  margin-top:1.4rem !important;
  padding:1rem 1.1rem;
  background:#fff;
  border-left:3px solid #f0b429;
  border-radius:10px;
  font-size:.9rem !important;
}
.bh-measures-cta .elementor-element-m128011 .elementor-heading-title {
  color:#ffd86a !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
}
.bh-measures-cta .elementor-element-m128012 .elementor-heading-title {
  max-width:880px;
  margin-inline:auto !important;
  color:#fff !important;
  font-size:clamp(2.2rem,4vw,3.4rem) !important;
  line-height:1.08 !important;
}
.bh-measures-cta .elementor-element-m128013,
.bh-measures-cta .elementor-element-m128013 p {
  color:rgba(255,255,255,.88) !important;
}
@media (hover:hover) and (min-width:901px) {
  .bh-measures-principle,
  .bh-measures-reading-card,
  .bh-measures-process-step,
  .bh-measures-tool {
    transition:transform .2s ease,box-shadow .2s ease;
  }
  .bh-measures-principle:hover,
  .bh-measures-reading-card:hover,
  .bh-measures-process-step:hover,
  .bh-measures-tool:hover {
    transform:translateY(-5px);
    box-shadow:0 22px 52px rgba(33,63,99,.12);
  }
}
@media (max-width:900px) {
  .bh-measures-hero > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-measures-hero-visual img {
    max-width:540px;
    aspect-ratio:16/10;
  }
  .bh-measures-tools > .e-con-inner,
  .bh-measures-principles > .e-con-inner,
  .bh-measures-reading > .e-con-inner,
  .bh-measures-process > .e-con-inner {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:640px) {
  .bh-measures-hero > .e-con-inner {
    width:min(100% - 1.25rem,1180px);
  }
  .bh-measures-hero h1 {
    font-size:clamp(2.55rem,12vw,3.7rem) !important;
  }
  .bh-measures-hero-visual img {
    max-width:100%;
    border-radius:22px 22px 58px 22px;
  }
  .bh-measures-hero-visual .elementor-widget-text-editor {
    margin:-2rem .6rem 0 !important;
  }
  .bh-measures-tools > .e-con-inner,
  .bh-measures-principles > .e-con-inner,
  .bh-measures-reading > .e-con-inner,
  .bh-measures-process > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-measures-limits > .e-con-inner {
    border-radius:20px;
  }
}

/* Mon approche & services — parcours plutôt que catalogue */
.bh-services-page {
  background:#fcfbf8;
}
.bh-services-page > .e-con-inner {
  overflow:visible;
}
.bh-services-page .bh-personal-hero {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 86% 16%,rgba(240,180,41,.16),transparent 24%),
    radial-gradient(circle at 10% 88%,rgba(122,158,29,.10),transparent 26%),
    linear-gradient(135deg,#fbf8f1 0%,#fff 56%,#f4f7e7 100%) !important;
}
.bh-services-page .bh-personal-hero::after {
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  right:-145px;
  bottom:-170px;
  border:1px solid rgba(33,63,99,.10);
  border-radius:50%;
  box-shadow:0 0 0 54px rgba(122,158,29,.035),0 0 0 108px rgba(240,180,41,.025);
  pointer-events:none;
}
.bh-services-page .bh-personal-hero > .e-con-inner {
  position:relative;
  z-index:1;
}
.bh-services-page .bh-personal-portrait-wrap > .e-con-inner {
  position:relative;
  padding:18px !important;
}
.bh-services-page .bh-personal-portrait-wrap > .e-con-inner::before {
  content:"";
  position:absolute;
  inset:0 24px 24px 0;
  transform:translate(18px,18px);
  border:1px solid rgba(240,180,41,.44);
  border-radius:30px 30px 86px 30px;
  pointer-events:none;
}
.bh-services-page .bh-personal-portrait-wrap img {
  position:relative;
  z-index:1;
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:28px 28px 82px 28px;
  box-shadow:0 28px 70px rgba(33,63,99,.15);
}

/* Les 4 temps : une frise continue */
.bh-services-page .elementor-element-d132001 > .e-con-inner {
  position:relative;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1.1rem;
  margin-top:2.4rem;
  align-items:stretch;
}
.bh-services-page .elementor-element-d132001 > .e-con-inner::before {
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  top:28px;
  height:2px;
  background:linear-gradient(90deg,rgba(122,158,29,.34),rgba(240,180,41,.55),rgba(49,87,127,.34));
}
.bh-services-page .elementor-element-d132001 .bh-about-value {
  position:relative;
  z-index:1;
  min-height:220px;
  border:1px solid rgba(33,63,99,.10);
  border-radius:20px 20px 28px 20px;
  background:linear-gradient(165deg,#fff 0%,#fff 76%,#f7f9ef 100%);
  box-shadow:0 16px 38px rgba(33,63,99,.07);
}
.bh-services-page .elementor-element-d132001 .bh-about-value > .e-con-inner {
  padding:1.5rem !important;
}
.bh-services-page .elementor-element-d132001 .bh-about-value h3 {
  display:inline-flex;
  min-height:42px;
  align-items:center;
  margin:0 0 .7rem !important;
  padding:.48rem .72rem;
  border-radius:999px;
  background:#17324f;
  color:#fff !important;
  font-size:.98rem !important;
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
  font-weight:820 !important;
}
.bh-services-page .elementor-element-d132001 .bh-about-value:nth-child(2) h3 { background:#31577f; }
.bh-services-page .elementor-element-d132001 .bh-about-value:nth-child(3) h3 { background:#7a9e1d; }
.bh-services-page .elementor-element-d132001 .bh-about-value:nth-child(4) h3 { background:#b97908; }

/* Outils d'éclairage : univers observation */
.bh-services-page .elementor-element-d133000 {
  background:
    radial-gradient(circle at 88% 14%,rgba(240,180,41,.09),transparent 24%),
    linear-gradient(135deg,#102b45,#17324f 62%,#214a6d) !important;
  border:0;
}
.bh-services-page .elementor-element-d133000 .elementor-heading-title,
.bh-services-page .elementor-element-d133000 .elementor-widget-text-editor,
.bh-services-page .elementor-element-d133000 .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-services-page .elementor-element-d133011 .elementor-heading-title {
  color:#dceba4 !important;
}
.bh-services-page .elementor-element-d133013,
.bh-services-page .elementor-element-d133013 p {
  color:rgba(255,255,255,.82) !important;
}
.bh-services-page .elementor-element-d133002 > .e-con-inner {
  display:grid !important;
  grid-template-columns:1.15fr 1fr 1fr;
  gap:1.2rem;
  margin-top:2.2rem;
  align-items:stretch;
}
.bh-services-page .elementor-element-d133002 .bh-about-axis {
  height:100%;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  background:rgba(255,255,255,.96);
  box-shadow:0 18px 45px rgba(0,0,0,.14);
}
.bh-services-page .elementor-element-d133002 .bh-about-axis:first-child {
  transform:translateY(-10px);
  border-top:5px solid #f0b429;
}
.bh-services-page .elementor-element-d133002 .bh-about-axis:nth-child(2) { border-top:5px solid #7a9e1d; }
.bh-services-page .elementor-element-d133002 .bh-about-axis:nth-child(3) { border-top:5px solid #c7a663; }
.bh-services-page .elementor-element-d133002 .bh-about-axis .elementor-heading-title,
.bh-services-page .elementor-element-d133002 .bh-about-axis .elementor-widget-text-editor,
.bh-services-page .elementor-element-d133002 .bh-about-axis .elementor-widget-text-editor p {
  color:#253242 !important;
}
.bh-services-page .elementor-element-d133002 .bh-about-axis h3 {
  color:#17324f !important;
}

/* Pistes d'accompagnement : 2 x 2 plus lisible */
.bh-services-page .elementor-element-d134001 > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
  margin-top:2.1rem;
  align-items:stretch;
}
.bh-services-page .elementor-element-d134001 .bh-about-value {
  position:relative;
  min-height:190px;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(33,63,99,.09);
  background:#fff;
  box-shadow:0 16px 40px rgba(33,63,99,.065);
}
.bh-services-page .elementor-element-d134001 .bh-about-value::after {
  content:"";
  position:absolute;
  width:92px;
  height:92px;
  right:-34px;
  bottom:-36px;
  border-radius:50%;
  background:rgba(122,158,29,.08);
}
.bh-services-page .elementor-element-d134001 .bh-about-value:nth-child(2)::after { background:rgba(49,87,127,.08); }
.bh-services-page .elementor-element-d134001 .bh-about-value:nth-child(3)::after { background:rgba(240,180,41,.10); }
.bh-services-page .elementor-element-d134001 .bh-about-value:nth-child(4)::after { background:rgba(199,166,99,.12); }
.bh-services-page .elementor-element-d134001 .bh-about-value h3 {
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:1.35rem !important;
  font-weight:500 !important;
  color:#17324f !important;
}

/* Connaissance de soi : une famille à part */
.bh-services-page .elementor-element-d135000 {
  position:relative;
  overflow:hidden;
  background:linear-gradient(125deg,#f4f7e7 0%,#fff8e7 58%,#fffdf9 100%) !important;
  border-block:1px solid rgba(122,158,29,.14);
}
.bh-services-page .elementor-element-d135000::after {
  content:"1 · 3 · 6 · 9";
  position:absolute;
  right:clamp(1rem,5vw,5rem);
  top:50%;
  transform:translateY(-50%);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3rem,7vw,7rem);
  line-height:1;
  color:rgba(23,50,79,.055);
  letter-spacing:.06em;
  pointer-events:none;
  white-space:nowrap;
}
.bh-services-page .elementor-element-d135001 > .e-con-inner {
  position:relative;
  z-index:1;
  max-width:820px;
  margin-left:0;
}
.bh-services-page .elementor-element-d135014 .elementor-button {
  border-radius:999px !important;
  padding:.86rem 1.2rem !important;
  background:#17324f !important;
  color:#fff !important;
  font-weight:800 !important;
}

@media (hover:hover) and (min-width:901px) {
  .bh-services-page .elementor-element-d132001 .bh-about-value,
  .bh-services-page .elementor-element-d133002 .bh-about-axis,
  .bh-services-page .elementor-element-d134001 .bh-about-value {
    transition:transform .22s ease,box-shadow .22s ease;
  }
  .bh-services-page .elementor-element-d132001 .bh-about-value:hover,
  .bh-services-page .elementor-element-d134001 .bh-about-value:hover {
    transform:translateY(-6px);
    box-shadow:0 22px 50px rgba(33,63,99,.10);
  }
  .bh-services-page .elementor-element-d133002 .bh-about-axis:hover {
    transform:translateY(-6px);
  }
  .bh-services-page .elementor-element-d133002 .bh-about-axis:first-child:hover {
    transform:translateY(-16px);
  }
}
@media (max-width:900px) {
  .bh-services-page .elementor-element-d132001 > .e-con-inner,
  .bh-services-page .elementor-element-d133002 > .e-con-inner,
  .bh-services-page .elementor-element-d134001 > .e-con-inner {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .bh-services-page .elementor-element-d132001 > .e-con-inner::before {
    display:none;
  }
  .bh-services-page .elementor-element-d133002 .bh-about-axis:first-child {
    transform:none;
  }
  .bh-services-page .elementor-element-d135000::after {
    opacity:.55;
  }
}
@media (max-width:640px) {
  .bh-services-page .elementor-element-d132001 > .e-con-inner,
  .bh-services-page .elementor-element-d133002 > .e-con-inner,
  .bh-services-page .elementor-element-d134001 > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-services-page .elementor-element-d132001 .bh-about-value,
  .bh-services-page .elementor-element-d134001 .bh-about-value {
    min-height:0;
  }
  .bh-services-page .elementor-element-d135000::after {
    display:none;
  }
}

/* Contact & rendez-vous — une entrée en relation simple et personnelle */
.bh-contact-page {
  background:#fcfbf8;
}
.bh-contact-hero {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 20%,rgba(240,180,41,.16),transparent 28%),
    radial-gradient(circle at 8% 88%,rgba(122,158,29,.10),transparent 24%),
    linear-gradient(135deg,#f7fbe9 0%,#fcfbf8 48%,#fff7e8 100%) !important;
  border-bottom:1px solid rgba(33,63,99,.08);
}
.bh-contact-hero > .e-con-inner {
  width:min(1180px,calc(100% - 2rem));
  margin-inline:auto;
  padding:clamp(4.8rem,8vw,7rem) 0;
  display:grid !important;
  grid-template-columns:minmax(0,1.12fr) minmax(300px,.62fr);
  gap:clamp(2.5rem,6vw,5.5rem);
  align-items:center;
}
.bh-contact-hero-copy > .e-con-inner {
  align-items:flex-start !important;
}
.bh-contact-hero h1 {
  max-width:800px;
  margin:.35rem 0 1.35rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3rem,5.25vw,4.9rem) !important;
  line-height:1.02 !important;
  font-weight:500 !important;
  color:#17324f !important;
}
.bh-contact-hero-copy .elementor-widget-text-editor {
  max-width:735px;
}
.bh-contact-hero-copy .elementor-widget-text-editor p {
  color:#5f6670 !important;
  font-size:1.08rem !important;
  line-height:1.75 !important;
}
.bh-contact-hero-card {
  position:relative;
  transform:translateY(18px);
  border-radius:26px 26px 72px 26px;
  background:#17324f;
  box-shadow:0 26px 66px rgba(23,50,79,.18);
  overflow:hidden;
}
.bh-contact-hero-card::after {
  content:"";
  position:absolute;
  width:160px;
  height:160px;
  right:-68px;
  bottom:-72px;
  border-radius:50%;
  border:1px solid rgba(240,180,41,.26);
  box-shadow:0 0 0 28px rgba(122,158,29,.06);
  pointer-events:none;
}
.bh-contact-hero-card > .e-con-inner {
  position:relative;
  z-index:1;
  padding:2.1rem 2rem 2.3rem !important;
  align-items:flex-start !important;
}
.bh-contact-hero-card .elementor-heading-title,
.bh-contact-hero-card .elementor-widget-text-editor,
.bh-contact-hero-card .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-contact-hero-card h6 .elementor-heading-title,
.bh-contact-hero-card .elementor-element:first-child .elementor-heading-title {
  color:#dceba4 !important;
}
.bh-contact-hero-card h3 {
  margin:.25rem 0 .9rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.65rem !important;
  line-height:1.15 !important;
  color:#fff !important;
}
.bh-contact-hero-card p {
  color:rgba(255,255,255,.84) !important;
  line-height:1.7 !important;
}

.bh-contact-reasons > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  margin-top:2.2rem;
  align-items:stretch;
}
.bh-contact-reason {
  height:100%;
  position:relative;
  border-radius:18px 18px 30px 18px;
  background:linear-gradient(155deg,#fff 0%,#fff 72%,#f7faec 100%);
  border:1px solid rgba(33,63,99,.09);
  border-top:4px solid #7a9e1d;
  box-shadow:0 16px 40px rgba(33,63,99,.07);
}
.bh-contact-reason:nth-child(2) { border-top-color:#31577f; }
.bh-contact-reason:nth-child(3) { border-top-color:#f0b429; }
.bh-contact-reason:nth-child(4) { border-top-color:#c7a663; }
.bh-contact-reason > .e-con-inner {
  height:100%;
  padding:1.45rem !important;
  align-items:flex-start !important;
}
.bh-contact-reason h3 {
  margin:0 0 .65rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.35rem !important;
  line-height:1.18 !important;
  color:#17324f !important;
}
.bh-contact-reason p {
  margin:0 !important;
  color:#5f6670 !important;
  font-size:.98rem !important;
  line-height:1.68 !important;
}

.bh-contact-process-band {
  background:linear-gradient(120deg,#17324f 0%,#213f63 64%,#294f73 100%) !important;
  border-block:1px solid rgba(240,180,41,.16);
}
.bh-contact-process-band > .e-con-inner {
  width:min(1180px,calc(100% - 2rem));
  margin-inline:auto;
  padding:clamp(4.5rem,7vw,6rem) 0;
  align-items:flex-start !important;
}
.bh-contact-process-band > .e-con-inner > .elementor-widget-heading .elementor-heading-title,
.bh-contact-process-band > .e-con-inner > .elementor-widget-text-editor,
.bh-contact-process-band > .e-con-inner > .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-contact-process-band > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
  color:#dceba4 !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
}
.bh-contact-process-band > .e-con-inner > .elementor-widget-heading:nth-child(2) .elementor-heading-title {
  max-width:760px;
  color:#fff !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.2rem,3.8vw,3.35rem) !important;
  line-height:1.08 !important;
  font-weight:500 !important;
}
.bh-contact-steps > .e-con-inner {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.2rem;
  margin-top:2.25rem;
  align-items:stretch;
}
.bh-contact-step {
  height:100%;
  border-radius:20px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 16px 42px rgba(0,0,0,.09);
  backdrop-filter:blur(2px);
}
.bh-contact-step > .e-con-inner {
  height:100%;
  padding:1.55rem !important;
  align-items:flex-start !important;
}
.bh-contact-step h3 {
  margin:0 0 .7rem !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.42rem !important;
  line-height:1.18 !important;
  color:#ffd86a !important;
}
.bh-contact-step p {
  color:rgba(255,255,255,.82) !important;
  line-height:1.68 !important;
}

.bh-contact-form-section > .e-con-inner {
  padding-top:clamp(5rem,8vw,7rem) !important;
  padding-bottom:clamp(5rem,8vw,7rem) !important;
}
.bh-contact-form-grid > .e-con-inner {
  display:grid !important;
  grid-template-columns:minmax(0,.82fr) minmax(360px,1.08fr);
  gap:clamp(2rem,5vw,4.5rem);
  align-items:stretch;
}
.bh-contact-form-info {
  border-radius:24px 24px 68px 24px;
  background:linear-gradient(155deg,#f3f7e5 0%,#fbf8f1 100%);
  border:1px solid rgba(122,158,29,.14);
  box-shadow:0 18px 48px rgba(33,63,99,.07);
}
.bh-contact-form-info > .e-con-inner {
  padding:2rem !important;
  align-items:flex-start !important;
}
.bh-contact-form-info h2 {
  font-size:clamp(2rem,3.1vw,2.75rem) !important;
}
.bh-contact-form-info ul {
  margin:1rem 0 0;
  padding-left:1.25rem;
}
.bh-contact-form-info li {
  margin:.72rem 0;
  color:#5f6670;
  line-height:1.66;
}
.bh-contact-privacy-note {
  margin-top:1.4rem !important;
  padding:1rem 1.05rem;
  border-radius:12px;
  background:rgba(255,255,255,.72);
  border-left:3px solid #f0b429;
  font-size:.9rem !important;
}
.bh-contact-privacy-note a {
  color:#31577f;
  font-weight:750;
}
.bh-contact-form-panel {
  height:100%;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(33,63,99,.10);
  box-shadow:0 24px 64px rgba(33,63,99,.10);
}
.bh-contact-form-panel > .e-con-inner {
  height:100%;
  padding:2rem clamp(1.4rem,3vw,2.3rem) 2.3rem !important;
  align-items:stretch !important;
}
.bh-contact-form-panel h2 {
  margin:.2rem 0 1.4rem !important;
  font-size:clamp(2.1rem,3.2vw,2.9rem) !important;
}
.bh-contact-form-panel .elementor-widget-form .elementor-form-fields-wrapper {
  row-gap:1rem;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field-group {
  margin-bottom:.1rem;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field-label {
  margin-bottom:.38rem;
  color:#253242 !important;
  font-weight:720;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field:not(.elementor-select-wrapper),
.bh-contact-form-panel .elementor-widget-form select.elementor-field,
.bh-contact-form-panel .elementor-widget-form textarea.elementor-field {
  min-height:48px;
  border:1px solid rgba(33,63,99,.16) !important;
  border-radius:12px !important;
  background:#fcfbf8 !important;
  color:#253242 !important;
  box-shadow:inset 0 1px 2px rgba(33,63,99,.025);
}
.bh-contact-form-panel .elementor-widget-form textarea.elementor-field {
  min-height:150px;
  resize:vertical;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field:focus {
  border-color:#7a9e1d !important;
  box-shadow:0 0 0 3px rgba(122,158,29,.11) !important;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field-type-acceptance {
  margin-top:.35rem;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field-type-acceptance label {
  color:#5f6670 !important;
  font-size:.9rem;
  line-height:1.55;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field-type-acceptance .elementor-field-subgroup {
  margin-top:.45rem;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field-type-acceptance .elementor-field-option {
  display:flex;
  align-items:center;
  min-height:24px;
}
.bh-contact-form-panel .elementor-widget-form .elementor-field-type-acceptance input.elementor-acceptance-field {
  -webkit-appearance:checkbox !important;
  appearance:auto !important;
  display:inline-block !important;
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  min-height:20px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:4px !important;
  background:#fff !important;
  box-shadow:none !important;
  accent-color:#7a9e1d;
  cursor:pointer;
}
.bh-contact-form-panel .elementor-widget-form .elementor-button {
  min-height:52px;
  border-radius:999px !important;
  background:#f0b429 !important;
  color:#17324f !important;
  font-weight:850 !important;
  box-shadow:0 12px 28px rgba(33,63,99,.12);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.bh-contact-form-panel .elementor-widget-form .elementor-button:hover {
  transform:translateY(-2px);
  background:#ffc841 !important;
  box-shadow:0 16px 34px rgba(33,63,99,.16);
}
.bh-contact-form-panel .elementor-widget-form .elementor-message {
  margin-top:1rem;
  padding:.85rem 1rem;
  border-radius:10px;
  background:#f3f7e5;
}

.bh-contact-limits > .e-con-inner {
  padding:clamp(3rem,5vw,4.4rem) clamp(1.5rem,4vw,3.5rem) !important;
  border-radius:28px;
  background:#17324f;
  box-shadow:0 22px 60px rgba(33,63,99,.15);
}
.bh-contact-limits .elementor-heading-title,
.bh-contact-limits .elementor-widget-text-editor,
.bh-contact-limits .elementor-widget-text-editor p {
  color:#fff !important;
}
.bh-contact-limits > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
  color:#dceba4 !important;
}
.bh-contact-limits h2 {
  max-width:880px;
  color:#fff !important;
}
.bh-contact-limits .elementor-widget-text-editor {
  max-width:900px;
}
.bh-contact-limits .elementor-widget-text-editor p {
  color:rgba(255,255,255,.84) !important;
}

@media (hover:hover) and (min-width:901px) {
  .bh-contact-reason {
    transition:transform .2s ease,box-shadow .2s ease;
  }
  .bh-contact-reason:hover {
    transform:translateY(-6px);
    box-shadow:0 24px 52px rgba(33,63,99,.11);
  }
}
@media (max-width:900px) {
  .bh-contact-hero > .e-con-inner,
  .bh-contact-form-grid > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-contact-hero-card {
    max-width:560px;
    transform:none;
  }
  .bh-contact-reasons > .e-con-inner {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .bh-contact-steps > .e-con-inner {
    grid-template-columns:1fr;
  }
}
@media (max-width:640px) {
  .bh-contact-hero > .e-con-inner,
  .bh-contact-process-band > .e-con-inner {
    width:min(100% - 1.25rem,1180px);
  }
  .bh-contact-hero h1 {
    font-size:clamp(2.55rem,12vw,3.7rem) !important;
  }
  .bh-contact-reasons > .e-con-inner {
    grid-template-columns:1fr;
  }
  .bh-contact-form-info > .e-con-inner,
  .bh-contact-form-panel > .e-con-inner {
    padding:1.4rem !important;
  }
  .bh-contact-form-panel .elementor-widget-form .elementor-field-group-name,
  .bh-contact-form-panel .elementor-widget-form .elementor-field-group-email {
    width:100% !important;
  }
  .bh-contact-limits > .e-con-inner {
    border-radius:20px;
  }
}
